diff --git a/apps/web/app/(app)/gardens/page.tsx b/apps/web/app/(app)/gardens/page.tsx index 4efcfeeaf..3df5771b1 100644 --- a/apps/web/app/(app)/gardens/page.tsx +++ b/apps/web/app/(app)/gardens/page.tsx @@ -47,10 +47,26 @@ export default function Page() { return ( <> {tokenGardens - .sort( - (a, b) => - (b.communities?.length ?? 0) - (a.communities?.length ?? 0), - ) + .sort((a, b) => { + const communitiesDiff = + (b.communities?.length ?? 0) - (a.communities?.length ?? 0); + + if (communitiesDiff === 0) { + const aTotalMembers = + a.communities?.reduce( + (sum, community) => sum + (community.members?.length ?? 0), + 0, + ) ?? 0; + const bTotalMembers = + b.communities?.reduce( + (sum, community) => sum + (community.members?.length ?? 0), + 0, + ) ?? 0; + return bTotalMembers - aTotalMembers; + } + + return communitiesDiff; + }) .map((garden) => (
diff --git a/apps/web/app/page.tsx b/apps/web/app/page.tsx index a45fb5107..c6ab3a32e 100644 --- a/apps/web/app/page.tsx +++ b/apps/web/app/page.tsx @@ -3,4 +3,4 @@ import { redirect } from "next/navigation"; export default function Page() { redirect("/gardens"); -} \ No newline at end of file +} diff --git a/apps/web/components/Badge.tsx b/apps/web/components/Badge.tsx index 8a10c768a..405ad0b10 100644 --- a/apps/web/components/Badge.tsx +++ b/apps/web/components/Badge.tsx @@ -12,6 +12,7 @@ type BadgeProps = { className?: string; icon?: React.ReactNode; isCapitalize?: boolean; + tooltip?: string; }; // Styles for different pool badge types @@ -39,6 +40,7 @@ export function Badge({ status, label, className, + tooltip, icon, }: BadgeProps): JSX.Element { const isStatusBadge = status !== undefined; @@ -70,7 +72,8 @@ export function Badge({ return (
{iconIncluded && (
{iconIncluded}
diff --git a/apps/web/components/Button.tsx b/apps/web/components/Button.tsx index 032653a6e..397e609c7 100644 --- a/apps/web/components/Button.tsx +++ b/apps/web/components/Button.tsx @@ -51,12 +51,12 @@ const btnStyles: BtnStyles = { }, outline: { primary: - "text-primary-content border border-primary-content hover:text-primary-hover-content hover:outline-primary-hover-content", + "text-primary-content border border-primary-content hover:text-primary-hover-content hover:border-primary-hover-content", secondary: - "text-secondary-content border border-secondary-content hover:text-secondary-hover-content hover:outline-secondary-hover-content", + "text-secondary-content border border-secondary-content hover:text-secondary-hover-content hover:border-secondary-hover-content", tertiary: "", danger: - "text-danger-button border border-danger-button hover:text-danger-hover-content hover:outline-danger-hover-content", + "text-danger-button border border-danger-button hover:text-danger-hover-content hover:border-danger-hover-content", disabled: "text-neutral-soft-content border border-neutral-soft-content", }, link: { diff --git a/apps/web/components/Forms/PoolForm.tsx b/apps/web/components/Forms/PoolForm.tsx index 386365256..434e8827f 100644 --- a/apps/web/components/Forms/PoolForm.tsx +++ b/apps/web/components/Forms/PoolForm.tsx @@ -17,7 +17,10 @@ import { FormRadioButton } from "./FormRadioButton"; import { FormSelect } from "./FormSelect"; import { EthAddress } from "../EthAddress"; import { Button } from "@/components/Button"; -import { DEFAULT_RULING_TIMEOUT_SEC } from "@/configs/constants"; +import { + DEFAULT_RULING_TIMEOUT_SEC, + VOTING_POINT_SYSTEM_DESCRIPTION, +} from "@/configs/constants"; import { QUERY_PARAMS } from "@/constants/query-params"; import { usePubSubContext } from "@/contexts/pubsub.context"; import { useChainFromPath } from "@/hooks/useChainFromPath"; @@ -227,6 +230,7 @@ export function PoolForm({ token, communityAddr }: Props) { const { isConnected, missmatchUrl, tooltipMessage } = useDisableButtons(); const watchedAddress = watch("poolTokenAddress").toLowerCase() as Address; + const { data: customTokenData } = useToken({ address: watchedAddress ?? "0x", chainId: +chain, @@ -595,14 +599,6 @@ export function PoolForm({ token, communityAddr }: Props) { } }, [customTokenData, watchedAddress, trigger]); - const votingWeightSystemDescriptions = { - fixed: "Everyone has the same voting weight, limited to registration stake", - capped: "Voting weight is equal to tokens staked, up to a limit", - unlimited: "Voting weight is equal to tokens staked, no limit.", - quadratic: - "Voting weight increases as more tokens are staked, following a quadratic curve.", - }; - return (
{showPreview ? @@ -676,18 +672,18 @@ export function PoolForm({ token, communityAddr }: Props) { *
- {Object.entries(PointSystems).map(([value, label], i) => ( + {Object.entries(PointSystems).map(([value, id], i) => (
setValue("pointSystemType", parseInt(value)) } checked={parseInt(value) === pointSystemType} registerKey="pointSystemType" - description={votingWeightSystemDescriptions[label]} + description={VOTING_POINT_SYSTEM_DESCRIPTION[id]} /> {PointSystems[pointSystemType] === "capped" && i === Object.values(PointSystems).indexOf("capped") && ( diff --git a/apps/web/components/PoolCard.tsx b/apps/web/components/PoolCard.tsx index e724148b8..685a3a35f 100644 --- a/apps/web/components/PoolCard.tsx +++ b/apps/web/components/PoolCard.tsx @@ -77,13 +77,12 @@ export function PoolCard({ pool, token, chainId }: Props) { label="voting weight" count={capitalize(PointSystems[config?.pointSystem])} /> - {isEnabled && ( - } - count={proposals.length} - label="proposals" - /> - )} + } + count={proposals.length} + label="proposals" + className={`${isEnabled ? "visible" : "invisible"}`} + /> {isEnabled && poolType && PoolTypes[poolType] === "funding" && ( } label="funds"> ({ @@ -128,7 +136,6 @@ export default function PoolHeader({ passportStrategy?.threshold ? Number(passportStrategy?.threshold) / CV_PASSPORT_THRESHOLD_SCALE : null; - const blockTime = chainConfigMap[chainId!].blockTime; const spendingLimitPct = (Number(strategy.config.maxRatio || 0) / CV_SCALE_PRECISION) * 100; @@ -275,6 +282,31 @@ export default function PoolHeader({ }, }); + const { write: rejectPoolWrite } = useContractWriteWithConfirmations({ + address: communityAddr, + abi: registryCommunityABI, + contractName: "Registry Community", + functionName: "rejectPool", + fallbackErrorMessage: "Error rejecting pool, please report a bug.", + args: [strategy.id as Address], + onConfirmations: () => { + publish({ + topic: "pool", + function: "rejectPool", + type: "update", + containerId: communityAddr, + chainId: chainId, + }); + const pathSegments = path.split("/"); + pathSegments.pop(); + if (pathSegments.length === 6) { + pathSegments.pop(); + } + const newPath = pathSegments.join("/"); + router.push(newPath); + }, + }); + const { write: addStrategyByPoolId } = useContractWriteWithConfirmations({ address: communityAddr, abi: registryCommunityABI, @@ -329,31 +361,15 @@ export default function PoolHeader({ return (
-
+

- {ipfsResult?.title} #{poolId} + {ipfsResult?.title}

{(!!isCouncilMember || isCouncilSafe) && (
- - {isEnabled ? + {isArchived ? - : + : isEnabled ? + <> + + + + : <> + + + }
)}
-
+ } /> - } /> + } + />
diff --git a/apps/web/components/PoolMetrics.tsx b/apps/web/components/PoolMetrics.tsx index 39938013f..eabb7f373 100644 --- a/apps/web/components/PoolMetrics.tsx +++ b/apps/web/components/PoolMetrics.tsx @@ -153,17 +153,19 @@ export const PoolMetrics: FC = ({ className="subtitle2 text-primary-content" />
-
-

Wallet balance:

- - - -
+ {accountAddress && ( +
+

Wallet balance:

+ + + +
+ )}
mapping(bytes4 => mapping(bytes32 => struct FindData)))","numberOfBytes":"32","value":"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)12468_storage))"},"t_mapping(t_bytes32,t_struct(FindData)12468_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)12468_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)12468_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)12468_storage)"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(FindData)12468_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":12461,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":12463,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":12465,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":12467,"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)12493_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":12477,"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)12468_storage)))"},{"astId":12480,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":12482,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":12484,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":12486,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":12488,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":12490,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":12492,"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":75455,"exportedSymbols":{"Accounts":[5026],"Allo":[1390],"ArbitrableConfig":[66164],"CVStrategyHelpers":[75454],"CVStrategyInitializeParamsV0_1":[66218],"CVStrategyV0_0":[70089],"CreateProposal":[66093],"IRegistry":[2802],"Metadata":[3098],"Native":[3106],"PointSystem":[66081],"PointSystemConfig":[66150],"ProposalType":[66076],"console":[28807]},"nodeType":"SourceUnit","src":"46:6474:113","nodes":[{"id":74870,"nodeType":"PragmaDirective","src":"46:24:113","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":74871,"nodeType":"ImportDirective","src":"72:31:113","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":75455,"sourceUnit":28808,"symbolAliases":[],"unitAlias":""},{"id":74873,"nodeType":"ImportDirective","src":"104:53:113","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/Allo.sol","file":"allo-v2-contracts/core/Allo.sol","nameLocation":"-1:-1:-1","scope":75455,"sourceUnit":1391,"symbolAliases":[{"foreign":{"id":74872,"name":"Allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1390,"src":"112:4:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74881,"nodeType":"ImportDirective","src":"158:210:113","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../src/CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":75455,"sourceUnit":70090,"symbolAliases":[{"foreign":{"id":74874,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70089,"src":"171:14:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":74875,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66076,"src":"191:12:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":74876,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66081,"src":"209:11:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":74877,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66093,"src":"226:14:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":74878,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66150,"src":"246:17:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":74879,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66164,"src":"269:16:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":74880,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66218,"src":"291:30:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74883,"nodeType":"ImportDirective","src":"369:67:113","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Native.sol","file":"allo-v2-contracts/core/libraries/Native.sol","nameLocation":"-1:-1:-1","scope":75455,"sourceUnit":3107,"symbolAliases":[{"foreign":{"id":74882,"name":"Native","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3106,"src":"377:6:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74886,"nodeType":"ImportDirective","src":"437:84:113","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":75455,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":74884,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"445:9:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":74885,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"456:8:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74888,"nodeType":"ImportDirective","src":"523:66:113","nodes":[],"absolutePath":"lib/allo-v2/test/foundry/shared/Accounts.sol","file":"allo-v2-test/foundry/shared/Accounts.sol","nameLocation":"-1:-1:-1","scope":75455,"sourceUnit":5027,"symbolAliases":[{"foreign":{"id":74887,"name":"Accounts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5026,"src":"531:8:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75454,"nodeType":"ContractDefinition","src":"591:5928:113","nodes":[{"id":74899,"nodeType":"VariableDeclaration","src":"644:109:113","nodes":[],"constant":false,"functionSelector":"392f37e9","mutability":"mutable","name":"metadata","nameLocation":"660:8:113","scope":75454,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata"},"typeName":{"id":74894,"nodeType":"UserDefinedTypeName","pathNode":{"id":74893,"name":"Metadata","nameLocations":["644:8:113"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"644:8:113"},"referencedDeclaration":3098,"src":"644:8:113","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"value":{"arguments":[{"hexValue":"31","id":74896,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"691:1:113","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a44686132666a3547656536684a7a5359","id":74897,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"703:48:113","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":74895,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"671:8:113","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":74898,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["681:8:113","694:7:113"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"671:82:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"visibility":"public"},{"id":74904,"nodeType":"VariableDeclaration","src":"782:43:113","nodes":[],"constant":true,"functionSelector":"2e0f2625","mutability":"constant","name":"DECIMALS","nameLocation":"806:8:113","scope":75454,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74900,"name":"uint256","nodeType":"ElementaryTypeName","src":"782:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"},"id":74903,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":74901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"817:2:113","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3138","id":74902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"823:2:113","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"src":"817:8:113","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"}},"visibility":"public"},{"id":74909,"nodeType":"VariableDeclaration","src":"831:50:113","nodes":[],"constant":true,"functionSelector":"3f26479e","mutability":"constant","name":"PERCENTAGE_SCALE","nameLocation":"855:16:113","scope":75454,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74905,"name":"uint256","nodeType":"ElementaryTypeName","src":"831:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":74908,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":74906,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"874:2:113","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":74907,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"880:1:113","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"874:7:113","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"visibility":"public"},{"id":74911,"nodeType":"VariableDeclaration","src":"888:33:113","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileId1_","nameLocation":"905:16:113","scope":75454,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":74910,"name":"bytes32","nodeType":"ElementaryTypeName","src":"888:7:113","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":74916,"nodeType":"VariableDeclaration","src":"928:44:113","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"954:7:113","scope":75454,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74912,"name":"uint256","nodeType":"ElementaryTypeName","src":"928:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"id":74915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":74913,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"964:1:113","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"313237","id":74914,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"969:3:113","typeDescriptions":{"typeIdentifier":"t_rational_127_by_1","typeString":"int_const 127"},"value":"127"},"src":"964:8:113","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"}},"visibility":"internal"},{"id":74921,"nodeType":"VariableDeclaration","src":"978:44:113","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"1004:7:113","scope":75454,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74917,"name":"uint256","nodeType":"ElementaryTypeName","src":"978:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"id":74920,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":74918,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1014:1:113","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"313238","id":74919,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1019:3:113","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"1014:8:113","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"}},"visibility":"internal"},{"id":74926,"nodeType":"VariableDeclaration","src":"1028:37:113","nodes":[],"constant":true,"mutability":"constant","name":"D","nameLocation":"1054:1:113","scope":75454,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74922,"name":"uint256","nodeType":"ElementaryTypeName","src":"1028:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"id":74925,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":74923,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1058:2:113","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"37","id":74924,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1064:1:113","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"1058:7:113","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"}},"visibility":"internal"},{"id":74964,"nodeType":"FunctionDefinition","src":"1180:437:113","nodes":[],"body":{"id":74963,"nodeType":"Block","src":"1338:279:113","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":74944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":74939,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74911,"src":"1352:16:113","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":74942,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1380:1:113","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":74941,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1372:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":74940,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1372:7:113","typeDescriptions":{}}},"id":74943,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1372:10:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1352:30:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74960,"nodeType":"IfStatement","src":"1348:230:113","trueBody":{"id":74959,"nodeType":"Block","src":"1384:194:113","statements":[{"expression":{"id":74957,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74945,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74911,"src":"1398:16:113","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"32","id":74948,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1457:1:113","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"hexValue":"506f6f6c2050726f66696c652031","id":74949,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1460:16:113","typeDescriptions":{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},"value":"Pool Profile 1"},{"arguments":[{"hexValue":"31","id":74951,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1498:1:113","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"506f6f6c50726f66696c6531","id":74952,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1510:14:113","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":74950,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1478:8:113","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":74953,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1488:8:113","1501:7:113"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1478:48:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":74954,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74931,"src":"1528:10:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":74955,"name":"pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74934,"src":"1540:13:113","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":74946,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74929,"src":"1417:8:113","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":74947,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1426:13:113","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":2742,"src":"1417:22:113","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":74956,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1417:150:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1398:169:113","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":74958,"nodeType":"ExpressionStatement","src":"1398:169:113"}]}},{"expression":{"id":74961,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74911,"src":"1594:16:113","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":74938,"id":74962,"nodeType":"Return","src":"1587:23:113"}]},"functionSelector":"37d1c404","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_id1","nameLocation":"1189:15:113","parameters":{"id":74935,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74929,"mutability":"mutable","name":"registry","nameLocation":"1215:8:113","nodeType":"VariableDeclaration","scope":74964,"src":"1205:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":74928,"nodeType":"UserDefinedTypeName","pathNode":{"id":74927,"name":"IRegistry","nameLocations":["1205:9:113"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"1205:9:113"},"referencedDeclaration":2802,"src":"1205:9:113","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":74931,"mutability":"mutable","name":"pool_admin","nameLocation":"1233:10:113","nodeType":"VariableDeclaration","scope":74964,"src":"1225:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74930,"name":"address","nodeType":"ElementaryTypeName","src":"1225:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74934,"mutability":"mutable","name":"pool_managers","nameLocation":"1262:13:113","nodeType":"VariableDeclaration","scope":74964,"src":"1245:30:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":74932,"name":"address","nodeType":"ElementaryTypeName","src":"1245:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74933,"nodeType":"ArrayTypeName","src":"1245:9:113","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1204:72:113"},"returnParameters":{"id":74938,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74937,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74964,"src":"1325:7:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":74936,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1325:7:113","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1324:9:113"},"scope":75454,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":75092,"nodeType":"FunctionDefinition","src":"1623:1400:113","nodes":[],"body":{"id":75091,"nodeType":"Block","src":"2024:999:113","nodes":[],"statements":[{"expression":{"id":74999,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":74991,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74989,"src":"2085:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":74994,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2092:8:113","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":66196,"src":"2085:15:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66173_memory_ptr","typeString":"struct CVParams memory"}},"id":74995,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2101:5:113","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":66170,"src":"2085:21:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e39393939373939","id":74997,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2123:15:113","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":74996,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75281,"src":"2109:13:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":74998,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2109:30:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2085:54:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75000,"nodeType":"ExpressionStatement","src":"2085:54:113"},{"expression":{"id":75009,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75001,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74989,"src":"2166:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75004,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2173:8:113","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":66196,"src":"2166:15:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66173_memory_ptr","typeString":"struct CVParams memory"}},"id":75005,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2182:8:113","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":66166,"src":"2166:24:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e32","id":75007,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2207:9:113","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":75006,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75281,"src":"2193:13:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":75008,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2193:24:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2166:51:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75010,"nodeType":"ExpressionStatement","src":"2166:51:113"},{"expression":{"id":75019,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75011,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74989,"src":"2246:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75014,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2253:8:113","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":66196,"src":"2246:15:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66173_memory_ptr","typeString":"struct CVParams memory"}},"id":75015,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2262:6:113","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":66168,"src":"2246:22:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e303031","id":75017,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2285:11:113","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":75016,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75281,"src":"2271:13:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":75018,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2271:26:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2246:51:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75020,"nodeType":"ExpressionStatement","src":"2246:51:113"},{"expression":{"id":75027,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":75021,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74989,"src":"2328:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75024,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2335:8:113","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":66196,"src":"2328:15:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66173_memory_ptr","typeString":"struct CVParams memory"}},"id":75025,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2344:18:113","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":66172,"src":"2328:34:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"302e32","id":75026,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2365:9:113","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"},"value":"0.2"},"src":"2328:46:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75028,"nodeType":"ExpressionStatement","src":"2328:46:113"},{"expression":{"id":75033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75029,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74989,"src":"2391:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75031,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2398:17:113","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":66210,"src":"2391:24:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75032,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74966,"src":"2418:17:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2391:44:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75034,"nodeType":"ExpressionStatement","src":"2391:44:113"},{"expression":{"id":75039,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75035,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74989,"src":"2445:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75037,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2452:12:113","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":66199,"src":"2445:19:113","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75038,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74969,"src":"2467:12:113","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"}},"src":"2445:34:113","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"}},"id":75040,"nodeType":"ExpressionStatement","src":"2445:34:113"},{"expression":{"id":75045,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75041,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74989,"src":"2489:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75043,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2496:11:113","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":66202,"src":"2489:18:113","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75044,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74972,"src":"2510:11:113","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"}},"src":"2489:32:113","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"}},"id":75046,"nodeType":"ExpressionStatement","src":"2489:32:113"},{"expression":{"id":75051,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75047,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74989,"src":"2531:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75049,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2538:11:113","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":66212,"src":"2531:18:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75050,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74983,"src":"2552:11:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2531:32:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75052,"nodeType":"ExpressionStatement","src":"2531:32:113"},{"expression":{"id":75057,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75053,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74989,"src":"2573:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75055,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2580:20:113","memberName":"sybilScorerThreshold","nodeType":"MemberAccess","referencedDeclaration":66214,"src":"2573:27:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75056,"name":"sybilScorerThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74985,"src":"2603:20:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2573:50:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75058,"nodeType":"ExpressionStatement","src":"2573:50:113"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75062,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":75059,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74975,"src":"2638:11:113","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":75060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2650:9:113","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":66149,"src":"2638:21:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":75061,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2663:1:113","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2638:26:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75072,"nodeType":"IfStatement","src":"2634:182:113","trueBody":{"id":75071,"nodeType":"Block","src":"2666:150:113","statements":[{"expression":{"id":75069,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75063,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74975,"src":"2767:11:113","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":75065,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2779:9:113","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":66149,"src":"2767:21:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75068,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"323030","id":75066,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2791:3:113","typeDescriptions":{"typeIdentifier":"t_rational_200_by_1","typeString":"int_const 200"},"value":"200"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":75067,"name":"DECIMALS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74904,"src":"2797:8:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2791:14:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2767:38:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75070,"nodeType":"ExpressionStatement","src":"2767:38:113"}]}},{"expression":{"id":75077,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75073,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74989,"src":"2825:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75075,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2832:11:113","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":66205,"src":"2825:18:113","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_memory_ptr","typeString":"struct PointSystemConfig memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75076,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74975,"src":"2846:11:113","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"2825:32:113","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":75078,"nodeType":"ExpressionStatement","src":"2825:32:113"},{"expression":{"id":75083,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75079,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74989,"src":"2867:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75081,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2874:16:113","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":66208,"src":"2867:23:113","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75082,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74978,"src":"2893:16:113","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"2867:42:113","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":75084,"nodeType":"ExpressionStatement","src":"2867:42:113"},{"expression":{"id":75089,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75085,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74989,"src":"2974:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":75087,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2981:16:113","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":66217,"src":"2974:23:113","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75088,"name":"initialAllowlist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74981,"src":"3000:16:113","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"2974:42:113","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":75090,"nodeType":"ExpressionStatement","src":"2974:42:113"}]},"functionSelector":"b3e9b4fd","implemented":true,"kind":"function","modifiers":[],"name":"getParams","nameLocation":"1632:9:113","parameters":{"id":74986,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74966,"mutability":"mutable","name":"registryCommunity","nameLocation":"1659:17:113","nodeType":"VariableDeclaration","scope":75092,"src":"1651:25:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74965,"name":"address","nodeType":"ElementaryTypeName","src":"1651:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74969,"mutability":"mutable","name":"proposalType","nameLocation":"1699:12:113","nodeType":"VariableDeclaration","scope":75092,"src":"1686:25:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"},"typeName":{"id":74968,"nodeType":"UserDefinedTypeName","pathNode":{"id":74967,"name":"ProposalType","nameLocations":["1686:12:113"],"nodeType":"IdentifierPath","referencedDeclaration":66076,"src":"1686:12:113"},"referencedDeclaration":66076,"src":"1686:12:113","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":74972,"mutability":"mutable","name":"pointSystem","nameLocation":"1733:11:113","nodeType":"VariableDeclaration","scope":75092,"src":"1721:23:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"},"typeName":{"id":74971,"nodeType":"UserDefinedTypeName","pathNode":{"id":74970,"name":"PointSystem","nameLocations":["1721:11:113"],"nodeType":"IdentifierPath","referencedDeclaration":66081,"src":"1721:11:113"},"referencedDeclaration":66081,"src":"1721:11:113","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":74975,"mutability":"mutable","name":"pointConfig","nameLocation":"1779:11:113","nodeType":"VariableDeclaration","scope":75092,"src":"1754:36:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_memory_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":74974,"nodeType":"UserDefinedTypeName","pathNode":{"id":74973,"name":"PointSystemConfig","nameLocations":["1754:17:113"],"nodeType":"IdentifierPath","referencedDeclaration":66150,"src":"1754:17:113"},"referencedDeclaration":66150,"src":"1754:17:113","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":74978,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"1824:16:113","nodeType":"VariableDeclaration","scope":75092,"src":"1800:40:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":74977,"nodeType":"UserDefinedTypeName","pathNode":{"id":74976,"name":"ArbitrableConfig","nameLocations":["1800:16:113"],"nodeType":"IdentifierPath","referencedDeclaration":66164,"src":"1800:16:113"},"referencedDeclaration":66164,"src":"1800:16:113","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":74981,"mutability":"mutable","name":"initialAllowlist","nameLocation":"1867:16:113","nodeType":"VariableDeclaration","scope":75092,"src":"1850:33:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":74979,"name":"address","nodeType":"ElementaryTypeName","src":"1850:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74980,"nodeType":"ArrayTypeName","src":"1850:9:113","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":74983,"mutability":"mutable","name":"sybilScorer","nameLocation":"1901:11:113","nodeType":"VariableDeclaration","scope":75092,"src":"1893:19:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74982,"name":"address","nodeType":"ElementaryTypeName","src":"1893:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74985,"mutability":"mutable","name":"sybilScorerThreshold","nameLocation":"1930:20:113","nodeType":"VariableDeclaration","scope":75092,"src":"1922:28:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74984,"name":"uint256","nodeType":"ElementaryTypeName","src":"1922:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1641:315:113"},"returnParameters":{"id":74990,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74989,"mutability":"mutable","name":"params","nameLocation":"2016:6:113","nodeType":"VariableDeclaration","scope":75092,"src":"1978:44:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":74988,"nodeType":"UserDefinedTypeName","pathNode":{"id":74987,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["1978:30:113"],"nodeType":"IdentifierPath","referencedDeclaration":66218,"src":"1978:30:113"},"referencedDeclaration":66218,"src":"1978:30:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"1977:46:113"},"scope":75454,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":75226,"nodeType":"FunctionDefinition","src":"3029:1511:113","nodes":[],"body":{"id":75225,"nodeType":"Block","src":"3382:1158:113","nodes":[],"statements":[{"assignments":[75123],"declarations":[{"constant":false,"id":75123,"mutability":"mutable","name":"params","nameLocation":"3481:6:113","nodeType":"VariableDeclaration","scope":75225,"src":"3443:44:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":75122,"nodeType":"UserDefinedTypeName","pathNode":{"id":75121,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["3443:30:113"],"nodeType":"IdentifierPath","referencedDeclaration":66218,"src":"3443:30:113"},"referencedDeclaration":66218,"src":"3443:30:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":75141,"initialValue":{"arguments":[{"id":75125,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75099,"src":"3513:17:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75126,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75107,"src":"3532:12:113","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"}},{"id":75127,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75110,"src":"3546:11:113","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"}},{"id":75128,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75113,"src":"3559:11:113","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_memory_ptr","typeString":"struct PointSystemConfig memory"}},{"id":75129,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75116,"src":"3572:16:113","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"arguments":[{"hexValue":"31","id":75133,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3604:1:113","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":75132,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3590:13:113","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":75130,"name":"address","nodeType":"ElementaryTypeName","src":"3594:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75131,"nodeType":"ArrayTypeName","src":"3594:9:113","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":75134,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3590:16:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"arguments":[{"hexValue":"30","id":75137,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3616:1:113","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":75136,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3608:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75135,"name":"address","nodeType":"ElementaryTypeName","src":"3608:7:113","typeDescriptions":{}}},"id":75138,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3608:10:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":75139,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3620:1:113","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"},{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"},{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_memory_ptr","typeString":"struct PointSystemConfig memory"},{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":75124,"name":"getParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75092,"src":"3490:9:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_enum$_ProposalType_$66076_$_t_enum$_PointSystem_$66081_$_t_struct$_PointSystemConfig_$66150_memory_ptr_$_t_struct$_ArbitrableConfig_$66164_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$_t_address_$_t_uint256_$returns$_t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr_$","typeString":"function (address,enum ProposalType,enum PointSystem,struct PointSystemConfig memory,struct ArbitrableConfig memory,address[] memory,address,uint256) pure returns (struct CVStrategyInitializeParamsV0_1 memory)"}},"id":75140,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3490:141:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"3443:188:113"},{"assignments":[75146],"declarations":[{"constant":false,"id":75146,"mutability":"mutable","name":"_pool_managers","nameLocation":"3659:14:113","nodeType":"VariableDeclaration","scope":75225,"src":"3642:31:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":75144,"name":"address","nodeType":"ElementaryTypeName","src":"3642:7:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75145,"nodeType":"ArrayTypeName","src":"3642:9:113","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":75152,"initialValue":{"arguments":[{"hexValue":"32","id":75150,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3690:1:113","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":75149,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3676:13:113","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":75147,"name":"address","nodeType":"ElementaryTypeName","src":"3680:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75148,"nodeType":"ArrayTypeName","src":"3680:9:113","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":75151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3676:16:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3642:50:113"},{"expression":{"id":75160,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":75153,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75146,"src":"3702:14:113","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":75155,"indexExpression":{"hexValue":"30","id":75154,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3717:1:113","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3702:17:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":75158,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3730:4:113","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyHelpers_$75454","typeString":"contract CVStrategyHelpers"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyHelpers_$75454","typeString":"contract CVStrategyHelpers"}],"id":75157,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3722:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75156,"name":"address","nodeType":"ElementaryTypeName","src":"3722:7:113","typeDescriptions":{}}},"id":75159,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3722:13:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3702:33:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75161,"nodeType":"ExpressionStatement","src":"3702:33:113"},{"expression":{"id":75170,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":75162,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75146,"src":"3745:14:113","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":75164,"indexExpression":{"hexValue":"31","id":75163,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3760:1:113","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3745:17:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":75167,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3773:3:113","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":75168,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3777:6:113","memberName":"sender","nodeType":"MemberAccess","src":"3773:10:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75166,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3765:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75165,"name":"address","nodeType":"ElementaryTypeName","src":"3765:7:113","typeDescriptions":{}}},"id":75169,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3765:19:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3745:39:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75171,"nodeType":"ExpressionStatement","src":"3745:39:113"},{"assignments":[75173],"declarations":[{"constant":false,"id":75173,"mutability":"mutable","name":"_token","nameLocation":"4042:6:113","nodeType":"VariableDeclaration","scope":75225,"src":"4034:14:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75172,"name":"address","nodeType":"ElementaryTypeName","src":"4034:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":75175,"initialValue":{"id":75174,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"4051:6:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"4034:23:113"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":75181,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75176,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75104,"src":"4071:5:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":75179,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4088:1:113","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":75178,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4080:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75177,"name":"address","nodeType":"ElementaryTypeName","src":"4080:7:113","typeDescriptions":{}}},"id":75180,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4080:10:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4071:19:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75187,"nodeType":"IfStatement","src":"4067:64:113","trueBody":{"id":75186,"nodeType":"Block","src":"4092:39:113","statements":[{"expression":{"id":75184,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75182,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75173,"src":"4106:6:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75183,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75104,"src":"4115:5:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4106:14:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75185,"nodeType":"ExpressionStatement","src":"4106:14:113"}]}},{"expression":{"id":75210,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75188,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75119,"src":"4140:6:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":75192,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75102,"src":"4253:8:113","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},{"arguments":[],"expression":{"argumentTypes":[],"id":75193,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"4263:10:113","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":75194,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4263:12:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75195,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75146,"src":"4277:14:113","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":75191,"name":"poolProfile_id1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74964,"src":"4237:15:113","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":75196,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4237:55:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":75199,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75097,"src":"4314:8:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75198,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4306:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75197,"name":"address","nodeType":"ElementaryTypeName","src":"4306:7:113","typeDescriptions":{}}},"id":75200,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4306:17:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":75203,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75123,"src":"4348:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66218_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"expression":{"id":75201,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4337:3:113","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":75202,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4341:6:113","memberName":"encode","nodeType":"MemberAccess","src":"4337:10:113","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":75204,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4337:18:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":75205,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75173,"src":"4369:6:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":75206,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4389:1:113","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":75207,"name":"metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74899,"src":"4404:8:113","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},{"id":75208,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75146,"src":"4426:14:113","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":75189,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75095,"src":"4149:4:113","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"id":75190,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4154:28:113","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":175,"src":"4149:33:113","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":75209,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4149:301:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4140:310:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75211,"nodeType":"ExpressionStatement","src":"4140:310:113"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"},"id":75222,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"id":75216,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75097,"src":"4491:8:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75215,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4483:8:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":75214,"name":"address","nodeType":"ElementaryTypeName","src":"4483:8:113","stateMutability":"payable","typeDescriptions":{}}},"id":75217,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4483:17:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":75213,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70089,"src":"4468:14:113","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$70089_$","typeString":"type(contract CVStrategyV0_0)"}},"id":75218,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4468:33:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70089","typeString":"contract CVStrategyV0_0"}},"id":75219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4502:12:113","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":66464,"src":"4468:46:113","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_enum$_ProposalType_$66076_$","typeString":"function () view external returns (enum ProposalType)"}},"id":75220,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4468:48:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":75221,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75107,"src":"4520:12:113","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"}},"src":"4468:64:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":75212,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"4461:6:113","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":75223,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4461:72:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75224,"nodeType":"ExpressionStatement","src":"4461:72:113"}]},"functionSelector":"e070e0ab","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"3038:10:113","parameters":{"id":75117,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75095,"mutability":"mutable","name":"allo","nameLocation":"3063:4:113","nodeType":"VariableDeclaration","scope":75226,"src":"3058:9:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},"typeName":{"id":75094,"nodeType":"UserDefinedTypeName","pathNode":{"id":75093,"name":"Allo","nameLocations":["3058:4:113"],"nodeType":"IdentifierPath","referencedDeclaration":1390,"src":"3058:4:113"},"referencedDeclaration":1390,"src":"3058:4:113","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"visibility":"internal"},{"constant":false,"id":75097,"mutability":"mutable","name":"strategy","nameLocation":"3085:8:113","nodeType":"VariableDeclaration","scope":75226,"src":"3077:16:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75096,"name":"address","nodeType":"ElementaryTypeName","src":"3077:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75099,"mutability":"mutable","name":"registryCommunity","nameLocation":"3111:17:113","nodeType":"VariableDeclaration","scope":75226,"src":"3103:25:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75098,"name":"address","nodeType":"ElementaryTypeName","src":"3103:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75102,"mutability":"mutable","name":"registry","nameLocation":"3148:8:113","nodeType":"VariableDeclaration","scope":75226,"src":"3138:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":75101,"nodeType":"UserDefinedTypeName","pathNode":{"id":75100,"name":"IRegistry","nameLocations":["3138:9:113"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"3138:9:113"},"referencedDeclaration":2802,"src":"3138:9:113","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":75104,"mutability":"mutable","name":"token","nameLocation":"3174:5:113","nodeType":"VariableDeclaration","scope":75226,"src":"3166:13:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75103,"name":"address","nodeType":"ElementaryTypeName","src":"3166:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75107,"mutability":"mutable","name":"proposalType","nameLocation":"3202:12:113","nodeType":"VariableDeclaration","scope":75226,"src":"3189:25:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"},"typeName":{"id":75106,"nodeType":"UserDefinedTypeName","pathNode":{"id":75105,"name":"ProposalType","nameLocations":["3189:12:113"],"nodeType":"IdentifierPath","referencedDeclaration":66076,"src":"3189:12:113"},"referencedDeclaration":66076,"src":"3189:12:113","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":75110,"mutability":"mutable","name":"pointSystem","nameLocation":"3236:11:113","nodeType":"VariableDeclaration","scope":75226,"src":"3224:23:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"},"typeName":{"id":75109,"nodeType":"UserDefinedTypeName","pathNode":{"id":75108,"name":"PointSystem","nameLocations":["3224:11:113"],"nodeType":"IdentifierPath","referencedDeclaration":66081,"src":"3224:11:113"},"referencedDeclaration":66081,"src":"3224:11:113","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":75113,"mutability":"mutable","name":"pointConfig","nameLocation":"3282:11:113","nodeType":"VariableDeclaration","scope":75226,"src":"3257:36:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_memory_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":75112,"nodeType":"UserDefinedTypeName","pathNode":{"id":75111,"name":"PointSystemConfig","nameLocations":["3257:17:113"],"nodeType":"IdentifierPath","referencedDeclaration":66150,"src":"3257:17:113"},"referencedDeclaration":66150,"src":"3257:17:113","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":75116,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3327:16:113","nodeType":"VariableDeclaration","scope":75226,"src":"3303:40:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":75115,"nodeType":"UserDefinedTypeName","pathNode":{"id":75114,"name":"ArbitrableConfig","nameLocations":["3303:16:113"],"nodeType":"IdentifierPath","referencedDeclaration":66164,"src":"3303:16:113"},"referencedDeclaration":66164,"src":"3303:16:113","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"3048:301:113"},"returnParameters":{"id":75120,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75119,"mutability":"mutable","name":"poolId","nameLocation":"3374:6:113","nodeType":"VariableDeclaration","scope":75226,"src":"3366:14:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75118,"name":"uint256","nodeType":"ElementaryTypeName","src":"3366:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3365:16:113"},"scope":75454,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":75267,"nodeType":"FunctionDefinition","src":"4546:578:113","nodes":[],"body":{"id":75266,"nodeType":"Block","src":"4853:271:113","nodes":[],"statements":[{"expression":{"arguments":[{"id":75253,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75229,"src":"4894:4:113","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},{"id":75254,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75231,"src":"4912:8:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75255,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75233,"src":"4934:17:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75256,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75236,"src":"4965:8:113","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},{"id":75257,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75238,"src":"4987:5:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75258,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75241,"src":"5006:12:113","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"}},{"id":75259,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75244,"src":"5032:11:113","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"}},{"arguments":[{"hexValue":"30","id":75261,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5075:1:113","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":75260,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66150,"src":"5057:17:113","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_PointSystemConfig_$66150_storage_ptr_$","typeString":"type(struct PointSystemConfig storage pointer)"}},"id":75262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5057:20:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_memory_ptr","typeString":"struct PointSystemConfig memory"}},{"id":75263,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75247,"src":"5091:16:113","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_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_$66076","typeString":"enum ProposalType"},{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"},{"typeIdentifier":"t_struct$_PointSystemConfig_$66150_memory_ptr","typeString":"struct PointSystemConfig memory"},{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_memory_ptr","typeString":"struct ArbitrableConfig memory"}],"id":75252,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[75226,75267],"referencedDeclaration":75226,"src":"4870:10:113","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_Allo_$1390_$_t_address_$_t_address_$_t_contract$_IRegistry_$2802_$_t_address_$_t_enum$_ProposalType_$66076_$_t_enum$_PointSystem_$66081_$_t_struct$_PointSystemConfig_$66150_memory_ptr_$_t_struct$_ArbitrableConfig_$66164_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":75264,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4870:247:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75251,"id":75265,"nodeType":"Return","src":"4863:254:113"}]},"functionSelector":"85294f18","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"4555:10:113","parameters":{"id":75248,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75229,"mutability":"mutable","name":"allo","nameLocation":"4580:4:113","nodeType":"VariableDeclaration","scope":75267,"src":"4575:9:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},"typeName":{"id":75228,"nodeType":"UserDefinedTypeName","pathNode":{"id":75227,"name":"Allo","nameLocations":["4575:4:113"],"nodeType":"IdentifierPath","referencedDeclaration":1390,"src":"4575:4:113"},"referencedDeclaration":1390,"src":"4575:4:113","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"visibility":"internal"},{"constant":false,"id":75231,"mutability":"mutable","name":"strategy","nameLocation":"4602:8:113","nodeType":"VariableDeclaration","scope":75267,"src":"4594:16:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75230,"name":"address","nodeType":"ElementaryTypeName","src":"4594:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75233,"mutability":"mutable","name":"registryCommunity","nameLocation":"4628:17:113","nodeType":"VariableDeclaration","scope":75267,"src":"4620:25:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75232,"name":"address","nodeType":"ElementaryTypeName","src":"4620:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75236,"mutability":"mutable","name":"registry","nameLocation":"4665:8:113","nodeType":"VariableDeclaration","scope":75267,"src":"4655:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":75235,"nodeType":"UserDefinedTypeName","pathNode":{"id":75234,"name":"IRegistry","nameLocations":["4655:9:113"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"4655:9:113"},"referencedDeclaration":2802,"src":"4655:9:113","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":75238,"mutability":"mutable","name":"token","nameLocation":"4691:5:113","nodeType":"VariableDeclaration","scope":75267,"src":"4683:13:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75237,"name":"address","nodeType":"ElementaryTypeName","src":"4683:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75241,"mutability":"mutable","name":"proposalType","nameLocation":"4719:12:113","nodeType":"VariableDeclaration","scope":75267,"src":"4706:25:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"},"typeName":{"id":75240,"nodeType":"UserDefinedTypeName","pathNode":{"id":75239,"name":"ProposalType","nameLocations":["4706:12:113"],"nodeType":"IdentifierPath","referencedDeclaration":66076,"src":"4706:12:113"},"referencedDeclaration":66076,"src":"4706:12:113","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66076","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":75244,"mutability":"mutable","name":"pointSystem","nameLocation":"4753:11:113","nodeType":"VariableDeclaration","scope":75267,"src":"4741:23:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"},"typeName":{"id":75243,"nodeType":"UserDefinedTypeName","pathNode":{"id":75242,"name":"PointSystem","nameLocations":["4741:11:113"],"nodeType":"IdentifierPath","referencedDeclaration":66081,"src":"4741:11:113"},"referencedDeclaration":66081,"src":"4741:11:113","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66081","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":75247,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"4798:16:113","nodeType":"VariableDeclaration","scope":75267,"src":"4774:40:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":75246,"nodeType":"UserDefinedTypeName","pathNode":{"id":75245,"name":"ArbitrableConfig","nameLocations":["4774:16:113"],"nodeType":"IdentifierPath","referencedDeclaration":66164,"src":"4774:16:113"},"referencedDeclaration":66164,"src":"4774:16:113","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66164_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"4565:255:113"},"returnParameters":{"id":75251,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75250,"mutability":"mutable","name":"poolId","nameLocation":"4845:6:113","nodeType":"VariableDeclaration","scope":75267,"src":"4837:14:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75249,"name":"uint256","nodeType":"ElementaryTypeName","src":"4837:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4836:16:113"},"scope":75454,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":75281,"nodeType":"FunctionDefinition","src":"5130:114:113","nodes":[],"body":{"id":75280,"nodeType":"Block","src":"5202:42:113","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75278,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75274,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75269,"src":"5219:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"commonType":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"},"id":75277,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":75275,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5229:2:113","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3131","id":75276,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5235:2:113","typeDescriptions":{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},"value":"11"},"src":"5229:8:113","typeDescriptions":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"}},"src":"5219:18:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75273,"id":75279,"nodeType":"Return","src":"5212:25:113"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_etherToFloat","nameLocation":"5139:13:113","parameters":{"id":75270,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75269,"mutability":"mutable","name":"_amount","nameLocation":"5161:7:113","nodeType":"VariableDeclaration","scope":75281,"src":"5153:15:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75268,"name":"uint256","nodeType":"ElementaryTypeName","src":"5153:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5152:17:113"},"returnParameters":{"id":75273,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75272,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75281,"src":"5193:7:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75271,"name":"uint256","nodeType":"ElementaryTypeName","src":"5193:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5192:9:113"},"scope":75454,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":75315,"nodeType":"FunctionDefinition","src":"5250:269:113","nodes":[],"body":{"id":75314,"nodeType":"Block","src":"5328:191:113","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75293,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75291,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75283,"src":"5346:2:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":75292,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74921,"src":"5352:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5346:13:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":75294,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5361:42:113","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":75290,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5338:7:113","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":75295,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5338:66:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75296,"nodeType":"ExpressionStatement","src":"5338:66:113"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75300,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75298,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75285,"src":"5422:2:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":75299,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74921,"src":"5427:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5422:12:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":75301,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5436:30:113","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":75297,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5414:7:113","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":75302,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5414:53:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75303,"nodeType":"ExpressionStatement","src":"5414:53:113"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75312,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75309,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75306,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75304,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75283,"src":"5486:2:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":75305,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75285,"src":"5491:2:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5486:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75307,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5485:9:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":75308,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74916,"src":"5497:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5485:19:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75310,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5484:21:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":75311,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5509:3:113","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"5484:28:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75289,"id":75313,"nodeType":"Return","src":"5477:35:113"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"5259:4:113","parameters":{"id":75286,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75283,"mutability":"mutable","name":"_a","nameLocation":"5272:2:113","nodeType":"VariableDeclaration","scope":75315,"src":"5264:10:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75282,"name":"uint256","nodeType":"ElementaryTypeName","src":"5264:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75285,"mutability":"mutable","name":"_b","nameLocation":"5284:2:113","nodeType":"VariableDeclaration","scope":75315,"src":"5276:10:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75284,"name":"uint256","nodeType":"ElementaryTypeName","src":"5276:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5263:24:113"},"returnParameters":{"id":75289,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75288,"mutability":"mutable","name":"_result","nameLocation":"5319:7:113","nodeType":"VariableDeclaration","scope":75315,"src":"5311:15:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75287,"name":"uint256","nodeType":"ElementaryTypeName","src":"5311:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5310:17:113"},"scope":75454,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":75379,"nodeType":"FunctionDefinition","src":"5525:447:113","nodes":[],"body":{"id":75378,"nodeType":"Block","src":"5603:369:113","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75327,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75325,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75317,"src":"5621:2:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":75326,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74921,"src":"5626:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5621:12:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":75328,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5635:30:113","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":75324,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5613:7:113","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":75329,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5613:53:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75330,"nodeType":"ExpressionStatement","src":"5613:53:113"},{"assignments":[75332],"declarations":[{"constant":false,"id":75332,"mutability":"mutable","name":"a","nameLocation":"5684:1:113","nodeType":"VariableDeclaration","scope":75378,"src":"5676:9:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75331,"name":"uint256","nodeType":"ElementaryTypeName","src":"5676:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":75334,"initialValue":{"id":75333,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75317,"src":"5688:2:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5676:14:113"},{"assignments":[75336],"declarations":[{"constant":false,"id":75336,"mutability":"mutable","name":"b","nameLocation":"5708:1:113","nodeType":"VariableDeclaration","scope":75378,"src":"5700:9:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75335,"name":"uint256","nodeType":"ElementaryTypeName","src":"5700:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":75338,"initialValue":{"id":75337,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75319,"src":"5712:2:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5700:14:113"},{"expression":{"id":75341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75339,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75322,"src":"5724:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75340,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74921,"src":"5734:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5724:17:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75342,"nodeType":"ExpressionStatement","src":"5724:17:113"},{"body":{"id":75376,"nodeType":"Block","src":"5765:201:113","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75350,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75348,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75346,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75336,"src":"5783:1:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":75347,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5787:1:113","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5783:5:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":75349,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5792:1:113","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5783:10:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":75374,"nodeType":"Block","src":"5873:83:113","statements":[{"expression":{"id":75368,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75363,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75322,"src":"5891:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":75365,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75322,"src":"5906:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":75366,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75332,"src":"5915:1:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":75364,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75315,"src":"5901:4:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":75367,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5901:16:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5891:26:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75369,"nodeType":"ExpressionStatement","src":"5891:26:113"},{"expression":{"id":75372,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75370,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75336,"src":"5935:1:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":75371,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5940:1:113","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5935:6:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75373,"nodeType":"ExpressionStatement","src":"5935:6:113"}]},"id":75375,"nodeType":"IfStatement","src":"5779:177:113","trueBody":{"id":75362,"nodeType":"Block","src":"5795:72:113","statements":[{"expression":{"id":75356,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75351,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75332,"src":"5813:1:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":75353,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75332,"src":"5822:1:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":75354,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75332,"src":"5825:1:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":75352,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75315,"src":"5817:4:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":75355,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5817:10:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5813:14:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75357,"nodeType":"ExpressionStatement","src":"5813:14:113"},{"expression":{"id":75360,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75358,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75336,"src":"5845:1:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":75359,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5851:1:113","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5845:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75361,"nodeType":"ExpressionStatement","src":"5845:7:113"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75345,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75343,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75336,"src":"5758:1:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":75344,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5762:1:113","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5758:5:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75377,"nodeType":"WhileStatement","src":"5751:215:113"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"5534:4:113","parameters":{"id":75320,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75317,"mutability":"mutable","name":"_a","nameLocation":"5547:2:113","nodeType":"VariableDeclaration","scope":75379,"src":"5539:10:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75316,"name":"uint256","nodeType":"ElementaryTypeName","src":"5539:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75319,"mutability":"mutable","name":"_b","nameLocation":"5559:2:113","nodeType":"VariableDeclaration","scope":75379,"src":"5551:10:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75318,"name":"uint256","nodeType":"ElementaryTypeName","src":"5551:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5538:24:113"},"returnParameters":{"id":75323,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75322,"mutability":"mutable","name":"_result","nameLocation":"5594:7:113","nodeType":"VariableDeclaration","scope":75379,"src":"5586:15:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75321,"name":"uint256","nodeType":"ElementaryTypeName","src":"5586:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5585:17:113"},"scope":75454,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":75436,"nodeType":"FunctionDefinition","src":"5978:380:113","nodes":[],"body":{"id":75435,"nodeType":"Block","src":"6141:217:113","nodes":[],"statements":[{"assignments":[75393],"declarations":[{"constant":false,"id":75393,"mutability":"mutable","name":"t","nameLocation":"6159:1:113","nodeType":"VariableDeclaration","scope":75435,"src":"6151:9:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75392,"name":"uint256","nodeType":"ElementaryTypeName","src":"6151:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":75395,"initialValue":{"id":75394,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75381,"src":"6163:11:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6151:23:113"},{"assignments":[75397],"declarations":[{"constant":false,"id":75397,"mutability":"mutable","name":"atTWO_128","nameLocation":"6192:9:113","nodeType":"VariableDeclaration","scope":75435,"src":"6184:17:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75396,"name":"uint256","nodeType":"ElementaryTypeName","src":"6184:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":75407,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75404,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75401,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75399,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75387,"src":"6210:5:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":75400,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6219:3:113","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"6210:12:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75402,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6209:14:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":75403,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74926,"src":"6226:1:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6209:18:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":75405,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75393,"src":"6229:1:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":75398,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75379,"src":"6204:4:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":75406,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6204:27:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6184:47:113"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75433,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75430,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75427,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75410,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75408,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75397,"src":"6251:9:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":75409,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75383,"src":"6263:9:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6251:21:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75411,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6250:23:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75425,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75419,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75414,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75412,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75385,"src":"6278:10:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":75413,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74926,"src":"6291:1:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6278:14:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75417,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75415,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74921,"src":"6296:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":75416,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75397,"src":"6306:9:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6296:19:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75418,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6295:21:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6278:38:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75420,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6277:40:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":75423,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75421,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74926,"src":"6321:1:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":75422,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75387,"src":"6325:5:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6321:9:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75424,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6320:11:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6277:54:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75426,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6276:56:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6250:82:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75428,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6249:84:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":75429,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74916,"src":"6336:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6249:94:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":75431,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6248:96:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":75432,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6348:3:113","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"6248:103:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75391,"id":75434,"nodeType":"Return","src":"6241:110:113"}]},"functionSelector":"e99ce911","implemented":true,"kind":"function","modifiers":[],"name":"_calculateConviction","nameLocation":"5987:20:113","parameters":{"id":75388,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75381,"mutability":"mutable","name":"_timePassed","nameLocation":"6016:11:113","nodeType":"VariableDeclaration","scope":75436,"src":"6008:19:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75380,"name":"uint256","nodeType":"ElementaryTypeName","src":"6008:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75383,"mutability":"mutable","name":"_lastConv","nameLocation":"6037:9:113","nodeType":"VariableDeclaration","scope":75436,"src":"6029:17:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75382,"name":"uint256","nodeType":"ElementaryTypeName","src":"6029:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75385,"mutability":"mutable","name":"_oldAmount","nameLocation":"6056:10:113","nodeType":"VariableDeclaration","scope":75436,"src":"6048:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75384,"name":"uint256","nodeType":"ElementaryTypeName","src":"6048:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75387,"mutability":"mutable","name":"decay","nameLocation":"6076:5:113","nodeType":"VariableDeclaration","scope":75436,"src":"6068:13:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75386,"name":"uint256","nodeType":"ElementaryTypeName","src":"6068:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6007:75:113"},"returnParameters":{"id":75391,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75390,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75436,"src":"6128:7:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75389,"name":"uint256","nodeType":"ElementaryTypeName","src":"6128:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6127:9:113"},"scope":75454,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":75453,"nodeType":"FunctionDefinition","src":"6364:153:113","nodes":[],"body":{"id":75452,"nodeType":"Block","src":"6437:80:113","nodes":[],"statements":[{"assignments":[null,null,75445,null],"declarations":[null,null,{"constant":false,"id":75445,"mutability":"mutable","name":"decay","nameLocation":"6459:5:113","nodeType":"VariableDeclaration","scope":75452,"src":"6451:13:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75444,"name":"uint256","nodeType":"ElementaryTypeName","src":"6451:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},null],"id":75449,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":75446,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75439,"src":"6469:8:113","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70089","typeString":"contract CVStrategyV0_0"}},"id":75447,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6478:8:113","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":66461,"src":"6469:17:113","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"function () view external returns (uint256,uint256,uint256,uint256)"}},"id":75448,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6469:19:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256,uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"6447:41:113"},{"expression":{"id":75450,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75445,"src":"6505:5:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75443,"id":75451,"nodeType":"Return","src":"6498:12:113"}]},"functionSelector":"5d6b4bc2","implemented":true,"kind":"function","modifiers":[],"name":"getDecay","nameLocation":"6373:8:113","parameters":{"id":75440,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75439,"mutability":"mutable","name":"strategy","nameLocation":"6397:8:113","nodeType":"VariableDeclaration","scope":75453,"src":"6382:23:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70089","typeString":"contract CVStrategyV0_0"},"typeName":{"id":75438,"nodeType":"UserDefinedTypeName","pathNode":{"id":75437,"name":"CVStrategyV0_0","nameLocations":["6382:14:113"],"nodeType":"IdentifierPath","referencedDeclaration":70089,"src":"6382:14:113"},"referencedDeclaration":70089,"src":"6382:14:113","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70089","typeString":"contract CVStrategyV0_0"}},"visibility":"internal"}],"src":"6381:25:113"},"returnParameters":{"id":75443,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75442,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75453,"src":"6428:7:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75441,"name":"uint256","nodeType":"ElementaryTypeName","src":"6428:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6427:9:113"},"scope":75454,"stateMutability":"view","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":74889,"name":"Native","nameLocations":["621:6:113"],"nodeType":"IdentifierPath","referencedDeclaration":3106,"src":"621:6:113"},"id":74890,"nodeType":"InheritanceSpecifier","src":"621:6:113"},{"baseName":{"id":74891,"name":"Accounts","nameLocations":["629:8:113"],"nodeType":"IdentifierPath","referencedDeclaration":5026,"src":"629:8:113"},"id":74892,"nodeType":"InheritanceSpecifier","src":"629:8:113"}],"canonicalName":"CVStrategyHelpers","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[75454,5026,11396,10603,3106],"name":"CVStrategyHelpers","nameLocation":"600:17:113","scope":75455,"usedErrors":[]}],"license":"AGPL-3.0-or-later"},"id":113} \ 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":"getDecay","inputs":[{"name":"strategy","type":"address","internalType":"contract CVStrategyV0_0"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"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"}]},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"sybilScorerThreshold","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":"sybilScorerThreshold","type":"uint256","internalType":"uint256"},{"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":"0x608034620001f4576040906001600160401b0381830181811183821017620001de57835260019182815283516060810181811084821117620001de578552602e81526020917f516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a4468838301526d6132666a3547656536684a7a535960901b868301528183820152516009558051928311620001de57600a548481811c91168015620001d3575b83821014620001bd57601f81116200016e575b5081601f8411600114620001015750928293918392600094620000f5575b50501b916000199060031b1c191617600a555b516126c69081620001fa8239f35b015192503880620000d4565b919083601f198116600a60005284600020946000905b8883831062000153575050501062000139575b505050811b01600a55620000e7565b015160001960f88460031b161c191690553880806200012a565b85870151885590960195948501948793509081019062000117565b600a60005282600020601f850160051c810191848610620001b2575b601f0160051c019085905b828110620001a5575050620000b6565b6000815501859062000195565b90915081906200018a565b634e487b7160e01b600052602260045260246000fd5b90607f1690620000a3565b634e487b7160e01b600052604160045260246000fd5b600080fdfe60808060405260048036101561001457600080fd5b600091823560e01c908162b1fad71461190657508063030e4006146118a85780630688b135146118535780630f166ad414611838578063174eedde14610dde5780631b96dce6146117df5780631e7bcb2e146117915780632e0f26251461176e57806337d1c4041461171e578063392f37e9146116d65780633f26479e146116b95780634bf4ba2114611679578063587c12431461162b5780635aff5999146115d05780635d6b4bc21461154257806366d003ac146114525780636a38dd0a1461130757806370a329441461117057806374d9284e14610dde578063759c9a861461110057806379e62d0d14610f5d5780637b2edf3214610f0f5780637cbe79ed14610ec7578063829e423f14610dde57806385294f1814610de35780638c7408c414610dde5780638e0d1a5014610d965780638e3c249314610d48578063a0cf0aea14610d19578063a407c67a14610a79578063aa3744bd14610a24578063b3e9b4fd14610810578063d1e82b58146107b5578063d1f2cd8814610769578063d5bee9f514610678578063da4bf08714610620578063dac4eb16146105c7578063e070e0ab146104c9578063e99ce911146103415763ef0d790f146101d957600080fd5b3461033d578160031936011261033d57604051916101f683611b66565b6013835260209283810172383937b334b632992fb737ba20a6b2b6b132b960691b81526040516102298682018093611d16565b6013815261023681611b66565b5190206040519063ffa1864960e01b825284820152600080516020612671833981519152908581602481855afa9081156103325784916102f5575b50813b156102f157604080516318caf8e360e31b81526001600160a01b03909216958201869052602482015291839183918290849082906102b6906044830190611dae565b03925af180156102e6576102cf575b5050604051908152f35b6102d98291611ad0565b6102e357806102c5565b80fd5b6040513d84823e3d90fd5b8380fd5b90508581813d831161032b575b61030c8183611b9c565b810103126102f157516001600160a01b03811681036102f15738610271565b503d610302565b6040513d86823e3d90fd5b5080fd5b503461033d57608036600319011261033d5760443591600160801b9162989680606435608081901b829004858110156104865785908435805b61043257505060249661038e8835886120a5565b968482029180830486149015171561042057820391821161040e57906103b3916120a5565b908083039280841161040e57146103fc570483018093116103ea576001607f1b83019283106103ea576020836040519060801c8152f35b634e487b7160e01b8252601190529050fd5b634e487b7160e01b8452601283528584fd5b634e487b7160e01b8652601185528786fd5b634e487b7160e01b8752601186528887fd5b6001918183166104525780610446916125a5565b911c90815b909161037a565b80925061045f91986125a5565b96600019810190811161047357908161044b565b634e487b7160e01b875260118652602487fd5b60405162461bcd60e51b8152602081860152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b503461033d576101c036600319011261033d576104e4611a62565b906104ed611a8e565b6104f5611aa4565b6104fd611a78565b610505611aba565b9160a4359360038510156105c35760c435958610156105c35760203660e31901126105c3576040519661053788611af9565b60e435885260c0366101031901126105bf57604051986105568a611b14565b6001600160a01b039061010435828116810361033d578b526101243591821682036102e35760206105b78c8c8c8c8c8c8c8c8c8c8b8a01526101443560408a01526101643560608a01526101843560808a01526101a43560a08a01526120ce565b604051908152f35b8880fd5b8780fd5b503461033d578160031936011261033d57604051916105e583611b66565b600e83526020928381016d3932b3b4b9ba393cafb7bbb732b960911b81526040516106138682018093611d62565b600e815261023681611b66565b503461033d578160031936011261033d576040519161063e83611b66565b600d83526020928381016c616c6c6f5f747265617375727960981b815260405161066b8682018093611cf0565b600d815261023681611b66565b503461033d578160031936011261033d576040519161069683611b66565b600b928381526020936a1c985b991bdb4818da185960aa1b858301526040519085845b82811061075557505083602b83015281526106d381611b66565b8481519101206040519063ffa1864960e01b825284820152600080516020612671833981519152908581602481855afa9081156103325784916102f55750813b156102f157604080516318caf8e360e31b81526001600160a01b03909216958201869052602482015291839183918290849082906102b6906044830190611dae565b8181860101518282860101520186906106b9565b503461033d578160031936011261033d576040519161078783611b66565b600e83526020928381016d383937b334b63298afb7bbb732b960911b81526040516106138682018093611d62565b503461033d578160031936011261033d57604051916107d383611b66565b601083526020928381016f3837b7b62fb737ba20a6b0b730b3b2b960811b81526040516108038682018093611d88565b6010815261023681611b66565b503461033d576101a036600319011261033d5761082b611a62565b9060036024351015610a2057806044351015610a20576020366063190112610a20576040519161085a83611af9565b606435835260c03660831901126102f1576040519161087883611b14565b6084356001600160a01b0381168103610a1c57835260a4356001600160a01b0381168103610a1c57602084015260c435604084015260e43560608401526101043560808401526101243560a084015261014435906001600160401b038211610a1c576108e691369101611bbf565b61016435939092906001600160a01b0385168503610a1c5794610a07956040519561091087611b2f565b60405161091c81611b4b565b838152836020820152836040820152836060820152875282602088015282604088015260405161094b81611af9565b8381526060880152604051608088019361096482611b14565b80825280602083015280604083015280606083015280608083015260a0820152835261010087019460608652629895b7604089510152621e84808851526127106020895101526702c68af0bb14000060608951015260018060a01b031660a08801526024356020880152604435604088015260018060a01b031660c08701526101843560e0870152805115610a0b575b6060860152525260405191829182611e2b565b0390f35b680ad78ebc5ac620000081526109f4565b8580fd5b8280fd5b503461033d578160031936011261033d5760405191610a4283611b66565b600a835260209283810169726563697069656e743160b01b8152604051610a6c8682018093611d3c565b600a815261023681611b66565b5090346102e357806003193601126102e35760405191610a9883611b81565b6002835260209160403684860137604051610ab281611b66565b601081528381016f70726f66696c65325f6d656d6265723160801b8152604051610adf8682018093611d88565b60108152610aec81611b66565b5190206040519063ffa1864960e01b9081835285830152600080516020612671833981519152908683602481855afa928315610d0e578593610ccf575b50813b15610ccb57604051936318caf8e360e31b94858152868180610b6860018060a01b0380991695868d840152604060248401526044830190611dae565b038183885af18015610cc057908791610cac575b5050610b8789611f2d565b5260405193610b9585611b66565b601085528785016f383937b334b632992fb6b2b6b132b91960811b8152604051610bc28a82018093611d88565b60108152610bcf81611b66565b519020604051928352878301528782602481865afa918215610ca1578692610c69575b50823b15610a1c57908580949392610c2660405197889687958694855216809b840152604060248401526044830190611dae565b03925af180156102e657610c55575b5050610c4083611f50565b52610a07604051928284938452830190611dee565b610c5f8291611ad0565b6102e35780610c35565b9091508781813d8311610c9a575b610c818183611b9c565b81010312610a1c57518381168103610a1c579038610bf2565b503d610c77565b6040513d88823e3d90fd5b610cb590611ad0565b610a1c578538610b7c565b6040513d89823e3d90fd5b8480fd5b9092508681813d8311610d07575b610ce78183611b9c565b81010312610ccb57516001600160a01b0381168103610ccb579138610b29565b503d610cdd565b6040513d87823e3d90fd5b82346102e357806003193601126102e357602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b503461033d578160031936011261033d5760405191610d6683611b66565b601083526020928381016f383937b334b632992fb6b2b6b132b91960811b81526040516108038682018093611d88565b503461033d578160031936011261033d5760405191610db483611b66565b600a8352602092838101693837b7b62fb0b236b4b760b11b8152604051610a6c8682018093611d3c565b611a41565b503461033d576101a036600319011261033d57610dfe611a62565b90610e07611a8e565b610e0f611aa4565b610e17611a78565b610e1f611aba565b9160a4359360038510156105c35760c435958610156105c35760c03660e31901126105c35760405196610e5188611b14565b6001600160a01b0360e4358181168103610ec3578952610104359081168103610ebf5791889795939160209a9795938b6105b79b01526101243560408a01526101443560608a01526101643560808a01526101843560a08a015260405197610eb889611af9565b88526120ce565b8980fd5b8a80fd5b503461033d578160031936011261033d5760405191610ee583611b66565b600a83526020928381016930b63637afb7bbb732b960b11b8152604051610a6c8682018093611d3c565b503461033d578160031936011261033d5760405191610f2d83611b66565b601083526020928381016f383937b334b63298afb6b2b6b132b91960811b81526040516108038682018093611d88565b5090346102e357806003193601126102e35760405191610f7c83611b81565b6002835260209160403684860137604051610f9681611b66565b600d81528381016c706f6f6c5f6d616e616765723160981b8152604051610fc08682018093611cf0565b600d8152610fcd81611b66565b5190206040519063ffa1864960e01b9081835285830152600080516020612671833981519152908683602481855afa928315610d0e5785936110c1575b50813b15610ccb57604051936318caf8e360e31b9485815286818061104960018060a01b0380991695868d840152604060248401526044830190611dae565b038183885af18015610cc0579087916110ad575b505061106889611f2d565b526040519361107685611b66565b600d85528785016c3837b7b62fb6b0b730b3b2b91960991b81526040516110a08a82018093611cf0565b600d8152610bcf81611b66565b6110b690611ad0565b610a1c57853861105d565b9092508681813d83116110f9575b6110d98183611b9c565b81010312610ccb57516001600160a01b0381168103610ccb57913861100a565b503d6110cf565b503461033d578160031936011261033d576040519161111e83611b66565b600c928381526020936b1b9bd7dc9958da5c1a595b9d60a21b858301526040519085845b82811061115c57505083602c83015281526106d381611b66565b818186010151828286010152018690611142565b5090346102e357806003193601126102e3576040519161118f83611b81565b60028352602091604036848601376040516111a981611b66565b601081528381016f70726f66696c65315f6d656d6265723160801b81526040516111d68682018093611d88565b601081526111e381611b66565b5190206040519063ffa1864960e01b9081835285830152600080516020612671833981519152908683602481855afa928315610d0e5785936112c8575b50813b15610ccb57604051936318caf8e360e31b9485815286818061125f60018060a01b0380991695868d840152604060248401526044830190611dae565b038183885af18015610cc0576112b5575b5061127a89611f2d565b526040519361128885611b66565b601085528785016f383937b334b63298afb6b2b6b132b91960811b8152604051610bc28a82018093611d88565b6112c190969196611ad0565b9438611270565b9092508681813d8311611300575b6112e08183611b9c565b81010312610ccb57516001600160a01b0381168103610ccb579138611220565b503d6112d6565b503461033d578160031936011261033d576040519161132583611b66565b600d83526020928381016c3837b7b62fb6b0b730b3b2b91960991b81526040516113528682018093611cf0565b600d815261135f81611b66565b5190206040519063ffa1864960e01b825284820152600080516020612671833981519152908581602481855afa908115610332578491611415575b50813b156102f157604080516318caf8e360e31b81526001600160a01b0390921695820186905260248201529291829184918290849082906113e0906044830190611dae565b03925af190811561140957506113fa575b50604051908152f35b61140390611ad0565b386113f1565b604051903d90823e3d90fd5b90508581813d831161144b575b61142c8183611b9c565b810103126102f157516001600160a01b03811681036102f1573861139a565b503d611422565b503461033d578160031936011261033d576040519161147083611b66565b600992838152602093681c9958da5c1a595b9d60ba1b858301526040519085845b82811061152e57505083602983015281526114ab81611b66565b8481519101206040519063ffa1864960e01b825284820152600080516020612671833981519152908581602481855afa9081156103325784916114155750813b156102f157604080516318caf8e360e31b81526001600160a01b0390921695820186905260248201529291829184918290849082906113e0906044830190611dae565b818186010151828286010152018690611491565b5090346102e35760203660031901126102e35781356001600160a01b0381169081900361033d57608090604051938480926302506b8760e41b82525afa908115611409578091611598575b602082604051908152f35b90506080823d82116115c8575b816115b260809383611b9c565b810103126102e35750604060209101513861158d565b3d91506115a5565b503461033d578160031936011261033d57604051916115ee83611b66565b601083526020928381016f726563697069656e744164647265737360801b815260405161161e8682018093611d88565b6010815261135f81611b66565b503461033d578160031936011261033d576040519161164983611b66565b601083526020928381016f70726f66696c65325f6d656d6265723160801b815260405161161e8682018093611d88565b82346102e357806003193601126102e357610a0760405161169981611b81565b600281526040366020830137604051918291602083526020830190611dee565b82346102e357806003193601126102e35760206040516127108152f35b82346102e357806003193601126102e35760095460405190611702826116fb81611c35565b0383611b9c565b610a076040519283928352604060208401526040830190611dae565b5090346102e35760603660031901126102e357611739611a62565b91611742611a8e565b91604435906001600160401b0382116102e35760206105b7868661176836878901611bbf565b91611f60565b82346102e357806003193601126102e3576020604051670de0b6b3a76400008152f35b503461033d578160031936011261033d57604051916117af83611b66565b601083526020928381016f70726f66696c65315f6d656d6265723160801b815260405161161e8682018093611d88565b503461033d578160031936011261033d57604051916117fd83611b66565b600e83526020928381016d383937b334b632992fb7bbb732b960911b815260405161182b8682018093611d62565b600e815261135f81611b66565b82346102e357806003193601126102e3576020604051308152f35b503461033d578160031936011261033d576040519161187183611b66565b600a8352602092838101693932b1b4b834b2b73a1960b11b815260405161189b8682018093611d3c565b600a815261135f81611b66565b503461033d578160031936011261033d57604051916118c683611b66565b6013835260209283810172383937b334b63298afb737ba20a6b2b6b132b960691b81526040516118f98682018093611d16565b6013815261135f81611b66565b8284346102e357806003193601126102e35761192183611b66565b600d83526020928381016c706f6f6c5f6d616e616765723160981b815260405161194e8682018093611cf0565b600d815261195b81611b66565b5190206040519063ffa1864960e01b825284820152600080516020612671833981519152908581602481855afa908115610332578491611a04575b50813b156102f157604080516318caf8e360e31b81526001600160a01b0390921695820186905260248201529291829184918290849082906119dc906044830190611dae565b03925af190811561140957506119f55750604051908152f35b6119fe90611ad0565b826113f1565b90508581813d8311611a3a575b611a1b8183611b9c565b810103126102f157516001600160a01b03811681036102f15786611996565b503d611a11565b34611a5d576000366003190112611a5d57602060405160008152f35b600080fd5b600435906001600160a01b0382168203611a5d57565b606435906001600160a01b0382168203611a5d57565b602435906001600160a01b0382168203611a5d57565b604435906001600160a01b0382168203611a5d57565b608435906001600160a01b0382168203611a5d57565b6001600160401b038111611ae357604052565b634e487b7160e01b600052604160045260246000fd5b602081019081106001600160401b03821117611ae357604052565b60c081019081106001600160401b03821117611ae357604052565b61012081019081106001600160401b03821117611ae357604052565b608081019081106001600160401b03821117611ae357604052565b604081019081106001600160401b03821117611ae357604052565b606081019081106001600160401b03821117611ae357604052565b601f909101601f19168101906001600160401b03821190821017611ae357604052565b9080601f83011215611a5d578135906001600160401b038211611ae3578160051b60405193602093611bf385840187611b9c565b85528380860192820101928311611a5d578301905b828210611c16575050505090565b81356001600160a01b0381168103611a5d578152908301908301611c08565b90600091600a549060019082821c91808416938415611ce6575b6020948585108114611cd057848452908115611cb35750600114611c74575b50505050565b9293945090600a6000528360002092846000945b838610611c9f575050505001019038808080611c6e565b805485870183015294019385908201611c88565b60ff191685840152505090151560051b0101915038808080611c6e565b634e487b7160e01b600052602260045260246000fd5b92607f1692611c4f565b60005b600d8110611d06575050600d6000910152565b8181015183820152602001611cf3565b60005b60138110611d2c57505060136000910152565b8181015183820152602001611d19565b60005b600a8110611d52575050600a6000910152565b8181015183820152602001611d3f565b60005b600e8110611d78575050600e6000910152565b8181015183820152602001611d65565b60005b60108110611d9e57505060106000910152565b8181015183820152602001611d8b565b919082519283825260005b848110611dda575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201611db9565b90815180825260208080930193019160005b828110611e0e575050505090565b83516001600160a01b031685529381019392810192600101611e00565b602081526060825180516020840152602081015160408401526040810151828401520151608082015260208201516003811015611f175760a082015260408201516004811015611f1757611f14926102409160c084015260608101515160e084015260808101519060018060a01b0360a0818451169361010094858801528260208201511661012088015260408101516101408801526060810151610160880152608081015161018088015201516101a08601528060a0830151166101c086015260c0820151166101e085015260e0810151610200850152015191610220808201520190611dee565b90565b634e487b7160e01b600052602160045260246000fd5b805115611f3a5760200190565b634e487b7160e01b600052603260045260246000fd5b805160011015611f3a5760400190565b90600b5415611f73575b505050600b5490565b604080519092818401906001600160401b03821183831017611ae35761202b918552600183528451611fa481611b66565b600c8152600060209586956b506f6f6c50726f66696c653160a01b8785015286810193845261204d89519a8b9788968794633a92f65f60e01b86526002600487015260a06024870152600e60a48701526d506f6f6c2050726f66696c65203160901b60c487015260e060448701525160e4860152518c610104860152610124850190611dae565b6001600160a01b03948516606485015283810360031901608485015290611dee565b0393165af191821561209b575060009161206f575b50600b5550388080611f6a565b82813d8311612094575b6120838183611b9c565b810103126102e35750518038612062565b503d612079565b513d6000823e3d90fd5b818102929181159184041417156120b857565b634e487b7160e01b600052601160045260246000fd5b949590989793929193600097604051926120e784611b66565b6001845260203681860137604051966120ff88611b2f565b60405161210b81611b4b565b8b81528b60208201528b60408201528b606082015288528a60208901528a604089015260405161213a81611af9565b8b8152606089015260405161214e81611b14565b8b81528b60208201528b60408201528b60608201528b60808201528b60a082015260808901528a60c08901528a60e08901526060610100890152629895b7604089510152621e84808851526127106020895101526702c68af0bb14000060608951015260018060a01b031660a088015260038910156125915788602088015260048110156125915760408701528860c08701528860e0870152805115612580575b606086015260808501526101008401526040519061220c82611b81565b6002825260403660208401373061222283611f2d565b523361222d83611f50565b5273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee926001600160a01b038116612578575b506040519061226182611b66565b600a825260208201693837b7b62fb0b236b4b760b11b815260405161228a602082018093611d3c565b600a815261229781611b66565b519020916040519263ffa1864960e01b8452600484015260008051602061267183398151915290602084602481855afa93841561256d578a94612529575b50813b15610ebf576123168a9283926040519485809481936318caf8e360e31b835260018060a01b038b166004840152604060248401526044830190611dae565b03925af1801561251e57908b9695949392916124e8575b50936123e76123a197948461236a61234d60209a978e9761235c9b611f60565b94604051998a918c8301611e2b565b03601f1981018a5289611b9c565b604051998a98899788966370803ea560e11b8852600488015260018060a01b0316602487015260e0604487015260e4860190611dae565b9160018060a01b031660648501528460848501526123d8604060031993848782030160a48801526009548152818c82015201611c35565b918483030160c4850152611dee565b03926001600160a01b03165af19081156124aa5783916124b5575b50604051631a8ecfcb60e11b81529094602090829060049082906001600160a01b03165afa9081156124aa57839161246f575b50600381101561245b57036124475750565b634e487b7160e01b81526001600452602490fd5b634e487b7160e01b83526021600452602483fd5b90506020813d6020116124a2575b8161248a60209383611b9c565b81010312610a2057516003811015610a205738612435565b3d915061247d565b6040513d85823e3d90fd5b90506020813d6020116124e0575b816124d060209383611b9c565b81010312610a2057516020612402565b3d91506124c3565b6123a197948461236a61234d60209a9761235c9a96979e61250b6123e797611ad0565b9e97969a5050505094975094975061232d565b6040513d8b823e3d90fd5b9093506020813d602011612565575b8161254560209383611b9c565b81010312610ebf57516001600160a01b0381168103610ebf5792386122d5565b3d9150612538565b6040513d8c823e3d90fd5b925038612253565b680ad78ebc5ac620000081526121ef565b634e487b7160e01b8a52602160045260248afd5b90600160801b80831161261a578110156125d6576125c2916120a5565b6001607f1b81019081106120b85760801c90565b60405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b60405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608490fdfe0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12da26469706673582212204b7a4a2bb116d2f715981cc6076eb4e2d5b5148337d992a5c8c893c41da1036a64736f6c63430008130033","sourceMap":"591:5928:129:-:0;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;671:82;;;;591:5928;;671:82;591:5928;;;;;;;;;;;;;;;;;;;;-1:-1:-1;591:5928:129;;;;;;;;;;;-1:-1:-1;591:5928:129;;;;;;;;;;;;;;;;-1:-1:-1;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;591:5928:129;;;;;;;;;;;;;-1:-1:-1;591:5928:129;;-1:-1:-1;591:5928:129;;-1:-1:-1;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;591:5928:129;;;;;;;;-1:-1:-1;591:5928:129;;-1:-1:-1;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;591:5928:129;;;;;;;;;;-1:-1:-1;591:5928:129;;;;;;;;-1:-1:-1;591:5928:129;;;;;-1:-1:-1;591:5928:129;;;;;;;;;;;;-1:-1:-1;591:5928:129;;;;;-1:-1:-1;591:5928:129;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60808060405260048036101561001457600080fd5b600091823560e01c908162b1fad71461190657508063030e4006146118a85780630688b135146118535780630f166ad414611838578063174eedde14610dde5780631b96dce6146117df5780631e7bcb2e146117915780632e0f26251461176e57806337d1c4041461171e578063392f37e9146116d65780633f26479e146116b95780634bf4ba2114611679578063587c12431461162b5780635aff5999146115d05780635d6b4bc21461154257806366d003ac146114525780636a38dd0a1461130757806370a329441461117057806374d9284e14610dde578063759c9a861461110057806379e62d0d14610f5d5780637b2edf3214610f0f5780637cbe79ed14610ec7578063829e423f14610dde57806385294f1814610de35780638c7408c414610dde5780638e0d1a5014610d965780638e3c249314610d48578063a0cf0aea14610d19578063a407c67a14610a79578063aa3744bd14610a24578063b3e9b4fd14610810578063d1e82b58146107b5578063d1f2cd8814610769578063d5bee9f514610678578063da4bf08714610620578063dac4eb16146105c7578063e070e0ab146104c9578063e99ce911146103415763ef0d790f146101d957600080fd5b3461033d578160031936011261033d57604051916101f683611b66565b6013835260209283810172383937b334b632992fb737ba20a6b2b6b132b960691b81526040516102298682018093611d16565b6013815261023681611b66565b5190206040519063ffa1864960e01b825284820152600080516020612671833981519152908581602481855afa9081156103325784916102f5575b50813b156102f157604080516318caf8e360e31b81526001600160a01b03909216958201869052602482015291839183918290849082906102b6906044830190611dae565b03925af180156102e6576102cf575b5050604051908152f35b6102d98291611ad0565b6102e357806102c5565b80fd5b6040513d84823e3d90fd5b8380fd5b90508581813d831161032b575b61030c8183611b9c565b810103126102f157516001600160a01b03811681036102f15738610271565b503d610302565b6040513d86823e3d90fd5b5080fd5b503461033d57608036600319011261033d5760443591600160801b9162989680606435608081901b829004858110156104865785908435805b61043257505060249661038e8835886120a5565b968482029180830486149015171561042057820391821161040e57906103b3916120a5565b908083039280841161040e57146103fc570483018093116103ea576001607f1b83019283106103ea576020836040519060801c8152f35b634e487b7160e01b8252601190529050fd5b634e487b7160e01b8452601283528584fd5b634e487b7160e01b8652601185528786fd5b634e487b7160e01b8752601186528887fd5b6001918183166104525780610446916125a5565b911c90815b909161037a565b80925061045f91986125a5565b96600019810190811161047357908161044b565b634e487b7160e01b875260118652602487fd5b60405162461bcd60e51b8152602081860152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b503461033d576101c036600319011261033d576104e4611a62565b906104ed611a8e565b6104f5611aa4565b6104fd611a78565b610505611aba565b9160a4359360038510156105c35760c435958610156105c35760203660e31901126105c3576040519661053788611af9565b60e435885260c0366101031901126105bf57604051986105568a611b14565b6001600160a01b039061010435828116810361033d578b526101243591821682036102e35760206105b78c8c8c8c8c8c8c8c8c8c8b8a01526101443560408a01526101643560608a01526101843560808a01526101a43560a08a01526120ce565b604051908152f35b8880fd5b8780fd5b503461033d578160031936011261033d57604051916105e583611b66565b600e83526020928381016d3932b3b4b9ba393cafb7bbb732b960911b81526040516106138682018093611d62565b600e815261023681611b66565b503461033d578160031936011261033d576040519161063e83611b66565b600d83526020928381016c616c6c6f5f747265617375727960981b815260405161066b8682018093611cf0565b600d815261023681611b66565b503461033d578160031936011261033d576040519161069683611b66565b600b928381526020936a1c985b991bdb4818da185960aa1b858301526040519085845b82811061075557505083602b83015281526106d381611b66565b8481519101206040519063ffa1864960e01b825284820152600080516020612671833981519152908581602481855afa9081156103325784916102f55750813b156102f157604080516318caf8e360e31b81526001600160a01b03909216958201869052602482015291839183918290849082906102b6906044830190611dae565b8181860101518282860101520186906106b9565b503461033d578160031936011261033d576040519161078783611b66565b600e83526020928381016d383937b334b63298afb7bbb732b960911b81526040516106138682018093611d62565b503461033d578160031936011261033d57604051916107d383611b66565b601083526020928381016f3837b7b62fb737ba20a6b0b730b3b2b960811b81526040516108038682018093611d88565b6010815261023681611b66565b503461033d576101a036600319011261033d5761082b611a62565b9060036024351015610a2057806044351015610a20576020366063190112610a20576040519161085a83611af9565b606435835260c03660831901126102f1576040519161087883611b14565b6084356001600160a01b0381168103610a1c57835260a4356001600160a01b0381168103610a1c57602084015260c435604084015260e43560608401526101043560808401526101243560a084015261014435906001600160401b038211610a1c576108e691369101611bbf565b61016435939092906001600160a01b0385168503610a1c5794610a07956040519561091087611b2f565b60405161091c81611b4b565b838152836020820152836040820152836060820152875282602088015282604088015260405161094b81611af9565b8381526060880152604051608088019361096482611b14565b80825280602083015280604083015280606083015280608083015260a0820152835261010087019460608652629895b7604089510152621e84808851526127106020895101526702c68af0bb14000060608951015260018060a01b031660a08801526024356020880152604435604088015260018060a01b031660c08701526101843560e0870152805115610a0b575b6060860152525260405191829182611e2b565b0390f35b680ad78ebc5ac620000081526109f4565b8580fd5b8280fd5b503461033d578160031936011261033d5760405191610a4283611b66565b600a835260209283810169726563697069656e743160b01b8152604051610a6c8682018093611d3c565b600a815261023681611b66565b5090346102e357806003193601126102e35760405191610a9883611b81565b6002835260209160403684860137604051610ab281611b66565b601081528381016f70726f66696c65325f6d656d6265723160801b8152604051610adf8682018093611d88565b60108152610aec81611b66565b5190206040519063ffa1864960e01b9081835285830152600080516020612671833981519152908683602481855afa928315610d0e578593610ccf575b50813b15610ccb57604051936318caf8e360e31b94858152868180610b6860018060a01b0380991695868d840152604060248401526044830190611dae565b038183885af18015610cc057908791610cac575b5050610b8789611f2d565b5260405193610b9585611b66565b601085528785016f383937b334b632992fb6b2b6b132b91960811b8152604051610bc28a82018093611d88565b60108152610bcf81611b66565b519020604051928352878301528782602481865afa918215610ca1578692610c69575b50823b15610a1c57908580949392610c2660405197889687958694855216809b840152604060248401526044830190611dae565b03925af180156102e657610c55575b5050610c4083611f50565b52610a07604051928284938452830190611dee565b610c5f8291611ad0565b6102e35780610c35565b9091508781813d8311610c9a575b610c818183611b9c565b81010312610a1c57518381168103610a1c579038610bf2565b503d610c77565b6040513d88823e3d90fd5b610cb590611ad0565b610a1c578538610b7c565b6040513d89823e3d90fd5b8480fd5b9092508681813d8311610d07575b610ce78183611b9c565b81010312610ccb57516001600160a01b0381168103610ccb579138610b29565b503d610cdd565b6040513d87823e3d90fd5b82346102e357806003193601126102e357602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b503461033d578160031936011261033d5760405191610d6683611b66565b601083526020928381016f383937b334b632992fb6b2b6b132b91960811b81526040516108038682018093611d88565b503461033d578160031936011261033d5760405191610db483611b66565b600a8352602092838101693837b7b62fb0b236b4b760b11b8152604051610a6c8682018093611d3c565b611a41565b503461033d576101a036600319011261033d57610dfe611a62565b90610e07611a8e565b610e0f611aa4565b610e17611a78565b610e1f611aba565b9160a4359360038510156105c35760c435958610156105c35760c03660e31901126105c35760405196610e5188611b14565b6001600160a01b0360e4358181168103610ec3578952610104359081168103610ebf5791889795939160209a9795938b6105b79b01526101243560408a01526101443560608a01526101643560808a01526101843560a08a015260405197610eb889611af9565b88526120ce565b8980fd5b8a80fd5b503461033d578160031936011261033d5760405191610ee583611b66565b600a83526020928381016930b63637afb7bbb732b960b11b8152604051610a6c8682018093611d3c565b503461033d578160031936011261033d5760405191610f2d83611b66565b601083526020928381016f383937b334b63298afb6b2b6b132b91960811b81526040516108038682018093611d88565b5090346102e357806003193601126102e35760405191610f7c83611b81565b6002835260209160403684860137604051610f9681611b66565b600d81528381016c706f6f6c5f6d616e616765723160981b8152604051610fc08682018093611cf0565b600d8152610fcd81611b66565b5190206040519063ffa1864960e01b9081835285830152600080516020612671833981519152908683602481855afa928315610d0e5785936110c1575b50813b15610ccb57604051936318caf8e360e31b9485815286818061104960018060a01b0380991695868d840152604060248401526044830190611dae565b038183885af18015610cc0579087916110ad575b505061106889611f2d565b526040519361107685611b66565b600d85528785016c3837b7b62fb6b0b730b3b2b91960991b81526040516110a08a82018093611cf0565b600d8152610bcf81611b66565b6110b690611ad0565b610a1c57853861105d565b9092508681813d83116110f9575b6110d98183611b9c565b81010312610ccb57516001600160a01b0381168103610ccb57913861100a565b503d6110cf565b503461033d578160031936011261033d576040519161111e83611b66565b600c928381526020936b1b9bd7dc9958da5c1a595b9d60a21b858301526040519085845b82811061115c57505083602c83015281526106d381611b66565b818186010151828286010152018690611142565b5090346102e357806003193601126102e3576040519161118f83611b81565b60028352602091604036848601376040516111a981611b66565b601081528381016f70726f66696c65315f6d656d6265723160801b81526040516111d68682018093611d88565b601081526111e381611b66565b5190206040519063ffa1864960e01b9081835285830152600080516020612671833981519152908683602481855afa928315610d0e5785936112c8575b50813b15610ccb57604051936318caf8e360e31b9485815286818061125f60018060a01b0380991695868d840152604060248401526044830190611dae565b038183885af18015610cc0576112b5575b5061127a89611f2d565b526040519361128885611b66565b601085528785016f383937b334b63298afb6b2b6b132b91960811b8152604051610bc28a82018093611d88565b6112c190969196611ad0565b9438611270565b9092508681813d8311611300575b6112e08183611b9c565b81010312610ccb57516001600160a01b0381168103610ccb579138611220565b503d6112d6565b503461033d578160031936011261033d576040519161132583611b66565b600d83526020928381016c3837b7b62fb6b0b730b3b2b91960991b81526040516113528682018093611cf0565b600d815261135f81611b66565b5190206040519063ffa1864960e01b825284820152600080516020612671833981519152908581602481855afa908115610332578491611415575b50813b156102f157604080516318caf8e360e31b81526001600160a01b0390921695820186905260248201529291829184918290849082906113e0906044830190611dae565b03925af190811561140957506113fa575b50604051908152f35b61140390611ad0565b386113f1565b604051903d90823e3d90fd5b90508581813d831161144b575b61142c8183611b9c565b810103126102f157516001600160a01b03811681036102f1573861139a565b503d611422565b503461033d578160031936011261033d576040519161147083611b66565b600992838152602093681c9958da5c1a595b9d60ba1b858301526040519085845b82811061152e57505083602983015281526114ab81611b66565b8481519101206040519063ffa1864960e01b825284820152600080516020612671833981519152908581602481855afa9081156103325784916114155750813b156102f157604080516318caf8e360e31b81526001600160a01b0390921695820186905260248201529291829184918290849082906113e0906044830190611dae565b818186010151828286010152018690611491565b5090346102e35760203660031901126102e35781356001600160a01b0381169081900361033d57608090604051938480926302506b8760e41b82525afa908115611409578091611598575b602082604051908152f35b90506080823d82116115c8575b816115b260809383611b9c565b810103126102e35750604060209101513861158d565b3d91506115a5565b503461033d578160031936011261033d57604051916115ee83611b66565b601083526020928381016f726563697069656e744164647265737360801b815260405161161e8682018093611d88565b6010815261135f81611b66565b503461033d578160031936011261033d576040519161164983611b66565b601083526020928381016f70726f66696c65325f6d656d6265723160801b815260405161161e8682018093611d88565b82346102e357806003193601126102e357610a0760405161169981611b81565b600281526040366020830137604051918291602083526020830190611dee565b82346102e357806003193601126102e35760206040516127108152f35b82346102e357806003193601126102e35760095460405190611702826116fb81611c35565b0383611b9c565b610a076040519283928352604060208401526040830190611dae565b5090346102e35760603660031901126102e357611739611a62565b91611742611a8e565b91604435906001600160401b0382116102e35760206105b7868661176836878901611bbf565b91611f60565b82346102e357806003193601126102e3576020604051670de0b6b3a76400008152f35b503461033d578160031936011261033d57604051916117af83611b66565b601083526020928381016f70726f66696c65315f6d656d6265723160801b815260405161161e8682018093611d88565b503461033d578160031936011261033d57604051916117fd83611b66565b600e83526020928381016d383937b334b632992fb7bbb732b960911b815260405161182b8682018093611d62565b600e815261135f81611b66565b82346102e357806003193601126102e3576020604051308152f35b503461033d578160031936011261033d576040519161187183611b66565b600a8352602092838101693932b1b4b834b2b73a1960b11b815260405161189b8682018093611d3c565b600a815261135f81611b66565b503461033d578160031936011261033d57604051916118c683611b66565b6013835260209283810172383937b334b63298afb737ba20a6b2b6b132b960691b81526040516118f98682018093611d16565b6013815261135f81611b66565b8284346102e357806003193601126102e35761192183611b66565b600d83526020928381016c706f6f6c5f6d616e616765723160981b815260405161194e8682018093611cf0565b600d815261195b81611b66565b5190206040519063ffa1864960e01b825284820152600080516020612671833981519152908581602481855afa908115610332578491611a04575b50813b156102f157604080516318caf8e360e31b81526001600160a01b0390921695820186905260248201529291829184918290849082906119dc906044830190611dae565b03925af190811561140957506119f55750604051908152f35b6119fe90611ad0565b826113f1565b90508581813d8311611a3a575b611a1b8183611b9c565b810103126102f157516001600160a01b03811681036102f15786611996565b503d611a11565b34611a5d576000366003190112611a5d57602060405160008152f35b600080fd5b600435906001600160a01b0382168203611a5d57565b606435906001600160a01b0382168203611a5d57565b602435906001600160a01b0382168203611a5d57565b604435906001600160a01b0382168203611a5d57565b608435906001600160a01b0382168203611a5d57565b6001600160401b038111611ae357604052565b634e487b7160e01b600052604160045260246000fd5b602081019081106001600160401b03821117611ae357604052565b60c081019081106001600160401b03821117611ae357604052565b61012081019081106001600160401b03821117611ae357604052565b608081019081106001600160401b03821117611ae357604052565b604081019081106001600160401b03821117611ae357604052565b606081019081106001600160401b03821117611ae357604052565b601f909101601f19168101906001600160401b03821190821017611ae357604052565b9080601f83011215611a5d578135906001600160401b038211611ae3578160051b60405193602093611bf385840187611b9c565b85528380860192820101928311611a5d578301905b828210611c16575050505090565b81356001600160a01b0381168103611a5d578152908301908301611c08565b90600091600a549060019082821c91808416938415611ce6575b6020948585108114611cd057848452908115611cb35750600114611c74575b50505050565b9293945090600a6000528360002092846000945b838610611c9f575050505001019038808080611c6e565b805485870183015294019385908201611c88565b60ff191685840152505090151560051b0101915038808080611c6e565b634e487b7160e01b600052602260045260246000fd5b92607f1692611c4f565b60005b600d8110611d06575050600d6000910152565b8181015183820152602001611cf3565b60005b60138110611d2c57505060136000910152565b8181015183820152602001611d19565b60005b600a8110611d52575050600a6000910152565b8181015183820152602001611d3f565b60005b600e8110611d78575050600e6000910152565b8181015183820152602001611d65565b60005b60108110611d9e57505060106000910152565b8181015183820152602001611d8b565b919082519283825260005b848110611dda575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201611db9565b90815180825260208080930193019160005b828110611e0e575050505090565b83516001600160a01b031685529381019392810192600101611e00565b602081526060825180516020840152602081015160408401526040810151828401520151608082015260208201516003811015611f175760a082015260408201516004811015611f1757611f14926102409160c084015260608101515160e084015260808101519060018060a01b0360a0818451169361010094858801528260208201511661012088015260408101516101408801526060810151610160880152608081015161018088015201516101a08601528060a0830151166101c086015260c0820151166101e085015260e0810151610200850152015191610220808201520190611dee565b90565b634e487b7160e01b600052602160045260246000fd5b805115611f3a5760200190565b634e487b7160e01b600052603260045260246000fd5b805160011015611f3a5760400190565b90600b5415611f73575b505050600b5490565b604080519092818401906001600160401b03821183831017611ae35761202b918552600183528451611fa481611b66565b600c8152600060209586956b506f6f6c50726f66696c653160a01b8785015286810193845261204d89519a8b9788968794633a92f65f60e01b86526002600487015260a06024870152600e60a48701526d506f6f6c2050726f66696c65203160901b60c487015260e060448701525160e4860152518c610104860152610124850190611dae565b6001600160a01b03948516606485015283810360031901608485015290611dee565b0393165af191821561209b575060009161206f575b50600b5550388080611f6a565b82813d8311612094575b6120838183611b9c565b810103126102e35750518038612062565b503d612079565b513d6000823e3d90fd5b818102929181159184041417156120b857565b634e487b7160e01b600052601160045260246000fd5b949590989793929193600097604051926120e784611b66565b6001845260203681860137604051966120ff88611b2f565b60405161210b81611b4b565b8b81528b60208201528b60408201528b606082015288528a60208901528a604089015260405161213a81611af9565b8b8152606089015260405161214e81611b14565b8b81528b60208201528b60408201528b60608201528b60808201528b60a082015260808901528a60c08901528a60e08901526060610100890152629895b7604089510152621e84808851526127106020895101526702c68af0bb14000060608951015260018060a01b031660a088015260038910156125915788602088015260048110156125915760408701528860c08701528860e0870152805115612580575b606086015260808501526101008401526040519061220c82611b81565b6002825260403660208401373061222283611f2d565b523361222d83611f50565b5273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee926001600160a01b038116612578575b506040519061226182611b66565b600a825260208201693837b7b62fb0b236b4b760b11b815260405161228a602082018093611d3c565b600a815261229781611b66565b519020916040519263ffa1864960e01b8452600484015260008051602061267183398151915290602084602481855afa93841561256d578a94612529575b50813b15610ebf576123168a9283926040519485809481936318caf8e360e31b835260018060a01b038b166004840152604060248401526044830190611dae565b03925af1801561251e57908b9695949392916124e8575b50936123e76123a197948461236a61234d60209a978e9761235c9b611f60565b94604051998a918c8301611e2b565b03601f1981018a5289611b9c565b604051998a98899788966370803ea560e11b8852600488015260018060a01b0316602487015260e0604487015260e4860190611dae565b9160018060a01b031660648501528460848501526123d8604060031993848782030160a48801526009548152818c82015201611c35565b918483030160c4850152611dee565b03926001600160a01b03165af19081156124aa5783916124b5575b50604051631a8ecfcb60e11b81529094602090829060049082906001600160a01b03165afa9081156124aa57839161246f575b50600381101561245b57036124475750565b634e487b7160e01b81526001600452602490fd5b634e487b7160e01b83526021600452602483fd5b90506020813d6020116124a2575b8161248a60209383611b9c565b81010312610a2057516003811015610a205738612435565b3d915061247d565b6040513d85823e3d90fd5b90506020813d6020116124e0575b816124d060209383611b9c565b81010312610a2057516020612402565b3d91506124c3565b6123a197948461236a61234d60209a9761235c9a96979e61250b6123e797611ad0565b9e97969a5050505094975094975061232d565b6040513d8b823e3d90fd5b9093506020813d602011612565575b8161254560209383611b9c565b81010312610ebf57516001600160a01b0381168103610ebf5792386122d5565b3d9150612538565b6040513d8c823e3d90fd5b925038612253565b680ad78ebc5ac620000081526121ef565b634e487b7160e01b8a52602160045260248afd5b90600160801b80831161261a578110156125d6576125c2916120a5565b6001607f1b81019081106120b85760801c90565b60405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b60405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608490fdfe0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12da26469706673582212204b7a4a2bb116d2f715981cc6076eb4e2d5b5148337d992a5c8c893c41da1036a64736f6c63430008130033","sourceMap":"591:5928:129:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;:::-;591:5928:129;20293:33:20;;591:5928:129;;291:59:20;;;;20344:19;;;;;591:5928:129;-1:-1:-1;;;;;;;;;;;20344:19:20;;;591:5928:129;20344:19:20;;;;;;;;;;;;;591:5928:129;20373:20:20;;;;;;591:5928:129;;;-1:-1:-1;;;20373:20:20;;-1:-1:-1;;;;;591:5928:129;;;20373:20:20;;;591:5928:129;;;;291:59:20;;;591:5928:129;;;;;;;;;;;291:59:20;;;;;;;:::i;:::-;20373:20;;;;;;;;;;591:5928:129;;;;;;;;;20373:20:20;;;;;:::i;:::-;591:5928:129;;20373:20:20;;;591:5928:129;;;20373:20:20;591:5928:129;;291:59:20;591:5928:129;;291:59:20;;;;20373:20;591:5928:129;;;20344:19:20;;;;;;;;;;;;;;;;:::i;:::-;;;291:59;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;20344:19:20;;;;;;;;;591:5928:129;;291:59:20;591:5928:129;;291:59:20;;;;591:5928:129;;;;;;;;;;;-1:-1:-1;;591:5928:129;;;;;;;-1:-1:-1;;;1014:8:129;1058:7;591:5928;;;;;;;;;5621:12;;;591:5928;;;;;;;;5758:5;;;591:5928;;;;6251:21;591:5928;;6251:21;;:::i;:::-;591:5928;;;;;;;;;;;;;;;;1014:8;;;;;;;6278:38;;;;:::i;:::-;1014:8;;;;;;;;;;591:5928;;;;1014:8;;;;;;;-1:-1:-1;;;1014:8:129;;;;-1:-1:-1;1014:8:129;;591:5928;;;;964:8;591:5928;964:8;591:5928;;;1014:8;-1:-1:-1;;;591:5928:129;;;;;;-1:-1:-1;591:5928:129;;-1:-1:-1;;;591:5928:129;;;;;;;;1014:8;-1:-1:-1;;;591:5928:129;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;;;;5751:215;291:59:20;;5783:5:129;;;591:5928;;5817:10;;;;:::i;:::-;964:8;;5779:177;;;5751:215;;;;5779:177;5901:16;;;;;;;:::i;:::-;1014:8;-1:-1:-1;;1014:8:129;;;;;;;5779:177;;;;1014:8;-1:-1:-1;;;591:5928:129;;;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;;;;;;;;;;-1:-1:-1;;591:5928:129;;;;;;:::i;:::-;;;;:::i;:::-;;;:::i;:::-;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;591:5928:129;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;591:5928:129;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;591:5928:129:-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;591:5928:129:-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;;;;;;;;;;;;;;;;;;20303:22:20;;;;;:::i;:::-;591:5928:129;;;20303:22:20;;20293:33;591:5928:129;;291:59:20;;;;20344:19;;;;;591:5928:129;-1:-1:-1;;;;;;;;;;;20344:19:20;;;591:5928:129;20344:19:20;;;;;;;;;;;;;20373:20;;;;;;591:5928:129;;;-1:-1:-1;;;20373:20:20;;-1:-1:-1;;;;;591:5928:129;;;20373:20:20;;;591:5928:129;;;;291:59:20;;;591:5928:129;;;;;;;;;;;291:59:20;;;;;;;:::i;591:5928:129:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;591:5928:129:-;;;;;;;-1:-1:-1;;591:5928:129;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;591:5928:129;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;591:5928:129;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2085:15;;:21;591:5928;;2166:15;;591:5928;;;2246:15;;:22;591:5928;2207:9;591:5928;2328:15;;:34;591:5928;291:59:20;591:5928:129;;;;;;;;;;;;;;;;;;;;;291:59:20;591:5928:129;;;;;;;;;;;;;;;;;2638:26;2634:182;;591:5928;;;;2825:32;2867:42;2974;591:5928;;;;;;;:::i;:::-;;;;2634:182;591:5928;;;2634:182;;591:5928;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;591:5928:129:-;;;;;;;;;;;;;;;;;;;;:::i;:::-;3726:1:15;591:5928:129;;;;;;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;:::-;591:5928:129;20293:33:20;;591:5928:129;;291:59:20;;;;20344:19;;;;;;;591:5928:129;-1:-1:-1;;;;;;;;;;;20344:19:20;;;591:5928:129;20344:19:20;;;;;;;;;;;;;591:5928:129;20373:20:20;;;;;;591:5928:129;;291:59:20;;;;20373:20;;;;591:5928:129;;;291:59:20;;591:5928:129;;;;;;;20373:20:20;;;;;591:5928:129;;;291:59:20;;;;;;;;:::i;:::-;20373:20;;;;;;;;;;;;;;;591:5928:129;3738:32:15;;;;;:::i;:::-;591:5928:129;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;:::-;591:5928:129;20293:33:20;;591:5928:129;;20344:19:20;;;;;;591:5928:129;20344:19:20;;591:5928:129;20344:19:20;;;;;;;;;;;;;591:5928:129;20373:20:20;;;;;;591:5928:129;;;;;;291:59:20;591:5928:129;;20373:20:20;;;;;;;;;591:5928:129;20373:20:20;;;;591:5928:129;;;291:59:20;;;;;;;;:::i;:::-;20373:20;;;;;;;;;;591:5928:129;3780:32:15;;;;;:::i;:::-;591:5928:129;;;;;;;;;;;;;;:::i;20373:20:20:-;;;;;:::i;:::-;591:5928:129;;20373:20:20;;;20344:19;;;;;;;;;;;;;;;;;:::i;:::-;;;291:59;;;;;591:5928:129;;;;;;;20344:19:20;;;;;;;;;;591:5928:129;;291:59:20;591:5928:129;;291:59:20;;;;20373:20;;;;:::i;:::-;591:5928:129;;20373:20:20;;;;;591:5928:129;;291:59:20;591:5928:129;;291:59:20;;;;20373:20;591:5928:129;;;20344:19:20;;;;;;;;;;;;;;;;;:::i;:::-;;;291:59;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;20344:19:20;;;;;;;;;;591:5928:129;;291:59:20;591:5928:129;;291:59:20;;;;591:5928:129;;;;;;;;;;;;;;;;4445:42:9;591:5928:129;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;:::i;:::-;;;;;;;-1:-1:-1;;591:5928:129;;;;;;:::i;:::-;;;;:::i;:::-;;;:::i;:::-;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;591:5928:129;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4870:247;591:5928;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;4870:247;:::i;591:5928::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;2108:1:15;591:5928:129;;;;;;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;:::-;591:5928:129;20293:33:20;;591:5928:129;;291:59:20;;;;20344:19;;;;;;;591:5928:129;-1:-1:-1;;;;;;;;;;;20344:19:20;;;591:5928:129;20344:19:20;;;;;;;;;;;;;591:5928:129;20373:20:20;;;;;;591:5928:129;;291:59:20;;;;20373:20;;;;591:5928:129;;;291:59:20;;591:5928:129;;;;;;;20373:20:20;;;;;591:5928:129;;;291:59:20;;;;;;;;:::i;:::-;20373:20;;;;;;;;;;;;;;;591:5928:129;2120:29:15;;;;;:::i;:::-;591:5928:129;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;20373:20::-;;;;:::i;:::-;591:5928:129;;20373:20:20;;;;20344:19;;;;;;;;;;;;;;;;;:::i;:::-;;;291:59;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;20344:19:20;;;;;;;;;591:5928:129;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;;;;;;;;;;;;;;;;;;20303:22:20;;;;;:::i;591:5928:129:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2914:1:15;591:5928:129;;;;;;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;:::-;591:5928:129;20293:33:20;;591:5928:129;;291:59:20;;;;20344:19;;;;;;;591:5928:129;-1:-1:-1;;;;;;;;;;;20344:19:20;;;591:5928:129;20344:19:20;;;;;;;;;;;;;591:5928:129;20373:20:20;;;;;;591:5928:129;;291:59:20;;;;20373:20;;;;591:5928:129;;;291:59:20;;591:5928:129;;;;;;;20373:20:20;;;;;591:5928:129;;;291:59:20;;;;;;;;:::i;:::-;20373:20;;;;;;;;;;;;591:5928:129;2926:32:15;;;;:::i;:::-;591:5928:129;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;20373:20:20:-;;;;;;;:::i;:::-;;;;;20344:19;;;;;;;;;;;;;;;;;:::i;:::-;;;291:59;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;20344:19:20;;;;;;;;;591:5928:129;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;:::-;591:5928:129;20293:33:20;;591:5928:129;;291:59:20;;;;20344:19;;;;;591:5928:129;-1:-1:-1;;;;;;;;;;;20344:19:20;;;591:5928:129;20344:19:20;;;;;;;;;;;;;591:5928:129;20373:20:20;;;;;;591:5928:129;;;-1:-1:-1;;;20373:20:20;;-1:-1:-1;;;;;591:5928:129;;;20373:20:20;;;591:5928:129;;;;291:59:20;;;591:5928:129;;;;;;;;;;;;291:59:20;;;;;;;:::i;:::-;20373:20;;;;;;;;;;;;591:5928:129;;;;;;;;20373:20:20;;;;:::i;:::-;;;;;591:5928:129;;291:59:20;;;;;;;;20344:19;;;;;;;;;;;;;;;;:::i;:::-;;;291:59;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;20344:19:20;;;;;;;;591:5928:129;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;;;;;;;;;;;;;;;;;;20303:22:20;;;;;:::i;:::-;591:5928:129;;;20303:22:20;;20293:33;591:5928:129;;291:59:20;;;;20344:19;;;;;591:5928:129;-1:-1:-1;;;;;;;;;;;20344:19:20;;;591:5928:129;20344:19:20;;;;;;;;;;;;;20373:20;;;;;;591:5928:129;;;-1:-1:-1;;;20373:20:20;;-1:-1:-1;;;;;591:5928:129;;;20373:20:20;;;591:5928:129;;;;291:59:20;;;591:5928:129;;;;;;;;;;;;291:59:20;;;;;;;:::i;591:5928:129:-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;591:5928:129;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;;6469:19;591:5928;;;291:59:20;;;;;;;6469:19:129;;;;;;;;;291:59:20;6469:19:129;;;591:5928;;;;;;;;;6469:19;;;;;;;;;;;;;;;;;:::i;:::-;;;591:5928;;;;;;;;;;6469:19;;;;;;-1:-1:-1;6469:19:129;;591:5928;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;591:5928:129:-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;1440:1:15;591:5928:129;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;874:7;591:5928;;;;;;;;;;;;;;;;644:109;591:5928;;;;;;;;;:::i;:::-;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;591:5928:129;;;;;;:::i;:::-;;;;:::i;:::-;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;;;;817:8;591:5928;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;591:5928:129:-;;;;;;;;;;;;;;;;306:4:15;591:5928:129;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;591:5928:129:-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;591:5928:129:-;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;20303:22:20;;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;:::-;591:5928:129;20293:33:20;;591:5928:129;;291:59:20;;;;20344:19;;;;;591:5928:129;-1:-1:-1;;;;;;;;;;;20344:19:20;;;591:5928:129;20344:19:20;;;;;;;;;;;;;591:5928:129;20373:20:20;;;;;;591:5928:129;;;-1:-1:-1;;;20373:20:20;;-1:-1:-1;;;;;591:5928:129;;;20373:20:20;;;591:5928:129;;;;291:59:20;;;591:5928:129;;;;;;;;;;;;291:59:20;;;;;;;:::i;:::-;20373:20;;;;;;;;;;;;591:5928:129;;;;;;;20373:20:20;;;;:::i;:::-;;;;20344:19;;;;;;;;;;;;;;;;:::i;:::-;;;291:59;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;20344:19:20;;;;;;;;591:5928:129;;;;;;-1:-1:-1;;591:5928:129;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;591:5928:129;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;591:5928:129;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;591:5928:129;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;591:5928:129;;;;;;:::o;:::-;-1:-1:-1;;;;;591:5928:129;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;:::o;:::-;;;;;-1:-1:-1;;591:5928:129;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;;;;;;;;;;;644:109;591:5928;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;644:109;-1:-1:-1;591:5928:129;;-1:-1:-1;591:5928:129;;;-1:-1:-1;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;591:5928:129;;;;;-1:-1:-1;;591:5928:129;;;;;;;;-1:-1:-1;591:5928:129;;;;;;;;;;-1:-1:-1;591:5928:129;;;;;-1:-1:-1;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;591:5928:129;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;291:59:20;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;2977:1:15;591:5928:129;;;;;;;:::o;1180:437::-;;1352:16;591:5928;1352:30;1348:230;;1180:437;591:5928;;;1352:16;591:5928;1180:437;:::o;1348:230::-;591:5928;;;;;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;;;291:59:20;591:5928:129;;;;;;;:::i;:::-;;;;-1:-1:-1;591:5928:129;;;;-1:-1:-1;;;591:5928:129;;;;1478:48;;;591:5928;;;;;;291:59:20;;;;;;;;;;1417:150:129;;1457:1;1417:150;;;591:5928;;;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;291:59:20;591:5928:129;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;591:5928:129;;;;;;;;;;-1:-1:-1;;591:5928:129;;;;;;;:::i;:::-;1417:150;591:5928;;1417:150;;;;;;;;-1:-1:-1;1417:150:129;;;1348:230;-1:-1:-1;1352:16:129;591:5928;-1:-1:-1;1348:230:129;;;;;1417:150;;;;;;;;;;;;;:::i;:::-;;;591:5928;;;;;;1417:150;;;;;;;;;;591:5928;291:59:20;-1:-1:-1;291:59:20;;;;;591:5928:129;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;3029:1511;;;;;;;;;;-1:-1:-1;591:5928:129;;;;;;;:::i;:::-;3604:1;591:5928;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2085:15;;:21;591:5928;;2166:15;;591:5928;;;2246:15;;:22;591:5928;2207:9;591:5928;2328:15;;:34;591:5928;291:59:20;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2638:26;2634:182;;3029:1511;591:5928;;;2825:32;591:5928;;;2867:42;591:5928;;;2974:42;591:5928;;;;;;:::i;:::-;3690:1;591:5928;;;;;;;;3730:4;3702:33;;;:::i;:::-;591:5928;3773:10;3745:39;;;:::i;:::-;591:5928;4445:42:9;;-1:-1:-1;;;;;591:5928:129;;4067:64;;3029:1511;591:5928;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;591:5928:129;;;;;;20303:22:20;;591:5928:129;;;:::i;:::-;;20303:22:20;;;;;:::i;:::-;591:5928:129;20293:33:20;;591:5928:129;;;291:59:20;;;;20344:19;;591:5928:129;20344:19:20;;591:5928:129;-1:-1:-1;;;;;;;;;;;20344:19:20;591:5928:129;20344:19:20;591:5928:129;20344:19:20;;;;;;;;;;;;;3029:1511:129;20373:20:20;;;;;;291:59;591:5928:129;;;;;;291:59:20;;;;;;;;;20373:20;;291:59;591:5928:129;;;;;;;20373:20:20;;591:5928:129;;;291:59:20;;;;;;;;:::i;:::-;20373:20;;;;;;;;;;;;;;;;;;3029:1511:129;4237:55;;591:5928;;4237:55;;;4337:18;4237:55;591:5928;4237:55;;;;4337:18;4237:55;;:::i;:::-;591:5928;;;4337:18;;;;;;;:::i;:::-;;591:5928;;4337:18;;;;;;:::i;:::-;591:5928;;291:59:20;;;;;;;;;;4149:301:129;;591:5928;4149:301;;591:5928;291:59:20;591:5928:129;;;;;;;;;;291:59:20;591:5928:129;;;;;;;;:::i;:::-;;291:59:20;591:5928:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;4404:8;591:5928;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;4149:301;;-1:-1:-1;;;;;591:5928:129;4149:301;;;;;;;;;;;3029:1511;-1:-1:-1;591:5928:129;;-1:-1:-1;;;4468:48:129;;4140:310;;591:5928;;;;;;;;-1:-1:-1;;;;;591:5928:129;4468:48;;;;;;;;;;;3029:1511;591:5928;;;;;;;4468:64;591:5928;;3029:1511;:::o;591:5928::-;-1:-1:-1;;;591:5928:129;;3604:1;591:5928;;;;;;-1:-1:-1;;;591:5928:129;;;;;;;;4468:48;;;591:5928;4468:48;;591:5928;4468:48;;;;;;591:5928;4468:48;;;:::i;:::-;;;591:5928;;;;;;;;;;;4468:48;;;;;;-1:-1:-1;4468:48:129;;;591:5928;;291:59:20;591:5928:129;;291:59:20;;;;4149:301:129;;;591:5928;4149:301;;591:5928;4149:301;;;;;;591:5928;4149:301;;;:::i;:::-;;;591:5928;;;;;;4149:301;;;;;-1:-1:-1;4149:301:129;;20373:20:20;591:5928:129;20373:20:20;;;4337:18:129;4237:55;591:5928;20373:20:20;;4337:18:129;20373:20:20;;;;;591:5928:129;20373:20:20;;:::i;:::-;;;;;;;;;;;;;;;;;;591:5928:129;;291:59:20;591:5928:129;;291:59:20;;;;20344:19;;;;591:5928:129;20344:19:20;;591:5928:129;20344:19:20;;;;;;591:5928:129;20344:19:20;;;:::i;:::-;;;291:59;;;;;-1:-1:-1;;;;;591:5928:129;;;;;;20344:19:20;;;;;;;-1:-1:-1;20344:19:20;;;591:5928:129;;291:59:20;591:5928:129;;291:59:20;;;;4067:64:129;4106:14;-1:-1:-1;4067:64:129;;;2634:182;591:5928;;;2634:182;;591:5928;-1:-1:-1;;;591:5928:129;;;;;;;;5250:269;;-1:-1:-1;;;5346:13:129;;;591:5928;;5422:12;;591:5928;;;5486:7;;;:::i;:::-;-1:-1:-1;;;1014:8:129;;;;-1:-1:-1;1014:8:129;;;964;5250:269;:::o;591:5928::-;;;-1:-1:-1;;;591:5928:129;;;;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;;;;;;;;;;;;;-1:-1:-1;;;591:5928:129;;;;;;","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","getDecay(address)":"5d6b4bc2","getParams(address,uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address[],address,uint256)":"b3e9b4fd","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\":\"contract CVStrategyV0_0\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"getDecay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"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\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"}],\"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\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"},{\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a\",\"dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"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\":\"0xf4f9aa98b756909c0627bb7995b8c2c56d9fa809060bdfdff347eb9ebcc89e68\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://8c8b7498e1fbe6c276eccecf971539a239a215977b33885cde898cd7498fe6f5\",\"dweb:/ipfs/QmNf3FiwJiF64L3WGRWpGPGHAFkxXQuhLnHkKZ2WZjGUtH\"]}},\"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":"contract CVStrategyV0_0","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getDecay","outputs":[{"internalType":"uint256","name":"","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"}]},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"uint256","name":"sybilScorerThreshold","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":"uint256","name":"sybilScorerThreshold","type":"uint256"},{"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{},"viaIR":true},"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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4","urls":["bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a","dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"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":"0xf4f9aa98b756909c0627bb7995b8c2c56d9fa809060bdfdff347eb9ebcc89e68","urls":["bzz-raw://8c8b7498e1fbe6c276eccecf971539a239a215977b33885cde898cd7498fe6f5","dweb:/ipfs/QmNf3FiwJiF64L3WGRWpGPGHAFkxXQuhLnHkKZ2WZjGUtH"],"license":"AGPL-3.0-or-later"}},"version":1},"storageLayout":{"storage":[{"astId":8575,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"gasMeteringOff","offset":0,"slot":"0","type":"t_bool"},{"astId":10612,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"stdstore","offset":0,"slot":"1","type":"t_struct(StdStorage)12493_storage"},{"astId":77122,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"metadata","offset":0,"slot":"9","type":"t_struct(Metadata)3098_storage"},{"astId":77134,"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)12468_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)12468_storage))"},"t_mapping(t_bytes32,t_struct(FindData)12468_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)12468_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)12468_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)12468_storage)"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(FindData)12468_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":12461,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":12463,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":12465,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":12467,"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)12493_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":12477,"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)12468_storage)))"},{"astId":12480,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":12482,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":12484,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":12486,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":12488,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":12490,"contract":"pkg/contracts/test/CVStrategyHelpers.sol:CVStrategyHelpers","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":12492,"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":77678,"exportedSymbols":{"Accounts":[5026],"Allo":[1390],"ArbitrableConfig":[66316],"CVStrategyHelpers":[77677],"CVStrategyInitializeParamsV0_1":[66370],"CVStrategyV0_0":[70249],"CreateProposal":[66245],"IRegistry":[2802],"Metadata":[3098],"Native":[3106],"PointSystem":[66233],"PointSystemConfig":[66302],"ProposalType":[66228],"console":[28807]},"nodeType":"SourceUnit","src":"46:6474:129","nodes":[{"id":77093,"nodeType":"PragmaDirective","src":"46:24:129","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":77094,"nodeType":"ImportDirective","src":"72:31:129","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":77678,"sourceUnit":28808,"symbolAliases":[],"unitAlias":""},{"id":77096,"nodeType":"ImportDirective","src":"104:53:129","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/Allo.sol","file":"allo-v2-contracts/core/Allo.sol","nameLocation":"-1:-1:-1","scope":77678,"sourceUnit":1391,"symbolAliases":[{"foreign":{"id":77095,"name":"Allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1390,"src":"112:4:129","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":77104,"nodeType":"ImportDirective","src":"158:210:129","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../src/CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":77678,"sourceUnit":70250,"symbolAliases":[{"foreign":{"id":77097,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70249,"src":"171:14:129","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":77098,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66228,"src":"191:12:129","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":77099,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"209:11:129","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":77100,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66245,"src":"226:14:129","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":77101,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66302,"src":"246:17:129","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":77102,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66316,"src":"269:16:129","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":77103,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66370,"src":"291:30:129","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":77106,"nodeType":"ImportDirective","src":"369:67:129","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Native.sol","file":"allo-v2-contracts/core/libraries/Native.sol","nameLocation":"-1:-1:-1","scope":77678,"sourceUnit":3107,"symbolAliases":[{"foreign":{"id":77105,"name":"Native","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3106,"src":"377:6:129","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":77109,"nodeType":"ImportDirective","src":"437:84:129","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":77678,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":77107,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"445:9:129","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":77108,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"456:8:129","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":77111,"nodeType":"ImportDirective","src":"523:66:129","nodes":[],"absolutePath":"lib/allo-v2/test/foundry/shared/Accounts.sol","file":"allo-v2-test/foundry/shared/Accounts.sol","nameLocation":"-1:-1:-1","scope":77678,"sourceUnit":5027,"symbolAliases":[{"foreign":{"id":77110,"name":"Accounts","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":5026,"src":"531:8:129","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":77677,"nodeType":"ContractDefinition","src":"591:5928:129","nodes":[{"id":77122,"nodeType":"VariableDeclaration","src":"644:109:129","nodes":[],"constant":false,"functionSelector":"392f37e9","mutability":"mutable","name":"metadata","nameLocation":"660:8:129","scope":77677,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata"},"typeName":{"id":77117,"nodeType":"UserDefinedTypeName","pathNode":{"id":77116,"name":"Metadata","nameLocations":["644:8:129"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"644:8:129"},"referencedDeclaration":3098,"src":"644:8:129","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"value":{"arguments":[{"hexValue":"31","id":77119,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"691:1:129","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a44686132666a3547656536684a7a5359","id":77120,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"703:48:129","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":77118,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"671:8:129","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":77121,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["681:8:129","694:7:129"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"671:82:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"visibility":"public"},{"id":77127,"nodeType":"VariableDeclaration","src":"782:43:129","nodes":[],"constant":true,"functionSelector":"2e0f2625","mutability":"constant","name":"DECIMALS","nameLocation":"806:8:129","scope":77677,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77123,"name":"uint256","nodeType":"ElementaryTypeName","src":"782:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"},"id":77126,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":77124,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"817:2:129","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3138","id":77125,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"823:2:129","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"src":"817:8:129","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000000_by_1","typeString":"int_const 1000000000000000000"}},"visibility":"public"},{"id":77132,"nodeType":"VariableDeclaration","src":"831:50:129","nodes":[],"constant":true,"functionSelector":"3f26479e","mutability":"constant","name":"PERCENTAGE_SCALE","nameLocation":"855:16:129","scope":77677,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77128,"name":"uint256","nodeType":"ElementaryTypeName","src":"831:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":77131,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":77129,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"874:2:129","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":77130,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"880:1:129","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"874:7:129","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"visibility":"public"},{"id":77134,"nodeType":"VariableDeclaration","src":"888:33:129","nodes":[],"constant":false,"mutability":"mutable","name":"_poolProfileId1_","nameLocation":"905:16:129","scope":77677,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":77133,"name":"bytes32","nodeType":"ElementaryTypeName","src":"888:7:129","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"id":77139,"nodeType":"VariableDeclaration","src":"928:44:129","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"954:7:129","scope":77677,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77135,"name":"uint256","nodeType":"ElementaryTypeName","src":"928:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"id":77138,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":77136,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"964:1:129","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"313237","id":77137,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"969:3:129","typeDescriptions":{"typeIdentifier":"t_rational_127_by_1","typeString":"int_const 127"},"value":"127"},"src":"964:8:129","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"}},"visibility":"internal"},{"id":77144,"nodeType":"VariableDeclaration","src":"978:44:129","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"1004:7:129","scope":77677,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77140,"name":"uint256","nodeType":"ElementaryTypeName","src":"978:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"id":77143,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":77141,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1014:1:129","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"313238","id":77142,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1019:3:129","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"1014:8:129","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"}},"visibility":"internal"},{"id":77149,"nodeType":"VariableDeclaration","src":"1028:37:129","nodes":[],"constant":true,"mutability":"constant","name":"D","nameLocation":"1054:1:129","scope":77677,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77145,"name":"uint256","nodeType":"ElementaryTypeName","src":"1028:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"id":77148,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":77146,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1058:2:129","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"37","id":77147,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1064:1:129","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"1058:7:129","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"}},"visibility":"internal"},{"id":77187,"nodeType":"FunctionDefinition","src":"1180:437:129","nodes":[],"body":{"id":77186,"nodeType":"Block","src":"1338:279:129","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":77167,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77162,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77134,"src":"1352:16:129","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":77165,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1380:1:129","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":77164,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1372:7:129","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":77163,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1372:7:129","typeDescriptions":{}}},"id":77166,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1372:10:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1352:30:129","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":77183,"nodeType":"IfStatement","src":"1348:230:129","trueBody":{"id":77182,"nodeType":"Block","src":"1384:194:129","statements":[{"expression":{"id":77180,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":77168,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77134,"src":"1398:16:129","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"32","id":77171,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1457:1:129","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"hexValue":"506f6f6c2050726f66696c652031","id":77172,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1460:16:129","typeDescriptions":{"typeIdentifier":"t_stringliteral_cfdb29660678cfa126d648cb1a4f5ce763c1e1204e820590687579a35d4b28f4","typeString":"literal_string \"Pool Profile 1\""},"value":"Pool Profile 1"},{"arguments":[{"hexValue":"31","id":77174,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1498:1:129","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"506f6f6c50726f66696c6531","id":77175,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1510:14:129","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":77173,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"1478:8:129","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Metadata_$3098_storage_ptr_$","typeString":"type(struct Metadata storage pointer)"}},"id":77176,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["1488:8:129","1501:7:129"],"names":["protocol","pointer"],"nodeType":"FunctionCall","src":"1478:48:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":77177,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77154,"src":"1528:10:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":77178,"name":"pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77157,"src":"1540:13:129","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":77169,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77152,"src":"1417:8:129","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":77170,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1426:13:129","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":2742,"src":"1417:22:129","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":77179,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1417:150:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"1398:169:129","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":77181,"nodeType":"ExpressionStatement","src":"1398:169:129"}]}},{"expression":{"id":77184,"name":"_poolProfileId1_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77134,"src":"1594:16:129","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":77161,"id":77185,"nodeType":"Return","src":"1587:23:129"}]},"functionSelector":"37d1c404","implemented":true,"kind":"function","modifiers":[],"name":"poolProfile_id1","nameLocation":"1189:15:129","parameters":{"id":77158,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77152,"mutability":"mutable","name":"registry","nameLocation":"1215:8:129","nodeType":"VariableDeclaration","scope":77187,"src":"1205:18:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":77151,"nodeType":"UserDefinedTypeName","pathNode":{"id":77150,"name":"IRegistry","nameLocations":["1205:9:129"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"1205:9:129"},"referencedDeclaration":2802,"src":"1205:9:129","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":77154,"mutability":"mutable","name":"pool_admin","nameLocation":"1233:10:129","nodeType":"VariableDeclaration","scope":77187,"src":"1225:18:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77153,"name":"address","nodeType":"ElementaryTypeName","src":"1225:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77157,"mutability":"mutable","name":"pool_managers","nameLocation":"1262:13:129","nodeType":"VariableDeclaration","scope":77187,"src":"1245:30:129","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":77155,"name":"address","nodeType":"ElementaryTypeName","src":"1245:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":77156,"nodeType":"ArrayTypeName","src":"1245:9:129","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"1204:72:129"},"returnParameters":{"id":77161,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77160,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":77187,"src":"1325:7:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":77159,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1325:7:129","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1324:9:129"},"scope":77677,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":77315,"nodeType":"FunctionDefinition","src":"1623:1400:129","nodes":[],"body":{"id":77314,"nodeType":"Block","src":"2024:999:129","nodes":[],"statements":[{"expression":{"id":77222,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":77214,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77212,"src":"2085:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":77217,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2092:8:129","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":66348,"src":"2085:15:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}},"id":77218,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2101:5:129","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":66322,"src":"2085:21:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e39393939373939","id":77220,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2123:15:129","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":77219,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77504,"src":"2109:13:129","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":77221,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2109:30:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2085:54:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":77223,"nodeType":"ExpressionStatement","src":"2085:54:129"},{"expression":{"id":77232,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":77224,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77212,"src":"2166:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":77227,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2173:8:129","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":66348,"src":"2166:15:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}},"id":77228,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2182:8:129","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":66318,"src":"2166:24:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e32","id":77230,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2207:9:129","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":77229,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77504,"src":"2193:13:129","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":77231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2193:24:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2166:51:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":77233,"nodeType":"ExpressionStatement","src":"2166:51:129"},{"expression":{"id":77242,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":77234,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77212,"src":"2246:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":77237,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2253:8:129","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":66348,"src":"2246:15:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}},"id":77238,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2262:6:129","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":66320,"src":"2246:22:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"302e303031","id":77240,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2285:11:129","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":77239,"name":"_etherToFloat","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77504,"src":"2271:13:129","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":77241,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2271:26:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2246:51:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":77243,"nodeType":"ExpressionStatement","src":"2246:51:129"},{"expression":{"id":77250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":77244,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77212,"src":"2328:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":77247,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2335:8:129","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":66348,"src":"2328:15:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}},"id":77248,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2344:18:129","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":66324,"src":"2328:34:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"302e32","id":77249,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2365:9:129","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_200000000000000000_by_1","typeString":"int_const 200000000000000000"},"value":"0.2"},"src":"2328:46:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":77251,"nodeType":"ExpressionStatement","src":"2328:46:129"},{"expression":{"id":77256,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":77252,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77212,"src":"2391:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":77254,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2398:17:129","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":66362,"src":"2391:24:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":77255,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77189,"src":"2418:17:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2391:44:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":77257,"nodeType":"ExpressionStatement","src":"2391:44:129"},{"expression":{"id":77262,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":77258,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77212,"src":"2445:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":77260,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2452:12:129","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":66351,"src":"2445:19:129","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":77261,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77192,"src":"2467:12:129","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"src":"2445:34:129","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"id":77263,"nodeType":"ExpressionStatement","src":"2445:34:129"},{"expression":{"id":77268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":77264,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77212,"src":"2489:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":77266,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2496:11:129","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":66354,"src":"2489:18:129","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":77267,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77195,"src":"2510:11:129","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"2489:32:129","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"id":77269,"nodeType":"ExpressionStatement","src":"2489:32:129"},{"expression":{"id":77274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":77270,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77212,"src":"2531:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":77272,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2538:11:129","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":66364,"src":"2531:18:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":77273,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77206,"src":"2552:11:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2531:32:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":77275,"nodeType":"ExpressionStatement","src":"2531:32:129"},{"expression":{"id":77280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":77276,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77212,"src":"2573:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":77278,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2580:20:129","memberName":"sybilScorerThreshold","nodeType":"MemberAccess","referencedDeclaration":66366,"src":"2573:27:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":77279,"name":"sybilScorerThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77208,"src":"2603:20:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2573:50:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":77281,"nodeType":"ExpressionStatement","src":"2573:50:129"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":77282,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77198,"src":"2638:11:129","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":77283,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2650:9:129","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":66301,"src":"2638:21:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":77284,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2663:1:129","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2638:26:129","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":77295,"nodeType":"IfStatement","src":"2634:182:129","trueBody":{"id":77294,"nodeType":"Block","src":"2666:150:129","statements":[{"expression":{"id":77292,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":77286,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77198,"src":"2767:11:129","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":77288,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2779:9:129","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":66301,"src":"2767:21:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77291,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"323030","id":77289,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2791:3:129","typeDescriptions":{"typeIdentifier":"t_rational_200_by_1","typeString":"int_const 200"},"value":"200"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":77290,"name":"DECIMALS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77127,"src":"2797:8:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2791:14:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2767:38:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":77293,"nodeType":"ExpressionStatement","src":"2767:38:129"}]}},{"expression":{"id":77300,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":77296,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77212,"src":"2825:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":77298,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2832:11:129","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":66357,"src":"2825:18:129","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":77299,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77198,"src":"2846:11:129","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"2825:32:129","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig memory"}},"id":77301,"nodeType":"ExpressionStatement","src":"2825:32:129"},{"expression":{"id":77306,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":77302,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77212,"src":"2867:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":77304,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2874:16:129","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":66360,"src":"2867:23:129","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":77305,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77201,"src":"2893:16:129","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"2867:42:129","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":77307,"nodeType":"ExpressionStatement","src":"2867:42:129"},{"expression":{"id":77312,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":77308,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77212,"src":"2974:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":77310,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"2981:16:129","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":66369,"src":"2974:23:129","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":77311,"name":"initialAllowlist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77204,"src":"3000:16:129","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"2974:42:129","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":77313,"nodeType":"ExpressionStatement","src":"2974:42:129"}]},"functionSelector":"b3e9b4fd","implemented":true,"kind":"function","modifiers":[],"name":"getParams","nameLocation":"1632:9:129","parameters":{"id":77209,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77189,"mutability":"mutable","name":"registryCommunity","nameLocation":"1659:17:129","nodeType":"VariableDeclaration","scope":77315,"src":"1651:25:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77188,"name":"address","nodeType":"ElementaryTypeName","src":"1651:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77192,"mutability":"mutable","name":"proposalType","nameLocation":"1699:12:129","nodeType":"VariableDeclaration","scope":77315,"src":"1686:25:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"typeName":{"id":77191,"nodeType":"UserDefinedTypeName","pathNode":{"id":77190,"name":"ProposalType","nameLocations":["1686:12:129"],"nodeType":"IdentifierPath","referencedDeclaration":66228,"src":"1686:12:129"},"referencedDeclaration":66228,"src":"1686:12:129","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":77195,"mutability":"mutable","name":"pointSystem","nameLocation":"1733:11:129","nodeType":"VariableDeclaration","scope":77315,"src":"1721:23:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":77194,"nodeType":"UserDefinedTypeName","pathNode":{"id":77193,"name":"PointSystem","nameLocations":["1721:11:129"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"1721:11:129"},"referencedDeclaration":66233,"src":"1721:11:129","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":77198,"mutability":"mutable","name":"pointConfig","nameLocation":"1779:11:129","nodeType":"VariableDeclaration","scope":77315,"src":"1754:36:129","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":77197,"nodeType":"UserDefinedTypeName","pathNode":{"id":77196,"name":"PointSystemConfig","nameLocations":["1754:17:129"],"nodeType":"IdentifierPath","referencedDeclaration":66302,"src":"1754:17:129"},"referencedDeclaration":66302,"src":"1754:17:129","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":77201,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"1824:16:129","nodeType":"VariableDeclaration","scope":77315,"src":"1800:40:129","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":77200,"nodeType":"UserDefinedTypeName","pathNode":{"id":77199,"name":"ArbitrableConfig","nameLocations":["1800:16:129"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"1800:16:129"},"referencedDeclaration":66316,"src":"1800:16:129","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":77204,"mutability":"mutable","name":"initialAllowlist","nameLocation":"1867:16:129","nodeType":"VariableDeclaration","scope":77315,"src":"1850:33:129","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":77202,"name":"address","nodeType":"ElementaryTypeName","src":"1850:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":77203,"nodeType":"ArrayTypeName","src":"1850:9:129","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":77206,"mutability":"mutable","name":"sybilScorer","nameLocation":"1901:11:129","nodeType":"VariableDeclaration","scope":77315,"src":"1893:19:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77205,"name":"address","nodeType":"ElementaryTypeName","src":"1893:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77208,"mutability":"mutable","name":"sybilScorerThreshold","nameLocation":"1930:20:129","nodeType":"VariableDeclaration","scope":77315,"src":"1922:28:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77207,"name":"uint256","nodeType":"ElementaryTypeName","src":"1922:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1641:315:129"},"returnParameters":{"id":77213,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77212,"mutability":"mutable","name":"params","nameLocation":"2016:6:129","nodeType":"VariableDeclaration","scope":77315,"src":"1978:44:129","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":77211,"nodeType":"UserDefinedTypeName","pathNode":{"id":77210,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["1978:30:129"],"nodeType":"IdentifierPath","referencedDeclaration":66370,"src":"1978:30:129"},"referencedDeclaration":66370,"src":"1978:30:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"1977:46:129"},"scope":77677,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":77449,"nodeType":"FunctionDefinition","src":"3029:1511:129","nodes":[],"body":{"id":77448,"nodeType":"Block","src":"3382:1158:129","nodes":[],"statements":[{"assignments":[77346],"declarations":[{"constant":false,"id":77346,"mutability":"mutable","name":"params","nameLocation":"3481:6:129","nodeType":"VariableDeclaration","scope":77448,"src":"3443:44:129","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":77345,"nodeType":"UserDefinedTypeName","pathNode":{"id":77344,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["3443:30:129"],"nodeType":"IdentifierPath","referencedDeclaration":66370,"src":"3443:30:129"},"referencedDeclaration":66370,"src":"3443:30:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":77364,"initialValue":{"arguments":[{"id":77348,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77322,"src":"3513:17:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":77349,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77330,"src":"3532:12:129","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},{"id":77350,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77333,"src":"3546:11:129","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},{"id":77351,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77336,"src":"3559:11:129","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig memory"}},{"id":77352,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77339,"src":"3572:16:129","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"arguments":[{"hexValue":"31","id":77356,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3604:1:129","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":77355,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3590:13:129","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":77353,"name":"address","nodeType":"ElementaryTypeName","src":"3594:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":77354,"nodeType":"ArrayTypeName","src":"3594:9:129","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":77357,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3590:16:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"arguments":[{"hexValue":"30","id":77360,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3616:1:129","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":77359,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3608:7:129","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":77358,"name":"address","nodeType":"ElementaryTypeName","src":"3608:7:129","typeDescriptions":{}}},"id":77361,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3608:10:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":77362,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3620:1:129","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig memory"},{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":77347,"name":"getParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77315,"src":"3490:9:129","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_enum$_ProposalType_$66228_$_t_enum$_PointSystem_$66233_$_t_struct$_PointSystemConfig_$66302_memory_ptr_$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_array$_t_address_$dyn_memory_ptr_$_t_address_$_t_uint256_$returns$_t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr_$","typeString":"function (address,enum ProposalType,enum PointSystem,struct PointSystemConfig memory,struct ArbitrableConfig memory,address[] memory,address,uint256) pure returns (struct CVStrategyInitializeParamsV0_1 memory)"}},"id":77363,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3490:141:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"3443:188:129"},{"assignments":[77369],"declarations":[{"constant":false,"id":77369,"mutability":"mutable","name":"_pool_managers","nameLocation":"3659:14:129","nodeType":"VariableDeclaration","scope":77448,"src":"3642:31:129","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":77367,"name":"address","nodeType":"ElementaryTypeName","src":"3642:7:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":77368,"nodeType":"ArrayTypeName","src":"3642:9:129","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":77375,"initialValue":{"arguments":[{"hexValue":"32","id":77373,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3690:1:129","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":77372,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"3676:13:129","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":77370,"name":"address","nodeType":"ElementaryTypeName","src":"3680:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":77371,"nodeType":"ArrayTypeName","src":"3680:9:129","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":77374,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3676:16:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3642:50:129"},{"expression":{"id":77383,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":77376,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77369,"src":"3702:14:129","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":77378,"indexExpression":{"hexValue":"30","id":77377,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3717:1:129","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3702:17:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":77381,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3730:4:129","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyHelpers_$77677","typeString":"contract CVStrategyHelpers"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyHelpers_$77677","typeString":"contract CVStrategyHelpers"}],"id":77380,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3722:7:129","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":77379,"name":"address","nodeType":"ElementaryTypeName","src":"3722:7:129","typeDescriptions":{}}},"id":77382,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3722:13:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3702:33:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":77384,"nodeType":"ExpressionStatement","src":"3702:33:129"},{"expression":{"id":77393,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":77385,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77369,"src":"3745:14:129","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":77387,"indexExpression":{"hexValue":"31","id":77386,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3760:1:129","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3745:17:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":77390,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3773:3:129","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":77391,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3777:6:129","memberName":"sender","nodeType":"MemberAccess","src":"3773:10:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":77389,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3765:7:129","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":77388,"name":"address","nodeType":"ElementaryTypeName","src":"3765:7:129","typeDescriptions":{}}},"id":77392,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3765:19:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3745:39:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":77394,"nodeType":"ExpressionStatement","src":"3745:39:129"},{"assignments":[77396],"declarations":[{"constant":false,"id":77396,"mutability":"mutable","name":"_token","nameLocation":"4042:6:129","nodeType":"VariableDeclaration","scope":77448,"src":"4034:14:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77395,"name":"address","nodeType":"ElementaryTypeName","src":"4034:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":77398,"initialValue":{"id":77397,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3105,"src":"4051:6:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"4034:23:129"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":77404,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77399,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77327,"src":"4071:5:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":77402,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4088:1:129","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":77401,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4080:7:129","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":77400,"name":"address","nodeType":"ElementaryTypeName","src":"4080:7:129","typeDescriptions":{}}},"id":77403,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4080:10:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4071:19:129","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":77410,"nodeType":"IfStatement","src":"4067:64:129","trueBody":{"id":77409,"nodeType":"Block","src":"4092:39:129","statements":[{"expression":{"id":77407,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":77405,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77396,"src":"4106:6:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":77406,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77327,"src":"4115:5:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4106:14:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":77408,"nodeType":"ExpressionStatement","src":"4106:14:129"}]}},{"expression":{"id":77433,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":77411,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77342,"src":"4140:6:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":77415,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77325,"src":"4253:8:129","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},{"arguments":[],"expression":{"argumentTypes":[],"id":77416,"name":"pool_admin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4753,"src":"4263:10:129","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$_t_address_$","typeString":"function () returns (address)"}},"id":77417,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4263:12:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":77418,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77369,"src":"4277:14:129","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":77414,"name":"poolProfile_id1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77187,"src":"4237:15:129","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":77419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4237:55:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":77422,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77320,"src":"4314:8:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":77421,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4306:7:129","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":77420,"name":"address","nodeType":"ElementaryTypeName","src":"4306:7:129","typeDescriptions":{}}},"id":77423,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4306:17:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":77426,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77346,"src":"4348:6:129","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"expression":{"id":77424,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4337:3:129","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":77425,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4341:6:129","memberName":"encode","nodeType":"MemberAccess","src":"4337:10:129","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":77427,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4337:18:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":77428,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77396,"src":"4369:6:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":77429,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4389:1:129","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":77430,"name":"metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77122,"src":"4404:8:129","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},{"id":77431,"name":"_pool_managers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77369,"src":"4426:14:129","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":77412,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77318,"src":"4149:4:129","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"id":77413,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4154:28:129","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":175,"src":"4149:33:129","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":77432,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4149:301:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4140:310:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":77434,"nodeType":"ExpressionStatement","src":"4140:310:129"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"id":77445,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"id":77439,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77320,"src":"4491:8:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":77438,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4483:8:129","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":77437,"name":"address","nodeType":"ElementaryTypeName","src":"4483:8:129","stateMutability":"payable","typeDescriptions":{}}},"id":77440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4483:17:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":77436,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70249,"src":"4468:14:129","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$70249_$","typeString":"type(contract CVStrategyV0_0)"}},"id":77441,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4468:33:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}},"id":77442,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4502:12:129","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":66616,"src":"4468:46:129","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_enum$_ProposalType_$66228_$","typeString":"function () view external returns (enum ProposalType)"}},"id":77443,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4468:48:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":77444,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77330,"src":"4520:12:129","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"src":"4468:64:129","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":77435,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"4461:6:129","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":77446,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4461:72:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":77447,"nodeType":"ExpressionStatement","src":"4461:72:129"}]},"functionSelector":"e070e0ab","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"3038:10:129","parameters":{"id":77340,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77318,"mutability":"mutable","name":"allo","nameLocation":"3063:4:129","nodeType":"VariableDeclaration","scope":77449,"src":"3058:9:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},"typeName":{"id":77317,"nodeType":"UserDefinedTypeName","pathNode":{"id":77316,"name":"Allo","nameLocations":["3058:4:129"],"nodeType":"IdentifierPath","referencedDeclaration":1390,"src":"3058:4:129"},"referencedDeclaration":1390,"src":"3058:4:129","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"visibility":"internal"},{"constant":false,"id":77320,"mutability":"mutable","name":"strategy","nameLocation":"3085:8:129","nodeType":"VariableDeclaration","scope":77449,"src":"3077:16:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77319,"name":"address","nodeType":"ElementaryTypeName","src":"3077:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77322,"mutability":"mutable","name":"registryCommunity","nameLocation":"3111:17:129","nodeType":"VariableDeclaration","scope":77449,"src":"3103:25:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77321,"name":"address","nodeType":"ElementaryTypeName","src":"3103:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77325,"mutability":"mutable","name":"registry","nameLocation":"3148:8:129","nodeType":"VariableDeclaration","scope":77449,"src":"3138:18:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":77324,"nodeType":"UserDefinedTypeName","pathNode":{"id":77323,"name":"IRegistry","nameLocations":["3138:9:129"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"3138:9:129"},"referencedDeclaration":2802,"src":"3138:9:129","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":77327,"mutability":"mutable","name":"token","nameLocation":"3174:5:129","nodeType":"VariableDeclaration","scope":77449,"src":"3166:13:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77326,"name":"address","nodeType":"ElementaryTypeName","src":"3166:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77330,"mutability":"mutable","name":"proposalType","nameLocation":"3202:12:129","nodeType":"VariableDeclaration","scope":77449,"src":"3189:25:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"typeName":{"id":77329,"nodeType":"UserDefinedTypeName","pathNode":{"id":77328,"name":"ProposalType","nameLocations":["3189:12:129"],"nodeType":"IdentifierPath","referencedDeclaration":66228,"src":"3189:12:129"},"referencedDeclaration":66228,"src":"3189:12:129","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":77333,"mutability":"mutable","name":"pointSystem","nameLocation":"3236:11:129","nodeType":"VariableDeclaration","scope":77449,"src":"3224:23:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":77332,"nodeType":"UserDefinedTypeName","pathNode":{"id":77331,"name":"PointSystem","nameLocations":["3224:11:129"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"3224:11:129"},"referencedDeclaration":66233,"src":"3224:11:129","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":77336,"mutability":"mutable","name":"pointConfig","nameLocation":"3282:11:129","nodeType":"VariableDeclaration","scope":77449,"src":"3257:36:129","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":77335,"nodeType":"UserDefinedTypeName","pathNode":{"id":77334,"name":"PointSystemConfig","nameLocations":["3257:17:129"],"nodeType":"IdentifierPath","referencedDeclaration":66302,"src":"3257:17:129"},"referencedDeclaration":66302,"src":"3257:17:129","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":77339,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3327:16:129","nodeType":"VariableDeclaration","scope":77449,"src":"3303:40:129","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":77338,"nodeType":"UserDefinedTypeName","pathNode":{"id":77337,"name":"ArbitrableConfig","nameLocations":["3303:16:129"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"3303:16:129"},"referencedDeclaration":66316,"src":"3303:16:129","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"3048:301:129"},"returnParameters":{"id":77343,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77342,"mutability":"mutable","name":"poolId","nameLocation":"3374:6:129","nodeType":"VariableDeclaration","scope":77449,"src":"3366:14:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77341,"name":"uint256","nodeType":"ElementaryTypeName","src":"3366:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3365:16:129"},"scope":77677,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":77490,"nodeType":"FunctionDefinition","src":"4546:578:129","nodes":[],"body":{"id":77489,"nodeType":"Block","src":"4853:271:129","nodes":[],"statements":[{"expression":{"arguments":[{"id":77476,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77452,"src":"4894:4:129","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},{"id":77477,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77454,"src":"4912:8:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":77478,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77456,"src":"4934:17:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":77479,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77459,"src":"4965:8:129","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},{"id":77480,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77461,"src":"4987:5:129","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":77481,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77464,"src":"5006:12:129","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},{"id":77482,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77467,"src":"5032:11:129","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},{"arguments":[{"hexValue":"30","id":77484,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5075:1:129","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":77483,"name":"PointSystemConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66302,"src":"5057:17:129","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_PointSystemConfig_$66302_storage_ptr_$","typeString":"type(struct PointSystemConfig storage pointer)"}},"id":77485,"isConstant":false,"isLValue":false,"isPure":true,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5057:20:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig memory"}},{"id":77486,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77470,"src":"5091:16:129","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_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_$66228","typeString":"enum ProposalType"},{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig memory"},{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}],"id":77475,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[77449,77490],"referencedDeclaration":77449,"src":"4870:10:129","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_Allo_$1390_$_t_address_$_t_address_$_t_contract$_IRegistry_$2802_$_t_address_$_t_enum$_ProposalType_$66228_$_t_enum$_PointSystem_$66233_$_t_struct$_PointSystemConfig_$66302_memory_ptr_$_t_struct$_ArbitrableConfig_$66316_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":77487,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4870:247:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":77474,"id":77488,"nodeType":"Return","src":"4863:254:129"}]},"functionSelector":"85294f18","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"4555:10:129","parameters":{"id":77471,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77452,"mutability":"mutable","name":"allo","nameLocation":"4580:4:129","nodeType":"VariableDeclaration","scope":77490,"src":"4575:9:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"},"typeName":{"id":77451,"nodeType":"UserDefinedTypeName","pathNode":{"id":77450,"name":"Allo","nameLocations":["4575:4:129"],"nodeType":"IdentifierPath","referencedDeclaration":1390,"src":"4575:4:129"},"referencedDeclaration":1390,"src":"4575:4:129","typeDescriptions":{"typeIdentifier":"t_contract$_Allo_$1390","typeString":"contract Allo"}},"visibility":"internal"},{"constant":false,"id":77454,"mutability":"mutable","name":"strategy","nameLocation":"4602:8:129","nodeType":"VariableDeclaration","scope":77490,"src":"4594:16:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77453,"name":"address","nodeType":"ElementaryTypeName","src":"4594:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77456,"mutability":"mutable","name":"registryCommunity","nameLocation":"4628:17:129","nodeType":"VariableDeclaration","scope":77490,"src":"4620:25:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77455,"name":"address","nodeType":"ElementaryTypeName","src":"4620:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77459,"mutability":"mutable","name":"registry","nameLocation":"4665:8:129","nodeType":"VariableDeclaration","scope":77490,"src":"4655:18:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":77458,"nodeType":"UserDefinedTypeName","pathNode":{"id":77457,"name":"IRegistry","nameLocations":["4655:9:129"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"4655:9:129"},"referencedDeclaration":2802,"src":"4655:9:129","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"},{"constant":false,"id":77461,"mutability":"mutable","name":"token","nameLocation":"4691:5:129","nodeType":"VariableDeclaration","scope":77490,"src":"4683:13:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77460,"name":"address","nodeType":"ElementaryTypeName","src":"4683:7:129","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77464,"mutability":"mutable","name":"proposalType","nameLocation":"4719:12:129","nodeType":"VariableDeclaration","scope":77490,"src":"4706:25:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"typeName":{"id":77463,"nodeType":"UserDefinedTypeName","pathNode":{"id":77462,"name":"ProposalType","nameLocations":["4706:12:129"],"nodeType":"IdentifierPath","referencedDeclaration":66228,"src":"4706:12:129"},"referencedDeclaration":66228,"src":"4706:12:129","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":77467,"mutability":"mutable","name":"pointSystem","nameLocation":"4753:11:129","nodeType":"VariableDeclaration","scope":77490,"src":"4741:23:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":77466,"nodeType":"UserDefinedTypeName","pathNode":{"id":77465,"name":"PointSystem","nameLocations":["4741:11:129"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"4741:11:129"},"referencedDeclaration":66233,"src":"4741:11:129","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":77470,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"4798:16:129","nodeType":"VariableDeclaration","scope":77490,"src":"4774:40:129","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":77469,"nodeType":"UserDefinedTypeName","pathNode":{"id":77468,"name":"ArbitrableConfig","nameLocations":["4774:16:129"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"4774:16:129"},"referencedDeclaration":66316,"src":"4774:16:129","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"src":"4565:255:129"},"returnParameters":{"id":77474,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77473,"mutability":"mutable","name":"poolId","nameLocation":"4845:6:129","nodeType":"VariableDeclaration","scope":77490,"src":"4837:14:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77472,"name":"uint256","nodeType":"ElementaryTypeName","src":"4837:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4836:16:129"},"scope":77677,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":77504,"nodeType":"FunctionDefinition","src":"5130:114:129","nodes":[],"body":{"id":77503,"nodeType":"Block","src":"5202:42:129","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77501,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77497,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77492,"src":"5219:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"commonType":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"},"id":77500,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":77498,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5229:2:129","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3131","id":77499,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5235:2:129","typeDescriptions":{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},"value":"11"},"src":"5229:8:129","typeDescriptions":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"}},"src":"5219:18:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":77496,"id":77502,"nodeType":"Return","src":"5212:25:129"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_etherToFloat","nameLocation":"5139:13:129","parameters":{"id":77493,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77492,"mutability":"mutable","name":"_amount","nameLocation":"5161:7:129","nodeType":"VariableDeclaration","scope":77504,"src":"5153:15:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77491,"name":"uint256","nodeType":"ElementaryTypeName","src":"5153:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5152:17:129"},"returnParameters":{"id":77496,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77495,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":77504,"src":"5193:7:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77494,"name":"uint256","nodeType":"ElementaryTypeName","src":"5193:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5192:9:129"},"scope":77677,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":77538,"nodeType":"FunctionDefinition","src":"5250:269:129","nodes":[],"body":{"id":77537,"nodeType":"Block","src":"5328:191:129","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77516,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77514,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77506,"src":"5346:2:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":77515,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77144,"src":"5352:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5346:13:129","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e206f7220657175616c20746f20325e313238","id":77517,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5361:42:129","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":77513,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5338:7:129","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":77518,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5338:66:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":77519,"nodeType":"ExpressionStatement","src":"5338:66:129"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77523,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77521,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77508,"src":"5422:2:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":77522,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77144,"src":"5427:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5422:12:129","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f622073686f756c64206265206c657373207468616e20325e313238","id":77524,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5436:30:129","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":77520,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5414:7:129","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":77525,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5414:53:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":77526,"nodeType":"ExpressionStatement","src":"5414:53:129"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77535,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77532,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77529,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77527,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77506,"src":"5486:2:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":77528,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77508,"src":"5491:2:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5486:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":77530,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5485:9:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":77531,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77139,"src":"5497:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5485:19:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":77533,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"5484:21:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":77534,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5509:3:129","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"5484:28:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":77512,"id":77536,"nodeType":"Return","src":"5477:35:129"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_mul","nameLocation":"5259:4:129","parameters":{"id":77509,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77506,"mutability":"mutable","name":"_a","nameLocation":"5272:2:129","nodeType":"VariableDeclaration","scope":77538,"src":"5264:10:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77505,"name":"uint256","nodeType":"ElementaryTypeName","src":"5264:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77508,"mutability":"mutable","name":"_b","nameLocation":"5284:2:129","nodeType":"VariableDeclaration","scope":77538,"src":"5276:10:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77507,"name":"uint256","nodeType":"ElementaryTypeName","src":"5276:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5263:24:129"},"returnParameters":{"id":77512,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77511,"mutability":"mutable","name":"_result","nameLocation":"5319:7:129","nodeType":"VariableDeclaration","scope":77538,"src":"5311:15:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77510,"name":"uint256","nodeType":"ElementaryTypeName","src":"5311:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5310:17:129"},"scope":77677,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":77602,"nodeType":"FunctionDefinition","src":"5525:447:129","nodes":[],"body":{"id":77601,"nodeType":"Block","src":"5603:369:129","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77550,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77548,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77540,"src":"5621:2:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":77549,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77144,"src":"5626:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5621:12:129","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5f612073686f756c64206265206c657373207468616e20325e313238","id":77551,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5635:30:129","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":77547,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5613:7:129","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":77552,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5613:53:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":77553,"nodeType":"ExpressionStatement","src":"5613:53:129"},{"assignments":[77555],"declarations":[{"constant":false,"id":77555,"mutability":"mutable","name":"a","nameLocation":"5684:1:129","nodeType":"VariableDeclaration","scope":77601,"src":"5676:9:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77554,"name":"uint256","nodeType":"ElementaryTypeName","src":"5676:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":77557,"initialValue":{"id":77556,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77540,"src":"5688:2:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5676:14:129"},{"assignments":[77559],"declarations":[{"constant":false,"id":77559,"mutability":"mutable","name":"b","nameLocation":"5708:1:129","nodeType":"VariableDeclaration","scope":77601,"src":"5700:9:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77558,"name":"uint256","nodeType":"ElementaryTypeName","src":"5700:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":77561,"initialValue":{"id":77560,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77542,"src":"5712:2:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5700:14:129"},{"expression":{"id":77564,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":77562,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77545,"src":"5724:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":77563,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77144,"src":"5734:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5724:17:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":77565,"nodeType":"ExpressionStatement","src":"5724:17:129"},{"body":{"id":77599,"nodeType":"Block","src":"5765:201:129","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77573,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77571,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77569,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77559,"src":"5783:1:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":77570,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5787:1:129","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5783:5:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":77572,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5792:1:129","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5783:10:129","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":77597,"nodeType":"Block","src":"5873:83:129","statements":[{"expression":{"id":77591,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":77586,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77545,"src":"5891:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":77588,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77545,"src":"5906:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":77589,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77555,"src":"5915:1:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":77587,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77538,"src":"5901:4:129","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":77590,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5901:16:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5891:26:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":77592,"nodeType":"ExpressionStatement","src":"5891:26:129"},{"expression":{"id":77595,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":77593,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77559,"src":"5935:1:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":77594,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5940:1:129","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5935:6:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":77596,"nodeType":"ExpressionStatement","src":"5935:6:129"}]},"id":77598,"nodeType":"IfStatement","src":"5779:177:129","trueBody":{"id":77585,"nodeType":"Block","src":"5795:72:129","statements":[{"expression":{"id":77579,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":77574,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77555,"src":"5813:1:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":77576,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77555,"src":"5822:1:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":77577,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77555,"src":"5825:1:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":77575,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77538,"src":"5817:4:129","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":77578,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5817:10:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5813:14:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":77580,"nodeType":"ExpressionStatement","src":"5813:14:129"},{"expression":{"id":77583,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":77581,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77559,"src":"5845:1:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":77582,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5851:1:129","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5845:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":77584,"nodeType":"ExpressionStatement","src":"5845:7:129"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77568,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77566,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77559,"src":"5758:1:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":77567,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5762:1:129","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5758:5:129","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":77600,"nodeType":"WhileStatement","src":"5751:215:129"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_pow","nameLocation":"5534:4:129","parameters":{"id":77543,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77540,"mutability":"mutable","name":"_a","nameLocation":"5547:2:129","nodeType":"VariableDeclaration","scope":77602,"src":"5539:10:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77539,"name":"uint256","nodeType":"ElementaryTypeName","src":"5539:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77542,"mutability":"mutable","name":"_b","nameLocation":"5559:2:129","nodeType":"VariableDeclaration","scope":77602,"src":"5551:10:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77541,"name":"uint256","nodeType":"ElementaryTypeName","src":"5551:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5538:24:129"},"returnParameters":{"id":77546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77545,"mutability":"mutable","name":"_result","nameLocation":"5594:7:129","nodeType":"VariableDeclaration","scope":77602,"src":"5586:15:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77544,"name":"uint256","nodeType":"ElementaryTypeName","src":"5586:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5585:17:129"},"scope":77677,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":77659,"nodeType":"FunctionDefinition","src":"5978:380:129","nodes":[],"body":{"id":77658,"nodeType":"Block","src":"6141:217:129","nodes":[],"statements":[{"assignments":[77616],"declarations":[{"constant":false,"id":77616,"mutability":"mutable","name":"t","nameLocation":"6159:1:129","nodeType":"VariableDeclaration","scope":77658,"src":"6151:9:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77615,"name":"uint256","nodeType":"ElementaryTypeName","src":"6151:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":77618,"initialValue":{"id":77617,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77604,"src":"6163:11:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6151:23:129"},{"assignments":[77620],"declarations":[{"constant":false,"id":77620,"mutability":"mutable","name":"atTWO_128","nameLocation":"6192:9:129","nodeType":"VariableDeclaration","scope":77658,"src":"6184:17:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77619,"name":"uint256","nodeType":"ElementaryTypeName","src":"6184:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":77630,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77627,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77622,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77610,"src":"6210:5:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":77623,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6219:3:129","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"6210:12:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":77625,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6209:14:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":77626,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77149,"src":"6226:1:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6209:18:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":77628,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77616,"src":"6229:1:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":77621,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77602,"src":"6204:4:129","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":77629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6204:27:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6184:47:129"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77656,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77653,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77650,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77633,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77631,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77620,"src":"6251:9:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":77632,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77606,"src":"6263:9:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6251:21:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":77634,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6250:23:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77635,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77608,"src":"6278:10:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":77636,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77149,"src":"6291:1:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6278:14:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77640,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77638,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77144,"src":"6296:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":77639,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77620,"src":"6306:9:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6296:19:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":77641,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6295:21:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6278:38:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":77643,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6277:40:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":77646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":77644,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77149,"src":"6321:1:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":77645,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77610,"src":"6325:5:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6321:9:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":77647,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6320:11:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6277:54:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":77649,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6276:56:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6250:82:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":77651,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6249:84:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":77652,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77139,"src":"6336:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6249:94:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":77654,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6248:96:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":77655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6348:3:129","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"6248:103:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":77614,"id":77657,"nodeType":"Return","src":"6241:110:129"}]},"functionSelector":"e99ce911","implemented":true,"kind":"function","modifiers":[],"name":"_calculateConviction","nameLocation":"5987:20:129","parameters":{"id":77611,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77604,"mutability":"mutable","name":"_timePassed","nameLocation":"6016:11:129","nodeType":"VariableDeclaration","scope":77659,"src":"6008:19:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77603,"name":"uint256","nodeType":"ElementaryTypeName","src":"6008:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77606,"mutability":"mutable","name":"_lastConv","nameLocation":"6037:9:129","nodeType":"VariableDeclaration","scope":77659,"src":"6029:17:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77605,"name":"uint256","nodeType":"ElementaryTypeName","src":"6029:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77608,"mutability":"mutable","name":"_oldAmount","nameLocation":"6056:10:129","nodeType":"VariableDeclaration","scope":77659,"src":"6048:18:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77607,"name":"uint256","nodeType":"ElementaryTypeName","src":"6048:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77610,"mutability":"mutable","name":"decay","nameLocation":"6076:5:129","nodeType":"VariableDeclaration","scope":77659,"src":"6068:13:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77609,"name":"uint256","nodeType":"ElementaryTypeName","src":"6068:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6007:75:129"},"returnParameters":{"id":77614,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77613,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":77659,"src":"6128:7:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77612,"name":"uint256","nodeType":"ElementaryTypeName","src":"6128:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6127:9:129"},"scope":77677,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":77676,"nodeType":"FunctionDefinition","src":"6364:153:129","nodes":[],"body":{"id":77675,"nodeType":"Block","src":"6437:80:129","nodes":[],"statements":[{"assignments":[null,null,77668,null],"declarations":[null,null,{"constant":false,"id":77668,"mutability":"mutable","name":"decay","nameLocation":"6459:5:129","nodeType":"VariableDeclaration","scope":77675,"src":"6451:13:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77667,"name":"uint256","nodeType":"ElementaryTypeName","src":"6451:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},null],"id":77672,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":77669,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77662,"src":"6469:8:129","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}},"id":77670,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6478:8:129","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":66613,"src":"6469:17:129","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"function () view external returns (uint256,uint256,uint256,uint256)"}},"id":77671,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6469:19:129","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256,uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"6447:41:129"},{"expression":{"id":77673,"name":"decay","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77668,"src":"6505:5:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":77666,"id":77674,"nodeType":"Return","src":"6498:12:129"}]},"functionSelector":"5d6b4bc2","implemented":true,"kind":"function","modifiers":[],"name":"getDecay","nameLocation":"6373:8:129","parameters":{"id":77663,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77662,"mutability":"mutable","name":"strategy","nameLocation":"6397:8:129","nodeType":"VariableDeclaration","scope":77676,"src":"6382:23:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"},"typeName":{"id":77661,"nodeType":"UserDefinedTypeName","pathNode":{"id":77660,"name":"CVStrategyV0_0","nameLocations":["6382:14:129"],"nodeType":"IdentifierPath","referencedDeclaration":70249,"src":"6382:14:129"},"referencedDeclaration":70249,"src":"6382:14:129","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}},"visibility":"internal"}],"src":"6381:25:129"},"returnParameters":{"id":77666,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77665,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":77676,"src":"6428:7:129","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77664,"name":"uint256","nodeType":"ElementaryTypeName","src":"6428:7:129","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6427:9:129"},"scope":77677,"stateMutability":"view","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":77112,"name":"Native","nameLocations":["621:6:129"],"nodeType":"IdentifierPath","referencedDeclaration":3106,"src":"621:6:129"},"id":77113,"nodeType":"InheritanceSpecifier","src":"621:6:129"},{"baseName":{"id":77114,"name":"Accounts","nameLocations":["629:8:129"],"nodeType":"IdentifierPath","referencedDeclaration":5026,"src":"629:8:129"},"id":77115,"nodeType":"InheritanceSpecifier","src":"629:8:129"}],"canonicalName":"CVStrategyHelpers","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[77677,5026,11396,10603,3106],"name":"CVStrategyHelpers","nameLocation":"600:17:129","scope":77678,"usedErrors":[]}],"license":"AGPL-3.0-or-later"},"id":129} \ 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 f0e2ec428..a62ee30d6 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":[{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"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":"calculateProposalConviction","inputs":[{"name":"_proposalId","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":"getMaxConviction","inputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"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":"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":"getStrategyId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"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":"init2","inputs":[{"name":"newSafeArbitrator","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":"proxyOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"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":"contract RegistryCommunityV0_0"}],"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":"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":"sybilScoreThreshold","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSybilScorer","inputs":[{"name":"_sybilScorer","type":"address","internalType":"address"},{"name":"threshold","type":"uint256","internalType":"uint256"}],"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":"sybilScorerThreshold","type":"uint256","internalType":"uint256"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]}],"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":"SybilScorerUpdated","inputs":[{"name":"sybilScorer","type":"address","indexed":false,"internalType":"address"}],"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":"AShouldBeUnderOrEqTwo_128","inputs":[]},{"type":"error","name":"AShouldBeUnderTwo_128","inputs":[]},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"BShouldBeLessTwo_128","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"ConvictionUnderMinimumThreshold","inputs":[]},{"type":"error","name":"DefaultRulingNotSet","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":"NotEnoughPointsToSupport","inputs":[{"name":"pointsSupport","type":"uint256","internalType":"uint256"},{"name":"pointsBalance","type":"uint256","internalType":"uint256"}]},{"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":"PoolIsEmpty","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":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"UserCannotExecuteAction","inputs":[]},{"type":"error","name":"UserIsInactive","inputs":[]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516172176200004d600039600081816117f601528181611836015281816119fd01528181611a3d0152611ab501526172176000f3fe6080604052600436106103585760003560e01c8063013cf08b1461036157806301ffc9a7146103a3578063025313a2146103d3578063062f9ece146103f55780630a6f0ee9146104155780630bece79c146104355780630c0512e9146104555780630f529ba214610479578063125fd1d91461049057806315cc481e146104a6578063184b9559146104c45780631aa91a9e146104e45780631ddf1e23146105045780632506b87014610519578063255ffb381461055c5780632bbe0cae146105895780632dbd6fdd1461059c5780632ed04b2b146105c8578063311a6c56146105e85780633396045914610608578063346db8cb1461061e578063351d9f961461063e5780633659cfe6146106655780633864d3661461068557806338fff2d0146106a5578063406244d8146106ba57806341bb7605146106cf57806342fda9c7146107645780634ab4ba42146107795780634d31d0871461078e5780634f1ef286146107ae57806352d1902d146107c157806359a5db8b146107d65780635db64b99146107f65780636003e4141461082357806360b0645a1461084357806360d5dedc14610863578063626c47e8146108835780636453d9c414610898578063715018a6146108b85780637263cfe2146108cd578063782aadff146108ed578063814516ad1461090d578063817b1cd214610922578063824ea8ed14610938578063868c57b8146109585780638da5cb5b14610978578063948e7a591461098d578063950559d7146109ad578063a0cf0aea146109cd578063a28889e1146109f5578063a47ff7e514610a2d578063a51312c814610a44578063aba9ffee14610a64578063ad56fd5d14610a7a578063b0d3713a14610a9a578063b2b878d014610aba578063b41596ec14610ae7578063b5f620ce14610afa578063b6c61f3114610b1a578063c329217114610b3a578063c4d66de814610b57578063c7f758a814610b77578063d1e3623214610bae578063db9b5d5014610bc3578063df868ed314610be3578063e0a8f6f514610bf8578063e0dd2c3814610c18578063eb11af9314610c38578063edd146cc14610c60578063ef2920fc14610c80578063f2fde38b14610c93578063f4fe255614610cb3578063f5b0dfb714610cd3578063f5be3f7c14610cf3578063ffa1ad7414610d0957005b3661035f57005b005b34801561036d57600080fd5b5061038161037c366004615896565b610d45565b60405161039a9d9c9b9a99989796959493929190615932565b60405180910390f35b3480156103af57600080fd5b506103c36103be3660046159fb565b610e93565b604051901515815260200161039a565b3480156103df57600080fd5b506103e8610eca565b60405161039a9190615a25565b34801561040157600080fd5b5061035f610410366004615bf5565b610ee3565b34801561042157600080fd5b5061035f610430366004615d42565b610ef9565b34801561044157600080fd5b506079546103e8906001600160a01b031681565b34801561046157600080fd5b5061046b606e5481565b60405190815260200161039a565b34801561048557600080fd5b5061046b6298968081565b34801561049c57600080fd5b5061046b606f5481565b3480156104b257600080fd5b506065546001600160a01b03166103e8565b3480156104d057600080fd5b5061035f6104df366004615db9565b610f19565b3480156104f057600080fd5b5061046b6104ff366004615896565b611024565b34801561051057600080fd5b5061035f61106e565b34801561052557600080fd5b5060725460735460745460755461053c9392919084565b60408051948552602085019390935291830152606082015260800161039a565b34801561056857600080fd5b5061046b610577366004615896565b607e6020526000908152604090205481565b6103e8610597366004615df9565b611079565b3480156105a857600080fd5b506076546105bb90610100900460ff1681565b60405161039a9190615e5e565b3480156105d457600080fd5b5061046b6105e3366004615e6c565b61109c565b3480156105f457600080fd5b5061035f610603366004615e98565b611160565b34801561061457600080fd5b5061046b606c5481565b34801561062a57600080fd5b5061046b610639366004615eba565b611751565b34801561064a57600080fd5b506076546106589060ff1681565b60405161039a9190615ef6565b34801561067157600080fd5b5061035f610680366004615f04565b6117ec565b34801561069157600080fd5b5061035f6106a0366004615e6c565b6118b4565b3480156106b157600080fd5b5060685461046b565b3480156106c657600080fd5b5061046b600a81565b3480156106db57600080fd5b5061072c6106ea366004615896565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c00161039a565b34801561077057600080fd5b5060665461046b565b34801561078557600080fd5b5060695461046b565b34801561079a57600080fd5b506103c36107a9366004615f04565b6119eb565b61035f6107bc366004615f21565b6119f3565b3480156107cd57600080fd5b5061046b611aa8565b3480156107e257600080fd5b5061046b6107f1366004615896565b611b56565b34801561080257600080fd5b5061046b610811366004615f04565b607c6020526000908152604090205481565b34801561082f57600080fd5b506078546103e8906001600160a01b031681565b34801561084f57600080fd5b5061046b61085e366004615896565b611cb4565b34801561086f57600080fd5b5061035f61087e366004615f70565b611ce4565b34801561088f57600080fd5b5061046b600381565b3480156108a457600080fd5b5061035f6108b3366004615f04565b611d60565b3480156108c457600080fd5b5061035f611d71565b3480156108d957600080fd5b5061035f6108e8366004615fcb565b611d83565b3480156108f957600080fd5b5061046b610908366004615e6c565b611d94565b34801561091957600080fd5b5061035f611f2b565b34801561092e57600080fd5b5061046b60705481565b34801561094457600080fd5b506103c3610953366004615896565b611f34565b34801561096457600080fd5b5061046b610973366004615e6c565b611f91565b34801561098457600080fd5b506103e8611fc2565b34801561099957600080fd5b5061035f6109a8366004615fff565b612057565b3480156109b957600080fd5b5061046b6109c8366004615896565b61206b565b3480156109d957600080fd5b506103e873eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b348015610a0157600080fd5b50606d54610a15906001600160401b031681565b6040516001600160401b03909116815260200161039a565b348015610a3957600080fd5b5060775461046b9081565b348015610a5057600080fd5b5061035f610a5f366004615fcb565b612095565b348015610a7057600080fd5b5061046b60715481565b348015610a8657600080fd5b5061035f610a95366004616088565b6120a6565b348015610aa657600080fd5b5061035f610ab5366004615f04565b6120b9565b348015610ac657600080fd5b50610ada610ad53660046160c8565b600080fd5b60405161039a919061619c565b61046b610af5366004616235565b6120e3565b348015610b0657600080fd5b5061035f610b153660046162bc565b6123d1565b348015610b2657600080fd5b50607a546103e8906001600160a01b031681565b348015610b4657600080fd5b50607654610100900460ff166105bb565b348015610b6357600080fd5b5061035f610b72366004615f04565b6123da565b348015610b8357600080fd5b50610b97610b92366004615896565b61240a565b60405161039a9b9a999897969594939291906162d9565b348015610bba57600080fd5b5060715461046b565b348015610bcf57600080fd5b5061035f610bde366004615f04565b612516565b348015610bef57600080fd5b506103c361262c565b348015610c0457600080fd5b5061035f610c13366004615896565b61263a565b348015610c2457600080fd5b5061046b610c33366004616348565b6127bf565b348015610c4457600080fd5b50610c536107a9366004615f04565b60405161039a919061636d565b348015610c6c57600080fd5b5061035f610c7b366004616380565b6127ea565b61035f610c8e366004615df9565b6129cc565b348015610c9f57600080fd5b5061035f610cae366004615f04565b6129f0565b348015610cbf57600080fd5b5061035f610cce366004615f04565b612a5d565b348015610cdf57600080fd5b5061035f610cee366004615896565b612b61565b348015610cff57600080fd5b5061046b611c2081565b348015610d1557600080fd5b50610d38604051806040016040528060038152602001620302e360ec1b81525081565b60405161039a91906163b0565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610dcc906163c3565b80601f0160208091040260200160405190810160405280929190818152602001828054610df8906163c3565b8015610e455780601f10610e1a57610100808354040283529160200191610e45565b820191906000526020600020905b815481529060010190602001808311610e2857829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610ec457506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000610ede6033546001600160a01b031690565b905090565b610eeb612b8a565b610ef58282612c32565b5050565b610f01612f6a565b610f09612f95565b610f14838383612fb8565b505050565b600054610100900460ff1615808015610f395750600054600160ff909116105b80610f5a5750610f48306132c6565b158015610f5a575060005460ff166001145b610f7f5760405162461bcd60e51b8152600401610f76906163f7565b60405180910390fd5b6000805460ff191660011790558015610fa2576000805461ff0019166101001790555b610fcf846040518060400160405280600a8152602001694356537472617465677960b01b81525084611ce4565b606a80546001600160a01b0319166001600160a01b038516179055801561101e576000805461ff00191690556040516001815260008051602061717b8339815191529060200160405180910390a15b50505050565b6000818152607b60205260408120805483146110565760405163c1d17bef60e01b815260048101849052602401610f76565b6110648182600201546132d5565b6003015492915050565b61107733613310565b565b6000611083612f6a565b61108b612f95565b6110958383613435565b9392505050565b60006110a66137cb565b60006002607654610100900460ff1660038111156110c6576110c66158bc565b14806110ed57506001607654610100900460ff1660038111156110eb576110eb6158bc565b145b156110f9575081611106565b61110384846137f6565b90505b8060716000828254611118919061645b565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1906111519086908690859061646e565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112005760405163c1d17bef60e01b815260048101849052602401610f76565b6005600883015460ff16600681111561121b5761121b6158bc565b1461123c57604051634b011ca960e11b815260048101849052602401610f76565b60a0810151600d8301546000916112529161648f565b4211905080158161126d575081516001600160a01b03163314155b1561128b57604051631777988560e11b815260040160405180910390fd5b8080611295575084155b156113de5781608001516000036112bf57604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036112db5760088301805460ff191660011790555b81608001516002036113685760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b093611335938a9392909116916004016164a2565b600060405180830381600087803b15801561134f57600080fd5b505af1158015611363573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936113a7938a9392909116916004016164a2565b600060405180830381600087803b1580156113c157600080fd5b505af11580156113d5573d6000803e3d6000fd5b505050506116ba565b8460010361149e5760088301805460ff19166001179055607954600e84015460785460408051633629edcd60e11b815290516001600160a01b0394851694638969ab53948a9490821693911691636c53db9a916004808201926020929091908290030181865afa158015611456573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061147a91906164c1565b86606001516040518563ffffffff1660e01b81526004016113a794939291906164de565b846002036116ba5760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936114f4938a9392909116916004016164a2565b600060405180830381600087803b15801561150e57600080fd5b505af1158015611522573d6000803e3d6000fd5b5050607954600586015460785460408051633629edcd60e11b815290516001600160a01b039485169650638969ab5395508a949384169390921691636c53db9a916004808201926020929091908290030181865afa158015611588573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ac91906164c1565b606f546000908152607f602052604090206002908101546115cd9190616519565b6040518563ffffffff1660e01b81526004016115ec94939291906164de565b600060405180830381600087803b15801561160657600080fd5b505af115801561161a573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a9493841693909216916116689190616519565b6040518563ffffffff1660e01b815260040161168794939291906164de565b600060405180830381600087803b1580156116a157600080fd5b505af11580156116b5573d6000803e3d6000fd5b505050505b606d80546001600160401b03169060006116d38361653b565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161174191815260200190565b60405180910390a3505050505050565b607454600090849082906117769061177090629896809060801b616519565b836139fd565b905060806001607f1b60726002015462989680611793919061645b565b6117a184600160801b61645b565b6117ae629896808961655e565b6117b8919061655e565b6117c29190616519565b6117cc888561655e565b6117d6919061648f565b6117e0919061648f565b901c9695505050505050565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036118345760405162461bcd60e51b8152600401610f7690616575565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611866613a77565b6001600160a01b03161461188c5760405162461bcd60e51b8152600401610f76906165af565b61189581613a93565b604080516000808252602082019092526118b191839190613ace565b50565b607860009054906101000a90046001600160a01b03166001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b91906164c1565b6001600160a01b0316336001600160a01b031614158015611965575061194f611fc2565b6001600160a01b0316336001600160a01b031614155b1561198357604051637430763f60e11b815260040160405180910390fd5b61198c82613c39565b607a80546001600160a01b0319166001600160a01b0384161790556119b081613c60565b7f2667a0cd99dbc787d1d2596efe938cf43dfe83e8b8ddeb70e28007c09ff33485826040516119df9190615a25565b60405180910390a15050565b600080610ec4565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003611a3b5760405162461bcd60e51b8152600401610f7690616575565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a6d613a77565b6001600160a01b031614611a935760405162461bcd60e51b8152600401610f76906165af565b611a9c82613a93565b610ef582826001613ace565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611b435760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610f76565b5060008051602061713b83398151915290565b60008060695411611b7a5760405163ed4421ad60e01b815260040160405180910390fd5b611b8382613d4b565b15611b8d57600080fd5b606954600090611ba184600160401b61655e565b611bab9190616519565b6072546298968090611bc190600160401b61655e565b611bcb9190616519565b611bd5919061645b565b90506040611be260715490565b607454611bf2906298968061645b565b629896806040611c02868061655e565b607354911c90611c1990629896809060801b616519565b611c239190616519565b611c2d919061655e565b611c379190616519565b611c41919061655e565b607154911c925015611cae57600064174876e800611c616109c860715490565b62989680611c6e60715490565b607554611c7b9190616519565b611c85919061655e565b611c8f919061655e565b611c999190616519565b9050808311611ca85780611caa565b825b9250505b50919050565b6000818152607b60205260408120600781015461109590611cd5904361645b565b82600301548360020154611751565b600054610100900460ff16611d0b5760405162461bcd60e51b8152600401610f76906165e9565b611d14816123da565b606580546001600160a01b0319166001600160a01b038516179055604051611d409083906020016163b0565b60408051601f198184030181529190528051602090910120606655505050565b611d686137cb565b6118b181613310565b611d79613d72565b6110776000613dd1565b611d8b612b8a565b6118b181613e23565b6000611d9e6137cb565b611da7836140bc565b611dc457604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611de457611de46158bc565b03611df0575081611e54565b6001607654610100900460ff166003811115611e0e57611e0e6158bc565b03611e2457611e1d8484614263565b9050611e54565b6003607654610100900460ff166003811115611e4257611e426158bc565b03611e5457611e51848461430a565b90505b60785460405163011de97360e61b81526000916001600160a01b03169063477a5cc090611e879088903090600401616634565b602060405180830381865afa158015611ea4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ec8919061664e565b90508015611ee8578160716000828254611ee2919061648f565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611f1b9392919061646e565b60405180910390a1509392505050565b61107733612516565b6000818152607b60205260408120600281015482908190611f5690849061450f565b91509150816000148015611f68575080155b15611f7557826003015491505b6000611f848460010154611b56565b9092101595945050505050565b607d6020528160005260406000208181548110611fad57600080fd5b90600052602060002001600091509150505481565b6000611fcc610eca565b6001600160a01b03163b600003611fe557610ede610eca565b611fed610eca565b6001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612046575060408051601f3d908101601f19168201909252612043918101906164c1565b60015b61205257610ede610eca565b919050565b61205f612b8a565b61101e84848484614567565b60745460009061207e906298968061645b565b61208b629896808461655e565b610ec49190616519565b61209d612b8a565b6118b18161458d565b6120ae612b8a565b610f14838383614740565b6120c1613d72565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b60006120ee336147c4565b6000868152607b6020908152604080832060108101548452607f835292819020815160c08101835281546001600160a01b0390811682526001830154169381019390935260028101549183019190915260038101546060830152600481015460808301526005015460a08201528154881461217f5760405163c1d17bef60e01b815260048101899052602401610f76565b6001600883015460ff16600681111561219a5761219a6158bc565b146121bb576040516344980d8f60e01b815260048101899052602401610f76565b80606001513410156121cc57600080fd5b600f820154158015906121ef575042611c2083600f01546121ed919061648f565b115b156121f957600080fd5b600081606001513461220b919061645b565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a9190612246908d903390600401616676565b6000604051808303818588803b15801561225f57600080fd5b505af1158015612273573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e192508491506122ae906003908b908b906004016166b6565b60206040518083038185885af11580156122cc573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906122f191906166d9565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b031691612352836166f2565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516123bd9796959493929190616720565b60405180910390a150505095945050505050565b6118b181614852565b600054610100900460ff166124015760405162461bcd60e51b8152600401610f76906165e9565b6118b181613dd1565b600080600080600080600080600080600080607b60008e81526020019081526020016000209050806001015460001461244f5761244a8160010154611b56565b612452565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b61251f816140bc565b61253c57604051630b72d6b160e31b815260040160405180910390fd5b607854604051630d4a8b4960e01b81526001600160a01b0390911690630d4a8b499061256e9084903090600401616634565b600060405180830381600087803b15801561258857600080fd5b505af115801561259c573d6000803e3d6000fd5b5050607854604051637817ee4f60e01b81526001600160a01b039091169250637817ee4f91506125d29084903090600401616634565b602060405180830381865afa1580156125ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061261391906166d9565b60716000828254612624919061648f565b909155505050565b6000610ede60675460ff1690565b60016000828152607b602052604090206008015460ff166006811115612662576126626158bc565b14612683576040516344980d8f60e01b815260048101829052602401610f76565b6000818152607b60205260409020600501546001600160a01b031633146126dc576000818152607b602052604090819020600501549051634544dc9160e11b8152610f76916001600160a01b0316903390600401616634565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b0936127399387939216916004016164a2565b600060405180830381600087803b15801561275357600080fd5b505af1158015612767573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b0385168452600901909152812054611095565b6127f2612f6a565b6127fb82614893565b606a54606c8054612824926001600160a01b031691600061281b8361676f565b919050556148e2565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561287a57600080fd5b505af115801561288e573d6000803e3d6000fd5b505050506000818060200190518101906128a891906168fb565b60a0810151607880546001600160a01b0319166001600160a01b03909216919091179055602081015160768054929350909160ff191660018360028111156128f2576128f26158bc565b021790555060408101516076805461ff00191661010083600381111561291a5761291a6158bc565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b039092169190911790556040517fb6a062fc5f19aa17637bf61ab001ce3e5ceb67a5bd51d9753281e41df94f3fd39061297e9085908490616a5b565b60405180910390a160808101518151604080516000808252602082019081528183019092526129ae939291614567565b607a546001600160a01b031615610f1457610f148160e00151613c60565b6129d4612f6a565b6129dc612f95565b6129e68282614931565b610ef582826149ab565b6129f8613d72565b6001600160a01b0381166124015760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610f76565b600054600290610100900460ff16158015612a7f575060005460ff8083169116105b612a9b5760405162461bcd60e51b8152600401610f76906163f7565b6000805461ffff191660ff831617610100178155606f80548252607f602052604080832080546001600160a01b038088166001600160a01b0319909216919091179091559154808452928190208054600182015460028301546003840154600485015460059095015495516000805160206171c283398151915298612b2d989097958116969416949293919290616b54565b60405180910390a16000805461ff001916905560405160ff8216815260008051602061717b833981519152906020016119df565b612b69612f6a565b8060696000828254612b7b919061648f565b909155506118b1905081614adc565b607860009054906101000a90046001600160a01b03166001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bdd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c0191906164c1565b6001600160a01b0316336001600160a01b03161461107757604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612c57575081516001600160a01b031615155b8015612d405750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612cb35750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612cd75750606f546000908152607f602052604090819020600201549083015114155b80612cfa5750606f546000908152607f6020526040902060030154606083015114155b80612d1d5750606f546000908152607f6020526040902060040154608083015114155b80612d405750606f546000908152607f602052604090206005015460a083015114155b15612f1e57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612d9a57508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612e63578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612dd191600401615a25565b600060405180830381600087803b158015612deb57600080fd5b505af1158015612dff573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612e5a9350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612e738361676f565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b038083166001600160a01b03199283161784559388015160018401805495821695909216949094179055838701516002830181905560608801516003840181905560808901516004850181905560a08a01516005909501859055965495516000805160206171c283398151915297612f15979694959091616b54565b60405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc906119df908390616b90565b6065546001600160a01b031633146110775760405163075fd2b160e01b815260040160405180910390fd5b60685460000361107757604051630f68fe6360e21b815260040160405180910390fd5b600082806020019051810190612fce91906166d9565b9050600160765460ff166002811115612fe957612fe96158bc565b0361101e576000818152607b6020526040902054811461301f5760405163c1d17bef60e01b815260048101829052602401610f76565b6069546000828152607b6020526040902060010154111561303f57600080fd5b60016000828152607b602052604090206008015460ff166006811115613067576130676158bc565b14613088576040516344980d8f60e01b815260048101829052602401610f76565b600061309382611024565b6000838152607b6020526040812060010154919250906130b290611b56565b905080821080156130d357506000838152607b602052604090206001015415155b156130f15760405163199cf26160e31b815260040160405180910390fd5b6000838152607b6020526040812060010154606980549192909161311690849061645b565b909155505060655460685460405163068bcd8d60e01b815260048101919091526131c2916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801561316a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131929190810190616c2b565b6040908101516000868152607b6020529190912060048101546001909101546001600160a01b0390911690614b0c565b6000838152607b6020908152604080832060088101805460ff19166004908117909155607954600590920154606f548652607f9094529382902060020154915163099ea56b60e41b81526001600160a01b03918216946399ea56b094613230948a94909116929091016164a2565b600060405180830381600087803b15801561324a57600080fd5b505af115801561325e573d6000803e3d6000fd5b5050506000848152607b602052604090819020600481015460019091015491517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506132b69287926001600160a01b0316916164a2565b60405180910390a1505050505050565b6001600160a01b03163b151590565b6000806132e2848461450f565b915091508160001480156132f4575080155b156132ff5750505050565b600784015560039092019190915550565b607854604051637817ee4f60e01b81526001600160a01b0390911690637817ee4f906133429084903090600401616634565b602060405180830381865afa15801561335f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061338391906166d9565b60716000828254613394919061645b565b90915550506078546040516322bcf99960e01b81526001600160a01b03909116906322bcf999906133cb9084903090600401616634565b600060405180830381600087803b1580156133e557600080fd5b505af11580156133f9573d6000803e3d6000fd5b5050505061340681614b46565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516127b49190615a25565b6000613440826147c4565b60785460405163208a40f360e11b81526001600160a01b039091169063411481e690613470903090600401615a25565b60006040518083038186803b15801561348857600080fd5b505afa15801561349c573d6000803e3d6000fd5b505050506000838060200190518101906134b69190616cde565b9050600160765460ff1660028111156134d1576134d16158bc565b036135fd576134e38160200151613c39565b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613523573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061354791906164c1565b825160405163068bcd8d60e01b81529192506001600160a01b0383169163068bcd8d9161357a9160040190815260200190565b600060405180830381865afa158015613597573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526135bf9190810190616c2b565b604001516001600160a01b031682606001516001600160a01b0316146135e457600080fd5b6135f18260400151613d4b565b156135fb57600080fd5b505b606f546000908152607f60205260409020546001600160a01b0316158015906136395750606f546000908152607f602052604090206002015434105b1561364357600080fd5b6000606e600081546136549061676f565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b8401906137089082616dd2565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a92349261374c9288921690600401616676565b6000604051808303818588803b15801561376557600080fd5b505af1158015613779573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b606854836040516137ba929190918252602082015260400190565b60405180910390a150949350505050565b6078546001600160a01b03163314611077576040516357848b5160e11b815260040160405180910390fd5b607854604080516336d8759760e21b815290516000926012926001600160a01b039091169163db61d65c916004808201926020929091908290030181865afa158015613846573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061386a91906164c1565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156138c3575060408051601f3d908101601f191682019092526138c091810190616e91565b60015b156138ce5760ff1690505b6078546040516316308e2560e11b815260009185916001600160a01b0390911690632c611c4a90613903908990600401615a25565b602060405180830381865afa158015613920573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061394491906166d9565b61394e919061645b565b9050600061396f61396084600a616f98565b61396a908461655e565b614c85565b607854604051637817ee4f60e01b815291925060009183916001600160a01b031690637817ee4f906139a7908b903090600401616634565b602060405180830381865afa1580156139c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139e891906166d9565b6139f2919061645b565b979650505050505050565b6000600160801b8310613a2357604051633e668d0360e01b815260040160405180910390fd5b50600160801b82825b8015613a6f5780600116600003613a5157613a478283614d6d565b915060011c613a2c565b613a5b8383614d6d565b9250613a6860018261645b565b9050613a2c565b505092915050565b60008051602061713b833981519152546001600160a01b031690565b33613a9c611fc2565b6001600160a01b0316146118b15733613ab3611fc2565b60405163163678e960e01b8152600401610f76929190616634565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613b0157610f1483614de0565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613b5b575060408051601f3d908101601f19168201909252613b58918101906166d9565b60015b613bbe5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610f76565b60008051602061713b8339815191528114613c2d5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610f76565b50610f14838383614e7a565b6001600160a01b0381166118b1576040516303988b8160e61b815260040160405180910390fd5b607a5460785460408051633629edcd60e11b815290516001600160a01b039384169363fc2ebdd193309387939190921691636c53db9a9160048083019260209291908290030181865afa158015613cbb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613cdf91906164c1565b60405160e085901b6001600160e01b03191681526001600160a01b03938416600482015260248101929092529091166044820152606401600060405180830381600087803b158015613d3057600080fd5b505af1158015613d44573d6000803e3d6000fd5b5050505050565b6000613d5a629896808361655e565b606954607254613d6a919061655e565b111592915050565b33613d7b611fc2565b6001600160a01b0316146110775760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610f76565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000606854604051602001613e389190616fa4565b60408051601f19818403018152908290528051602090910120607854632474521560e21b83529092506001600160a01b0316906391d1485490613e82908490600090600401616676565b602060405180830381865afa158015613e9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ec3919061664e565b15613f2e5760785460405163d547741f60e01b81526001600160a01b039091169063d547741f90613efb908490600090600401616676565b600060405180830381600087803b158015613f1557600080fd5b505af1158015613f29573d6000803e3d6000fd5b505050505b60005b82518110156140885760785483516001600160a01b03909116906391d14854908490869085908110613f6557613f65616fc1565b60200260200101516040518363ffffffff1660e01b8152600401613f8a929190616676565b602060405180830381865afa158015613fa7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613fcb919061664e565b614076576078546068546040516001600160a01b0390921691632f2ff15d91613ff691602001616fa4565b6040516020818303038152906040528051906020012085848151811061401e5761401e616fc1565b60200260200101516040518363ffffffff1660e01b8152600401614043929190616676565b600060405180830381600087803b15801561405d57600080fd5b505af1158015614071573d6000803e3d6000fd5b505050505b806140808161676f565b915050613f31565b507f7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a606854836040516119df929190616fd7565b607a546000906001600160a01b03166141f05760006068546040516020016140e49190616fa4565b60408051601f19818403018152908290528051602090910120607854632474521560e21b83529092506001600160a01b0316906391d148549061412e908490600090600401616676565b602060405180830381865afa15801561414b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061416f919061664e565b1561417d5750600192915050565b607854604051632474521560e21b81526001600160a01b03909116906391d14854906141af9084908790600401616676565b602060405180830381865afa1580156141cc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611095919061664e565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a0906142229085903090600401616634565b602060405180830381865afa15801561423f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ec4919061664e565b607854604051637817ee4f60e01b815260009182916001600160a01b0390911690637817ee4f9061429a9087903090600401616634565b602060405180830381865afa1580156142b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142db91906166d9565b6077549091506142eb848361648f565b1115614302576077546142ff90829061645b565b92505b509092915050565b6078546040516316308e2560e11b8152600091829184916001600160a01b031690632c611c4a9061433f908890600401615a25565b602060405180830381865afa15801561435c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061438091906166d9565b61438a919061648f565b607854604080516336d8759760e21b815290519293506012926001600160a01b039092169163db61d65c916004808201926020929091908290030181865afa1580156143da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906143fe91906164c1565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015614457575060408051601f3d908101601f1916820190925261445491810190616e91565b60015b156144625760ff1690505b600061447c61447283600a616f98565b61396a908561655e565b607854604051637817ee4f60e01b81529192506000916001600160a01b0390911690637817ee4f906144b4908a903090600401616634565b602060405180830381865afa1580156144d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906144f591906166d9565b90506000614503828461645b565b98975050505050505050565b600080439050808460070154111561452957614529616ff0565b8084600701540361453f57506000905080614560565b61455d846007015482614552919061645b565b856003015485611751565b91505b9250929050565b6145718484612c32565b8151156145815761458182613e23565b80511561101e5761101e815b60005b815181101561470c576078546068546040516001600160a01b03909216916391d14854916145c091602001616fa4565b604051602081830303815290604052805190602001208484815181106145e8576145e8616fc1565b60200260200101516040518363ffffffff1660e01b815260040161460d929190616676565b602060405180830381865afa15801561462a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061464e919061664e565b156146fa576078546068546040516001600160a01b039092169163d547741f9161467a91602001616fa4565b604051602081830303815290604052805190602001208484815181106146a2576146a2616fc1565b60200260200101516040518363ffffffff1660e01b81526004016146c7929190616676565b600060405180830381600087803b1580156146e157600080fd5b505af11580156146f5573d6000803e3d6000fd5b505050505b806147048161676f565b915050614590565b507fd418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e606854826040516127b4929190616fd7565b61474a8383612c32565b607a546001600160a01b031615610f1457607a5460405163642ce76b60e01b8152306004820152602481018390526001600160a01b039091169063642ce76b90604401600060405180830381600087803b1580156147a757600080fd5b505af11580156147bb573d6000803e3d6000fd5b50505050505050565b60785460405163288c314960e21b81526001600160a01b039091169063a230c524906147f4908490600401615a25565b602060405180830381865afa158015614811573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614835919061664e565b6118b157604051636a5cfb6d60e01b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae0906020016127b4565b61489b612f6a565b606854156148bc5760405163439a74c960e01b815260040160405180910390fd5b806000036148dd57604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506149298482614e9f565b949350505050565b6000828060200190518101906149479190617006565b905060005b815181101561101e5761499982828151811061496a5761496a616fc1565b60200260200101516000015183838151811061498857614988616fc1565b602002602001015160200151614f36565b806149a38161676f565b91505061494c565b6149b4816147c4565b6000828060200190518101906149ca9190617006565b90506149d5826140bc565b614a385760005b8151811015614a365760008282815181106149f9576149f9616fc1565b6020026020010151602001511315614a2457604051630b72d6b160e31b815260040160405180910390fd5b80614a2e8161676f565b9150506149dc565b505b60785460405163011de97360e61b81526001600160a01b039091169063477a5cc090614a6a9085903090600401616634565b602060405180830381865afa158015614a87573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614aab919061664e565b614ac857604051635fccb67f60e01b815260040160405180910390fd5b614ad28282614fdd565b610f1482826151dd565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339906020016127b4565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03841601614b3b57610f1482826155bb565b610f148383836155d7565b60005b6001600160a01b0382166000908152607d6020526040902054811015614c6a576001600160a01b0382166000908152607d60205260408120805483908110614b9357614b93616fc1565b6000918252602080832090910154808352607b9091526040909120909150614bba8261561d565b15614c55576001600160a01b0384166000908152600982016020526040812080549082905560028301805491928392614bf490849061645b565b925050819055508060706000828254614c0d919061645b565b90915550614c1d905082826132d5565b60008051602061715b8339815191528584600085600201548660030154604051614c4b9594939291906170b0565b60405180910390a1505b50508080614c629061676f565b915050614b49565b506001600160a01b03166000908152607c6020526040812055565b600081600003614c9757506000919050565b60006001614ca484615656565b901c6001901b90506001818481614cbd57614cbd616503565b048201901c90506001818481614cd557614cd5616503565b048201901c90506001818481614ced57614ced616503565b048201901c90506001818481614d0557614d05616503565b048201901c90506001818481614d1d57614d1d616503565b048201901c90506001818481614d3557614d35616503565b048201901c90506001818481614d4d57614d4d616503565b048201901c905061109581828581614d6757614d67616503565b046156ea565b6000600160801b831115614d9757604051600162a4c31160e01b0319815260040160405180910390fd5b600160801b821115614dbc576040516370b7a2d960e01b815260040160405180910390fd5b60806001607f1b614dcd848661655e565b614dd7919061648f565b901c9392505050565b614de9816132c6565b614e4b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610f76565b60008051602061713b83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b614e8383615700565b600082511180614e905750805b15610f145761101e8383615740565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610ec45760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610f76565b6000828152607b602052604081209082138015614fd357506000600882015460ff166006811115614f6957614f696158bc565b1480614f8d57506003600882015460ff166006811115614f8b57614f8b6158bc565b145b80614fb057506004600882015460ff166006811115614fae57614fae6158bc565b145b80614fd357506006600882015460ff166006811115614fd157614fd16158bc565b145b15610f1457600080fd5b600080614fe9846140bc565b905060005b83518110156150f057811580156150225750600084828151811061501457615014616fc1565b602002602001015160200151135b1561504057604051630b72d6b160e31b815260040160405180910390fd5b83818151811061505257615052616fc1565b602002602001015160000151600003156150de57600084828151811061507a5761507a616fc1565b60200260200101516000015190506150918161561d565b6150b15760405163c1d17bef60e01b815260048101829052602401610f76565b8482815181106150c3576150c3616fc1565b602002602001015160200151846150da91906170de565b9350505b806150e88161676f565b915050614fee565b506001600160a01b0384166000908152607c60205260408120546151149084615765565b607854604051637817ee4f60e01b81529192506000916001600160a01b0390911690637817ee4f9061514c9089903090600401616634565b602060405180830381865afa158015615169573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061518d91906166d9565b9050808211156151ba57604051636b20c17f60e11b81526004810183905260248101829052604401610f76565b506001600160a01b039094166000908152607c6020526040902093909355505050565b606060005b825181101561101e5760008382815181106151ff576151ff616fc1565b6020026020010151600001519050825160000361525b576040805160018082528183019092529060208083019080368337019050509250808360008151811061524a5761524a616fc1565b602002602001018181525050615394565b6000805b84518110156152c1578285828151811061527b5761527b616fc1565b6020026020010151036152af57604051632b7aec5560e21b8152600481018490526024810182905260019250604401610f76565b806152b98161676f565b91505061525f565b5080615392576000845160016152d7919061648f565b6001600160401b038111156152ee576152ee615a39565b604051908082528060200260200182016040528015615317578160200160208202803683370190505b50905060005b855181101561536f5785818151811061533857615338616fc1565b602002602001015182828151811061535257615352616fc1565b6020908102919091010152806153678161676f565b91505061531d565b50828186518151811061538457615384616fc1565b602090810291909101015293505b505b60008483815181106153a8576153a8616fc1565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b168352600981019094528120549193506153e88285615765565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d60205260409020548110156154815784546001600160a01b038c166000908152607d6020526040902080548390811061545657615456616fc1565b90600052602060002001540361546f5760019150615481565b806154798161676f565b91505061540a565b50806154b7576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b818311615507576154c8838361645b565b607060008282546154d9919061648f565b909155506154e99050838361645b565b8460020160008282546154fc919061648f565b9091555061554b9050565b615511828461645b565b60706000828254615522919061645b565b909155506155329050828461645b565b846002016000828254615545919061645b565b90915550505b8360070154600003615562574360078501556155a2565b61556c84846132d5565b60008051602061715b8339815191528a8784876002015488600301546040516155999594939291906170b0565b60405180910390a15b50505050505080806155b39061676f565b9150506151e2565b60008060008084865af1610ef55763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716615613576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610ec45750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c1561566b57608092831c92015b604083901c1561567d57604092831c92015b602083901c1561568f57602092831c92015b601083901c156156a157601092831c92015b600883901c156156b357600892831c92015b600483901c156156c557600492831c92015b600283901c156156d757600292831c92015b600183901c15610ec45760010192915050565b60008183106156f95781611095565b5090919050565b61570981614de0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060611095838360405180606001604052806027815260200161719b60279139615782565b60008061577283856170de565b9050600081121561109557600080fd5b6060600080856001600160a01b03168560405161579f91906170fe565b600060405180830381855af49150503d80600081146157da576040519150601f19603f3d011682016040523d82523d6000602084013e6157df565b606091505b50915091506157f0868383876157fa565b9695505050505050565b6060831561586757825160000361586057615814856132c6565b6158605760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610f76565b5081614929565b614929838381511561587c5781518083602001fd5b8060405162461bcd60e51b8152600401610f7691906163b0565b6000602082840312156158a857600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b600781106118b1576118b16158bc565b60005b838110156158fd5781810151838201526020016158e5565b50506000910152565b6000815180845261591e8160208601602086016158e2565b601f01601f19169290920160200192915050565b8d8152602081018d9052604081018c9052606081018b90526001600160a01b038a8116608083015289811660a0830152881660c082015260e0810187905260006101e061597e886158d2565b876101008401528061012084015286518184015250602086015160406102008401526159ae610220840182615906565b8651610140850152602087015161016085015260408701516001600160a01b031661018085015291506159de9050565b6101a08201939093526101c001529b9a5050505050505050505050565b600060208284031215615a0d57600080fd5b81356001600160e01b03198116811461109557600080fd5b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b0381118282101715615a7157615a71615a39565b60405290565b604051608081016001600160401b0381118282101715615a7157615a71615a39565b60405161012081016001600160401b0381118282101715615a7157615a71615a39565b604080519081016001600160401b0381118282101715615a7157615a71615a39565b60405160a081016001600160401b0381118282101715615a7157615a71615a39565b604051601f8201601f191681016001600160401b0381118282101715615b2857615b28615a39565b604052919050565b6001600160a01b03811681146118b157600080fd5b600060c08284031215615b5757600080fd5b615b5f615a4f565b90508135615b6c81615b30565b81526020820135615b7c81615b30565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b600060808284031215615bc357600080fd5b615bcb615a77565b90508135815260208201356020820152604082013560408201526060820135606082015292915050565b6000806101408385031215615c0957600080fd5b615c138484615b45565b9150615c228460c08501615bb1565b90509250929050565b60006001600160401b03821115615c4457615c44615a39565b5060051b60200190565b600082601f830112615c5f57600080fd5b81356020615c74615c6f83615c2b565b615b00565b82815260059290921b84018101918181019086841115615c9357600080fd5b8286015b84811015615cb7578035615caa81615b30565b8352918301918301615c97565b509695505050505050565b60006001600160401b03821115615cdb57615cdb615a39565b50601f01601f191660200190565b6000615cf7615c6f84615cc2565b9050828152838383011115615d0b57600080fd5b828260208301376000602084830101529392505050565b600082601f830112615d3357600080fd5b61109583833560208501615ce9565b600080600060608486031215615d5757600080fd5b83356001600160401b0380821115615d6e57600080fd5b615d7a87838801615c4e565b94506020860135915080821115615d9057600080fd5b50615d9d86828701615d22565b9250506040840135615dae81615b30565b809150509250925092565b600080600060608486031215615dce57600080fd5b8335615dd981615b30565b92506020840135615de981615b30565b91506040840135615dae81615b30565b60008060408385031215615e0c57600080fd5b82356001600160401b03811115615e2257600080fd5b615e2e85828601615d22565b9250506020830135615e3f81615b30565b809150509250929050565b60048110615e5a57615e5a6158bc565b9052565b60208101610ec48284615e4a565b60008060408385031215615e7f57600080fd5b8235615e8a81615b30565b946020939093013593505050565b60008060408385031215615eab57600080fd5b50508035926020909101359150565b600080600060608486031215615ecf57600080fd5b505081359360208301359350604090920135919050565b60038110615e5a57615e5a6158bc565b60208101610ec48284615ee6565b600060208284031215615f1657600080fd5b813561109581615b30565b60008060408385031215615f3457600080fd5b8235615f3f81615b30565b915060208301356001600160401b03811115615f5a57600080fd5b615f6685828601615d22565b9150509250929050565b600080600060608486031215615f8557600080fd5b8335615f9081615b30565b925060208401356001600160401b03811115615fab57600080fd5b8401601f81018613615fbc57600080fd5b615d9d86823560208401615ce9565b600060208284031215615fdd57600080fd5b81356001600160401b03811115615ff357600080fd5b61492984828501615c4e565b600080600080610180858703121561601657600080fd5b6160208686615b45565b935061602f8660c08701615bb1565b92506101408501356001600160401b038082111561604c57600080fd5b61605888838901615c4e565b935061016087013591508082111561606f57600080fd5b5061607c87828801615c4e565b91505092959194509250565b6000806000610160848603121561609e57600080fd5b6160a88585615b45565b92506160b78560c08601615bb1565b915061014084013590509250925092565b600080604083850312156160db57600080fd5b82356001600160401b03808211156160f257600080fd5b6160fe86838701615c4e565b935060209150818501358181111561611557600080fd5b8501601f8101871361612657600080fd5b8035616134615c6f82615c2b565b81815260059190911b8201840190848101908983111561615357600080fd5b8584015b8381101561618b5780358681111561616f5760008081fd5b61617d8c8983890101615d22565b845250918601918601616157565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b828110156161e757815180516001600160a01b031685528601518685015292840192908501906001016161b9565b5091979650505050505050565b60008083601f84011261620657600080fd5b5081356001600160401b0381111561621d57600080fd5b60208301915083602082850101111561456057600080fd5b60008060008060006060868803121561624d57600080fd5b8535945060208601356001600160401b038082111561626b57600080fd5b61627789838a016161f4565b9096509450604088013591508082111561629057600080fd5b5061629d888289016161f4565b969995985093965092949392505050565b80151581146118b157600080fd5b6000602082840312156162ce57600080fd5b8135611095816162ae565b6001600160a01b038c811682528b811660208301528a16604082015260608101899052608081018890526101608101616311886158d2565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b6000806040838503121561635b57600080fd5b823591506020830135615e3f81615b30565b6020810161637a836158d2565b91905290565b6000806040838503121561639357600080fd5b8235915060208301356001600160401b03811115615f5a57600080fd5b6020815260006110956020830184615906565b600181811c908216806163d757607f821691505b602082108103611cae57634e487b7160e01b600052602260045260246000fd5b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610ec457610ec4616445565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610ec457610ec4616445565b9283526001600160a01b03919091166020830152604082015260600190565b6000602082840312156164d357600080fd5b815161109581615b30565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b60008261653657634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b0382168061655457616554616445565b6000190192915050565b8082028115828204841417610ec457610ec4616445565b6020808252602c9082015260008051602061711b83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061711b83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b60006020828403121561666057600080fd5b8151611095816162ae565b805161205281615b30565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8381526040602082015260006166d060408301848661668d565b95945050505050565b6000602082840312156166eb57600080fd5b5051919050565b60006001600160401b038281166002600160401b0319810161671657616716616445565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c06080820181905260009061675b908301858761668d565b90508260a083015298975050505050505050565b60006001820161678157616781616445565b5060010190565b60006080828403121561679a57600080fd5b6167a2615a77565b90508151815260208201516020820152604082015160408201526060820151606082015292915050565b80516003811061205257600080fd5b80516004811061205257600080fd5b6000602082840312156167fc57600080fd5b604051602081016001600160401b038111828210171561681e5761681e615a39565b6040529151825250919050565b600060c0828403121561683d57600080fd5b616845615a4f565b9050815161685281615b30565b8152602082015161686281615b30565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b600082601f8301126168a857600080fd5b815160206168b8615c6f83615c2b565b82815260059290921b840181019181810190868411156168d757600080fd5b8286015b84811015615cb75780516168ee81615b30565b83529183019183016168db565b60006020828403121561690d57600080fd5b81516001600160401b038082111561692457600080fd5b90830190610220828603121561693957600080fd5b616941615a99565b61694b8684616788565b8152616959608084016167cc565b602082015261696a60a084016167db565b604082015261697c8660c085016167ea565b606082015261698e8660e0850161682b565b60808201526169a06101a0840161666b565b60a08201526169b26101c0840161666b565b60c08201526101e083015160e0820152610200830151828111156169d557600080fd5b6169e187828601616897565b6101008301525095945050505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b600081518084526020808501945080840160005b83811015616a505781516001600160a01b031687529582019590820190600101616a2b565b509495945050505050565b82815260406020820152616a736040820183516169f1565b60006020830151616a8760c0840182615ee6565b506040830151616a9a60e0840182615e4a565b506060830151610100616aaf81850183519052565b60808581015180516001600160a01b0390811661012088015260208201511661014087015260408101516101608701526060810151610180870152908101516101a086015260a0908101516101c08601528501519150616b136101e08501836158af565b60c08501519150616b286102008501836158af565b60e0850151915061022082818601528186015192508061024086015250506166d0610260840182616a17565b9687526001600160a01b0395861660208801529390941660408601526060850191909152608084015260a083019190915260c082015260e00190565b60808101610ec482846169f1565b600060408284031215616bb057600080fd5b616bb8615abc565b8251815260208301519091506001600160401b03811115616bd857600080fd5b8201601f81018413616be957600080fd5b8051616bf7615c6f82615cc2565b818152856020838501011115616c0c57600080fd5b616c1d8260208301602086016158e2565b602084015250909392505050565b600060208284031215616c3d57600080fd5b81516001600160401b0380821115616c5457600080fd5b9083019060c08286031215616c6857600080fd5b616c70615a4f565b825181526020830151616c8281615b30565b60208201526040830151616c9581615b30565b6040820152606083015182811115616cac57600080fd5b616cb887828601616b9e565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b600060208284031215616cf057600080fd5b81516001600160401b0380821115616d0757600080fd5b9083019060a08286031215616d1b57600080fd5b616d23615ade565b825181526020830151616d3581615b30565b6020820152604083810151908201526060830151616d5281615b30565b6060820152608083015182811115616d6957600080fd5b616d7587828601616b9e565b60808301525095945050505050565b601f821115610f1457600081815260208120601f850160051c81016020861015616dab5750805b601f850160051c820191505b81811015616dca57828155600101616db7565b505050505050565b81516001600160401b03811115616deb57616deb615a39565b616dff81616df984546163c3565b84616d84565b602080601f831160018114616e345760008415616e1c5750858301515b600019600386901b1c1916600185901b178555616dca565b600085815260208120601f198616915b82811015616e6357888601518255948401946001909101908401616e44565b5085821015616e815787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215616ea357600080fd5b815160ff8116811461109557600080fd5b600181815b80851115616eef578160001904821115616ed557616ed5616445565b80851615616ee257918102915b93841c9390800290616eb9565b509250929050565b600082616f0657506001610ec4565b81616f1357506000610ec4565b8160018114616f295760028114616f3357616f4f565b6001915050610ec4565b60ff841115616f4457616f44616445565b50506001821b610ec4565b5060208310610133831016604e8410600b8410161715616f72575081810a610ec4565b616f7c8383616eb4565b8060001904821115616f9057616f90616445565b029392505050565b60006110958383616ef7565b6810531313d5d31254d560ba1b8152600981019190915260290190565b634e487b7160e01b600052603260045260246000fd5b8281526040602082015260006149296040830184616a17565b634e487b7160e01b600052600160045260246000fd5b6000602080838503121561701957600080fd5b82516001600160401b0381111561702f57600080fd5b8301601f8101851361704057600080fd5b805161704e615c6f82615c2b565b81815260069190911b8201830190838101908783111561706d57600080fd5b928401925b828410156139f2576040848903121561708b5760008081fd5b617093615abc565b845181528585015186820152825260409093019290840190617072565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b8082018281126000831280158216821582161715613a6f57613a6f616445565b600082516171108184602087016158e2565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53a2646970667358221220ab1fd5f912de58daa642ff63ec4261cc7bceace47054912feb6cb4a1e48e74bb64736f6c63430008130033","sourceMap":"4144:56506:59:-:0;;;1088:4:32;1045:48;;4144:56506:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106103585760003560e01c8063013cf08b1461036157806301ffc9a7146103a3578063025313a2146103d3578063062f9ece146103f55780630a6f0ee9146104155780630bece79c146104355780630c0512e9146104555780630f529ba214610479578063125fd1d91461049057806315cc481e146104a6578063184b9559146104c45780631aa91a9e146104e45780631ddf1e23146105045780632506b87014610519578063255ffb381461055c5780632bbe0cae146105895780632dbd6fdd1461059c5780632ed04b2b146105c8578063311a6c56146105e85780633396045914610608578063346db8cb1461061e578063351d9f961461063e5780633659cfe6146106655780633864d3661461068557806338fff2d0146106a5578063406244d8146106ba57806341bb7605146106cf57806342fda9c7146107645780634ab4ba42146107795780634d31d0871461078e5780634f1ef286146107ae57806352d1902d146107c157806359a5db8b146107d65780635db64b99146107f65780636003e4141461082357806360b0645a1461084357806360d5dedc14610863578063626c47e8146108835780636453d9c414610898578063715018a6146108b85780637263cfe2146108cd578063782aadff146108ed578063814516ad1461090d578063817b1cd214610922578063824ea8ed14610938578063868c57b8146109585780638da5cb5b14610978578063948e7a591461098d578063950559d7146109ad578063a0cf0aea146109cd578063a28889e1146109f5578063a47ff7e514610a2d578063a51312c814610a44578063aba9ffee14610a64578063ad56fd5d14610a7a578063b0d3713a14610a9a578063b2b878d014610aba578063b41596ec14610ae7578063b5f620ce14610afa578063b6c61f3114610b1a578063c329217114610b3a578063c4d66de814610b57578063c7f758a814610b77578063d1e3623214610bae578063db9b5d5014610bc3578063df868ed314610be3578063e0a8f6f514610bf8578063e0dd2c3814610c18578063eb11af9314610c38578063edd146cc14610c60578063ef2920fc14610c80578063f2fde38b14610c93578063f4fe255614610cb3578063f5b0dfb714610cd3578063f5be3f7c14610cf3578063ffa1ad7414610d0957005b3661035f57005b005b34801561036d57600080fd5b5061038161037c366004615896565b610d45565b60405161039a9d9c9b9a99989796959493929190615932565b60405180910390f35b3480156103af57600080fd5b506103c36103be3660046159fb565b610e93565b604051901515815260200161039a565b3480156103df57600080fd5b506103e8610eca565b60405161039a9190615a25565b34801561040157600080fd5b5061035f610410366004615bf5565b610ee3565b34801561042157600080fd5b5061035f610430366004615d42565b610ef9565b34801561044157600080fd5b506079546103e8906001600160a01b031681565b34801561046157600080fd5b5061046b606e5481565b60405190815260200161039a565b34801561048557600080fd5b5061046b6298968081565b34801561049c57600080fd5b5061046b606f5481565b3480156104b257600080fd5b506065546001600160a01b03166103e8565b3480156104d057600080fd5b5061035f6104df366004615db9565b610f19565b3480156104f057600080fd5b5061046b6104ff366004615896565b611024565b34801561051057600080fd5b5061035f61106e565b34801561052557600080fd5b5060725460735460745460755461053c9392919084565b60408051948552602085019390935291830152606082015260800161039a565b34801561056857600080fd5b5061046b610577366004615896565b607e6020526000908152604090205481565b6103e8610597366004615df9565b611079565b3480156105a857600080fd5b506076546105bb90610100900460ff1681565b60405161039a9190615e5e565b3480156105d457600080fd5b5061046b6105e3366004615e6c565b61109c565b3480156105f457600080fd5b5061035f610603366004615e98565b611160565b34801561061457600080fd5b5061046b606c5481565b34801561062a57600080fd5b5061046b610639366004615eba565b611751565b34801561064a57600080fd5b506076546106589060ff1681565b60405161039a9190615ef6565b34801561067157600080fd5b5061035f610680366004615f04565b6117ec565b34801561069157600080fd5b5061035f6106a0366004615e6c565b6118b4565b3480156106b157600080fd5b5060685461046b565b3480156106c657600080fd5b5061046b600a81565b3480156106db57600080fd5b5061072c6106ea366004615896565b607f602052600090815260409020805460018201546002830154600384015460048501546005909501546001600160a01b039485169593909416939192909186565b604080516001600160a01b039788168152969095166020870152938501929092526060840152608083015260a082015260c00161039a565b34801561077057600080fd5b5060665461046b565b34801561078557600080fd5b5060695461046b565b34801561079a57600080fd5b506103c36107a9366004615f04565b6119eb565b61035f6107bc366004615f21565b6119f3565b3480156107cd57600080fd5b5061046b611aa8565b3480156107e257600080fd5b5061046b6107f1366004615896565b611b56565b34801561080257600080fd5b5061046b610811366004615f04565b607c6020526000908152604090205481565b34801561082f57600080fd5b506078546103e8906001600160a01b031681565b34801561084f57600080fd5b5061046b61085e366004615896565b611cb4565b34801561086f57600080fd5b5061035f61087e366004615f70565b611ce4565b34801561088f57600080fd5b5061046b600381565b3480156108a457600080fd5b5061035f6108b3366004615f04565b611d60565b3480156108c457600080fd5b5061035f611d71565b3480156108d957600080fd5b5061035f6108e8366004615fcb565b611d83565b3480156108f957600080fd5b5061046b610908366004615e6c565b611d94565b34801561091957600080fd5b5061035f611f2b565b34801561092e57600080fd5b5061046b60705481565b34801561094457600080fd5b506103c3610953366004615896565b611f34565b34801561096457600080fd5b5061046b610973366004615e6c565b611f91565b34801561098457600080fd5b506103e8611fc2565b34801561099957600080fd5b5061035f6109a8366004615fff565b612057565b3480156109b957600080fd5b5061046b6109c8366004615896565b61206b565b3480156109d957600080fd5b506103e873eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b348015610a0157600080fd5b50606d54610a15906001600160401b031681565b6040516001600160401b03909116815260200161039a565b348015610a3957600080fd5b5060775461046b9081565b348015610a5057600080fd5b5061035f610a5f366004615fcb565b612095565b348015610a7057600080fd5b5061046b60715481565b348015610a8657600080fd5b5061035f610a95366004616088565b6120a6565b348015610aa657600080fd5b5061035f610ab5366004615f04565b6120b9565b348015610ac657600080fd5b50610ada610ad53660046160c8565b600080fd5b60405161039a919061619c565b61046b610af5366004616235565b6120e3565b348015610b0657600080fd5b5061035f610b153660046162bc565b6123d1565b348015610b2657600080fd5b50607a546103e8906001600160a01b031681565b348015610b4657600080fd5b50607654610100900460ff166105bb565b348015610b6357600080fd5b5061035f610b72366004615f04565b6123da565b348015610b8357600080fd5b50610b97610b92366004615896565b61240a565b60405161039a9b9a999897969594939291906162d9565b348015610bba57600080fd5b5060715461046b565b348015610bcf57600080fd5b5061035f610bde366004615f04565b612516565b348015610bef57600080fd5b506103c361262c565b348015610c0457600080fd5b5061035f610c13366004615896565b61263a565b348015610c2457600080fd5b5061046b610c33366004616348565b6127bf565b348015610c4457600080fd5b50610c536107a9366004615f04565b60405161039a919061636d565b348015610c6c57600080fd5b5061035f610c7b366004616380565b6127ea565b61035f610c8e366004615df9565b6129cc565b348015610c9f57600080fd5b5061035f610cae366004615f04565b6129f0565b348015610cbf57600080fd5b5061035f610cce366004615f04565b612a5d565b348015610cdf57600080fd5b5061035f610cee366004615896565b612b61565b348015610cff57600080fd5b5061046b611c2081565b348015610d1557600080fd5b50610d38604051806040016040528060038152602001620302e360ec1b81525081565b60405161039a91906163b0565b607b602090815260009182526040918290208054600182015460028301546003840154600485015460058601546006870154600788015460088901548b51808d01909c52600a8a0180548d52600b8b0180549a9d999c989b979a6001600160a01b039788169a968816999790951697939660ff9093169593949192840191610dcc906163c3565b80601f0160208091040260200160405190810160405280929190818152602001828054610df8906163c3565b8015610e455780601f10610e1a57610100808354040283529160200191610e45565b820191906000526020600020905b815481529060010190602001808311610e2857829003601f168201915b50505091909252505060408051606081018252600c8501548152600d8501546020820152600e8501546001600160a01b031691810191909152600f840154601090940154929390929091508d565b60006001600160e01b0319821663f1801e6160e01b1480610ec457506301ffc9a760e01b6001600160e01b03198316145b92915050565b6000610ede6033546001600160a01b031690565b905090565b610eeb612b8a565b610ef58282612c32565b5050565b610f01612f6a565b610f09612f95565b610f14838383612fb8565b505050565b600054610100900460ff1615808015610f395750600054600160ff909116105b80610f5a5750610f48306132c6565b158015610f5a575060005460ff166001145b610f7f5760405162461bcd60e51b8152600401610f76906163f7565b60405180910390fd5b6000805460ff191660011790558015610fa2576000805461ff0019166101001790555b610fcf846040518060400160405280600a8152602001694356537472617465677960b01b81525084611ce4565b606a80546001600160a01b0319166001600160a01b038516179055801561101e576000805461ff00191690556040516001815260008051602061717b8339815191529060200160405180910390a15b50505050565b6000818152607b60205260408120805483146110565760405163c1d17bef60e01b815260048101849052602401610f76565b6110648182600201546132d5565b6003015492915050565b61107733613310565b565b6000611083612f6a565b61108b612f95565b6110958383613435565b9392505050565b60006110a66137cb565b60006002607654610100900460ff1660038111156110c6576110c66158bc565b14806110ed57506001607654610100900460ff1660038111156110eb576110eb6158bc565b145b156110f9575081611106565b61110384846137f6565b90505b8060716000828254611118919061645b565b90915550506040517f70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1906111519086908690859061646e565b60405180910390a19392505050565b6000828152607e6020908152604080832054808452607b835281842060108101548552607f8452828520835160c08101855281546001600160a01b03908116825260018301541695810195909552600281015493850193909352600383015460608501526004830154608085015260059092015460a0840152929091908390036112005760405163c1d17bef60e01b815260048101849052602401610f76565b6005600883015460ff16600681111561121b5761121b6158bc565b1461123c57604051634b011ca960e11b815260048101849052602401610f76565b60a0810151600d8301546000916112529161648f565b4211905080158161126d575081516001600160a01b03163314155b1561128b57604051631777988560e11b815260040160405180910390fd5b8080611295575084155b156113de5781608001516000036112bf57604051630dd466dd60e41b815260040160405180910390fd5b81608001516001036112db5760088301805460ff191660011790555b81608001516002036113685760088301805460ff191660061790556079546005840154604084810151905163099ea56b60e41b81526001600160a01b03938416936399ea56b093611335938a9392909116916004016164a2565b600060405180830381600087803b15801561134f57600080fd5b505af1158015611363573d6000803e3d6000fd5b505050505b607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936113a7938a9392909116916004016164a2565b600060405180830381600087803b1580156113c157600080fd5b505af11580156113d5573d6000803e3d6000fd5b505050506116ba565b8460010361149e5760088301805460ff19166001179055607954600e84015460785460408051633629edcd60e11b815290516001600160a01b0394851694638969ab53948a9490821693911691636c53db9a916004808201926020929091908290030181865afa158015611456573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061147a91906164c1565b86606001516040518563ffffffff1660e01b81526004016113a794939291906164de565b846002036116ba5760088301805460ff19166006179055607954600e840154606084015160405163099ea56b60e41b81526001600160a01b03938416936399ea56b0936114f4938a9392909116916004016164a2565b600060405180830381600087803b15801561150e57600080fd5b505af1158015611522573d6000803e3d6000fd5b5050607954600586015460785460408051633629edcd60e11b815290516001600160a01b039485169650638969ab5395508a949384169390921691636c53db9a916004808201926020929091908290030181865afa158015611588573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ac91906164c1565b606f546000908152607f602052604090206002908101546115cd9190616519565b6040518563ffffffff1660e01b81526004016115ec94939291906164de565b600060405180830381600087803b15801561160657600080fd5b505af115801561161a573d6000803e3d6000fd5b50506079546005860154600e870154606f546000908152607f602052604090206002908101546001600160a01b039485169650638969ab5395508a9493841693909216916116689190616519565b6040518563ffffffff1660e01b815260040161168794939291906164de565b600060405180830381600087803b1580156116a157600080fd5b505af11580156116b5573d6000803e3d6000fd5b505050505b606d80546001600160401b03169060006116d38361653b565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550504283600f01819055508582600001516001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161174191815260200190565b60405180910390a3505050505050565b607454600090849082906117769061177090629896809060801b616519565b836139fd565b905060806001607f1b60726002015462989680611793919061645b565b6117a184600160801b61645b565b6117ae629896808961655e565b6117b8919061655e565b6117c29190616519565b6117cc888561655e565b6117d6919061648f565b6117e0919061648f565b901c9695505050505050565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036118345760405162461bcd60e51b8152600401610f7690616575565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611866613a77565b6001600160a01b03161461188c5760405162461bcd60e51b8152600401610f76906165af565b61189581613a93565b604080516000808252602082019092526118b191839190613ace565b50565b607860009054906101000a90046001600160a01b03166001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611907573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061192b91906164c1565b6001600160a01b0316336001600160a01b031614158015611965575061194f611fc2565b6001600160a01b0316336001600160a01b031614155b1561198357604051637430763f60e11b815260040160405180910390fd5b61198c82613c39565b607a80546001600160a01b0319166001600160a01b0384161790556119b081613c60565b7f2667a0cd99dbc787d1d2596efe938cf43dfe83e8b8ddeb70e28007c09ff33485826040516119df9190615a25565b60405180910390a15050565b600080610ec4565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003611a3b5760405162461bcd60e51b8152600401610f7690616575565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316611a6d613a77565b6001600160a01b031614611a935760405162461bcd60e51b8152600401610f76906165af565b611a9c82613a93565b610ef582826001613ace565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614611b435760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610f76565b5060008051602061713b83398151915290565b60008060695411611b7a5760405163ed4421ad60e01b815260040160405180910390fd5b611b8382613d4b565b15611b8d57600080fd5b606954600090611ba184600160401b61655e565b611bab9190616519565b6072546298968090611bc190600160401b61655e565b611bcb9190616519565b611bd5919061645b565b90506040611be260715490565b607454611bf2906298968061645b565b629896806040611c02868061655e565b607354911c90611c1990629896809060801b616519565b611c239190616519565b611c2d919061655e565b611c379190616519565b611c41919061655e565b607154911c925015611cae57600064174876e800611c616109c860715490565b62989680611c6e60715490565b607554611c7b9190616519565b611c85919061655e565b611c8f919061655e565b611c999190616519565b9050808311611ca85780611caa565b825b9250505b50919050565b6000818152607b60205260408120600781015461109590611cd5904361645b565b82600301548360020154611751565b600054610100900460ff16611d0b5760405162461bcd60e51b8152600401610f76906165e9565b611d14816123da565b606580546001600160a01b0319166001600160a01b038516179055604051611d409083906020016163b0565b60408051601f198184030181529190528051602090910120606655505050565b611d686137cb565b6118b181613310565b611d79613d72565b6110776000613dd1565b611d8b612b8a565b6118b181613e23565b6000611d9e6137cb565b611da7836140bc565b611dc457604051630b72d6b160e31b815260040160405180910390fd5b60006002607654610100900460ff166003811115611de457611de46158bc565b03611df0575081611e54565b6001607654610100900460ff166003811115611e0e57611e0e6158bc565b03611e2457611e1d8484614263565b9050611e54565b6003607654610100900460ff166003811115611e4257611e426158bc565b03611e5457611e51848461430a565b90505b60785460405163011de97360e61b81526000916001600160a01b03169063477a5cc090611e879088903090600401616634565b602060405180830381865afa158015611ea4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ec8919061664e565b90508015611ee8578160716000828254611ee2919061648f565b90915550505b7f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a858584604051611f1b9392919061646e565b60405180910390a1509392505050565b61107733612516565b6000818152607b60205260408120600281015482908190611f5690849061450f565b91509150816000148015611f68575080155b15611f7557826003015491505b6000611f848460010154611b56565b9092101595945050505050565b607d6020528160005260406000208181548110611fad57600080fd5b90600052602060002001600091509150505481565b6000611fcc610eca565b6001600160a01b03163b600003611fe557610ede610eca565b611fed610eca565b6001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015612046575060408051601f3d908101601f19168201909252612043918101906164c1565b60015b61205257610ede610eca565b919050565b61205f612b8a565b61101e84848484614567565b60745460009061207e906298968061645b565b61208b629896808461655e565b610ec49190616519565b61209d612b8a565b6118b18161458d565b6120ae612b8a565b610f14838383614740565b6120c1613d72565b606a80546001600160a01b0319166001600160a01b0392909216919091179055565b60006120ee336147c4565b6000868152607b6020908152604080832060108101548452607f835292819020815160c08101835281546001600160a01b0390811682526001830154169381019390935260028101549183019190915260038101546060830152600481015460808301526005015460a08201528154881461217f5760405163c1d17bef60e01b815260048101899052602401610f76565b6001600883015460ff16600681111561219a5761219a6158bc565b146121bb576040516344980d8f60e01b815260048101899052602401610f76565b80606001513410156121cc57600080fd5b600f820154158015906121ef575042611c2083600f01546121ed919061648f565b115b156121f957600080fd5b600081606001513461220b919061645b565b607954606084015160405163240ff7c560e11b81529293506001600160a01b039091169163481fef8a9190612246908d903390600401616676565b6000604051808303818588803b15801561225f57600080fd5b505af1158015612273573d6000803e3d6000fd5b5050845160405163c13517e160e01b81526001600160a01b03909116935063c13517e192508491506122ae906003908b908b906004016166b6565b60206040518083038185885af11580156122cc573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906122f191906166d9565b60088401805491955060059160ff19166001830217905550600c830184905542600d840155600e830180546001600160a01b031916331790556000848152607e602052604081208a9055606d80546001600160401b031691612352836166f2565b91906101000a8154816001600160401b0302191690836001600160401b03160217905550507f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d82600001518a86338c8c89600c01600101546040516123bd9796959493929190616720565b60405180910390a150505095945050505050565b6118b181614852565b600054610100900460ff166124015760405162461bcd60e51b8152600401610f76906165e9565b6118b181613dd1565b600080600080600080600080600080600080607b60008e81526020019081526020016000209050806001015460001461244f5761244a8160010154611b56565b612452565b60005b93508060050160009054906101000a90046001600160a01b03168160040160009054906101000a90046001600160a01b03168260060160009054906101000a90046001600160a01b0316836001015484600201548560080160009054906101000a900460ff16866007015487600301548b896009016000336001600160a01b03166001600160a01b03168152602001908152602001600020548a601001549b509b509b509b509b509b509b509b509b509b509b505091939597999b90929496989a50565b61251f816140bc565b61253c57604051630b72d6b160e31b815260040160405180910390fd5b607854604051630d4a8b4960e01b81526001600160a01b0390911690630d4a8b499061256e9084903090600401616634565b600060405180830381600087803b15801561258857600080fd5b505af115801561259c573d6000803e3d6000fd5b5050607854604051637817ee4f60e01b81526001600160a01b039091169250637817ee4f91506125d29084903090600401616634565b602060405180830381865afa1580156125ef573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061261391906166d9565b60716000828254612624919061648f565b909155505050565b6000610ede60675460ff1690565b60016000828152607b602052604090206008015460ff166006811115612662576126626158bc565b14612683576040516344980d8f60e01b815260048101829052602401610f76565b6000818152607b60205260409020600501546001600160a01b031633146126dc576000818152607b602052604090819020600501549051634544dc9160e11b8152610f76916001600160a01b0316903390600401616634565b6079546000828152607b6020908152604080832060058101546010909101548452607f9092529182902060020154915163099ea56b60e41b81526001600160a01b03938416936399ea56b0936127399387939216916004016164a2565b600060405180830381600087803b15801561275357600080fd5b505af1158015612767573d6000803e3d6000fd5b5050506000828152607b6020908152604091829020600801805460ff1916600317905590518381527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c9250015b60405180910390a150565b6000828152607b602090815260408083206001600160a01b0385168452600901909152812054611095565b6127f2612f6a565b6127fb82614893565b606a54606c8054612824926001600160a01b031691600061281b8361676f565b919050556148e2565b607980546001600160a01b0319166001600160a01b039290921691821790556040805163204a7f0760e21b81529051638129fc1c9160048082019260009290919082900301818387803b15801561287a57600080fd5b505af115801561288e573d6000803e3d6000fd5b505050506000818060200190518101906128a891906168fb565b60a0810151607880546001600160a01b0319166001600160a01b03909216919091179055602081015160768054929350909160ff191660018360028111156128f2576128f26158bc565b021790555060408101516076805461ff00191661010083600381111561291a5761291a6158bc565b021790555060608101515160775560c0810151607a80546001600160a01b0319166001600160a01b039092169190911790556040517fb6a062fc5f19aa17637bf61ab001ce3e5ceb67a5bd51d9753281e41df94f3fd39061297e9085908490616a5b565b60405180910390a160808101518151604080516000808252602082019081528183019092526129ae939291614567565b607a546001600160a01b031615610f1457610f148160e00151613c60565b6129d4612f6a565b6129dc612f95565b6129e68282614931565b610ef582826149ab565b6129f8613d72565b6001600160a01b0381166124015760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610f76565b600054600290610100900460ff16158015612a7f575060005460ff8083169116105b612a9b5760405162461bcd60e51b8152600401610f76906163f7565b6000805461ffff191660ff831617610100178155606f80548252607f602052604080832080546001600160a01b038088166001600160a01b0319909216919091179091559154808452928190208054600182015460028301546003840154600485015460059095015495516000805160206171c283398151915298612b2d989097958116969416949293919290616b54565b60405180910390a16000805461ff001916905560405160ff8216815260008051602061717b833981519152906020016119df565b612b69612f6a565b8060696000828254612b7b919061648f565b909155506118b1905081614adc565b607860009054906101000a90046001600160a01b03166001600160a01b0316636c53db9a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bdd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c0191906164c1565b6001600160a01b0316336001600160a01b03161461107757604051637430763f60e11b815260040160405180910390fd5b60208201516001600160a01b031615801590612c57575081516001600160a01b031615155b8015612d405750606f546000908152607f6020908152604090912060010154908301516001600160a01b039081169116141580612cb35750606f546000908152607f602052604090205482516001600160a01b03908116911614155b80612cd75750606f546000908152607f602052604090819020600201549083015114155b80612cfa5750606f546000908152607f6020526040902060030154606083015114155b80612d1d5750606f546000908152607f6020526040902060040154608083015114155b80612d405750606f546000908152607f602052604090206005015460a083015114155b15612f1e57602080830151606f546000908152607f9092526040909120600101546001600160a01b039081169116141580612d9a57508151606f546000908152607f60205260409020546001600160a01b03908116911614155b15612e63578151602083015160405163446adb9960e11b81526001600160a01b03909216916388d5b73291612dd191600401615a25565b600060405180830381600087803b158015612deb57600080fd5b505af1158015612dff573d6000803e3d6000fd5b5050835160208501516040517fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f9450612e5a9350309291906001600160a01b0393841681529183166020830152909116604082015260600190565b60405180910390a15b606f8054906000612e738361676f565b9091555050606f80546000908152607f6020908152604091829020855181546001600160a01b038083166001600160a01b03199283161784559388015160018401805495821695909216949094179055838701516002830181905560608801516003840181905560808901516004850181905560a08a01516005909501859055965495516000805160206171c283398151915297612f15979694959091616b54565b60405180910390a15b805160725560208101516073556040808201516074556060820151607555517fec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc906119df908390616b90565b6065546001600160a01b031633146110775760405163075fd2b160e01b815260040160405180910390fd5b60685460000361107757604051630f68fe6360e21b815260040160405180910390fd5b600082806020019051810190612fce91906166d9565b9050600160765460ff166002811115612fe957612fe96158bc565b0361101e576000818152607b6020526040902054811461301f5760405163c1d17bef60e01b815260048101829052602401610f76565b6069546000828152607b6020526040902060010154111561303f57600080fd5b60016000828152607b602052604090206008015460ff166006811115613067576130676158bc565b14613088576040516344980d8f60e01b815260048101829052602401610f76565b600061309382611024565b6000838152607b6020526040812060010154919250906130b290611b56565b905080821080156130d357506000838152607b602052604090206001015415155b156130f15760405163199cf26160e31b815260040160405180910390fd5b6000838152607b6020526040812060010154606980549192909161311690849061645b565b909155505060655460685460405163068bcd8d60e01b815260048101919091526131c2916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801561316a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526131929190810190616c2b565b6040908101516000868152607b6020529190912060048101546001909101546001600160a01b0390911690614b0c565b6000838152607b6020908152604080832060088101805460ff19166004908117909155607954600590920154606f548652607f9094529382902060020154915163099ea56b60e41b81526001600160a01b03918216946399ea56b094613230948a94909116929091016164a2565b600060405180830381600087803b15801561324a57600080fd5b505af115801561325e573d6000803e3d6000fd5b5050506000848152607b602052604090819020600481015460019091015491517fa7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f3584793506132b69287926001600160a01b0316916164a2565b60405180910390a1505050505050565b6001600160a01b03163b151590565b6000806132e2848461450f565b915091508160001480156132f4575080155b156132ff5750505050565b600784015560039092019190915550565b607854604051637817ee4f60e01b81526001600160a01b0390911690637817ee4f906133429084903090600401616634565b602060405180830381865afa15801561335f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061338391906166d9565b60716000828254613394919061645b565b90915550506078546040516322bcf99960e01b81526001600160a01b03909116906322bcf999906133cb9084903090600401616634565b600060405180830381600087803b1580156133e557600080fd5b505af11580156133f9573d6000803e3d6000fd5b5050505061340681614b46565b7f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b816040516127b49190615a25565b6000613440826147c4565b60785460405163208a40f360e11b81526001600160a01b039091169063411481e690613470903090600401615a25565b60006040518083038186803b15801561348857600080fd5b505afa15801561349c573d6000803e3d6000fd5b505050506000838060200190518101906134b69190616cde565b9050600160765460ff1660028111156134d1576134d16158bc565b036135fd576134e38160200151613c39565b6000306001600160a01b03166315cc481e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613523573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061354791906164c1565b825160405163068bcd8d60e01b81529192506001600160a01b0383169163068bcd8d9161357a9160040190815260200190565b600060405180830381865afa158015613597573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526135bf9190810190616c2b565b604001516001600160a01b031682606001516001600160a01b0316146135e457600080fd5b6135f18260400151613d4b565b156135fb57600080fd5b505b606f546000908152607f60205260409020546001600160a01b0316158015906136395750606f546000908152607f602052604090206002015434105b1561364357600080fd5b6000606e600081546136549061676f565b91829055506000818152607b602090815260408083208481556005810180546001600160a01b038b81166001600160a01b0319928316179092558885015160048401805491841691831691909117905560608901516006840180549190931691161790559086015160018083019190915560088201805460ff19169091179055436007820155600381019290925560808501518051600a8401908155918101519394509192600b8401906137089082616dd2565b5050606f54601083015550607954600582015460405163240ff7c560e11b81526001600160a01b039283169263481fef8a92349261374c9288921690600401616676565b6000604051808303818588803b15801561376557600080fd5b505af1158015613779573d6000803e3d6000fd5b50505050507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b606854836040516137ba929190918252602082015260400190565b60405180910390a150949350505050565b6078546001600160a01b03163314611077576040516357848b5160e11b815260040160405180910390fd5b607854604080516336d8759760e21b815290516000926012926001600160a01b039091169163db61d65c916004808201926020929091908290030181865afa158015613846573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061386a91906164c1565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156138c3575060408051601f3d908101601f191682019092526138c091810190616e91565b60015b156138ce5760ff1690505b6078546040516316308e2560e11b815260009185916001600160a01b0390911690632c611c4a90613903908990600401615a25565b602060405180830381865afa158015613920573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061394491906166d9565b61394e919061645b565b9050600061396f61396084600a616f98565b61396a908461655e565b614c85565b607854604051637817ee4f60e01b815291925060009183916001600160a01b031690637817ee4f906139a7908b903090600401616634565b602060405180830381865afa1580156139c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139e891906166d9565b6139f2919061645b565b979650505050505050565b6000600160801b8310613a2357604051633e668d0360e01b815260040160405180910390fd5b50600160801b82825b8015613a6f5780600116600003613a5157613a478283614d6d565b915060011c613a2c565b613a5b8383614d6d565b9250613a6860018261645b565b9050613a2c565b505092915050565b60008051602061713b833981519152546001600160a01b031690565b33613a9c611fc2565b6001600160a01b0316146118b15733613ab3611fc2565b60405163163678e960e01b8152600401610f76929190616634565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615613b0157610f1483614de0565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015613b5b575060408051601f3d908101601f19168201909252613b58918101906166d9565b60015b613bbe5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610f76565b60008051602061713b8339815191528114613c2d5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610f76565b50610f14838383614e7a565b6001600160a01b0381166118b1576040516303988b8160e61b815260040160405180910390fd5b607a5460785460408051633629edcd60e11b815290516001600160a01b039384169363fc2ebdd193309387939190921691636c53db9a9160048083019260209291908290030181865afa158015613cbb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613cdf91906164c1565b60405160e085901b6001600160e01b03191681526001600160a01b03938416600482015260248101929092529091166044820152606401600060405180830381600087803b158015613d3057600080fd5b505af1158015613d44573d6000803e3d6000fd5b5050505050565b6000613d5a629896808361655e565b606954607254613d6a919061655e565b111592915050565b33613d7b611fc2565b6001600160a01b0316146110775760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610f76565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000606854604051602001613e389190616fa4565b60408051601f19818403018152908290528051602090910120607854632474521560e21b83529092506001600160a01b0316906391d1485490613e82908490600090600401616676565b602060405180830381865afa158015613e9f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613ec3919061664e565b15613f2e5760785460405163d547741f60e01b81526001600160a01b039091169063d547741f90613efb908490600090600401616676565b600060405180830381600087803b158015613f1557600080fd5b505af1158015613f29573d6000803e3d6000fd5b505050505b60005b82518110156140885760785483516001600160a01b03909116906391d14854908490869085908110613f6557613f65616fc1565b60200260200101516040518363ffffffff1660e01b8152600401613f8a929190616676565b602060405180830381865afa158015613fa7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613fcb919061664e565b614076576078546068546040516001600160a01b0390921691632f2ff15d91613ff691602001616fa4565b6040516020818303038152906040528051906020012085848151811061401e5761401e616fc1565b60200260200101516040518363ffffffff1660e01b8152600401614043929190616676565b600060405180830381600087803b15801561405d57600080fd5b505af1158015614071573d6000803e3d6000fd5b505050505b806140808161676f565b915050613f31565b507f7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a606854836040516119df929190616fd7565b607a546000906001600160a01b03166141f05760006068546040516020016140e49190616fa4565b60408051601f19818403018152908290528051602090910120607854632474521560e21b83529092506001600160a01b0316906391d148549061412e908490600090600401616676565b602060405180830381865afa15801561414b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061416f919061664e565b1561417d5750600192915050565b607854604051632474521560e21b81526001600160a01b03909116906391d14854906141af9084908790600401616676565b602060405180830381865afa1580156141cc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611095919061664e565b607a546040516302154c3d60e51b81526001600160a01b03909116906342a987a0906142229085903090600401616634565b602060405180830381865afa15801561423f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ec4919061664e565b607854604051637817ee4f60e01b815260009182916001600160a01b0390911690637817ee4f9061429a9087903090600401616634565b602060405180830381865afa1580156142b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906142db91906166d9565b6077549091506142eb848361648f565b1115614302576077546142ff90829061645b565b92505b509092915050565b6078546040516316308e2560e11b8152600091829184916001600160a01b031690632c611c4a9061433f908890600401615a25565b602060405180830381865afa15801561435c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061438091906166d9565b61438a919061648f565b607854604080516336d8759760e21b815290519293506012926001600160a01b039092169163db61d65c916004808201926020929091908290030181865afa1580156143da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906143fe91906164c1565b6001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015614457575060408051601f3d908101601f1916820190925261445491810190616e91565b60015b156144625760ff1690505b600061447c61447283600a616f98565b61396a908561655e565b607854604051637817ee4f60e01b81529192506000916001600160a01b0390911690637817ee4f906144b4908a903090600401616634565b602060405180830381865afa1580156144d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906144f591906166d9565b90506000614503828461645b565b98975050505050505050565b600080439050808460070154111561452957614529616ff0565b8084600701540361453f57506000905080614560565b61455d846007015482614552919061645b565b856003015485611751565b91505b9250929050565b6145718484612c32565b8151156145815761458182613e23565b80511561101e5761101e815b60005b815181101561470c576078546068546040516001600160a01b03909216916391d14854916145c091602001616fa4565b604051602081830303815290604052805190602001208484815181106145e8576145e8616fc1565b60200260200101516040518363ffffffff1660e01b815260040161460d929190616676565b602060405180830381865afa15801561462a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061464e919061664e565b156146fa576078546068546040516001600160a01b039092169163d547741f9161467a91602001616fa4565b604051602081830303815290604052805190602001208484815181106146a2576146a2616fc1565b60200260200101516040518363ffffffff1660e01b81526004016146c7929190616676565b600060405180830381600087803b1580156146e157600080fd5b505af11580156146f5573d6000803e3d6000fd5b505050505b806147048161676f565b915050614590565b507fd418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e606854826040516127b4929190616fd7565b61474a8383612c32565b607a546001600160a01b031615610f1457607a5460405163642ce76b60e01b8152306004820152602481018390526001600160a01b039091169063642ce76b90604401600060405180830381600087803b1580156147a757600080fd5b505af11580156147bb573d6000803e3d6000fd5b50505050505050565b60785460405163288c314960e21b81526001600160a01b039091169063a230c524906147f4908490600401615a25565b602060405180830381865afa158015614811573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614835919061664e565b6118b157604051636a5cfb6d60e01b815260040160405180910390fd5b6067805460ff19168215159081179091556040519081527fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae0906020016127b4565b61489b612f6a565b606854156148bc5760405163439a74c960e01b815260040160405180910390fd5b806000036148dd57604051637fcce2a960e01b815260040160405180910390fd5b606855565b6040516001600160601b03193360601b1660208201526034810182905260009081906054016040516020818303038152906040528051906020012090506149298482614e9f565b949350505050565b6000828060200190518101906149479190617006565b905060005b815181101561101e5761499982828151811061496a5761496a616fc1565b60200260200101516000015183838151811061498857614988616fc1565b602002602001015160200151614f36565b806149a38161676f565b91505061494c565b6149b4816147c4565b6000828060200190518101906149ca9190617006565b90506149d5826140bc565b614a385760005b8151811015614a365760008282815181106149f9576149f9616fc1565b6020026020010151602001511315614a2457604051630b72d6b160e31b815260040160405180910390fd5b80614a2e8161676f565b9150506149dc565b505b60785460405163011de97360e61b81526001600160a01b039091169063477a5cc090614a6a9085903090600401616634565b602060405180830381865afa158015614a87573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190614aab919061664e565b614ac857604051635fccb67f60e01b815260040160405180910390fd5b614ad28282614fdd565b610f1482826151dd565b6040518181527f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339906020016127b4565b73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeed196001600160a01b03841601614b3b57610f1482826155bb565b610f148383836155d7565b60005b6001600160a01b0382166000908152607d6020526040902054811015614c6a576001600160a01b0382166000908152607d60205260408120805483908110614b9357614b93616fc1565b6000918252602080832090910154808352607b9091526040909120909150614bba8261561d565b15614c55576001600160a01b0384166000908152600982016020526040812080549082905560028301805491928392614bf490849061645b565b925050819055508060706000828254614c0d919061645b565b90915550614c1d905082826132d5565b60008051602061715b8339815191528584600085600201548660030154604051614c4b9594939291906170b0565b60405180910390a1505b50508080614c629061676f565b915050614b49565b506001600160a01b03166000908152607c6020526040812055565b600081600003614c9757506000919050565b60006001614ca484615656565b901c6001901b90506001818481614cbd57614cbd616503565b048201901c90506001818481614cd557614cd5616503565b048201901c90506001818481614ced57614ced616503565b048201901c90506001818481614d0557614d05616503565b048201901c90506001818481614d1d57614d1d616503565b048201901c90506001818481614d3557614d35616503565b048201901c90506001818481614d4d57614d4d616503565b048201901c905061109581828581614d6757614d67616503565b046156ea565b6000600160801b831115614d9757604051600162a4c31160e01b0319815260040160405180910390fd5b600160801b821115614dbc576040516370b7a2d960e01b815260040160405180910390fd5b60806001607f1b614dcd848661655e565b614dd7919061648f565b901c9392505050565b614de9816132c6565b614e4b5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610f76565b60008051602061713b83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b614e8383615700565b600082511180614e905750805b15610f145761101e8383615740565b6000763d602d80600a3d3981f3363d3d373d3d3d363d730000008360601b60e81c176000526e5af43d82803e903d91602b57fd5bf38360781b1760205281603760096000f590506001600160a01b038116610ec45760405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606401610f76565b6000828152607b602052604081209082138015614fd357506000600882015460ff166006811115614f6957614f696158bc565b1480614f8d57506003600882015460ff166006811115614f8b57614f8b6158bc565b145b80614fb057506004600882015460ff166006811115614fae57614fae6158bc565b145b80614fd357506006600882015460ff166006811115614fd157614fd16158bc565b145b15610f1457600080fd5b600080614fe9846140bc565b905060005b83518110156150f057811580156150225750600084828151811061501457615014616fc1565b602002602001015160200151135b1561504057604051630b72d6b160e31b815260040160405180910390fd5b83818151811061505257615052616fc1565b602002602001015160000151600003156150de57600084828151811061507a5761507a616fc1565b60200260200101516000015190506150918161561d565b6150b15760405163c1d17bef60e01b815260048101829052602401610f76565b8482815181106150c3576150c3616fc1565b602002602001015160200151846150da91906170de565b9350505b806150e88161676f565b915050614fee565b506001600160a01b0384166000908152607c60205260408120546151149084615765565b607854604051637817ee4f60e01b81529192506000916001600160a01b0390911690637817ee4f9061514c9089903090600401616634565b602060405180830381865afa158015615169573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061518d91906166d9565b9050808211156151ba57604051636b20c17f60e11b81526004810183905260248101829052604401610f76565b506001600160a01b039094166000908152607c6020526040902093909355505050565b606060005b825181101561101e5760008382815181106151ff576151ff616fc1565b6020026020010151600001519050825160000361525b576040805160018082528183019092529060208083019080368337019050509250808360008151811061524a5761524a616fc1565b602002602001018181525050615394565b6000805b84518110156152c1578285828151811061527b5761527b616fc1565b6020026020010151036152af57604051632b7aec5560e21b8152600481018490526024810182905260019250604401610f76565b806152b98161676f565b91505061525f565b5080615392576000845160016152d7919061648f565b6001600160401b038111156152ee576152ee615a39565b604051908082528060200260200182016040528015615317578160200160208202803683370190505b50905060005b855181101561536f5785818151811061533857615338616fc1565b602002602001015182828151811061535257615352616fc1565b6020908102919091010152806153678161676f565b91505061531d565b50828186518151811061538457615384616fc1565b602090810291909101015293505b505b60008483815181106153a8576153a8616fc1565b6020908102919091018101518101516000848152607b835260408082206001600160a01b038b168352600981019094528120549193506153e88285615765565b6001600160a01b038a1660009081526009850160205260408120829055909150805b6001600160a01b038b166000908152607d60205260409020548110156154815784546001600160a01b038c166000908152607d6020526040902080548390811061545657615456616fc1565b90600052602060002001540361546f5760019150615481565b806154798161676f565b91505061540a565b50806154b7576001600160a01b038a166000908152607d6020908152604082208654815460018101835591845291909220909101555b818311615507576154c8838361645b565b607060008282546154d9919061648f565b909155506154e99050838361645b565b8460020160008282546154fc919061648f565b9091555061554b9050565b615511828461645b565b60706000828254615522919061645b565b909155506155329050828461645b565b846002016000828254615545919061645b565b90915550505b8360070154600003615562574360078501556155a2565b61556c84846132d5565b60008051602061715b8339815191528a8784876002015488600301546040516155999594939291906170b0565b60405180910390a15b50505050505080806155b39061676f565b9150506151e2565b60008060008084865af1610ef55763b12d13eb6000526004601cfd5b816014528060345263a9059cbb60601b60005260206000604460106000875af13d156001600051141716615613576390b8ec186000526004601cfd5b6000603452505050565b6000818152607b602052604081205415801590610ec45750506000908152607b60205260409020600501546001600160a01b0316151590565b600080608083901c1561566b57608092831c92015b604083901c1561567d57604092831c92015b602083901c1561568f57602092831c92015b601083901c156156a157601092831c92015b600883901c156156b357600892831c92015b600483901c156156c557600492831c92015b600283901c156156d757600292831c92015b600183901c15610ec45760010192915050565b60008183106156f95781611095565b5090919050565b61570981614de0565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060611095838360405180606001604052806027815260200161719b60279139615782565b60008061577283856170de565b9050600081121561109557600080fd5b6060600080856001600160a01b03168560405161579f91906170fe565b600060405180830381855af49150503d80600081146157da576040519150601f19603f3d011682016040523d82523d6000602084013e6157df565b606091505b50915091506157f0868383876157fa565b9695505050505050565b6060831561586757825160000361586057615814856132c6565b6158605760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610f76565b5081614929565b614929838381511561587c5781518083602001fd5b8060405162461bcd60e51b8152600401610f7691906163b0565b6000602082840312156158a857600080fd5b5035919050565b6001600160a01b03169052565b634e487b7160e01b600052602160045260246000fd5b600781106118b1576118b16158bc565b60005b838110156158fd5781810151838201526020016158e5565b50506000910152565b6000815180845261591e8160208601602086016158e2565b601f01601f19169290920160200192915050565b8d8152602081018d9052604081018c9052606081018b90526001600160a01b038a8116608083015289811660a0830152881660c082015260e0810187905260006101e061597e886158d2565b876101008401528061012084015286518184015250602086015160406102008401526159ae610220840182615906565b8651610140850152602087015161016085015260408701516001600160a01b031661018085015291506159de9050565b6101a08201939093526101c001529b9a5050505050505050505050565b600060208284031215615a0d57600080fd5b81356001600160e01b03198116811461109557600080fd5b6001600160a01b0391909116815260200190565b634e487b7160e01b600052604160045260246000fd5b60405160c081016001600160401b0381118282101715615a7157615a71615a39565b60405290565b604051608081016001600160401b0381118282101715615a7157615a71615a39565b60405161012081016001600160401b0381118282101715615a7157615a71615a39565b604080519081016001600160401b0381118282101715615a7157615a71615a39565b60405160a081016001600160401b0381118282101715615a7157615a71615a39565b604051601f8201601f191681016001600160401b0381118282101715615b2857615b28615a39565b604052919050565b6001600160a01b03811681146118b157600080fd5b600060c08284031215615b5757600080fd5b615b5f615a4f565b90508135615b6c81615b30565b81526020820135615b7c81615b30565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b600060808284031215615bc357600080fd5b615bcb615a77565b90508135815260208201356020820152604082013560408201526060820135606082015292915050565b6000806101408385031215615c0957600080fd5b615c138484615b45565b9150615c228460c08501615bb1565b90509250929050565b60006001600160401b03821115615c4457615c44615a39565b5060051b60200190565b600082601f830112615c5f57600080fd5b81356020615c74615c6f83615c2b565b615b00565b82815260059290921b84018101918181019086841115615c9357600080fd5b8286015b84811015615cb7578035615caa81615b30565b8352918301918301615c97565b509695505050505050565b60006001600160401b03821115615cdb57615cdb615a39565b50601f01601f191660200190565b6000615cf7615c6f84615cc2565b9050828152838383011115615d0b57600080fd5b828260208301376000602084830101529392505050565b600082601f830112615d3357600080fd5b61109583833560208501615ce9565b600080600060608486031215615d5757600080fd5b83356001600160401b0380821115615d6e57600080fd5b615d7a87838801615c4e565b94506020860135915080821115615d9057600080fd5b50615d9d86828701615d22565b9250506040840135615dae81615b30565b809150509250925092565b600080600060608486031215615dce57600080fd5b8335615dd981615b30565b92506020840135615de981615b30565b91506040840135615dae81615b30565b60008060408385031215615e0c57600080fd5b82356001600160401b03811115615e2257600080fd5b615e2e85828601615d22565b9250506020830135615e3f81615b30565b809150509250929050565b60048110615e5a57615e5a6158bc565b9052565b60208101610ec48284615e4a565b60008060408385031215615e7f57600080fd5b8235615e8a81615b30565b946020939093013593505050565b60008060408385031215615eab57600080fd5b50508035926020909101359150565b600080600060608486031215615ecf57600080fd5b505081359360208301359350604090920135919050565b60038110615e5a57615e5a6158bc565b60208101610ec48284615ee6565b600060208284031215615f1657600080fd5b813561109581615b30565b60008060408385031215615f3457600080fd5b8235615f3f81615b30565b915060208301356001600160401b03811115615f5a57600080fd5b615f6685828601615d22565b9150509250929050565b600080600060608486031215615f8557600080fd5b8335615f9081615b30565b925060208401356001600160401b03811115615fab57600080fd5b8401601f81018613615fbc57600080fd5b615d9d86823560208401615ce9565b600060208284031215615fdd57600080fd5b81356001600160401b03811115615ff357600080fd5b61492984828501615c4e565b600080600080610180858703121561601657600080fd5b6160208686615b45565b935061602f8660c08701615bb1565b92506101408501356001600160401b038082111561604c57600080fd5b61605888838901615c4e565b935061016087013591508082111561606f57600080fd5b5061607c87828801615c4e565b91505092959194509250565b6000806000610160848603121561609e57600080fd5b6160a88585615b45565b92506160b78560c08601615bb1565b915061014084013590509250925092565b600080604083850312156160db57600080fd5b82356001600160401b03808211156160f257600080fd5b6160fe86838701615c4e565b935060209150818501358181111561611557600080fd5b8501601f8101871361612657600080fd5b8035616134615c6f82615c2b565b81815260059190911b8201840190848101908983111561615357600080fd5b8584015b8381101561618b5780358681111561616f5760008081fd5b61617d8c8983890101615d22565b845250918601918601616157565b508096505050505050509250929050565b602080825282518282018190526000919060409081850190868401855b828110156161e757815180516001600160a01b031685528601518685015292840192908501906001016161b9565b5091979650505050505050565b60008083601f84011261620657600080fd5b5081356001600160401b0381111561621d57600080fd5b60208301915083602082850101111561456057600080fd5b60008060008060006060868803121561624d57600080fd5b8535945060208601356001600160401b038082111561626b57600080fd5b61627789838a016161f4565b9096509450604088013591508082111561629057600080fd5b5061629d888289016161f4565b969995985093965092949392505050565b80151581146118b157600080fd5b6000602082840312156162ce57600080fd5b8135611095816162ae565b6001600160a01b038c811682528b811660208301528a16604082015260608101899052608081018890526101608101616311886158d2565b8760a08301528660c08301528560e08301528461010083015283610120830152826101408301529c9b505050505050505050505050565b6000806040838503121561635b57600080fd5b823591506020830135615e3f81615b30565b6020810161637a836158d2565b91905290565b6000806040838503121561639357600080fd5b8235915060208301356001600160401b03811115615f5a57600080fd5b6020815260006110956020830184615906565b600181811c908216806163d757607f821691505b602082108103611cae57634e487b7160e01b600052602260045260246000fd5b6020808252602e908201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160408201526d191e481a5b9a5d1a585b1a5e995960921b606082015260800190565b634e487b7160e01b600052601160045260246000fd5b81810381811115610ec457610ec4616445565b6001600160a01b039390931683526020830191909152604082015260600190565b80820180821115610ec457610ec4616445565b9283526001600160a01b03919091166020830152604082015260600190565b6000602082840312156164d357600080fd5b815161109581615b30565b9384526001600160a01b03928316602085015291166040830152606082015260800190565b634e487b7160e01b600052601260045260246000fd5b60008261653657634e487b7160e01b600052601260045260246000fd5b500490565b60006001600160401b0382168061655457616554616445565b6000190192915050565b8082028115828204841417610ec457610ec4616445565b6020808252602c9082015260008051602061711b83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c9082015260008051602061711b83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0392831681529116602082015260400190565b60006020828403121561666057600080fd5b8151611095816162ae565b805161205281615b30565b9182526001600160a01b0316602082015260400190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b8381526040602082015260006166d060408301848661668d565b95945050505050565b6000602082840312156166eb57600080fd5b5051919050565b60006001600160401b038281166002600160401b0319810161671657616716616445565b6001019392505050565b6001600160a01b03888116825260208201889052604082018790528516606082015260c06080820181905260009061675b908301858761668d565b90508260a083015298975050505050505050565b60006001820161678157616781616445565b5060010190565b60006080828403121561679a57600080fd5b6167a2615a77565b90508151815260208201516020820152604082015160408201526060820151606082015292915050565b80516003811061205257600080fd5b80516004811061205257600080fd5b6000602082840312156167fc57600080fd5b604051602081016001600160401b038111828210171561681e5761681e615a39565b6040529151825250919050565b600060c0828403121561683d57600080fd5b616845615a4f565b9050815161685281615b30565b8152602082015161686281615b30565b8060208301525060408201516040820152606082015160608201526080820151608082015260a082015160a082015292915050565b600082601f8301126168a857600080fd5b815160206168b8615c6f83615c2b565b82815260059290921b840181019181810190868411156168d757600080fd5b8286015b84811015615cb75780516168ee81615b30565b83529183019183016168db565b60006020828403121561690d57600080fd5b81516001600160401b038082111561692457600080fd5b90830190610220828603121561693957600080fd5b616941615a99565b61694b8684616788565b8152616959608084016167cc565b602082015261696a60a084016167db565b604082015261697c8660c085016167ea565b606082015261698e8660e0850161682b565b60808201526169a06101a0840161666b565b60a08201526169b26101c0840161666b565b60c08201526101e083015160e0820152610200830151828111156169d557600080fd5b6169e187828601616897565b6101008301525095945050505050565b805182526020810151602083015260408101516040830152606081015160608301525050565b600081518084526020808501945080840160005b83811015616a505781516001600160a01b031687529582019590820190600101616a2b565b509495945050505050565b82815260406020820152616a736040820183516169f1565b60006020830151616a8760c0840182615ee6565b506040830151616a9a60e0840182615e4a565b506060830151610100616aaf81850183519052565b60808581015180516001600160a01b0390811661012088015260208201511661014087015260408101516101608701526060810151610180870152908101516101a086015260a0908101516101c08601528501519150616b136101e08501836158af565b60c08501519150616b286102008501836158af565b60e0850151915061022082818601528186015192508061024086015250506166d0610260840182616a17565b9687526001600160a01b0395861660208801529390941660408601526060850191909152608084015260a083019190915260c082015260e00190565b60808101610ec482846169f1565b600060408284031215616bb057600080fd5b616bb8615abc565b8251815260208301519091506001600160401b03811115616bd857600080fd5b8201601f81018413616be957600080fd5b8051616bf7615c6f82615cc2565b818152856020838501011115616c0c57600080fd5b616c1d8260208301602086016158e2565b602084015250909392505050565b600060208284031215616c3d57600080fd5b81516001600160401b0380821115616c5457600080fd5b9083019060c08286031215616c6857600080fd5b616c70615a4f565b825181526020830151616c8281615b30565b60208201526040830151616c9581615b30565b6040820152606083015182811115616cac57600080fd5b616cb887828601616b9e565b6060830152506080830151608082015260a083015160a082015280935050505092915050565b600060208284031215616cf057600080fd5b81516001600160401b0380821115616d0757600080fd5b9083019060a08286031215616d1b57600080fd5b616d23615ade565b825181526020830151616d3581615b30565b6020820152604083810151908201526060830151616d5281615b30565b6060820152608083015182811115616d6957600080fd5b616d7587828601616b9e565b60808301525095945050505050565b601f821115610f1457600081815260208120601f850160051c81016020861015616dab5750805b601f850160051c820191505b81811015616dca57828155600101616db7565b505050505050565b81516001600160401b03811115616deb57616deb615a39565b616dff81616df984546163c3565b84616d84565b602080601f831160018114616e345760008415616e1c5750858301515b600019600386901b1c1916600185901b178555616dca565b600085815260208120601f198616915b82811015616e6357888601518255948401946001909101908401616e44565b5085821015616e815787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215616ea357600080fd5b815160ff8116811461109557600080fd5b600181815b80851115616eef578160001904821115616ed557616ed5616445565b80851615616ee257918102915b93841c9390800290616eb9565b509250929050565b600082616f0657506001610ec4565b81616f1357506000610ec4565b8160018114616f295760028114616f3357616f4f565b6001915050610ec4565b60ff841115616f4457616f44616445565b50506001821b610ec4565b5060208310610133831016604e8410600b8410161715616f72575081810a610ec4565b616f7c8383616eb4565b8060001904821115616f9057616f90616445565b029392505050565b60006110958383616ef7565b6810531313d5d31254d560ba1b8152600981019190915260290190565b634e487b7160e01b600052603260045260246000fd5b8281526040602082015260006149296040830184616a17565b634e487b7160e01b600052600160045260246000fd5b6000602080838503121561701957600080fd5b82516001600160401b0381111561702f57600080fd5b8301601f8101851361704057600080fd5b805161704e615c6f82615c2b565b81815260069190911b8201830190838101908783111561706d57600080fd5b928401925b828410156139f2576040848903121561708b5760008081fd5b617093615abc565b845181528585015186820152825260409093019290840190617072565b6001600160a01b03959095168552602085019390935260408401919091526060830152608082015260a00190565b8082018281126000831280158216821582161715613a6f57613a6f616445565b600082516171108184602087016158e2565b919091019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53a2646970667358221220ab1fd5f912de58daa642ff63ec4261cc7bceace47054912feb6cb4a1e48e74bb64736f6c63430008130033","sourceMap":"4144:56506:59:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9948:45;;;;;;;;;;-1:-1:-1;9948:45:59;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;13107:210;;;;;;;;;;-1:-1:-1;13107:210:59;;;;;:::i;:::-;;:::i;:::-;;;3333:14:70;;3326:22;3308:41;;3296:2;3281:18;13107:210:59;3168:187:70;525:102:63;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;47382:198:59:-;;;;;;;;;;-1:-1:-1;47382:198:59;;;;;:::i;:::-;;:::i;7520:325:58:-;;;;;;;;;;-1:-1:-1;7520:325:58;;;;;:::i;:::-;;:::i;9805:39:59:-;;;;;;;;;;-1:-1:-1;9805:39:59;;;;-1:-1:-1;;;;;9805:39:59;;;9323:30;;;;;;;;;;;;;;;;;;;9746:25:70;;;9734:2;9719:18;9323:30:59;9600:177:70;8545:36:59;;;;;;;;;;;;8573:8;8545:36;;9359:45;;;;;;;;;;;;;;;;3560:86:58;;;;;;;;;;-1:-1:-1;3635:4:58;;-1:-1:-1;;;;;3635:4:58;3560:86;;10610:222:59;;;;;;;;;;-1:-1:-1;10610:222:59;;;;;:::i;:::-;;:::i;49949:609::-;;;;;;;;;;-1:-1:-1;49949:609:59;;;;;:::i;:::-;;:::i;19273:89::-;;;;;;;;;;;;;:::i;9485:24::-;;;;;;;;;;-1:-1:-1;9485:24:59;;;;;;;;;;;;;;;;;;;10807:25:70;;;10863:2;10848:18;;10841:34;;;;10891:18;;;10884:34;10949:2;10934:18;;10927:34;10794:3;10779:19;9485:24:59;10576:391:70;10235:56:59;;;;;;;;;;-1:-1:-1;10235:56:59;;;;;:::i;:::-;;;;;;;;;;;;;;6244:344:58;;;;;;:::i;:::-;;:::i;9647:30:59:-;;;;;;;;;;-1:-1:-1;9647:30:59;;;;;;;;;;;;;;;;;;:::i;20926:684::-;;;;;;;;;;-1:-1:-1;20926:684:59;;;;;:::i;:::-;;:::i;55527:2889::-;;;;;;;;;;-1:-1:-1;55527:2889:59;;;;;:::i;:::-;;:::i;9260:25::-;;;;;;;;;;;;;;;;42297:644;;;;;;;;;;-1:-1:-1;42297:644:59;;;;;:::i;:::-;;:::i;9556:32::-;;;;;;;;;;-1:-1:-1;9556:32:59;;;;;;;;;;;;;;;:::i;3143:195:32:-;;;;;;;;;;-1:-1:-1;3143:195:32;;;;;:::i;:::-;;:::i;51056:412:59:-;;;;;;;;;;-1:-1:-1;51056:412:59;;;;;:::i;:::-;;:::i;3728:92:58:-;;;;;;;;;;-1:-1:-1;3807:6:58;;3728:92;;8837:49:59;;;;;;;;;;;;8884:2;8837:49;;10297:61;;;;;;;;;;-1:-1:-1;10297:61:59;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10297:61:59;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13714:15:70;;;13696:34;;13766:15;;;;13761:2;13746:18;;13739:43;13798:18;;;13791:34;;;;13856:2;13841:18;;13834:34;13899:3;13884:19;;13877:35;13676:3;13928:19;;13921:35;13645:3;13630:19;10297:61:59;13350:612:70;3910:100:58;;;;;;;;;;-1:-1:-1;3993:10:58;;3910:100;;4101:108;;;;;;;;;;-1:-1:-1;4192:10:58;;4101:108;;9117:145;;;;;;;;;;-1:-1:-1;9117:145:58;;;;;:::i;:::-;;:::i;3657:220:32:-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;43522:1158:59:-;;;;;;;;;;-1:-1:-1;43522:1158:59;;;;;:::i;:::-;;:::i;10049:53::-;;;;;;;;;;-1:-1:-1;10049:53:59;;;;;:::i;:::-;;;;;;;;;;;;;;9752:46;;;;;;;;;;-1:-1:-1;9752:46:59;;;;-1:-1:-1;;;;;9752:46:59;;;41598:282;;;;;;;;;;-1:-1:-1;41598:282:59;;;;;:::i;:::-;;:::i;1724:217:58:-;;;;;;;;;;-1:-1:-1;1724:217:58;;;;;:::i;:::-;;:::i;8972:42:59:-;;;;;;;;;;;;9013:1;8972:42;;19368:136;;;;;;;;;;-1:-1:-1;19368:136:59;;;;;:::i;:::-;;:::i;2085:101:14:-;;;;;;;;;;;;;:::i;59130:125:59:-;;;;;;;;;;-1:-1:-1;59130:125:59;;;;;:::i;:::-;;:::i;19875:1045::-;;;;;;;;;;-1:-1:-1;19875:1045:59;;;;;:::i;:::-;;:::i;19180:87::-;;;;;;;;;;;;;:::i;9411:26::-;;;;;;;;;;;;;;;;27991:728;;;;;;;;;;-1:-1:-1;27991:728:59;;;;;:::i;:::-;;:::i;10140:57::-;;;;;;;;;;-1:-1:-1;10140:57:59;;;;;:::i;:::-;;:::i;633:544:63:-;;;;;;;;;;;;;:::i;52324:332:59:-;;;;;;;;;;-1:-1:-1;52324:332:59;;;;;:::i;:::-;;:::i;50564:141::-;;;;;;;;;;-1:-1:-1;50564:141:59;;;;;:::i;:::-;;:::i;4412:75:6:-;;;;;;;;;;;;4445:42;4412:75;;9291:26:59;;;;;;;;;;-1:-1:-1;9291:26:59;;;;-1:-1:-1;;;;;9291:26:59;;;;;;-1:-1:-1;;;;;16989:31:70;;;16971:50;;16959:2;16944:18;9291:26:59;16827:200:70;9683:36:59;;;;;;;;;;-1:-1:-1;9683:36:59;;;;;;59877:137;;;;;;;;;;-1:-1:-1;59877:137:59;;;;;:::i;:::-;;:::i;9443:35::-;;;;;;;;;;;;;;;;52662:278;;;;;;;;;;-1:-1:-1;52662:278:59;;;;;:::i;:::-;;:::i;15579:132::-;;;;;;;;;;-1:-1:-1;15579:132:59;;;;;:::i;:::-;;:::i;29369:308::-;;;;;;;;;;-1:-1:-1;29369:308:59;;;;;:::i;:::-;29662:8;;;29369:308;;;;;;;:::i;52946:2575::-;;;;;;:::i;:::-;;:::i;30346:86::-;;;;;;;;;;-1:-1:-1;30346:86:59;;;;;:::i;:::-;;:::i;9850:31::-;;;;;;;;;;-1:-1:-1;9850:31:59;;;;-1:-1:-1;;;;;9850:31:59;;;23990:103;;;;;;;;;;-1:-1:-1;24075:11:59;;;;;;;23990:103;;404:115:63;;;;;;;;;;-1:-1:-1;404:115:63;;;;;:::i;:::-;;:::i;31955:1115:59:-;;;;;;;;;;-1:-1:-1;31955:1115:59;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;45951:120::-;;;;;;;;;;-1:-1:-1;46044:20:59;;45951:120;;18835:339;;;;;;;;;;-1:-1:-1;18835:339:59;;;;;:::i;:::-;;:::i;4341:101:58:-;;;;;;;;;;;;;:::i;58422:702:59:-;;;;;;;;;;-1:-1:-1;58422:702:59;;;;;:::i;:::-;;:::i;33544:184::-;;;;;;;;;;-1:-1:-1;33544:184:59;;;;;:::i;:::-;;:::i;4598:146:58:-;;;;;;;;;;-1:-1:-1;4598:146:58;;;;;:::i;:::-;;;;;;;:::i;11670:1036:59:-;;;;;;;;;;-1:-1:-1;11670:1036:59;;;;;:::i;:::-;;:::i;6907:220:58:-;;;;;;:::i;:::-;;:::i;2335:198:14:-;;;;;;;;;;-1:-1:-1;2335:198:14;;;;;:::i;:::-;;:::i;10838:826:59:-;;;;;;;;;;-1:-1:-1;10838:826:59;;;;;:::i;:::-;;:::i;5631:197:58:-;;;;;;;;;;-1:-1:-1;5631:197:58;;;;;:::i;:::-;;:::i;9020:54:59:-;;;;;;;;;;;;9067:7;9020:54;;8501:38;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;8501:38:59;;;;;;;;;;;;:::i;9948:45::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9948:45:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;9948:45:59;;;;-1:-1:-1;;9948:45:59;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9948:45:59;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9948:45:59;:::o;13107:210::-;13200:4;-1:-1:-1;;;;;;13223:47:59;;-1:-1:-1;;;13223:47:59;;:87;;-1:-1:-1;;;;;;;;;;937:40:42;;;13274:36:59;13216:94;13107:210;-1:-1:-1;;13107:210:59:o;525:102:63:-;568:7;594:26;1534:6:14;;-1:-1:-1;;;;;1534:6:14;;1462:85;594:26:63;587:33;;525:102;:::o;47382:198:59:-;47502:17;:15;:17::i;:::-;47529:44;47544:17;47563:9;47529:14;:44::i;:::-;47382:198;;:::o;7520:325:58:-;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;10610:222:59:-;3279:19:16;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:16;;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:16;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:16;;;;;;;:::i;:::-;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:16;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:16;;;;;3562:65;10727:38:59::1;10738:5;10727:38;;;;;;;;;;;;;-1:-1:-1::0;;;10727:38:59::1;;::::0;10759:5:::1;10727:10;:38::i;:::-;10775:23;:50:::0;;-1:-1:-1;;;;;;10775:50:59::1;-1:-1:-1::0;;;;;10775:50:59;::::1;;::::0;;3647:99:16;;;;3697:5;3681:21;;-1:-1:-1;;3681:21:16;;;3721:14;;-1:-1:-1;24592:36:70;;-1:-1:-1;;;;;;;;;;;3721:14:16;24580:2:70;24565:18;3721:14:16;;;;;;;3647:99;3269:483;10610:222:59;;;:::o;49949:609::-;50027:7;50074:21;;;:9;:21;;;;;50110:19;;:33;;50106:100;;50166:29;;-1:-1:-1;;;50166:29:59;;;;;9746:25:70;;;9719:18;;50166:29:59;9600:177:70;50106:100:59;50452:59;50479:8;50489;:21;;;50452:26;:59::i;:::-;50528:23;;;;49949:609;-1:-1:-1;;49949:609:59:o;19273:89::-;19326:29;19344:10;19326:17;:29::i;:::-;19273:89::o;6244:344:58:-;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:58:o;20926:684:59:-;21018:7;21037:23;:21;:23::i;:::-;21116:24;21173:21;21158:11;;;;;;;:36;;;;;;;;:::i;:::-;;:73;;;-1:-1:-1;21213:18:59;21198:11;;;;;;;:33;;;;;;;;:::i;:::-;;21158:73;21154:293;;;-1:-1:-1;21266:16:59;21154:293;;;21387:49;21410:7;21419:16;21387:22;:49::i;:::-;21368:68;;21154:293;21480:16;21456:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;21511:59:59;;;;;;21526:7;;21535:16;;21553;;21511:59;:::i;:::-;;;;;;;;21587:16;20926:684;-1:-1:-1;;;20926:684:59:o;55527:2889::-;55614:18;55635:33;;;:21;:33;;;;;;;;;55706:21;;;:9;:21;;;;;55798:32;;;;55780:51;;:17;:51;;;;;55737:94;;;;;;;;;-1:-1:-1;;;;;55737:94:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;55635:33;55706:21;;55737:94;55846:15;;;55842:82;;55884:29;;-1:-1:-1;;;55884:29:59;;;;;9746:25:70;;;9719:18;;55884:29:59;9600:177:70;55842:82:59;55964:23;55937;;;;;;:50;;;;;;;;:::i;:::-;;55933:119;;56010:31;;-1:-1:-1;;;56010:31:59;;;;;9746:25:70;;;9719:18;;56010:31:59;9600:177:70;55933:119:59;56137:37;;;;56097;;;;56062:14;;56097:77;;;:::i;:::-;56079:15;:95;;-1:-1:-1;56189:10:59;;56079:95;56189:64;;-1:-1:-1;56225:27:59;;-1:-1:-1;;;;;56203:50:59;:10;:50;;56189:64;56185:118;;;56276:16;;-1:-1:-1;;;56276:16:59;;;;;;;;;;;56185:118;56317:9;:25;;;-1:-1:-1;56330:12:59;;56317:25;56313:1943;;;56362:16;:30;;;56396:1;56362:35;56358:102;;56424:21;;-1:-1:-1;;;56424:21:59;;;;;;;;;;;56358:102;56477:16;:30;;;56511:1;56477:35;56473:121;;56532:23;;;:47;;-1:-1:-1;;56532:47:59;56558:21;56532:47;;;56473:121;56611:16;:30;;;56645:1;56611:35;56607:289;;56666:23;;;:49;;-1:-1:-1;;56666:49:59;56692:23;56666:49;;;56733:15;;56801:18;;;;56821:42;;;;;56733:148;;-1:-1:-1;;;56733:148:59;;-1:-1:-1;;;;;56733:15:59;;;;:34;;:148;;56789:10;;56801:18;;;;;56733:148;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;56607:289;56909:15;;56973:31;;;;57006:43;;;;56909:154;;-1:-1:-1;;;56909:154:59;;-1:-1:-1;;;;;56909:15:59;;;;:34;;:154;;56961:10;;56973:31;;;;;56909:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;56313:1943;;;57084:7;57095:1;57084:12;57080:1176;;57112:23;;;:47;;-1:-1:-1;;57112:47:59;57138:21;57112:47;;;57173:15;;57256:31;;;;57313:17;;:31;;;-1:-1:-1;;;57313:31:59;;;;-1:-1:-1;;;;;57173:15:59;;;;:37;;57228:10;;57256:31;;;;57313:17;;;:29;;:31;;;;;;;;;;;;;;;:17;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;57363:16;:43;;;57173:247;;;;;;;;;;;;;;;;;;:::i;57080:1176::-;57441:7;57452:1;57441:12;57437:819;;57469:23;;;:49;;-1:-1:-1;;57469:49:59;57495:23;57469:49;;;57532:15;;57596:31;;;;57629:43;;;;57532:154;;-1:-1:-1;;;57532:154:59;;-1:-1:-1;;;;;57532:15:59;;;;:34;;:154;;57584:10;;57596:31;;;;;57532:154;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;57700:15:59;;57783:18;;;;57827:17;;:31;;;-1:-1:-1;;;57827:31:59;;;;-1:-1:-1;;;;;57700:15:59;;;;-1:-1:-1;57700:37:59;;-1:-1:-1;57755:10:59;;57783:18;;;;57827:17;;;;:29;;:31;;;;;;;;;;;;;;;:17;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;57895:30;;57877:49;;;;:17;:49;;;;;57955:1;57877:75;;;;:79;;57955:1;57877:79;:::i;:::-;57700:270;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;57984:15:59;;58067:18;;;;58103:31;;;;58170:30;;57984:15;58152:49;;;:17;:49;;;;;58103:31;58152:75;;;;-1:-1:-1;;;;;57984:15:59;;;;-1:-1:-1;57984:37:59;;-1:-1:-1;58039:10:59;;58067:18;;;;58103:31;;;;58152:79;;58103:31;58152:79;:::i;:::-;57984:261;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;57437:819;58266:12;:14;;-1:-1:-1;;;;;58266:14:59;;:12;:14;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;58266:14:59;;;;;-1:-1:-1;;;;;58266:14:59;;;;;;;58323:15;58290:8;:30;;:48;;;;58389:10;58360:16;:27;;;-1:-1:-1;;;;;58353:56:59;;58401:7;58353:56;;;;9746:25:70;;9734:2;9719:18;;9600:177;58353:56:59;;;;;;;;55604:2812;;;;55527:2889;;:::o;42297:644::-;42763:14;;42447:7;;42482:11;;42447:7;;42757:36;;42762:27;;8573:8;;42781:3;42763:21;42762:27;:::i;:::-;42791:1;42757:4;:36::i;:::-;42737:56;;42931:3;-1:-1:-1;;;42887:8:59;:14;;;8573:8;42883:18;;;;:::i;:::-;42858:19;42868:9;-1:-1:-1;;;42858:19:59;:::i;:::-;42840:14;8573:8;42840:10;:14;:::i;:::-;:38;;;;:::i;:::-;42839:63;;;;:::i;:::-;42813:21;42825:9;42813;:21;:::i;:::-;42812:91;;;;:::i;:::-;42811:103;;;;:::i;:::-;42810:124;;;42297:644;-1:-1:-1;;;;;;42297:644:59:o;3143:195:32:-;-1:-1:-1;;;;;1654:6:32;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:32;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:32;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:32;;1719:87;;;;-1:-1:-1;;;1719:87:32;;;;;;;:::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;51056:412:59:-;51174:17;;;;;;;;;-1:-1:-1;;;;;51174:17:59;-1:-1:-1;;;;;51174:29:59;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;51152:54:59;:10;-1:-1:-1;;;;;51152:54:59;;;:79;;;;;51224:7;:5;:7::i;:::-;-1:-1:-1;;;;;51210:21:59;:10;-1:-1:-1;;;;;51210:21:59;;;51152:79;51148:132;;;51252:17;;-1:-1:-1;;;51252:17:59;;;;;;;;;;;51148:132;51289:32;51308:12;51289:18;:32::i;:::-;51331:11;:40;;-1:-1:-1;;;;;;51331:40:59;-1:-1:-1;;;;;51331:40:59;;;;;51381:33;51404:9;51381:22;:33::i;:::-;51429:32;51448:12;51429:32;;;;;;:::i;:::-;;;;;;;;51056:412;;:::o;9117:145:58:-;9203:4;;9226:29;30197:143:59;3657:220:32;-1:-1:-1;;;;;1654:6:32;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:32;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:32;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:32;;1719:87;;;;-1:-1:-1;;;1719:87:32;;;;;;;:::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:32;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:32;;28223:2:70;2064:92:32;;;28205:21:70;28262:2;28242:18;;;28235:30;28301:34;28281:18;;;28274:62;-1:-1:-1;;;28352:18:70;;;28345:54;28416:19;;2064:92:32;28021:420:70;2064:92:32;-1:-1:-1;;;;;;;;;;;;2762:131:32;:::o;43522:1158:59:-;43605:18;43773:1;43759:10;;:15;43755:66;;43797:13;;-1:-1:-1;;;43797:13:59;;;;;;;;;;;43755:66;43835:33;43851:16;43835:15;:33::i;:::-;43831:178;;;43928:8;;;43831:178;44102:10;;44019:13;;44072:26;:16;-1:-1:-1;;;44072:26:59;:::i;:::-;44071:41;;;;:::i;:::-;44036:8;:17;8573:8;;44036:27;;-1:-1:-1;;;44036:27:59;:::i;:::-;44035:33;;;;:::i;:::-;:77;;;;:::i;:::-;44019:93;;44299:2;44257:28;46044:20;;;45951:120;44257:28;44222:14;;44218:18;;8573:8;44218:18;:::i;:::-;8573:8;44205:2;44187:13;44195:5;;44187:13;:::i;:::-;44154:15;;44186:21;;;44153:28;;8573:8;;44173:3;44154:22;44153:28;:::i;:::-;44152:56;;;;:::i;:::-;44151:62;;;;:::i;:::-;44150:87;;;;:::i;:::-;44149:136;;;;:::i;:::-;46044:20;;44135:166;;;-1:-1:-1;44316:33:59;44312:362;;44365:25;44565:8;44501:46;44518:28;46044:20;;;45951:120;44501:46;8573:8;44443:28;46044:20;;;45951:120;44443:28;44413:27;;:58;;;;:::i;:::-;44412:64;;;;:::i;:::-;44411:137;;;;:::i;:::-;44393:180;;;;:::i;:::-;44365:208;;44613:17;44600:10;:30;:63;;44646:17;44600:63;;;44633:10;44600:63;44587:76;;44351:323;44312:362;43625:1055;43522:1158;;;:::o;41598:282::-;41685:7;41732:22;;;:9;:22;;;;;41806:18;;;;41771:102;;41791:33;;:12;:33;:::i;:::-;41826:8;:23;;;41851:8;:21;;;41771:19;:102::i;1724:217:58:-;5374:13:16;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:16;;;;;;;:::i;:::-;1831:23:58::1;1848:5;1831:16;:23::i;:::-;1864:4;:19:::0;;-1:-1:-1;;;;;;1864:19:58::1;-1:-1:-1::0;;;;;1864:19:58;::::1;;::::0;;1916:17:::1;::::0;::::1;::::0;1927:5;;1916:17:::1;;;:::i;:::-;;::::0;;-1:-1:-1;;1916:17:58;;::::1;::::0;;;;;;1906:28;;1916:17:::1;1906:28:::0;;::::1;::::0;1893:10:::1;:41:::0;-1:-1:-1;;;1724:217:58:o;19368:136:59:-;19438:23;:21;:23::i;:::-;19471:26;19489:7;19471:17;:26::i;2085:101:14:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;59130:125:59:-:0;59197:17;:15;:17::i;:::-;59224:24;59240:7;59224:15;:24::i;19875:1045::-;19965:7;20029:23;:21;:23::i;:::-;20067:26;20085:7;20067:17;:26::i;:::-;20062:90;;20116:25;;-1:-1:-1;;;20116:25:59;;;;;;;;;;;20062:90;20161:24;20218:21;20203:11;;;;;;;:36;;;;;;;;:::i;:::-;;20199:421;;-1:-1:-1;20274:14:59;20199:421;;;20373:18;20358:11;;;;;;;:33;;;;;;;;:::i;:::-;;20354:266;;20426:44;20446:7;20455:14;20426:19;:44::i;:::-;20407:63;;20354:266;;;20506:21;20491:11;;;;;;;:36;;;;;;;;:::i;:::-;;20487:133;;20562:47;20585:7;20594:14;20562:22;:47::i;:::-;20543:66;;20487:133;20648:17;;:69;;-1:-1:-1;;;20648:69:59;;20629:16;;-1:-1:-1;;;;;20648:17:59;;:45;;:69;;20694:7;;20711:4;;20648:69;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20629:88;;20731:11;20727:82;;;20782:16;20758:20;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;20727:82:59;20823:57;20838:7;20847:14;20863:16;20823:57;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;20897:16:59;19875:1045;-1:-1:-1;;;19875:1045:59:o;19180:87::-;19233:27;19249:10;19233:15;:27::i;27991:728::-;28068:18;28126:21;;;:9;:21;;;;;28336;;;;28068:18;;;;28292:66;;28126:21;;28292:33;:66::i;:::-;28232:126;;;;28373:14;28391:1;28373:19;:39;;;;-1:-1:-1;28396:16:59;;28373:39;28369:110;;;28445:8;:23;;;28428:40;;28369:110;28488:17;28508:44;28527:8;:24;;;28508:18;:44::i;:::-;28685:27;;;;;27991:728;-1:-1:-1;;;;;27991:728:59:o;10140:57::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;633:544:63:-;680:7;763:12;:10;:12::i;:::-;-1:-1:-1;;;;;755:33:63;;792:1;755:38;751:420;;877:12;:10;:12::i;751:420::-;943:12;:10;:12::i;:::-;-1:-1:-1;;;;;924:38:63;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;924:40:63;;;;;;;;-1:-1:-1;;924:40:63;;;;;;;;;;;;:::i;:::-;;;920:241;;1134:12;:10;:12::i;920:241::-;1015:6;633:544;-1:-1:-1;633:544:63:o;52324:332:59:-;52547:17;:15;:17::i;:::-;52574:75;52589:17;52608:9;52619:12;52633:15;52574:14;:75::i;50564:141::-;50682:14;;50635:7;;50678:18;;8573:8;50678:18;:::i;:::-;50663:10;8573:8;50663:6;:10;:::i;:::-;50662:35;;;;:::i;59877:137::-;59951:17;:15;:17::i;:::-;59978:29;59999:7;59978:20;:29::i;52662:278::-;52841:17;:15;:17::i;:::-;52868:65;52883:17;52902:9;52913:19;52868:14;:65::i;15579:132::-;1355:13:14;:11;:13::i;:::-;15670:23:59::1;:34:::0;;-1:-1:-1;;;;;;15670:34:59::1;-1:-1:-1::0;;;;;15670:34:59;;;::::1;::::0;;;::::1;::::0;;15579:132::o;52946:2575::-;53109:17;53142:31;53162:10;53142:19;:31::i;:::-;53183:25;53211:21;;;:9;:21;;;;;;;;53303:32;;;;53285:51;;:17;:51;;;;;;53242:94;;;;;;;;;-1:-1:-1;;;;;53242:94:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;53645:19;;:33;;53641:100;;53701:29;;-1:-1:-1;;;53701:29:59;;;;;9746:25:70;;;9719:18;;53701:29:59;9600:177:70;53641:100:59;53781:21;53754:23;;;;;;:48;;;;;;;;:::i;:::-;;53750:115;;53825:29;;-1:-1:-1;;;53825:29:59;;;;;9746:25:70;;;9719:18;;53825:29:59;9600:177:70;53750:115:59;53890:16;:43;;;53878:9;:55;53874:258;;;54051:8;;;53874:258;54251:30;;;;:35;;;;:126;;;54362:15;9067:7;54306:8;:30;;;:53;;;;:::i;:::-;:71;54251:126;54234:418;;;54571:8;;;54234:418;54662:22;54699:16;:43;;;54687:9;:55;;;;:::i;:::-;54753:15;;54794:43;;;;54753:109;;-1:-1:-1;;;54753:109:59;;54662:80;;-1:-1:-1;;;;;;54753:15:59;;;;:33;;54794:43;54753:109;;54839:10;;54851;;54753:109;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;54885:27:59;;:92;;-1:-1:-1;;;54885:92:59;;-1:-1:-1;;;;;54885:41:59;;;;-1:-1:-1;54885:41:59;;-1:-1:-1;54934:14:59;;-1:-1:-1;54885:92:59;;9013:1;;54966:10;;;;54885:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;54988:23;;;:49;;54873:104;;-1:-1:-1;55014:23:59;;-1:-1:-1;;54988:49:59;;55014:23;54988:49;;;;-1:-1:-1;55047:20:59;;;:42;;;55139:15;55099:37;;;:55;55164:31;;;:44;;-1:-1:-1;;;;;;55164:44:59;55198:10;55164:44;;;55047:30;55218:32;;;:21;:32;;;;;:45;;;55274:12;:14;;-1:-1:-1;;;;;55274:14:59;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;55274:14:59;;;;;-1:-1:-1;;;;;55274:14:59;;;;;;;55304:210;55334:16;:27;;;55375:10;55399:9;55422:10;55446:7;;55467:8;:20;;:37;;;55304:210;;;;;;;;;;;;:::i;:::-;;;;;;;;53132:2389;;;52946:2575;;;;;;;:::o;30346:86::-;30402:23;30417:7;30402:14;:23::i;404:115:63:-;5374:13:16;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:16;;;;;;;:::i;:::-;480:32:63::1;499:12;480:18;:32::i;31955:1115:59:-:0;32073:17;32104:19;32137:22;32173:23;32210:20;32244:29;32287:17;32318:22;32354:17;32385:25;32424:31;32480:25;32508:9;:22;32518:11;32508:22;;;;;;;;;;;32480:50;;32553:8;:24;;;32581:1;32553:29;:80;;32589:44;32608:8;:24;;;32589:18;:44::i;:::-;32553:80;;;32585:1;32553:80;32541:92;;32664:8;:18;;;;;;;;;;-1:-1:-1;;;;;32664:18:59;32696:8;:20;;;;;;;;;;-1:-1:-1;;;;;32696:20:59;32730:8;:23;;;;;;;;;;-1:-1:-1;;;;;32730:23:59;32767:8;:24;;;32805:8;:21;;;32840:8;:23;;;;;;;;;;;;32877:8;:18;;;32909:8;:23;;;32946:9;32969:8;:26;;:38;32996:10;-1:-1:-1;;;;;32969:38:59;-1:-1:-1;;;;;32969:38:59;;;;;;;;;;;;;33021:8;:32;;;32643:420;;;;;;;;;;;;;;;;;;;;;;;31955:1115;;;;;;;;;;;;;:::o;18835:339::-;18907:26;18925:7;18907:17;:26::i;:::-;18902:90;;18956:25;;-1:-1:-1;;;18956:25:59;;;;;;;;;;;18902:90;19001:17;;:66;;-1:-1:-1;;;19001:66:59;;-1:-1:-1;;;;;19001:17:59;;;;:42;;:66;;19044:7;;19061:4;;19001:66;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;19101:17:59;;:66;;-1:-1:-1;;;19101:66:59;;-1:-1:-1;;;;;19101:17:59;;;;-1:-1:-1;19101:42:59;;-1:-1:-1;19101:66:59;;19144:7;;19161:4;;19101:66;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19077:20;;:90;;;;;;;:::i;:::-;;;;-1:-1:-1;;;18835:339:59:o;4341:101:58:-;4397:4;4420:15;11249:10;;;;;11170:96;58422:702:59;58537:21;58497;;;;:9;:21;;;;;:36;;;;;:61;;;;;;;;:::i;:::-;;58493:128;;58581:29;;-1:-1:-1;;;58581:29:59;;;;;9746:25:70;;;9719:18;;58581:29:59;9600:177:70;58493:128:59;58635:21;;;;:9;:21;;;;;:31;;;-1:-1:-1;;;;;58635:31:59;58670:10;58635:45;58631:141;;58717:21;;;;:9;:21;;;;;;;:31;;;58703:58;;-1:-1:-1;;;58703:58:59;;;;-1:-1:-1;;;;;58717:31:59;;58750:10;;58703:58;;;:::i;58631:141::-;58782:15;;;58854:21;;;:9;:21;;;;;;;;:31;;;;58917:45;;;;;58899:64;;:17;:64;;;;;;;:90;;;58782:217;;-1:-1:-1;;;58782:217:59;;-1:-1:-1;;;;;58782:15:59;;;;:34;;:217;;58830:10;;58854:31;;;58782:217;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;59010:21:59;;;;:9;:21;;;;;;;;;:36;;:63;;-1:-1:-1;;59010:63:59;59049:24;59010:63;;;59088:29;;9746:25:70;;;59088:29:59;;-1:-1:-1;9719:18:70;59088:29:59;;;;;;;;58422:702;:::o;33544:184::-;33643:7;35423:22;;;:9;:22;;;;;;;;-1:-1:-1;;;;;35423:48:59;;;;:40;;:48;;;;;;33669:52;35252:226;11670:1036;2435:16:58;:14;:16::i;:::-;11764:28:59::1;11784:7;11764:19;:28::i;:::-;11856:23;::::0;11881:10:::1;:12:::0;;11838:56:::1;::::0;-1:-1:-1;;;;;11856:23:59::1;::::0;::::1;11881:12;::::0;::::1;:::i;:::-;;;;;11838:17;:56::i;:::-;11803:15;:92:::0;;-1:-1:-1;;;;;;11803:92:59::1;-1:-1:-1::0;;;;;11803:92:59;;;::::1;::::0;;::::1;::::0;;11905:28:::1;::::0;;-1:-1:-1;;;11905:28:59;;;;:26:::1;::::0;:28:::1;::::0;;::::1;::::0;-1:-1:-1;;11905:28:59;;;;;;;;-1:-1:-1;11803:92:59;11905:28;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;11944:40;11998:5;11987:51;;;;;;;;;;;;:::i;:::-;12248:20;::::0;::::1;::::0;12206:17:::1;:63:::0;;-1:-1:-1;;;;;;12206:63:59::1;-1:-1:-1::0;;;;;12206:63:59;;::::1;::::0;;;::::1;::::0;;12295:15:::1;::::0;::::1;::::0;12280:12:::1;:30:::0;;12248:20;;-1:-1:-1;12295:15:59;;-1:-1:-1;;12280:30:59::1;-1:-1:-1::0;12295:15:59;12280:30:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;12334:14:59::1;::::0;::::1;::::0;12320:11:::1;:28:::0;;-1:-1:-1;;12320:28:59::1;;12334:14:::0;12320:28:::1;::::0;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;12372:14:59::1;::::0;::::1;::::0;12358:28;:11:::1;:28:::0;12423:14:::1;::::0;::::1;::::0;12396:11:::1;:42:::0;;-1:-1:-1;;;;;;12396:42:59::1;-1:-1:-1::0;;;;;12396:42:59;;::::1;::::0;;;::::1;::::0;;12454:27:::1;::::0;::::1;::::0;::::1;::::0;12469:7;;12372:14;;12454:27:::1;:::i;:::-;;;;;;;;12507:19;::::0;::::1;::::0;12528:11;;12541:16:::1;::::0;;12528:11:::1;12541:16:::0;;;::::1;::::0;::::1;12559::::0;;;;;;;;;12492:84:::1;::::0;12507:19;12528:11;12492:14:::1;:84::i;:::-;12598:11;::::0;-1:-1:-1;;;;;12598:11:59::1;12590:36:::0;12586:114:::1;;12642:47;12665:2;:23;;;12642:22;:47::i;6907:220:58:-:0;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:14:-:0;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:14;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:14;;38798:2:70;2415:73:14::1;::::0;::::1;38780:21:70::0;38837:2;38817:18;;;38810:30;38876:34;38856:18;;;38849:62;-1:-1:-1;;;38927:18:70;;;38920:36;38973:19;;2415:73:14::1;38596:402:70::0;10838:826:59;4882:13:16;;10911:1:59;;4882:13:16;;;;;4881:14;:40;;;;-1:-1:-1;4899:12:16;;:22;;;;:12;;:22;4881:40;4873:99;;;;-1:-1:-1;;;4873:99:16;;;;;;;:::i;:::-;4982:12;:22;;-1:-1:-1;;5014:20:16;4982:22;;;5014:20;4982:22;5014:20;;;11000:30:59::1;::::0;;10982:49;;:17:::1;:49;::::0;;;;;:93;;-1:-1:-1;;;;;10982:93:59;;::::1;-1:-1:-1::0;;;;;;10982:93:59;;::::1;::::0;;;::::1;::::0;;;11127:30;;11171:49;;;;;;;:60;;4982:22:16;11245:62:59;::::1;::::0;11321:75:::1;::::0;::::1;::::0;11410:76:::1;::::0;::::1;::::0;11500:63:::1;::::0;::::1;::::0;11577:70:::1;::::0;;::::1;::::0;11090:567;;-1:-1:-1;;;;;;;;;;;11090:567:59;::::1;::::0;11127:30;;11171:60;;::::1;::::0;11245:62;::::1;::::0;11321:75;;11410:76;;11577:70;11090:567:::1;:::i;:::-;;;;;;;;5071:5:16::0;5055:21;;-1:-1:-1;;5055:21:16;;;5091:20;;24622:4:70;24610:17;;24592:36;;-1:-1:-1;;;;;;;;;;;5091:20:16;24580:2:70;24565:18;5091:20:16;24440:194:70;5631:197:58;2435:16;:14;:16::i;:::-;5771:7:::1;5757:10;;:21;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;5788:33:58::1;::::0;-1:-1:-1;5813:7:58;5788:24:::1;:33::i;14222:174:59:-:0;14307:17;;;;;;;;;-1:-1:-1;;;;;14307:17:59;-1:-1:-1;;;;;14307:29:59;;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14285:54:59;:10;-1:-1:-1;;;;;14285:54:59;;14281:109;;14362:17;;-1:-1:-1;;;14362:17:59;;;;;;;;;;;47586:2357;47724:30;;;;-1:-1:-1;;;;;47724:44:59;;;;;:99;;-1:-1:-1;47780:28:59;;-1:-1:-1;;;;;47772:51:59;;;47724:99;:1027;;;;-1:-1:-1;47917:30:59;;47899:49;;;;:17;:49;;;;;;;;:62;;;47865:30;;;;-1:-1:-1;;;;;47865:96:59;;;47899:62;;47865:96;;;:216;;-1:-1:-1;48039:30:59;;48021:49;;;;:17;:49;;;;;:60;47989:28;;-1:-1:-1;;;;;47989:92:59;;;48021:60;;47989:92;;47865:216;:394;;;-1:-1:-1;48202:30:59;;48184:49;;;;:17;:49;;;;;;;:75;;;48109:43;;;;:150;;47865:394;:574;;;-1:-1:-1;48381:30:59;;48363:49;;;;:17;:49;;;;;:76;;;48287:44;;;;:152;;47865:574;:700;;;-1:-1:-1;48520:30:59;;48502:49;;;;:17;:49;;;;;:63;;;48467:31;;;;:98;;47865:700;:868;;;-1:-1:-1;48681:30:59;;48663:49;;;;:17;:49;;;;;:70;;;48593:38;;;;:140;;47865:868;47707:2158;;;48863:30;;;;;48815;;48797:49;;;;:17;:49;;;;;;;:62;;;-1:-1:-1;;;;;48797:62:59;;;:96;;;;;:212;;-1:-1:-1;48981:28:59;;48935:30;;48981:28;48917:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;48917:60:59;;;:92;;;;48797:212;48776:522;;;49042:28;;49084:30;;;;49042:73;;-1:-1:-1;;;49042:73:59;;-1:-1:-1;;;;;49042:41:59;;;;;;:73;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;49204:28:59;;49235:30;;;;49138:145;;;;-1:-1:-1;49138:145:59;;-1:-1:-1;49189:4:59;;49204:28;49235:30;-1:-1:-1;;;;;40139:15:70;;;40121:34;;40191:15;;;40186:2;40171:18;;40164:43;40243:15;;;40238:2;40223:18;;40216:43;40071:2;40056:18;;39881:384;49138:145:59;;;;;;;;48776:522;49312:30;:32;;;:30;:32;;;:::i;:::-;;;;-1:-1:-1;;49376:30:59;;;49358:49;;;;:17;:49;;;;;;;;;:69;;;;-1:-1:-1;;;;;49358:69:59;;;-1:-1:-1;;;;;;49358:69:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49488:30;;49447:407;;-1:-1:-1;;;;;;;;;;;49447:407:59;;;49488:30;49358:69;;;;49447:407;:::i;:::-;;;;;;;;47707:2158;49875:20;;:8;:20;;;;;;;;;;;;;;;;;;;;49910:26;;;;;49886:9;;49910:26;:::i;9536:119:58:-;9620:4;;-1:-1:-1;;;;;9620:4:58;9598:10;:27;9594:54;;9634:14;;-1:-1:-1;;;9634:14:58;;;;;;;;;;;10525:113;10594:6;;10604:1;10594:11;10590:41;;10614:17;;-1:-1:-1;;;10614:17:58;;;;;;;;;;;25907:2078:59;26151:18;26183:5;26172:28;;;;;;;;;;;;:::i;:::-;26151:49;-1:-1:-1;26327:20:59;26311:12;;;;:36;;;;;;;;:::i;:::-;;26307:1612;;26367:21;;;;:9;:21;;;;;:32;:46;;26363:121;;26440:29;;-1:-1:-1;;;26440:29:59;;;;;9746:25:70;;;9719:18;;26440:29:59;9600:177:70;26363:121:59;26542:10;;26502:21;;;;:9;:21;;;;;:37;;;:50;26498:269;;;26682:8;;;26498:269;26825:21;26785;;;;:9;:21;;;;;:36;;;;;:61;;;;;;;;:::i;:::-;;26781:136;;26873:29;;-1:-1:-1;;;26873:29:59;;;;;9746:25:70;;;9719:18;;26873:29:59;9600:177:70;26781:136:59;26931:22;26956:36;26981:10;26956:24;:36::i;:::-;27006:17;27045:21;;;:9;:21;;;;;:37;;;26931:61;;-1:-1:-1;27006:17:59;27026:57;;:18;:57::i;:::-;27006:77;;27119:9;27102:14;:26;:71;;;;-1:-1:-1;27172:1:59;27132:21;;;:9;:21;;;;;:37;;;:41;;27102:71;27098:150;;;27200:33;;-1:-1:-1;;;27200:33:59;;;;;;;;;;;27098:150;27276:21;;;;:9;:21;;;;;:37;;;27262:10;:51;;27276:37;;27262:10;;:51;;27276:37;;27262:51;:::i;:::-;;;;-1:-1:-1;;27368:4:59;;27381:6;;27368:20;;-1:-1:-1;;;27368:20:59;;;;;9746:25:70;;;;27335:147:59;;-1:-1:-1;;;;;27368:4:59;;:12;;9719:18:70;;27368:20:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;27368:20:59;;;;;;;;;;;;:::i;:::-;:26;;;;;27396:21;;;;:9;:21;;;;;;:33;;;;;27431:37;;;;-1:-1:-1;;;;;27396:33:59;;;;27335:15;:147::i;:::-;27497:21;;;;:9;:21;;;;;;;;:36;;;:62;;-1:-1:-1;;27497:62:59;27536:23;27497:62;;;;;;27573:15;;27653:31;;;;;27720:30;;27702:49;;:17;:49;;;;;;;:75;;;27573:218;;-1:-1:-1;;;27573:218:59;;-1:-1:-1;;;;;27573:15:59;;;;:34;;:218;;27497:21;;27653:31;;;;27702:75;;27573:218;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;27835:21:59;;;;:9;:21;;;;;;;:33;;;;;27870:37;;;;27811:97;;;;-1:-1:-1;27811:97:59;;27823:10;;-1:-1:-1;;;;;27835:33:59;;27811:97;:::i;:::-;;;;;;;;26349:1570;;26001:1984;25907:2078;;;:::o;1423:320:18:-;-1:-1:-1;;;;;1713:19:18;;:23;;;1423:320::o;46261:389:59:-;46373:18;46393:19;46416:56;46450:9;46461:10;46416:33;:56::i;:::-;46372:100;;;;46486:10;46500:1;46486:15;:35;;;;-1:-1:-1;46505:16:59;;46486:35;46482:72;;;46537:7;;46261:389;;:::o;46482:72::-;46563:19;;;:33;46606:24;;;;:37;;;;-1:-1:-1;46261:389:59:o;19510:359::-;19605:17;;:66;;-1:-1:-1;;;19605:66:59;;-1:-1:-1;;;;;19605:17:59;;;;:42;;:66;;19648:7;;19665:4;;19605:66;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19581:20;;:90;;;;;;;:::i;:::-;;;;-1:-1:-1;;19681:17:59;;:68;;-1:-1:-1;;;19681:68:59;;-1:-1:-1;;;;;19681:17:59;;;;:44;;:68;;19726:7;;19743:4;;19681:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19804:17;19813:7;19804:8;:17::i;:::-;19836:26;19854:7;19836:26;;;;;;:::i;16037:2679::-;16137:7;16156:28;16176:7;16156:19;:28::i;:::-;16194:17;;:52;;-1:-1:-1;;;16194:52:59;;-1:-1:-1;;;;;16194:17:59;;;;:37;;:52;;16240:4;;16194:52;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16316:30;16360:5;16349:35;;;;;;;;;;;;:::i;:::-;16316:68;-1:-1:-1;16478:20:59;16462:12;;;;:36;;;;;;;;:::i;:::-;;16458:897;;16514:40;16533:8;:20;;;16514:18;:40::i;:::-;16740:11;16754:4;-1:-1:-1;;;;;16754:12:59;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16827:15;;16813:30;;-1:-1:-1;;;16813:30:59;;16740:28;;-1:-1:-1;;;;;;16813:13:59;;;;;:30;;;;9746:25:70;;;9734:2;9719:18;;9600:177;16813:30:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;16813:30:59;;;;;;;;;;;;:::i;:::-;:36;;;-1:-1:-1;;;;;16786:63:59;:8;:23;;;-1:-1:-1;;;;;16786:63:59;;16782:352;;17049:8;;;16782:352;17151:41;17167:8;:24;;;17151:15;:41::i;:::-;17147:198;;;17260:8;;;17147:198;16500:855;16458:897;17408:30;;17463:1;17390:49;;;:17;:49;;;;;:60;-1:-1:-1;;;;;17390:60:59;17382:83;;;;:190;;-1:-1:-1;17515:30:59;;17497:49;;;;:17;:49;;;;;:75;;;17485:9;:87;17382:190;17365:483;;;17767:8;;;17365:483;17858:18;17881:15;;17879:17;;;;;:::i;:::-;;;;;-1:-1:-1;17906:18:59;17927:21;;;:9;:21;;;;;;;;17959:25;;;17994:11;;;:21;;-1:-1:-1;;;;;17994:21:59;;;-1:-1:-1;;;;;;17994:21:59;;;;;;;18041:20;;;;18025:13;;;:36;;;;;;;;;;;;;;18090:23;;;;18071:16;;;:42;;;;;;;;;;;18143:24;;;;-1:-1:-1;18123:17:59;;;:44;;;;18228:16;;;:40;;-1:-1:-1;;18228:40:59;;;;;;18292:12;18278:11;;;:26;-1:-1:-1;18314:16:59;;:20;;;;18393:17;;;;18380:30;;:10;;;:30;;;;;;;17879:17;;-1:-1:-1;17927:21:59;;18380:30;;;;;;;;:::i;:::-;-1:-1:-1;;18448:30:59;;18420:25;;;:58;-1:-1:-1;18488:15:59;;18552:11;;;;18488:76;;-1:-1:-1;;;18488:76:59;;-1:-1:-1;;;;;18488:15:59;;;;:33;;18529:9;;18488:76;;18540:10;;18552:11;;18488:76;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18580:35;18596:6;;18604:10;18580:35;;;;;;45992:25:70;;;46048:2;46033:18;;46026:34;45980:2;45965:18;;45818:248;18580:35:59;;;;;;;;-1:-1:-1;18697:10:59;16037:2679;-1:-1:-1;;;;16037:2679:59:o;13898:171::-;13989:17;;-1:-1:-1;;;;;13989:17:59;13967:10;:40;13963:100;;14030:22;;-1:-1:-1;;;14030:22:59;;;;;;;;;;;22940:855;23149:17;;:31;;;-1:-1:-1;;;23149:31:59;;;;23078:7;;23119:2;;-1:-1:-1;;;;;23149:17:59;;;;:29;;:31;;;;;;;;;;;;;;;:17;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;23135:56:59;;:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;23135:58:59;;;;;;;;-1:-1:-1;;23135:58:59;;;;;;;;;;;;:::i;:::-;;;23131:211;;;23243:17;;;-1:-1:-1;23131:211:59;23437:17;;:48;;-1:-1:-1;;;23437:48:59;;23413:21;;23488:16;;-1:-1:-1;;;;;23437:17:59;;;;:39;;:48;;23477:7;;23437:48;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;:::i;:::-;23413:91;-1:-1:-1;23570:22:59;23595:40;23621:13;23627:7;23621:2;:13;:::i;:::-;23605:29;;:13;:29;:::i;:::-;23595:9;:40::i;:::-;23672:17;;:66;;-1:-1:-1;;;23672:66:59;;23570:65;;-1:-1:-1;23645:24:59;;23570:65;;-1:-1:-1;;;;;23672:17:59;;:42;;:66;;23715:7;;23732:4;;23672:66;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:83;;;;:::i;:::-;23645:110;22940:855;-1:-1:-1;;;;;;;22940:855:59:o;45469:476::-;45538:15;-1:-1:-1;;;45569:2:59;:13;45565:74;;45605:23;;-1:-1:-1;;;45605:23:59;;;;;;;;;;;45565:74;-1:-1:-1;;;;45661:2:59;45685;45724:215;45731:5;;45724:215;;45756:1;45760;45756:5;45765:1;45756:10;45752:177;;45790:10;45795:1;45798;45790:4;:10::i;:::-;45786:14;-1:-1:-1;45824:1:59;45818:7;45724:215;;45752:177;45874:16;45879:7;45888:1;45874:4;:16::i;:::-;45864:26;-1:-1:-1;45908:6:59;45913:1;45908:6;;:::i;:::-;;;45724:215;;;45555:390;;45469:476;;;;:::o;1175:140:28:-;-1:-1:-1;;;;;;;;;;;1254:54:28;-1:-1:-1;;;;;1254:54:28;;1175:140::o;1183:169:63:-;1267:10;1256:7;:5;:7::i;:::-;-1:-1:-1;;;;;1256:21:63;;1252:94;;1315:10;1327:7;:5;:7::i;:::-;1300:35;;-1:-1:-1;;;1300:35:63;;;;;;;;;:::i;2494:922:28:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:28;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:28;;;;;;;;-1:-1:-1;;3046:52:28;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:28;;48399:2:70;3262:56:28;;;48381:21:70;48438:2;48418:18;;;48411:30;48477:34;48457:18;;;48450:62;-1:-1:-1;;;48528:18:70;;;48521:44;48582:19;;3262:56:28;48197:410:70;3042:291:28;-1:-1:-1;;;;;;;;;;;3148:28:28;;3140:82;;;;-1:-1:-1;;;3140:82:28;;48814:2:70;3140:82:28;;;48796:21:70;48853:2;48833:18;;;48826:30;48892:34;48872:18;;;48865:62;-1:-1:-1;;;48943:18:70;;;48936:39;48992:19;;3140:82:28;48612:405:70;3140:82:28;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;14075:141:59:-;-1:-1:-1;;;;;14157:22:59;;14153:56;;14188:21;;-1:-1:-1;;;14188:21:59;;;;;;;;;;;60448:168;60518:11;;60576:17;;:31;;;-1:-1:-1;;;60576:31:59;;;;-1:-1:-1;;;;;60518:11:59;;;;:23;;60550:4;;60557:9;;60576:17;;;;;:29;;:31;;;;;;;;;;;;;;:17;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;60518:91;;;;;;-1:-1:-1;;;;;;60518:91:59;;;-1:-1:-1;;;;;49280:15:70;;;60518:91:59;;;49262:34:70;49312:18;;;49305:34;;;;49375:15;;;49355:18;;;49348:43;49197:18;;60518:91:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;60448:168;:::o;35842:191::-;35924:19;36006:20;8573:8;36006:16;:20;:::i;:::-;35992:10;;35972:8;:17;:30;;35992:10;35972:30;:::i;:::-;:54;;;35842:191;-1:-1:-1;;35842:191:59:o;1620:130:14:-;965:10:19;1683:7:14;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:14;;1675:68;;;;-1:-1:-1;;;1675:68:14;;49604:2:70;1675:68:14;;;49586:21:70;;;49623:18;;;49616:30;49682:34;49662:18;;;49655:62;49734:18;;1675:68:14;49402:356:70;2687:187:14;2779:6;;;-1:-1:-1;;;;;2795:17:14;;;-1:-1:-1;;;;;;2795:17:14;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;59261:610:59:-;59331:21;59395:6;;59365:37;;;;;;;;:::i;:::-;;;;-1:-1:-1;;59365:37:59;;;;;;;;;;59355:48;;59365:37;59355:48;;;;59418:17;;-1:-1:-1;;;59418:52:59;;59355:48;;-1:-1:-1;;;;;;59418:17:59;;:25;;:52;;59355:48;;59418:17;;:52;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;59414:138;;;59486:17;;:55;;-1:-1:-1;;;59486:55:59;;-1:-1:-1;;;;;59486:17:59;;;;:28;;:55;;59515:13;;59486:17;;:55;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;59414:138;59566:9;59561:250;59585:7;:14;59581:1;:18;59561:250;;;59625:17;;59666:10;;-1:-1:-1;;;;;59625:17:59;;;;:25;;59651:13;;59666:7;;59674:1;;59666:10;;;;;;:::i;:::-;;;;;;;59625:52;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;59620:181;;59697:17;;59765:6;;59735:37;;-1:-1:-1;;;;;59697:17:59;;;;:27;;59735:37;;;;;:::i;:::-;;;;;;;;;;;;;59725:48;;;;;;59775:7;59783:1;59775:10;;;;;;;;:::i;:::-;;;;;;;59697:89;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;59620:181;59601:3;;;;:::i;:::-;;;;59561:250;;;;59826:38;59848:6;;59856:7;59826:38;;;;;;;:::i;14402:499::-;14495:11;;14467:4;;-1:-1:-1;;;;;14495:11:59;14483:345;;14537:21;14601:6;;14571:37;;;;;;;;:::i;:::-;;;;-1:-1:-1;;14571:37:59;;;;;;;;;;14561:48;;14571:37;14561:48;;;;14627:17;;-1:-1:-1;;;14627:52:59;;14561:48;;-1:-1:-1;;;;;;14627:17:59;;:25;;:52;;14561:48;;14627:17;;:52;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14623:195;;;-1:-1:-1;14706:4:59;;14402:499;-1:-1:-1;;14402:499:59:o;14623:195::-;14756:17;;:47;;-1:-1:-1;;;14756:47:59;;-1:-1:-1;;;;;14756:17:59;;;;:25;;:47;;14782:13;;14797:5;;14756:47;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;14483:345::-;14844:11;;:50;;-1:-1:-1;;;14844:50:59;;-1:-1:-1;;;;;14844:11:59;;;;:28;;:50;;14873:5;;14888:4;;14844:50;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;21616:571::-;21820:17;;:66;;-1:-1:-1;;;21820:66:59;;21717:7;;;;-1:-1:-1;;;;;21820:17:59;;;;:42;;:66;;21863:7;;21880:4;;21820:66;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21983:11;:21;21798:88;;-1:-1:-1;21952:28:59;21966:14;21798:88;21952:28;:::i;:::-;:52;21948:135;;;22037:11;:21;:35;;22061:11;;22037:35;:::i;:::-;22020:52;;21948:135;-1:-1:-1;22166:14:59;;21616:571;-1:-1:-1;;21616:571:59:o;22193:741::-;22337:17;;:48;;-1:-1:-1;;;22337:48:59;;22297:7;;;;22388:14;;-1:-1:-1;;;;;22337:17:59;;:39;;:48;;22377:7;;22337:48;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:65;;;;:::i;:::-;22461:17;;:31;;;-1:-1:-1;;;22461:31:59;;;;22316:86;;-1:-1:-1;22431:2:59;;-1:-1:-1;;;;;22461:17:59;;;;:29;;:31;;;;;;;;;;;;;;;:17;:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;22447:56:59;;:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;22447:58:59;;;;;;;;-1:-1:-1;;22447:58:59;;;;;;;;;;;;:::i;:::-;;;22443:211;;;22555:17;;;-1:-1:-1;22443:211:59;22663:22;22688:37;22711:13;22717:7;22711:2;:13;:::i;:::-;22698:26;;:10;:26;:::i;22688:37::-;22759:17;;:66;;-1:-1:-1;;;22759:66:59;;22663:62;;-1:-1:-1;22735:21:59;;-1:-1:-1;;;;;22759:17:59;;;;:42;;:66;;22802:7;;22819:4;;22759:66;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22735:90;-1:-1:-1;22836:24:59;22863:30;22735:90;22863:14;:30;:::i;:::-;22836:57;22193:741;-1:-1:-1;;;;;;;;22193:741:59:o;46656:720::-;46810:18;46830:19;46879:12;46865:26;;46931:11;46908:9;:19;;;:34;;46901:42;;;;:::i;:::-;46980:11;46957:9;:19;;;:34;46953:173;;-1:-1:-1;47081:1:59;;-1:-1:-1;47081:1:59;47073:13;;46953:173;47192:177;47239:9;:19;;;47225:11;:33;;;;:::i;:::-;47311:9;:24;;;47349:10;47192:19;:177::i;:::-;47179:190;;46656:720;;;;;;:::o;51474:470::-;51698:44;51713:17;51732:9;51698:14;:44::i;:::-;51756:19;;:23;51752:83;;51795:29;51811:12;51795:15;:29::i;:::-;51848:22;;:26;51844:94;;51890:37;51911:15;60020:422;60100:9;60095:285;60119:7;:14;60115:1;:18;60095:285;;;60158:17;;60224:6;;60194:37;;-1:-1:-1;;;;;60158:17:59;;;;:25;;60194:37;;;;;:::i;:::-;;;;;;;;;;;;;60184:48;;;;;;60234:7;60242:1;60234:10;;;;;;;;:::i;:::-;;;;;;;60158:87;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;60154:216;;;60265:17;;60334:6;;60304:37;;-1:-1:-1;;;;;60265:17:59;;;;:28;;60304:37;;;;;:::i;:::-;;;;;;;;;;;;;60294:48;;;;;;60344:7;60352:1;60344:10;;;;;;;;:::i;:::-;;;;;;;60265:90;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;60154:216;60135:3;;;;:::i;:::-;;;;60095:285;;;;60395:40;60419:6;;60427:7;60395:40;;;;;;;:::i;51950:368::-;52130:44;52145:17;52164:9;52130:14;:44::i;:::-;52196:11;;-1:-1:-1;;;;;52196:11:59;52188:34;52184:128;;52238:11;;:63;;-1:-1:-1;;;52238:63:59;;52274:4;52238:63;;;51146:51:70;51213:18;;;51206:34;;;-1:-1:-1;;;;;52238:11:59;;;;:27;;51119:18:70;;52238:63:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;51950:368;;;:::o;13488:404::-;13784:17;;:35;;-1:-1:-1;;;13784:35:59;;-1:-1:-1;;;;;13784:17:59;;;;:26;;:35;;13811:7;;13784:35;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13779:93;;13842:19;;-1:-1:-1;;;13842:19:59;;;;;;;;;;;10878:126:58;10943:10;:20;;-1:-1:-1;;10943:20:58;;;;;;;;;;10978:19;;3308:41:70;;;10978:19:58;;3296:2:70;3281:18;10978:19:58;3168:187:70;5044:390:58;2435:16;:14;:16::i;:::-;5243:6:::1;::::0;:11;5239:45:::1;;5263:21;;-1:-1:-1::0;;;5263:21:58::1;;;;;;;;;;;5239:45;5371:7;5382:1;5371:12:::0;5367:34:::1;;5392:9;;-1:-1:-1::0;;;5392:9:58::1;;;;;;;;;;;5367:34;5411:6;:16:::0;5044:390::o;4749:279:3:-;4867:36;;-1:-1:-1;;;;;;4884:10:3;51453:2:70;51424:15;51420:45;4867:36:3;;;51408:58:70;51482:12;;;51475:28;;;4823:7:3;;;;51519:12:70;;4867:36:3;;;;;;;;;;;;4857:47;;;;;;4842:62;;4968:53;5005:9;5016:4;4968:36;:53::i;:::-;4961:60;4749:279;-1:-1:-1;;;;4749:279:3:o;24444:322:59:-;24547:27;24588:5;24577:38;;;;;;;;;;;;:::i;:::-;24547:68;;24630:9;24625:135;24649:2;:9;24645:1;:13;24625:135;;;24679:70;24712:2;24715:1;24712:5;;;;;;;;:::i;:::-;;;;;;;:16;;;24730:2;24733:1;24730:5;;;;;;;;:::i;:::-;;;;;;;:18;;;24679:32;:70::i;:::-;24660:3;;;;:::i;:::-;;;;24625:135;;24912:739;25004:28;25024:7;25004:19;:28::i;:::-;25042:27;25083:5;25072:38;;;;;;;;;;;;:::i;:::-;25042:68;;25125:26;25143:7;25125:17;:26::i;:::-;25120:230;;25172:9;25167:173;25191:2;:9;25187:1;:13;25167:173;;;25250:1;25229:2;25232:1;25229:5;;;;;;;;:::i;:::-;;;;;;;:18;;;:22;25225:101;;;25282:25;;-1:-1:-1;;;25282:25:59;;;;;;;;;;;25225:101;25202:3;;;;:::i;:::-;;;;25167:173;;;;25120:230;25364:17;;:69;;-1:-1:-1;;;25364:69:59;;-1:-1:-1;;;;;25364:17:59;;;;:45;;:69;;25410:7;;25427:4;;25364:69;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25359:124;;25456:16;;-1:-1:-1;;;25456:16:59;;;;;;;;;;;25359:124;25573:37;25598:7;25607:2;25573:24;:37::i;:::-;25620:24;25632:7;25641:2;25620:11;:24::i;29975:127::-;30067:28;;9746:25:70;;;30067:28:59;;9734:2:70;9719:18;30067:28:59;9600:177:70;6721:269:7;-1:-1:-1;;;;;;;6815:16:7;;;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;30438:833:59:-;30553:9;30548:676;-1:-1:-1;;;;;30572:29:59;;;;;;:20;:29;;;;;:36;30568:40;;30548:676;;;-1:-1:-1;;;;;30650:29:59;;30629:18;30650:29;;;:20;:29;;;;;:32;;30680:1;;30650:32;;;;;;:::i;:::-;;;;;;;;;;;;;30724:21;;;:9;:21;;;;;;;30650:32;;-1:-1:-1;30763:26:59;30650:32;30763:14;:26::i;:::-;30759:455;;;-1:-1:-1;;;;;30832:35:59;;30809:20;30832:35;;;:26;;;:35;;;;;;;30885:39;;;;30942:21;;;:37;;30832:35;;;;30942:37;;30832:35;;30942:37;:::i;:::-;;;;;;;;31012:12;30997:11;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;31042:50:59;;-1:-1:-1;31069:8:59;31079:12;31042:26;:50::i;:::-;-1:-1:-1;;;;;;;;;;;31128:7:59;31137:10;31149:1;31152:8;:21;;;31175:8;:23;;;31115:84;;;;;;;;;;:::i;:::-;;;;;;;;30791:423;30759:455;30615:609;;30610:3;;;;;:::i;:::-;;;;30548:676;;;-1:-1:-1;;;;;;31233:27:59;31263:1;31233:27;;;:18;:27;;;;;:31;30438:833::o;6530:1642:45:-;6578:7;6601:1;6606;6601:6;6597:45;;-1:-1:-1;6630:1:45;;6530:1642;-1:-1:-1;6530:1642:45: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;44941:306:59:-;45010:15;-1:-1:-1;;;45041:2:59;:12;45037:77;;;45076:27;;-1:-1:-1;;;;;;45076:27:59;;;;;;;;;;;45037:77;-1:-1:-1;;;45127:2:59;:12;45123:72;;;45162:22;;-1:-1:-1;;;45162:22:59;;;;;;;;;;;45123:72;45237:3;-1:-1:-1;;;45214:7:59;45219:2;45214;:7;:::i;:::-;45213:19;;;;:::i;:::-;45212:28;;;44941:306;-1:-1:-1;;;44941:306:59:o;1406:259:28:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:28;;53436:2:70;1479:95:28;;;53418:21:70;53475:2;53455:18;;;53448:30;53514:34;53494:18;;;53487:62;-1:-1:-1;;;53565:18:70;;;53558:43;53618:19;;1479:95:28;53234:409:70;1479:95:28;-1:-1:-1;;;;;;;;;;;1584:74:28;;-1:-1:-1;;;;;;1584:74:28;-1:-1:-1;;;;;1584:74:28;;;;;;;;;;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:15:-;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:15;;2847:58;;;;-1:-1:-1;;;2847:58:15;;53850:2:70;2847:58:15;;;53832:21:70;53889:2;53869:18;;;53862:30;-1:-1:-1;;;53908:18:70;;;53901:53;53971:18;;2847:58:15;53648:347:70;14907:666:59;15023:18;15044:22;;;:9;:22;;;;;;15093:16;;:285;;;;-1:-1:-1;15171:23:59;15151:16;;;;;;:43;;;;;;;;:::i;:::-;;:91;;;-1:-1:-1;15218:24:59;15198:16;;;;;;:44;;;;;;;;:::i;:::-;;15151:91;:162;;;-1:-1:-1;15290:23:59;15270:16;;;;;;:43;;;;;;;;:::i;:::-;;15151:162;:209;;;-1:-1:-1;15337:23:59;15317:16;;;;;;:43;;;;;;;;:::i;:::-;;15151:209;15076:491;;;15486:8;;;36039:1713;36152:22;36188:18;36209:26;36227:7;36209:17;:26::i;:::-;36188:47;;36250:9;36245:768;36269:16;:23;36265:1;:27;36245:768;;;36373:13;36372:14;:54;;;;;36425:1;36390:16;36407:1;36390:19;;;;;;;;:::i;:::-;;;;;;;:32;;;:36;36372:54;36368:125;;;36453:25;;-1:-1:-1;;;36453:25:59;;;;;;;;;;;36368:125;36510:16;36527:1;36510:19;;;;;;;;:::i;:::-;;;;;;;:30;;;36544:1;36510:35;36506:187;36670:8;36506:187;36706:18;36727:16;36744:1;36727:19;;;;;;;;:::i;:::-;;;;;;;:30;;;36706:51;;36776:26;36791:10;36776:14;:26::i;:::-;36771:167;;36829:29;;-1:-1:-1;;;36829:29:59;;;;;9746:25:70;;;9719:18;;36829:29:59;9600:177:70;36771:167:59;36970:16;36987:1;36970:19;;;;;;;;:::i;:::-;;;;;;;:32;;;36951:51;;;;;:::i;:::-;;;36299:714;36245:768;36294:3;;;;:::i;:::-;;;;36245:768;;;-1:-1:-1;;;;;;37153:27:59;;37109:29;37153:27;;;:18;:27;;;;;;37141:57;;37182:15;37141:11;:57::i;:::-;37309:17;;:66;;-1:-1:-1;;;37309:66:59;;37109:89;;-1:-1:-1;37280:26:59;;-1:-1:-1;;;;;37309:17:59;;;;:42;;:66;;37352:7;;37369:4;;37309:66;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;37280:95;;37565:18;37541:21;:42;37537:147;;;37606:67;;-1:-1:-1;;;37606:67:59;;;;;45992:25:70;;;46033:18;;;46026:34;;;45965:18;;37606:67:59;45818:248:70;37537:147:59;-1:-1:-1;;;;;;37694:27:59;;;;;;;:18;:27;;;;;:51;;;;-1:-1:-1;;;36039:1713:59:o;37758:3457::-;37866:29;37910:9;37905:3304;37929:16;:23;37925:1;:27;37905:3304;;;37973:18;37994:16;38011:1;37994:19;;;;;;;;:::i;:::-;;;;;;;:30;;;37973:51;;38097:12;:19;38120:1;38097:24;38093:920;;38156:16;;;38170:1;38156:16;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;38156:16:59;38141:31;;38208:10;38190:12;38203:1;38190:15;;;;;;;;:::i;:::-;;;;;;:28;;;;;38093:920;;;38267:10;38308:9;38303:318;38327:12;:19;38323:1;:23;38303:318;;;38423:10;38404:12;38417:1;38404:15;;;;;;;;:::i;:::-;;;;;;;:29;38400:203;;38506:40;;-1:-1:-1;;;38506:40:59;;;;;45992:25:70;;;46033:18;;;46026:34;;;38469:4:59;;-1:-1:-1;45965:18:70;;38506:40:59;45818:248:70;38400:203:59;38348:3;;;;:::i;:::-;;;;38303:318;;;;38643:5;38638:361;;38672:21;38710:12;:19;38732:1;38710:23;;;;:::i;:::-;-1:-1:-1;;;;;38696:38:59;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;38696:38:59;;38672:62;;38761:9;38756:124;38780:12;:19;38776:1;:23;38756:124;;;38842:12;38855:1;38842:15;;;;;;;;:::i;:::-;;;;;;;38832:4;38837:1;38832:7;;;;;;;;:::i;:::-;;;;;;;;;;:25;38801:3;;;;:::i;:::-;;;;38756:124;;;;38929:10;38901:4;38906:12;:19;38901:25;;;;;;;;:::i;:::-;;;;;;;;;;:38;38976:4;-1:-1:-1;38638:361:59;38249:764;38093:920;39026:12;39041:16;39058:1;39041:19;;;;;;;;:::i;:::-;;;;;;;;;;;;:32;;;39088:25;39116:21;;;:9;:21;;;;;;-1:-1:-1;;;;;39270:35:59;;;;:26;;;:35;;;;;;39041:32;;-1:-1:-1;39493:40:59;39270:35;39041:32;39493:11;:40::i;:::-;-1:-1:-1;;;;;39668:35:59;;;;;;:26;;;:35;;;;;:50;;;39470:63;;-1:-1:-1;39668:35:59;39990:246;-1:-1:-1;;;;;40014:29:59;;;;;;:20;:29;;;;;:36;40010:40;;39990:246;;;40115:19;;-1:-1:-1;;;;;40079:29:59;;40115:19;40079:29;;;:20;:29;;;;;:32;;40109:1;;40079:32;;;;;;:::i;:::-;;;;;;;;;:55;40075:147;;40172:4;40158:18;;40198:5;;40075:147;40052:3;;;;:::i;:::-;;;;39990:246;;;;40254:11;40249:106;;-1:-1:-1;;;;;40285:29:59;;;;;;:20;:29;;;;;;;40320:19;;40285:55;;;;;;;;;;;;;;;;;;40249:106;40534:12;40510:20;:36;40506:370;;40581:35;40596:20;40581:12;:35;:::i;:::-;40566:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;40659:35:59;;-1:-1:-1;40674:20:59;40659:12;:35;:::i;:::-;40634:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;40506:370:59;;-1:-1:-1;40506:370:59;;40748:35;40771:12;40748:20;:35;:::i;:::-;40733:11;;:50;;;;;;;:::i;:::-;;;;-1:-1:-1;40826:35:59;;-1:-1:-1;40849:12:59;40826:20;:35;:::i;:::-;40801:8;:21;;;:60;;;;;;;:::i;:::-;;;;-1:-1:-1;;40506:370:59;40893:8;:18;;;40915:1;40893:23;40889:310;;40957:12;40936:18;;;:33;40889:310;;;41008:58;41035:8;41045:20;41008:26;:58::i;:::-;-1:-1:-1;;;;;;;;;;;41102:7:59;41111:10;41123:12;41137:8;:21;;;41160:8;:23;;;41089:95;;;;;;;;;;:::i;:::-;;;;;;;;40889:310;37959:3250;;;;;;37954:3;;;;;:::i;:::-;;;;37905:3304;;2455:490:9;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:9;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;35643:193:59:-;35719:4;35742:22;;;:9;:22;;;;;:33;:37;;;;:87;;-1:-1:-1;;35827:1:59;35783:22;;;:9;:22;;;;;:32;;;-1:-1:-1;;;;;35783:32:59;:46;;;35643:193::o;8633:983:45:-;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:45:o;588:104::-;646:7;676:1;672;:5;:13;;684:1;672:13;;;-1:-1:-1;680:1:45;;588:104;-1:-1:-1;588:104:45:o;1771:152:28:-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:28;;;;;;;;1771:152;:::o;6674:198:38:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;41221:371:59:-;41306:7;;41341:25;41360:6;41348:8;41341:25;:::i;:::-;41325:41;;41390:1;41381:6;:10;41377:177;;;41473:8;;;7058:325:38;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:38;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:38: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:38;;55209:2:70;8113:60:38;;;55191:21:70;55248:2;55228:18;;;55221:30;55287:31;55267:18;;;55260:59;55336:18;;8113:60:38;55007:353:70;8113:60:38;-1:-1:-1;8208:10:38;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:38;;;;;;;;:::i;14:180:70:-;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:70;;14:180;-1:-1:-1;14:180:70:o;199:104::-;-1:-1:-1;;;;;265:31:70;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:70;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:70;1038:39;;;;1079:4;1034:50;;819:271;-1:-1:-1;;819:271:70:o;1342:1530::-;1958:25;;;2014:2;1999:18;;1992:34;;;2057:2;2042:18;;2035:34;;;2100:2;2085:18;;2078:34;;;-1:-1:-1;;;;;2187:15:70;;;2181:3;2166:19;;2159:44;2240:15;;;2139:3;2219:19;;2212:44;2293:15;;2287:3;2272:19;;2265:44;2340:3;2325:19;;2318:35;;;1917:4;1946:3;2362:44;2399:6;2362:44;:::i;:::-;2443:6;2437:3;2426:9;2422:19;2415:35;2487:2;2481:3;2470:9;2466:19;2459:31;2532:6;2526:13;2521:2;2510:9;2506:18;2499:41;;2587:2;2579:6;2575:15;2569:22;2628:2;2622:3;2611:9;2607:19;2600:31;2648:52;2695:3;2684:9;2680:19;2666:12;2648:52;:::i;:::-;1180:12;;2771:3;2756:19;;1168:25;1242:4;1231:16;;1225:23;1209:14;;;1202:47;1302:4;1291:16;;1285:23;-1:-1:-1;;;;;1281:49:70;1265:14;;;1258:73;2640:60;-1:-1:-1;2709:67:70;;-1:-1:-1;1095:242:70;2709:67;2807:3;2792:19;;2785:36;;;;2852:3;2837:19;2830:36;1342:1530;;-1:-1:-1;;;;;;;;;;;1342:1530:70:o;2877:286::-;2935:6;2988:2;2976:9;2967:7;2963:23;2959:32;2956:52;;;3004:1;3001;2994:12;2956:52;3030:23;;-1:-1:-1;;;;;;3082:32:70;;3072:43;;3062:71;;3129:1;3126;3119:12;3360:203;-1:-1:-1;;;;;3524:32:70;;;;3506:51;;3494:2;3479:18;;3360:203::o;3568:127::-;3629:10;3624:3;3620:20;3617:1;3610:31;3660:4;3657:1;3650:15;3684:4;3681:1;3674:15;3700:253;3772:2;3766:9;3814:4;3802:17;;-1:-1:-1;;;;;3834:34:70;;3870:22;;;3831:62;3828:88;;;3896:18;;:::i;:::-;3932:2;3925:22;3700:253;:::o;3958:::-;4030:2;4024:9;4072:4;4060:17;;-1:-1:-1;;;;;4092:34:70;;4128:22;;;4089:62;4086:88;;;4154:18;;:::i;4216:255::-;4288:2;4282:9;4330:6;4318:19;;-1:-1:-1;;;;;4352:34:70;;4388:22;;;4349:62;4346:88;;;4414:18;;:::i;4476:257::-;4548:4;4542:11;;;4580:17;;-1:-1:-1;;;;;4612:34:70;;4648:22;;;4609:62;4606:88;;;4674:18;;:::i;4738:253::-;4810:2;4804:9;4852:4;4840:17;;-1:-1:-1;;;;;4872:34:70;;4908:22;;;4869:62;4866:88;;;4934:18;;:::i;4996:275::-;5067:2;5061:9;5132:2;5113:13;;-1:-1:-1;;5109:27:70;5097:40;;-1:-1:-1;;;;;5152:34:70;;5188:22;;;5149:62;5146:88;;;5214:18;;:::i;:::-;5250:2;5243:22;4996:275;;-1:-1:-1;4996:275:70:o;5276:144::-;-1:-1:-1;;;;;5364:31:70;;5354:42;;5344:70;;5410:1;5407;5400:12;5425:727;5488:5;5536:4;5524:9;5519:3;5515:19;5511:30;5508:50;;;5554:1;5551;5544:12;5508:50;5576:22;;:::i;:::-;5567:31;;5635:9;5622:23;5654:46;5692:7;5654:46;:::i;:::-;5709:22;;5783:2;5768:18;;5755:32;5796:46;5755:32;5796:46;:::i;:::-;5874:7;5869:2;5862:5;5858:14;5851:31;;5942:2;5931:9;5927:18;5914:32;5909:2;5902:5;5898:14;5891:56;6007:2;5996:9;5992:18;5979:32;5974:2;5967:5;5963:14;5956:56;6073:3;6062:9;6058:19;6045:33;6039:3;6032:5;6028:15;6021:58;6140:3;6129:9;6125:19;6112:33;6106:3;6099:5;6095:15;6088:58;5425:727;;;;:::o;6157:413::-;6212:5;6260:4;6248:9;6243:3;6239:19;6235:30;6232:50;;;6278:1;6275;6268:12;6232:50;6300:22;;:::i;:::-;6291:31;;6358:9;6345:23;6338:5;6331:38;6429:2;6418:9;6414:18;6401:32;6396:2;6389:5;6385:14;6378:56;6494:2;6483:9;6479:18;6466:32;6461:2;6454:5;6450:14;6443:56;6559:2;6548:9;6544:18;6531:32;6526:2;6519:5;6515:14;6508:56;6157:413;;;;:::o;6575:366::-;6705:6;6713;6766:3;6754:9;6745:7;6741:23;6737:33;6734:53;;;6783:1;6780;6773:12;6734:53;6806:54;6852:7;6841:9;6806:54;:::i;:::-;6796:64;;6879:56;6927:7;6921:3;6910:9;6906:19;6879:56;:::i;:::-;6869:66;;6575:366;;;;;:::o;6946:183::-;7006:4;-1:-1:-1;;;;;7028:30:70;;7025:56;;;7061:18;;:::i;:::-;-1:-1:-1;7106:1:70;7102:14;7118:4;7098:25;;6946:183::o;7134:750::-;7188:5;7241:3;7234:4;7226:6;7222:17;7218:27;7208:55;;7259:1;7256;7249:12;7208:55;7295:6;7282:20;7321:4;7345:60;7361:43;7401:2;7361:43;:::i;:::-;7345:60;:::i;:::-;7439:15;;;7525:1;7521:10;;;;7509:23;;7505:32;;;7470:12;;;;7549:15;;;7546:35;;;7577:1;7574;7567:12;7546:35;7613:2;7605:6;7601:15;7625:230;7641:6;7636:3;7633:15;7625:230;;;7721:3;7708:17;7738:44;7776:5;7738:44;:::i;:::-;7795:18;;7833:12;;;;7658;;7625:230;;;-1:-1:-1;7873:5:70;7134:750;-1:-1:-1;;;;;;7134:750:70:o;7889:186::-;7937:4;-1:-1:-1;;;;;7959:30:70;;7956:56;;;7992:18;;:::i;:::-;-1:-1:-1;8058:2:70;8037:15;-1:-1:-1;;8033:29:70;8064:4;8029:40;;7889:186::o;8080:336::-;8144:5;8173:52;8189:35;8217:6;8189:35;:::i;8173:52::-;8164:61;;8248:6;8241:5;8234:21;8288:3;8279:6;8274:3;8270:16;8267:25;8264:45;;;8305:1;8302;8295:12;8264:45;8354:6;8349:3;8342:4;8335:5;8331:16;8318:43;8408:1;8401:4;8392:6;8385:5;8381:18;8377:29;8370:40;8080:336;;;;;:::o;8421:220::-;8463:5;8516:3;8509:4;8501:6;8497:17;8493:27;8483:55;;8534:1;8531;8524:12;8483:55;8556:79;8631:3;8622:6;8609:20;8602:4;8594:6;8590:17;8556:79;:::i;8646:715::-;8757:6;8765;8773;8826:2;8814:9;8805:7;8801:23;8797:32;8794:52;;;8842:1;8839;8832:12;8794:52;8869:23;;-1:-1:-1;;;;;8941:14:70;;;8938:34;;;8968:1;8965;8958:12;8938:34;8991:61;9044:7;9035:6;9024:9;9020:22;8991:61;:::i;:::-;8981:71;;9105:2;9094:9;9090:18;9077:32;9061:48;;9134:2;9124:8;9121:16;9118:36;;;9150:1;9147;9140:12;9118:36;;9173:51;9216:7;9205:8;9194:9;9190:24;9173:51;:::i;:::-;9163:61;;;9274:2;9263:9;9259:18;9246:32;9287:44;9325:5;9287:44;:::i;:::-;9350:5;9340:15;;;8646:715;;;;;:::o;10003:568::-;10080:6;10088;10096;10149:2;10137:9;10128:7;10124:23;10120:32;10117:52;;;10165:1;10162;10155:12;10117:52;10204:9;10191:23;10223:44;10261:5;10223:44;:::i;:::-;10286:5;-1:-1:-1;10343:2:70;10328:18;;10315:32;10356:46;10315:32;10356:46;:::i;:::-;10421:7;-1:-1:-1;10480:2:70;10465:18;;10452:32;10493:46;10452:32;10493:46;:::i;10972:468::-;11049:6;11057;11110:2;11098:9;11089:7;11085:23;11081:32;11078:52;;;11126:1;11123;11116:12;11078:52;11153:23;;-1:-1:-1;;;;;11188:30:70;;11185:50;;;11231:1;11228;11221:12;11185:50;11254:49;11295:7;11286:6;11275:9;11271:22;11254:49;:::i;:::-;11244:59;;;11353:2;11342:9;11338:18;11325:32;11366:44;11404:5;11366:44;:::i;:::-;11429:5;11419:15;;;10972:468;;;;;:::o;11445:142::-;11528:1;11521:5;11518:12;11508:46;;11534:18;;:::i;:::-;11563;;11445:142::o;11592:213::-;11741:2;11726:18;;11753:46;11730:9;11781:6;11753:46;:::i;11810:328::-;11878:6;11886;11939:2;11927:9;11918:7;11914:23;11910:32;11907:52;;;11955:1;11952;11945:12;11907:52;11994:9;11981:23;12013:44;12051:5;12013:44;:::i;:::-;12076:5;12128:2;12113:18;;;;12100:32;;-1:-1:-1;;;11810:328:70:o;12143:248::-;12211:6;12219;12272:2;12260:9;12251:7;12247:23;12243:32;12240:52;;;12288:1;12285;12278:12;12240:52;-1:-1:-1;;12311:23:70;;;12381:2;12366:18;;;12353:32;;-1:-1:-1;12143:248:70:o;12396:316::-;12473:6;12481;12489;12542:2;12530:9;12521:7;12517:23;12513:32;12510:52;;;12558:1;12555;12548:12;12510:52;-1:-1:-1;;12581:23:70;;;12651:2;12636:18;;12623:32;;-1:-1:-1;12702:2:70;12687:18;;;12674:32;;12396:316;-1:-1:-1;12396:316:70:o;12717:143::-;12801:1;12794:5;12791:12;12781:46;;12807:18;;:::i;12865:215::-;13015:2;13000:18;;13027:47;13004:9;13056:6;13027:47;:::i;13085:260::-;13144:6;13197:2;13185:9;13176:7;13172:23;13168:32;13165:52;;;13213:1;13210;13203:12;13165:52;13252:9;13239:23;13271:44;13309:5;13271:44;:::i;14149:468::-;14226:6;14234;14287:2;14275:9;14266:7;14262:23;14258:32;14255:52;;;14303:1;14300;14293:12;14255:52;14342:9;14329:23;14361:44;14399:5;14361:44;:::i;:::-;14424:5;-1:-1:-1;14480:2:70;14465:18;;14452:32;-1:-1:-1;;;;;14496:30:70;;14493:50;;;14539:1;14536;14529:12;14493:50;14562:49;14603:7;14594:6;14583:9;14579:22;14562:49;:::i;:::-;14552:59;;;14149:468;;;;;:::o;14861:752::-;14948:6;14956;14964;15017:2;15005:9;14996:7;14992:23;14988:32;14985:52;;;15033:1;15030;15023:12;14985:52;15072:9;15059:23;15091:44;15129:5;15091:44;:::i;:::-;15154:5;-1:-1:-1;15210:2:70;15195:18;;15182:32;-1:-1:-1;;;;;15226:30:70;;15223:50;;;15269:1;15266;15259:12;15223:50;15292:22;;15345:4;15337:13;;15333:27;-1:-1:-1;15323:55:70;;15374:1;15371;15364:12;15323:55;15397:73;15462:7;15457:2;15444:16;15439:2;15435;15431:11;15397:73;:::i;15618:348::-;15702:6;15755:2;15743:9;15734:7;15730:23;15726:32;15723:52;;;15771:1;15768;15761:12;15723:52;15798:23;;-1:-1:-1;;;;;15833:30:70;;15830:50;;;15876:1;15873;15866:12;15830:50;15899:61;15952:7;15943:6;15932:9;15928:22;15899:61;:::i;15971:851::-;16169:6;16177;16185;16193;16246:3;16234:9;16225:7;16221:23;16217:33;16214:53;;;16263:1;16260;16253:12;16214:53;16286:54;16332:7;16321:9;16286:54;:::i;:::-;16276:64;;16359:56;16407:7;16401:3;16390:9;16386:19;16359:56;:::i;:::-;16349:66;-1:-1:-1;16466:3:70;16451:19;;16438:33;-1:-1:-1;;;;;16520:14:70;;;16517:34;;;16547:1;16544;16537:12;16517:34;16570:61;16623:7;16614:6;16603:9;16599:22;16570:61;:::i;:::-;16560:71;;16684:3;16673:9;16669:19;16656:33;16640:49;;16714:2;16704:8;16701:16;16698:36;;;16730:1;16727;16720:12;16698:36;;16753:63;16808:7;16797:8;16786:9;16782:24;16753:63;:::i;:::-;16743:73;;;15971:851;;;;;;;:::o;17032:435::-;17171:6;17179;17187;17240:3;17228:9;17219:7;17215:23;17211:33;17208:53;;;17257:1;17254;17247:12;17208:53;17280:54;17326:7;17315:9;17280:54;:::i;:::-;17270:64;;17353:56;17401:7;17395:3;17384:9;17380:19;17353:56;:::i;:::-;17343:66;;17456:3;17445:9;17441:19;17428:33;17418:43;;17032:435;;;;;:::o;17472:1357::-;17599:6;17607;17660:2;17648:9;17639:7;17635:23;17631:32;17628:52;;;17676:1;17673;17666:12;17628:52;17703:23;;-1:-1:-1;;;;;17775:14:70;;;17772:34;;;17802:1;17799;17792:12;17772:34;17825:61;17878:7;17869:6;17858:9;17854:22;17825:61;:::i;:::-;17815:71;;17905:2;17895:12;;17960:2;17949:9;17945:18;17932:32;17989:2;17979:8;17976:16;17973:36;;;18005:1;18002;17995:12;17973:36;18028:24;;18083:4;18075:13;;18071:27;-1:-1:-1;18061:55:70;;18112:1;18109;18102:12;18061:55;18148:2;18135:16;18171:60;18187:43;18227:2;18187:43;:::i;18171:60::-;18265:15;;;18347:1;18343:10;;;;18335:19;;18331:28;;;18296:12;;;;18371:19;;;18368:39;;;18403:1;18400;18393:12;18368:39;18435:2;18431;18427:11;18447:352;18463:6;18458:3;18455:15;18447:352;;;18549:3;18536:17;18585:2;18572:11;18569:19;18566:109;;;18629:1;18658:2;18654;18647:14;18566:109;18700:56;18748:7;18743:2;18729:11;18725:2;18721:20;18717:29;18700:56;:::i;:::-;18688:69;;-1:-1:-1;18777:12:70;;;;18480;;18447:352;;;18451:3;18818:5;18808:15;;;;;;;;17472:1357;;;;;:::o;18834:824::-;19065:2;19117:21;;;19187:13;;19090:18;;;19209:22;;;19036:4;;19065:2;19250;;19268:18;;;;19309:15;;;19036:4;19352:280;19366:6;19363:1;19360:13;19352:280;;;19425:13;;19467:9;;-1:-1:-1;;;;;19463:35:70;19451:48;;19539:11;;19533:18;19519:12;;;19512:40;19572:12;;;;19607:15;;;;19495:1;19381:9;19352:280;;;-1:-1:-1;19649:3:70;;18834:824;-1:-1:-1;;;;;;;18834:824:70:o;19663:348::-;19715:8;19725:6;19779:3;19772:4;19764:6;19760:17;19756:27;19746:55;;19797:1;19794;19787:12;19746:55;-1:-1:-1;19820:20:70;;-1:-1:-1;;;;;19852:30:70;;19849:50;;;19895:1;19892;19885:12;19849:50;19932:4;19924:6;19920:17;19908:29;;19984:3;19977:4;19968:6;19960;19956:19;19952:30;19949:39;19946:59;;;20001:1;19998;19991:12;20016:788;20116:6;20124;20132;20140;20148;20201:2;20189:9;20180:7;20176:23;20172:32;20169:52;;;20217:1;20214;20207:12;20169:52;20240:23;;;-1:-1:-1;20314:2:70;20299:18;;20286:32;-1:-1:-1;;;;;20367:14:70;;;20364:34;;;20394:1;20391;20384:12;20364:34;20433:59;20484:7;20475:6;20464:9;20460:22;20433:59;:::i;:::-;20511:8;;-1:-1:-1;20407:85:70;-1:-1:-1;20599:2:70;20584:18;;20571:32;;-1:-1:-1;20615:16:70;;;20612:36;;;20644:1;20641;20634:12;20612:36;;20683:61;20736:7;20725:8;20714:9;20710:24;20683:61;:::i;:::-;20016:788;;;;-1:-1:-1;20016:788:70;;-1:-1:-1;20763:8:70;;20657:87;20016:788;-1:-1:-1;;;20016:788:70:o;20809:118::-;20895:5;20888:13;20881:21;20874:5;20871:32;20861:60;;20917:1;20914;20907:12;20932:241;20988:6;21041:2;21029:9;21020:7;21016:23;21012:32;21009:52;;;21057:1;21054;21047:12;21009:52;21096:9;21083:23;21115:28;21137:5;21115:28;:::i;21408:1033::-;-1:-1:-1;;;;;21910:15:70;;;21892:34;;21962:15;;;21957:2;21942:18;;21935:43;22014:15;;22009:2;21994:18;;21987:43;22061:2;22046:18;;22039:34;;;22104:3;22089:19;;22082:35;;;21841:3;21826:19;;22126:44;22163:6;22126:44;:::i;:::-;22207:6;22201:3;22190:9;22186:19;22179:35;22251:6;22245:3;22234:9;22230:19;22223:35;22295:6;22289:3;22278:9;22274:19;22267:35;22339:6;22333:3;22322:9;22318:19;22311:35;22383:6;22377:3;22366:9;22362:19;22355:35;22427:7;22421:3;22410:9;22406:19;22399:36;21408:1033;;;;;;;;;;;;;;:::o;22446:328::-;22514:6;22522;22575:2;22563:9;22554:7;22550:23;22546:32;22543:52;;;22591:1;22588;22581:12;22543:52;22627:9;22614:23;22604:33;;22687:2;22676:9;22672:18;22659:32;22700:44;22738:5;22700:44;:::i;22779:238::-;22921:2;22906:18;;22933:44;22970:6;22933:44;:::i;:::-;22986:25;;;22779:238;:::o;23022:388::-;23099:6;23107;23160:2;23148:9;23139:7;23135:23;23131:32;23128:52;;;23176:1;23173;23166:12;23128:52;23199:23;;;-1:-1:-1;23273:2:70;23258:18;;23245:32;-1:-1:-1;;;;;23289:30:70;;23286:50;;;23332:1;23329;23322:12;23415:220;23564:2;23553:9;23546:21;23527:4;23584:45;23625:2;23614:9;23610:18;23602:6;23584:45;:::i;23640:380::-;23719:1;23715:12;;;;23762;;;23783:61;;23837:4;23829:6;23825:17;23815:27;;23783:61;23890:2;23882:6;23879:14;23859:18;23856:38;23853:161;;23936:10;23931:3;23927:20;23924:1;23917:31;23971:4;23968:1;23961:15;23999:4;23996:1;23989:15;24025:410;24227:2;24209:21;;;24266:2;24246:18;;;24239:30;24305:34;24300:2;24285:18;;24278:62;-1:-1:-1;;;24371:2:70;24356:18;;24349:44;24425:3;24410:19;;24025:410::o;24639:127::-;24700:10;24695:3;24691:20;24688:1;24681:31;24731:4;24728:1;24721:15;24755:4;24752:1;24745:15;24771:128;24838:9;;;24859:11;;;24856:37;;;24873:18;;:::i;24904:345::-;-1:-1:-1;;;;;25124:32:70;;;;25106:51;;25188:2;25173:18;;25166:34;;;;25231:2;25216:18;;25209:34;25094:2;25079:18;;24904:345::o;25254:125::-;25319:9;;;25340:10;;;25337:36;;;25353:18;;:::i;25384:345::-;25586:25;;;-1:-1:-1;;;;;25647:32:70;;;;25642:2;25627:18;;25620:60;25711:2;25696:18;;25689:34;25574:2;25559:18;;25384:345::o;25734:279::-;25819:6;25872:2;25860:9;25851:7;25847:23;25843:32;25840:52;;;25888:1;25885;25878:12;25840:52;25920:9;25914:16;25939:44;25977:5;25939:44;:::i;26018:447::-;26249:25;;;-1:-1:-1;;;;;26348:15:70;;;26343:2;26328:18;;26321:43;26400:15;;26395:2;26380:18;;26373:43;26447:2;26432:18;;26425:34;26236:3;26221:19;;26018:447::o;26470:127::-;26531:10;26526:3;26522:20;26519:1;26512:31;26562:4;26559:1;26552:15;26586:4;26583:1;26576:15;26602:217;26642:1;26668;26658:132;;26712:10;26707:3;26703:20;26700:1;26693:31;26747:4;26744:1;26737:15;26775:4;26772:1;26765:15;26658:132;-1:-1:-1;26804:9:70;;26602:217::o;26824:193::-;26862:3;-1:-1:-1;;;;;26895:30:70;;;26934:41;;26955:18;;:::i;:::-;-1:-1:-1;;26991:20:70;;26824:193;-1:-1:-1;;26824:193:70:o;27022:168::-;27095:9;;;27126;;27143:15;;;27137:22;;27123:37;27113:71;;27164:18;;:::i;27195:408::-;27397:2;27379:21;;;27436:2;27416:18;;;27409:30;-1:-1:-1;;;;;;;;;;;27470:2:70;27455:18;;27448:62;-1:-1:-1;;;27541:2:70;27526:18;;27519:42;27593:3;27578:19;;27195:408::o;27608:::-;27810:2;27792:21;;;27849:2;27829:18;;;27822:30;-1:-1:-1;;;;;;;;;;;27883:2:70;27868:18;;27861:62;-1:-1:-1;;;27954:2:70;27939:18;;27932:42;28006:3;27991:19;;27608:408::o;28446:407::-;28648:2;28630:21;;;28687:2;28667:18;;;28660:30;28726:34;28721:2;28706:18;;28699:62;-1:-1:-1;;;28792:2:70;28777:18;;28770:41;28843:3;28828:19;;28446:407::o;28858:304::-;-1:-1:-1;;;;;29088:15:70;;;29070:34;;29140:15;;29135:2;29120:18;;29113:43;29020:2;29005:18;;28858:304::o;29167:245::-;29234:6;29287:2;29275:9;29266:7;29262:23;29258:32;29255:52;;;29303:1;29300;29293:12;29255:52;29335:9;29329:16;29354:28;29376:5;29354:28;:::i;29417:151::-;29496:13;;29518:44;29496:13;29518:44;:::i;29842:274::-;30016:25;;;-1:-1:-1;;;;;30077:32:70;30072:2;30057:18;;30050:60;30004:2;29989:18;;29842:274::o;30121:266::-;30209:6;30204:3;30197:19;30261:6;30254:5;30247:4;30242:3;30238:14;30225:43;-1:-1:-1;30313:1:70;30288:16;;;30306:4;30284:27;;;30277:38;;;;30369:2;30348:15;;;-1:-1:-1;;30344:29:70;30335:39;;;30331:50;;30121:266::o;30392:315::-;30577:6;30566:9;30559:25;30620:2;30615;30604:9;30600:18;30593:30;30540:4;30640:61;30697:2;30686:9;30682:18;30674:6;30666;30640:61;:::i;:::-;30632:69;30392:315;-1:-1:-1;;;;;30392:315:70:o;30712:184::-;30782:6;30835:2;30823:9;30814:7;30810:23;30806:32;30803:52;;;30851:1;30848;30841:12;30803:52;-1:-1:-1;30874:16:70;;30712:184;-1:-1:-1;30712:184:70:o;30901:209::-;30939:3;-1:-1:-1;;;;;31009:14:70;;;-1:-1:-1;;;;;;31035:15:70;;31032:41;;31053:18;;:::i;:::-;31102:1;31089:15;;30901:209;-1:-1:-1;;;30901:209:70:o;31115:682::-;-1:-1:-1;;;;;31473:15:70;;;31455:34;;31520:2;31505:18;;31498:34;;;31563:2;31548:18;;31541:34;;;31611:15;;31606:2;31591:18;;31584:43;31664:3;31658;31643:19;;31636:32;;;31398:4;;31685:62;;31727:19;;31719:6;31711;31685:62;:::i;:::-;31677:70;;31784:6;31778:3;31767:9;31763:19;31756:35;31115:682;;;;;;;;;;:::o;31802:135::-;31841:3;31862:17;;;31859:43;;31882:18;;:::i;:::-;-1:-1:-1;31929:1:70;31918:13;;31802:135::o;31942:396::-;32008:5;32056:4;32044:9;32039:3;32035:19;32031:30;32028:50;;;32074:1;32071;32064:12;32028:50;32096:22;;:::i;:::-;32087:31;;32147:9;32141:16;32134:5;32127:31;32211:2;32200:9;32196:18;32190:25;32185:2;32178:5;32174:14;32167:49;32269:2;32258:9;32254:18;32248:25;32243:2;32236:5;32232:14;32225:49;32327:2;32316:9;32312:18;32306:25;32301:2;32294:5;32290:14;32283:49;31942:396;;;;:::o;32343:157::-;32432:13;;32474:1;32464:12;;32454:40;;32490:1;32487;32480:12;32505:156;32593:13;;32635:1;32625:12;;32615:40;;32651:1;32648;32641:12;32666:420;32741:5;32789:4;32777:9;32772:3;32768:19;32764:30;32761:50;;;32807:1;32804;32797:12;32761:50;32840:2;32834:9;32882:4;32870:17;;-1:-1:-1;;;;;32902:34:70;;32938:22;;;32899:62;32896:88;;;32964:18;;:::i;:::-;33000:2;32993:22;33063:16;;33048:32;;-1:-1:-1;33033:6:70;32666:420;-1:-1:-1;32666:420:70:o;33091:696::-;33165:5;33213:4;33201:9;33196:3;33192:19;33188:30;33185:50;;;33231:1;33228;33221:12;33185:50;33253:22;;:::i;:::-;33244:31;;33305:9;33299:16;33324:46;33362:7;33324:46;:::i;:::-;33379:22;;33446:2;33431:18;;33425:25;33459:46;33425:25;33459:46;:::i;:::-;33537:7;33532:2;33525:5;33521:14;33514:31;;33598:2;33587:9;33583:18;33577:25;33572:2;33565:5;33561:14;33554:49;33656:2;33645:9;33641:18;33635:25;33630:2;33623:5;33619:14;33612:49;33715:3;33704:9;33700:19;33694:26;33688:3;33681:5;33677:15;33670:51;33775:3;33764:9;33760:19;33754:26;33748:3;33741:5;33737:15;33730:51;33091:696;;;;:::o;33792:747::-;33857:5;33910:3;33903:4;33895:6;33891:17;33887:27;33877:55;;33928:1;33925;33918:12;33877:55;33957:6;33951:13;33983:4;34007:60;34023:43;34063:2;34023:43;:::i;34007:60::-;34101:15;;;34187:1;34183:10;;;;34171:23;;34167:32;;;34132:12;;;;34211:15;;;34208:35;;;34239:1;34236;34229:12;34208:35;34275:2;34267:6;34263:15;34287:223;34303:6;34298:3;34295:15;34287:223;;;34376:3;34370:10;34393:44;34431:5;34393:44;:::i;:::-;34450:18;;34488:12;;;;34320;;34287:223;;34544:1337;34663:6;34716:2;34704:9;34695:7;34691:23;34687:32;34684:52;;;34732:1;34729;34722:12;34684:52;34759:16;;-1:-1:-1;;;;;34824:14:70;;;34821:34;;;34851:1;34848;34841:12;34821:34;34874:22;;;;34930:6;34912:16;;;34908:29;34905:49;;;34950:1;34947;34940:12;34905:49;34976:22;;:::i;:::-;35021:50;35063:7;35059:2;35021:50;:::i;:::-;35014:5;35007:65;35104:53;35152:3;35148:2;35144:12;35104:53;:::i;:::-;35099:2;35092:5;35088:14;35081:77;35192:52;35239:3;35235:2;35231:12;35192:52;:::i;:::-;35185:4;35178:5;35174:16;35167:78;35279:69;35340:7;35334:3;35330:2;35326:12;35279:69;:::i;:::-;35272:4;35265:5;35261:16;35254:95;35382:68;35442:7;35436:3;35432:2;35428:12;35382:68;:::i;:::-;35376:3;35369:5;35365:15;35358:93;35484:43;35522:3;35518:2;35514:12;35484:43;:::i;:::-;35478:3;35471:5;35467:15;35460:68;35561:43;35599:3;35595:2;35591:12;35561:43;:::i;:::-;35555:3;35548:5;35544:15;35537:68;35652:3;35648:2;35644:12;35638:19;35632:3;35625:5;35621:15;35614:44;35697:3;35693:2;35689:12;35683:19;35727:2;35717:8;35714:16;35711:36;;;35743:1;35740;35733:12;35711:36;35783:67;35842:7;35831:8;35827:2;35823:17;35783:67;:::i;:::-;35774:6;35763:18;;35756:95;-1:-1:-1;35767:5:70;34544:1337;-1:-1:-1;;;;;34544:1337:70:o;35886:261::-;35966:5;35960:12;35955:3;35948:25;36022:4;36015:5;36011:16;36005:23;35998:4;35993:3;35989:14;35982:47;36078:4;36071:5;36067:16;36061:23;36054:4;36049:3;36045:14;36038:47;36134:4;36127:5;36123:16;36117:23;36110:4;36105:3;36101:14;36094:47;;;35886:261::o;36689:461::-;36742:3;36780:5;36774:12;36807:6;36802:3;36795:19;36833:4;36862:2;36857:3;36853:12;36846:19;;36899:2;36892:5;36888:14;36920:1;36930:195;36944:6;36941:1;36938:13;36930:195;;;37009:13;;-1:-1:-1;;;;;37005:39:70;36993:52;;37065:12;;;;37100:15;;;;37041:1;36959:9;36930:195;;;-1:-1:-1;37141:3:70;;36689:461;-1:-1:-1;;;;;36689:461:70:o;37155:1436::-;37410:6;37399:9;37392:25;37453:2;37448;37437:9;37433:18;37426:30;37465:61;37522:2;37511:9;37507:18;37498:6;37492:13;37465:61;:::i;:::-;37373:4;37573:2;37565:6;37561:15;37555:22;37586:63;37644:3;37633:9;37629:19;37615:12;37586:63;:::i;:::-;;37698:2;37690:6;37686:15;37680:22;37711:64;37770:3;37759:9;37755:19;37739:14;37711:64;:::i;:::-;;37824:4;37816:6;37812:17;37806:24;37849:3;37861:71;37928:2;37917:9;37913:18;37897:14;36227:12;36215:25;;36152:90;37861:71;37981:4;37969:17;;;37963:24;36371:12;;-1:-1:-1;;;;;36367:21:70;;;38062:3;38047:19;;36355:34;36442:4;36431:16;;36425:23;36421:32;36405:14;;;36398:56;36503:4;36492:16;;36486:23;36470:14;;;36463:47;36559:4;36548:16;;36542:23;36526:14;;;36519:47;36604:16;;;36598:23;36582:14;;;36575:47;36335:3;36660:16;;;36654:23;36638:14;;;36631:47;38104:17;;38098:24;;-1:-1:-1;38131:55:70;38181:3;38166:19;;38098:24;38131:55;:::i;:::-;38235:3;38227:6;38223:16;38217:23;38195:45;;38249:55;38299:3;38288:9;38284:19;38268:14;38249:55;:::i;:::-;38341:3;38333:6;38329:16;38323:23;38313:33;;38365:6;38407:2;38402;38391:9;38387:18;38380:30;38459:2;38451:6;38447:15;38441:22;38419:44;;38500:2;38494:3;38483:9;38479:19;38472:31;;;38520:65;38580:3;38569:9;38565:19;38549:14;38520:65;:::i;39003:684::-;39339:25;;;-1:-1:-1;;;;;39438:15:70;;;39433:2;39418:18;;39411:43;39490:15;;;;39485:2;39470:18;;39463:43;39537:2;39522:18;;39515:34;;;;39580:3;39565:19;;39558:35;39391:3;39609:19;;39602:35;;;;39668:3;39653:19;;39646:35;39326:3;39311:19;;39003:684::o;40270:252::-;40458:3;40443:19;;40471:45;40447:9;40498:6;40471:45;:::i;40527:726::-;40593:5;40641:4;40629:9;40624:3;40620:19;40616:30;40613:50;;;40659:1;40656;40649:12;40613:50;40681:22;;:::i;:::-;40726:16;;40712:31;;40787:2;40772:18;;40766:25;40672:31;;-1:-1:-1;;;;;;40803:30:70;;40800:50;;;40846:1;40843;40836:12;40800:50;40869:22;;40922:4;40914:13;;40910:23;-1:-1:-1;40900:51:70;;40947:1;40944;40937:12;40900:51;40976:2;40970:9;41001:48;41017:31;41045:2;41017:31;:::i;41001:48::-;41072:2;41065:5;41058:17;41112:3;41107:2;41102;41098;41094:11;41090:20;41087:29;41084:49;;;41129:1;41126;41119:12;41084:49;41142:67;41206:2;41201;41194:5;41190:14;41185:2;41181;41177:11;41142:67;:::i;:::-;41236:2;41225:14;;41218:29;-1:-1:-1;41229:5:70;;40527:726;-1:-1:-1;;;40527:726:70:o;41258:1052::-;41348:6;41401:2;41389:9;41380:7;41376:23;41372:32;41369:52;;;41417:1;41414;41407:12;41369:52;41444:16;;-1:-1:-1;;;;;41509:14:70;;;41506:34;;;41536:1;41533;41526:12;41506:34;41559:22;;;;41615:4;41597:16;;;41593:27;41590:47;;;41633:1;41630;41623:12;41590:47;41659:22;;:::i;:::-;41710:2;41704:9;41697:5;41690:24;41752:2;41748;41744:11;41738:18;41765:46;41803:7;41765:46;:::i;:::-;41838:2;41827:14;;41820:31;41889:2;41881:11;;41875:18;41902:46;41875:18;41902:46;:::i;:::-;41975:2;41964:14;;41957:31;42027:2;42019:11;;42013:18;42043:16;;;42040:36;;;42072:1;42069;42062:12;42040:36;42108:65;42165:7;42154:8;42150:2;42146:17;42108:65;:::i;:::-;42103:2;42096:5;42092:14;42085:89;;42221:3;42217:2;42213:12;42207:19;42201:3;42194:5;42190:15;42183:44;42274:3;42270:2;42266:12;42260:19;42254:3;42247:5;42243:15;42236:44;42299:5;42289:15;;;;;41258:1052;;;;:::o;42315:1012::-;42418:6;42471:2;42459:9;42450:7;42446:23;42442:32;42439:52;;;42487:1;42484;42477:12;42439:52;42514:16;;-1:-1:-1;;;;;42579:14:70;;;42576:34;;;42606:1;42603;42596:12;42576:34;42629:22;;;;42685:4;42667:16;;;42663:27;42660:47;;;42703:1;42700;42693:12;42660:47;42729:22;;:::i;:::-;42780:2;42774:9;42767:5;42760:24;42822:2;42818;42814:11;42808:18;42835:46;42873:7;42835:46;:::i;:::-;42908:2;42897:14;;42890:31;42967:2;42959:11;;;42953:18;42937:14;;;42930:42;43010:2;43002:11;;42996:18;43023:46;42996:18;43023:46;:::i;:::-;43096:2;43085:14;;43078:31;43148:3;43140:12;;43134:19;43165:16;;;43162:36;;;43194:1;43191;43184:12;43162:36;43231:65;43288:7;43277:8;43273:2;43269:17;43231:65;:::i;:::-;43225:3;43214:15;;43207:90;-1:-1:-1;43218:5:70;42315:1012;-1:-1:-1;;;;;42315:1012:70:o;43740:545::-;43842:2;43837:3;43834:11;43831:448;;;43878:1;43903:5;43899:2;43892:17;43948:4;43944:2;43934:19;44018:2;44006:10;44002:19;43999:1;43995:27;43989:4;43985:38;44054:4;44042:10;44039:20;44036:47;;;-1:-1:-1;44077:4:70;44036:47;44132:2;44127:3;44123:12;44120:1;44116:20;44110:4;44106:31;44096:41;;44187:82;44205:2;44198:5;44195:13;44187:82;;;44250:17;;;44231:1;44220:13;44187:82;;;44191:3;;;43740:545;;;:::o;44461:1352::-;44581:10;;-1:-1:-1;;;;;44603:30:70;;44600:56;;;44636:18;;:::i;:::-;44665:97;44755:6;44715:38;44747:4;44741:11;44715:38;:::i;:::-;44709:4;44665:97;:::i;:::-;44817:4;;44881:2;44870:14;;44898:1;44893:663;;;;45600:1;45617:6;45614:89;;;-1:-1:-1;45669:19:70;;;45663:26;45614:89;-1:-1:-1;;44418:1:70;44414:11;;;44410:24;44406:29;44396:40;44442:1;44438:11;;;44393:57;45716:81;;44863:944;;44893:663;43687:1;43680:14;;;43724:4;43711:18;;-1:-1:-1;;44929:20:70;;;45047:236;45061:7;45058:1;45055:14;45047:236;;;45150:19;;;45144:26;45129:42;;45242:27;;;;45210:1;45198:14;;;;45077:19;;45047:236;;;45051:3;45311:6;45302:7;45299:19;45296:201;;;45372:19;;;45366:26;-1:-1:-1;;45455:1:70;45451:14;;;45467:3;45447:24;45443:37;45439:42;45424:58;45409:74;;45296:201;-1:-1:-1;;;;;45543:1:70;45527:14;;;45523:22;45510:36;;-1:-1:-1;44461:1352:70:o;46356:273::-;46424:6;46477:2;46465:9;46456:7;46452:23;46448:32;46445:52;;;46493:1;46490;46483:12;46445:52;46525:9;46519:16;46575:4;46568:5;46564:16;46557:5;46554:27;46544:55;;46595:1;46592;46585:12;46634:422;46723:1;46766:5;46723:1;46780:270;46801:7;46791:8;46788:21;46780:270;;;46860:4;46856:1;46852:6;46848:17;46842:4;46839:27;46836:53;;;46869:18;;:::i;:::-;46919:7;46909:8;46905:22;46902:55;;;46939:16;;;;46902:55;47018:22;;;;46978:15;;;;46780:270;;;46784:3;46634:422;;;;;:::o;47061:806::-;47110:5;47140:8;47130:80;;-1:-1:-1;47181:1:70;47195:5;;47130:80;47229:4;47219:76;;-1:-1:-1;47266:1:70;47280:5;;47219:76;47311:4;47329:1;47324:59;;;;47397:1;47392:130;;;;47304:218;;47324:59;47354:1;47345:10;;47368:5;;;47392:130;47429:3;47419:8;47416:17;47413:43;;;47436:18;;:::i;:::-;-1:-1:-1;;47492:1:70;47478:16;;47507:5;;47304:218;;47606:2;47596:8;47593:16;47587:3;47581:4;47578:13;47574:36;47568:2;47558:8;47555:16;47550:2;47544:4;47541:12;47537:35;47534:77;47531:159;;;-1:-1:-1;47643:19:70;;;47675:5;;47531:159;47722:34;47747:8;47741:4;47722:34;:::i;:::-;47792:6;47788:1;47784:6;47780:19;47771:7;47768:32;47765:58;;;47803:18;;:::i;:::-;47841:20;;47061:806;-1:-1:-1;;;47061:806:70:o;47872:131::-;47932:5;47961:36;47988:8;47982:4;47961:36;:::i;49763:324::-;-1:-1:-1;;;49993:24:70;;50042:1;50033:11;;50026:27;;;;50078:2;50069:12;;49763:324::o;50371:127::-;50432:10;50427:3;50423:20;50420:1;50413:31;50463:4;50460:1;50453:15;50487:4;50484:1;50477:15;50503:332;50710:6;50699:9;50692:25;50753:2;50748;50737:9;50733:18;50726:30;50673:4;50773:56;50825:2;50814:9;50810:18;50802:6;50773:56;:::i;50840:127::-;50901:10;50896:3;50892:20;50889:1;50882:31;50932:4;50929:1;50922:15;50956:4;50953:1;50946:15;51542:1185;51671:6;51702:2;51745;51733:9;51724:7;51720:23;51716:32;51713:52;;;51761:1;51758;51751:12;51713:52;51788:16;;-1:-1:-1;;;;;51816:30:70;;51813:50;;;51859:1;51856;51849:12;51813:50;51882:22;;51935:4;51927:13;;51923:27;-1:-1:-1;51913:55:70;;51964:1;51961;51954:12;51913:55;51993:2;51987:9;52016:60;52032:43;52072:2;52032:43;:::i;52016:60::-;52110:15;;;52192:1;52188:10;;;;52180:19;;52176:28;;;52141:12;;;;52216:19;;;52213:39;;;52248:1;52245;52238:12;52213:39;52272:11;;;;52292:405;52308:6;52303:3;52300:15;52292:405;;;52390:4;52384:3;52375:7;52371:17;52367:28;52364:118;;;52436:1;52465:2;52461;52454:14;52364:118;52508:22;;:::i;:::-;52557:10;;52543:25;;52610:12;;;52604:19;52588:14;;;52581:43;52637:18;;52334:4;52325:14;;;;52675:12;;;;52292:405;;52732:497;-1:-1:-1;;;;;53017:32:70;;;;52999:51;;53081:2;53066:18;;53059:34;;;;53124:2;53109:18;;53102:34;;;;53167:2;53152:18;;53145:34;53210:3;53195:19;;53188:35;52986:3;52971:19;;52732:497::o;54000:216::-;54064:9;;;54092:11;;;54039:3;54122:9;;54150:10;;54146:19;;54175:10;;54167:19;;54143:44;54140:70;;;54190:18;;:::i;54715:287::-;54844:3;54882:6;54876:13;54898:66;54957:6;54952:3;54945:4;54937:6;54933:17;54898:66;:::i;:::-;54980:16;;;;;54715:287;-1:-1:-1;;54715:287:70:o","linkReferences":{},"immutableReferences":{"16633":[{"start":6134,"length":32},{"start":6198,"length":32},{"start":6653,"length":32},{"start":6717,"length":32},{"start":6837,"length":32}]}},"methodIdentifiers":{"D()":"0f529ba2","DISPUTE_COOLDOWN_SEC()":"f5be3f7c","MAX_STAKED_PROPOSALS()":"406244d8","NATIVE()":"a0cf0aea","RULING_OPTIONS()":"626c47e8","VERSION()":"ffa1ad74","_activatePoints(address)":"db9b5d50","activatePoints()":"814516ad","addToAllowList(address[])":"7263cfe2","allocate(bytes,address)":"ef2920fc","arbitrableConfigs(uint256)":"41bb7605","calculateConviction(uint256,uint256,uint256)":"346db8cb","calculateProposalConviction(uint256)":"60b0645a","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","getMaxConviction(uint256)":"950559d7","getPayouts(address[],bytes[])":"b2b878d0","getPointSystem()":"c3292171","getPoolAmount()":"4ab4ba42","getPoolId()":"38fff2d0","getProposal(uint256)":"c7f758a8","getProposalVoterStake(uint256,address)":"e0dd2c38","getRecipientStatus(address)":"eb11af93","getStrategyId()":"42fda9c7","increasePoolAmount(uint256)":"f5b0dfb7","increasePower(address,uint256)":"782aadff","init(address,address,address)":"184b9559","init(address,string,address)":"60d5dedc","init2(address)":"f4fe2556","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","proxyOwner()":"025313a2","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","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256),uint256)":"ad56fd5d","setSybilScorer(address,uint256)":"3864d366","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\":\"AShouldBeUnderOrEqTwo_128\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AShouldBeUnderTwo_128\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BShouldBeLessTwo_128\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ConvictionUnderMinimumThreshold\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DefaultRulingNotSet\",\"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\":[{\"internalType\":\"uint256\",\"name\":\"pointsSupport\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pointsBalance\",\"type\":\"uint256\"}],\"name\":\"NotEnoughPointsToSupport\",\"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\":[],\"name\":\"PoolIsEmpty\",\"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\":\"UNAUTHORIZED\",\"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\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV2\",\"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\":\"sybilScorer\",\"type\":\"address\"}],\"name\":\"SybilScorerUpdated\",\"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\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"_activatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"calculateProposalConviction\",\"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\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"getMaxConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"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\"},{\"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\":\"getStrategyId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"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\":\"newSafeArbitrator\",\"type\":\"address\"}],\"name\":\"init2\",\"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\":[],\"name\":\"proxyOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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\":\"contract RegistryCommunityV0_0\",\"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\":[{\"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\":\"uint256\",\"name\":\"sybilScoreThreshold\",\"type\":\"uint256\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sybilScorer\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"}],\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda\",\"dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"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":"AShouldBeUnderOrEqTwo_128"},{"inputs":[],"type":"error","name":"AShouldBeUnderTwo_128"},{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[],"type":"error","name":"BShouldBeLessTwo_128"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"ConvictionUnderMinimumThreshold"},{"inputs":[],"type":"error","name":"DefaultRulingNotSet"},{"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":[{"internalType":"uint256","name":"pointsSupport","type":"uint256"},{"internalType":"uint256","name":"pointsBalance","type":"uint256"}],"type":"error","name":"NotEnoughPointsToSupport"},{"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":[],"type":"error","name":"PoolIsEmpty"},{"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":"UNAUTHORIZED"},{"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":"uint256","name":"sybilScorerThreshold","type":"uint256"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}],"indexed":false}],"type":"event","name":"InitializedCV2","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":"sybilScorer","type":"address","indexed":false}],"type":"event","name":"SybilScorerUpdated","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":[{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"_activatePoints"},{"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":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateProposalConviction","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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMaxConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"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"},{"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":"getStrategyId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"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":"newSafeArbitrator","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init2"},{"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":[],"stateMutability":"view","type":"function","name":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"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":"contract RegistryCommunityV0_0","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":"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":"uint256","name":"sybilScoreThreshold","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"address","name":"_sybilScorer","type":"address"},{"internalType":"uint256","name":"threshold","type":"uint256"}],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f","urls":["bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda","dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"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":14129,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":14132,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":14756,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":13921,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":14041,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":25475,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"allo","offset":0,"slot":"101","type":"t_contract(IAllo)314"},{"astId":25477,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"strategyId","offset":0,"slot":"102","type":"t_bytes32"},{"astId":25479,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolActive","offset":0,"slot":"103","type":"t_bool"},{"astId":25481,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolId","offset":0,"slot":"104","type":"t_uint256"},{"astId":25483,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolAmount","offset":0,"slot":"105","type":"t_uint256"},{"astId":26506,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":26508,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"surpressStateMutabilityWarning","offset":0,"slot":"107","type":"t_uint256"},{"astId":26510,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"cloneNonce","offset":0,"slot":"108","type":"t_uint256"},{"astId":26512,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeCount","offset":0,"slot":"109","type":"t_uint64"},{"astId":26514,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalCounter","offset":0,"slot":"110","type":"t_uint256"},{"astId":26516,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"currentArbitrableConfigVersion","offset":0,"slot":"111","type":"t_uint256"},{"astId":26518,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalStaked","offset":0,"slot":"112","type":"t_uint256"},{"astId":26520,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalPointsActivated","offset":0,"slot":"113","type":"t_uint256"},{"astId":26523,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"cvParams","offset":0,"slot":"114","type":"t_struct(CVParams)26235_storage"},{"astId":26526,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalType","offset":0,"slot":"118","type":"t_enum(ProposalType)26138"},{"astId":26529,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointSystem","offset":1,"slot":"118","type":"t_enum(PointSystem)26143"},{"astId":26532,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointConfig","offset":0,"slot":"119","type":"t_struct(PointSystemConfig)26212_storage"},{"astId":26535,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"registryCommunity","offset":0,"slot":"120","type":"t_contract(RegistryCommunityV0_0)33072"},{"astId":26538,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"collateralVault","offset":0,"slot":"121","type":"t_contract(ICollateralVault)33287"},{"astId":26541,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"sybilScorer","offset":0,"slot":"122","type":"t_contract(ISybilScorer)30228"},{"astId":26546,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposals","offset":0,"slot":"123","type":"t_mapping(t_uint256,t_struct(Proposal)26204_storage)"},{"astId":26550,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalVoterStakePct","offset":0,"slot":"124","type":"t_mapping(t_address,t_uint256)"},{"astId":26555,"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":26559,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeIdToProposalId","offset":0,"slot":"126","type":"t_mapping(t_uint256,t_uint256)"},{"astId":26564,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrableConfigs","offset":0,"slot":"127","type":"t_mapping(t_uint256,t_struct(ArbitrableConfig)26226_storage)"},{"astId":30150,"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)314":{"encoding":"inplace","label":"contract IAllo","numberOfBytes":"20"},"t_contract(IArbitrator)33254":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ICollateralVault)33287":{"encoding":"inplace","label":"contract ICollateralVault","numberOfBytes":"20"},"t_contract(ISybilScorer)30228":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_contract(RegistryCommunityV0_0)33072":{"encoding":"inplace","label":"contract RegistryCommunityV0_0","numberOfBytes":"20"},"t_enum(PointSystem)26143":{"encoding":"inplace","label":"enum PointSystem","numberOfBytes":"1"},"t_enum(ProposalStatus)26163":{"encoding":"inplace","label":"enum ProposalStatus","numberOfBytes":"1"},"t_enum(ProposalType)26138":{"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)26226_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct ArbitrableConfig)","numberOfBytes":"32","value":"t_struct(ArbitrableConfig)26226_storage"},"t_mapping(t_uint256,t_struct(Proposal)26204_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct Proposal)","numberOfBytes":"32","value":"t_struct(Proposal)26204_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)26226_storage":{"encoding":"inplace","label":"struct ArbitrableConfig","numberOfBytes":"192","members":[{"astId":26215,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrator","offset":0,"slot":"0","type":"t_contract(IArbitrator)33254"},{"astId":26217,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"tribunalSafe","offset":0,"slot":"1","type":"t_address"},{"astId":26219,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"submitterCollateralAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":26221,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"challengerCollateralAmount","offset":0,"slot":"3","type":"t_uint256"},{"astId":26223,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"defaultRuling","offset":0,"slot":"4","type":"t_uint256"},{"astId":26225,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"defaultRulingTimeout","offset":0,"slot":"5","type":"t_uint256"}]},"t_struct(CVParams)26235_storage":{"encoding":"inplace","label":"struct CVParams","numberOfBytes":"128","members":[{"astId":26228,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"maxRatio","offset":0,"slot":"0","type":"t_uint256"},{"astId":26230,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"weight","offset":0,"slot":"1","type":"t_uint256"},{"astId":26232,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"decay","offset":0,"slot":"2","type":"t_uint256"},{"astId":26234,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"minThresholdPoints","offset":0,"slot":"3","type":"t_uint256"}]},"t_struct(Metadata)802_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":798,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":801,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(PointSystemConfig)26212_storage":{"encoding":"inplace","label":"struct PointSystemConfig","numberOfBytes":"32","members":[{"astId":26211,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"maxAmount","offset":0,"slot":"0","type":"t_uint256"}]},"t_struct(Proposal)26204_storage":{"encoding":"inplace","label":"struct Proposal","numberOfBytes":"544","members":[{"astId":26172,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalId","offset":0,"slot":"0","type":"t_uint256"},{"astId":26174,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"requestedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":26176,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"stakedAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":26178,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"convictionLast","offset":0,"slot":"3","type":"t_uint256"},{"astId":26180,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"beneficiary","offset":0,"slot":"4","type":"t_address"},{"astId":26182,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"submitter","offset":0,"slot":"5","type":"t_address"},{"astId":26184,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"requestedToken","offset":0,"slot":"6","type":"t_address"},{"astId":26186,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"blockLast","offset":0,"slot":"7","type":"t_uint256"},{"astId":26189,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalStatus","offset":0,"slot":"8","type":"t_enum(ProposalStatus)26163"},{"astId":26193,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"voterStakedPoints","offset":0,"slot":"9","type":"t_mapping(t_address,t_uint256)"},{"astId":26196,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"metadata","offset":0,"slot":"10","type":"t_struct(Metadata)802_storage"},{"astId":26199,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeInfo","offset":0,"slot":"12","type":"t_struct(ProposalDisputeInfo)26170_storage"},{"astId":26201,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"lastDisputeCompletion","offset":0,"slot":"15","type":"t_uint256"},{"astId":26203,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrableConfigVersion","offset":0,"slot":"16","type":"t_uint256"}]},"t_struct(ProposalDisputeInfo)26170_storage":{"encoding":"inplace","label":"struct ProposalDisputeInfo","numberOfBytes":"96","members":[{"astId":26165,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeId","offset":0,"slot":"0","type":"t_uint256"},{"astId":26167,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeTimestamp","offset":0,"slot":"1","type":"t_uint256"},{"astId":26169,"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":30152,"exportedSymbols":{"ArbitrableConfig":[26226],"BaseStrategy":[1627],"BaseStrategyUpgradeable":[26068],"CVParams":[26235],"CVStrategyInitializeParamsV0_0":[26255],"CVStrategyInitializeParamsV0_1":[26280],"CVStrategyV0_0":[30151],"Clone":[706],"CreateProposal":[26155],"ERC165":[18550],"ERC20":[17320],"IAllo":[314],"IArbitrable":[33150],"IArbitrator":[33254],"ICollateralVault":[33287],"IERC165":[18756],"IPointStrategy":[26134],"ISybilScorer":[30228],"Math":[19622],"Metadata":[802],"OwnableUpgradeable":[14042],"PassportScorer":[30700],"PointSystem":[26143],"PointSystemConfig":[26212],"Proposal":[26204],"ProposalDisputeInfo":[26170],"ProposalStatus":[26163],"ProposalSupport":[26209],"ProposalType":[26138],"RegistryCommunityV0_0":[33072],"UUPSUpgradeable":[16733],"console":[13499]},"nodeType":"SourceUnit","src":"42:60609:59","nodes":[{"id":26070,"nodeType":"PragmaDirective","src":"42:24:59","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":26072,"nodeType":"ImportDirective","src":"68:71:59","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"allo-v2-contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":803,"symbolAliases":[{"foreign":{"id":26071,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":802,"src":"76:8:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26075,"nodeType":"ImportDirective","src":"140:82:59","nodes":[],"absolutePath":"lib/allo-v2/contracts/strategies/BaseStrategy.sol","file":"allo-v2-contracts/strategies/BaseStrategy.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":1628,"symbolAliases":[{"foreign":{"id":26073,"name":"BaseStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1627,"src":"148:12:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":26074,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":314,"src":"162:5:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26077,"nodeType":"ImportDirective","src":"223:85:59","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":33073,"symbolAliases":[{"foreign":{"id":26076,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33072,"src":"231:21:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26080,"nodeType":"ImportDirective","src":"309:87:59","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":18551,"symbolAliases":[{"foreign":{"id":26078,"name":"ERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":18550,"src":"317:6:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":26079,"name":"IERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":18756,"src":"325:7:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26082,"nodeType":"ImportDirective","src":"397:68:59","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","file":"@openzeppelin/contracts/token/ERC20/ERC20.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":17321,"symbolAliases":[{"foreign":{"id":26081,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17320,"src":"405:5:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26084,"nodeType":"ImportDirective","src":"466:58:59","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":33255,"symbolAliases":[{"foreign":{"id":26083,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33254,"src":"474:11:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26086,"nodeType":"ImportDirective","src":"525:58:59","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"../interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":33151,"symbolAliases":[{"foreign":{"id":26085,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33150,"src":"533:11:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26088,"nodeType":"ImportDirective","src":"584:65:59","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":707,"symbolAliases":[{"foreign":{"id":26087,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":706,"src":"592:5:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26090,"nodeType":"ImportDirective","src":"650:46:59","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":13500,"symbolAliases":[{"foreign":{"id":26089,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13499,"src":"658:7:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26092,"nodeType":"ImportDirective","src":"697:65:59","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"@openzeppelin/contracts/utils/math/Math.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":19623,"symbolAliases":[{"foreign":{"id":26091,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":19622,"src":"705:4:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26094,"nodeType":"ImportDirective","src":"763:49:59","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":30229,"symbolAliases":[{"foreign":{"id":26093,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30228,"src":"771:12:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26096,"nodeType":"ImportDirective","src":"813:88:59","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":16734,"symbolAliases":[{"foreign":{"id":26095,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16733,"src":"821:15:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26098,"nodeType":"ImportDirective","src":"902:71:59","nodes":[],"absolutePath":"pkg/contracts/src/BaseStrategyUpgradeable.sol","file":"../BaseStrategyUpgradeable.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":26069,"symbolAliases":[{"foreign":{"id":26097,"name":"BaseStrategyUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26068,"src":"910:23:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26100,"nodeType":"ImportDirective","src":"974:101:59","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":14043,"symbolAliases":[{"foreign":{"id":26099,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14042,"src":"982:18:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26102,"nodeType":"ImportDirective","src":"1076:68:59","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":33288,"symbolAliases":[{"foreign":{"id":26101,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33287,"src":"1084:16:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26104,"nodeType":"ImportDirective","src":"1145:53:59","nodes":[],"absolutePath":"pkg/contracts/src/PassportScorer.sol","file":"../PassportScorer.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":30701,"symbolAliases":[{"foreign":{"id":26103,"name":"PassportScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30700,"src":"1153:14:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26134,"nodeType":"ContractDefinition","src":"1354:343:59","nodes":[{"id":26109,"nodeType":"FunctionDefinition","src":"1385:52:59","nodes":[],"functionSelector":"6453d9c4","implemented":false,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"1394:16:59","parameters":{"id":26107,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26106,"mutability":"mutable","name":"_member","nameLocation":"1419:7:59","nodeType":"VariableDeclaration","scope":26109,"src":"1411:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26105,"name":"address","nodeType":"ElementaryTypeName","src":"1411:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1410:17:59"},"returnParameters":{"id":26108,"nodeType":"ParameterList","parameters":[],"src":"1436:0:59"},"scope":26134,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":26118,"nodeType":"FunctionDefinition","src":"1443:91:59","nodes":[],"functionSelector":"782aadff","implemented":false,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"1452:13:59","parameters":{"id":26114,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26111,"mutability":"mutable","name":"_member","nameLocation":"1474:7:59","nodeType":"VariableDeclaration","scope":26118,"src":"1466:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26110,"name":"address","nodeType":"ElementaryTypeName","src":"1466:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26113,"mutability":"mutable","name":"_amountToStake","nameLocation":"1491:14:59","nodeType":"VariableDeclaration","scope":26118,"src":"1483:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26112,"name":"uint256","nodeType":"ElementaryTypeName","src":"1483:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1465:41:59"},"returnParameters":{"id":26117,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26116,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":26118,"src":"1525:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26115,"name":"uint256","nodeType":"ElementaryTypeName","src":"1525:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1524:9:59"},"scope":26134,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":26127,"nodeType":"FunctionDefinition","src":"1540:92:59","nodes":[],"functionSelector":"2ed04b2b","implemented":false,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"1549:13:59","parameters":{"id":26123,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26120,"mutability":"mutable","name":"_member","nameLocation":"1571:7:59","nodeType":"VariableDeclaration","scope":26127,"src":"1563:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26119,"name":"address","nodeType":"ElementaryTypeName","src":"1563:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26122,"mutability":"mutable","name":"_amountToUntake","nameLocation":"1588:15:59","nodeType":"VariableDeclaration","scope":26127,"src":"1580:23:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26121,"name":"uint256","nodeType":"ElementaryTypeName","src":"1580:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1562:42:59"},"returnParameters":{"id":26126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26125,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":26127,"src":"1623:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26124,"name":"uint256","nodeType":"ElementaryTypeName","src":"1623:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1622:9:59"},"scope":26134,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":26133,"nodeType":"FunctionDefinition","src":"1638:57:59","nodes":[],"functionSelector":"c3292171","implemented":false,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"1647:14:59","parameters":{"id":26128,"nodeType":"ParameterList","parameters":[],"src":"1661:2:59"},"returnParameters":{"id":26132,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26131,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":26133,"src":"1682:11:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"typeName":{"id":26130,"nodeType":"UserDefinedTypeName","pathNode":{"id":26129,"name":"PointSystem","nameLocations":["1682:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":26143,"src":"1682:11:59"},"referencedDeclaration":26143,"src":"1682:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"1681:13:59"},"scope":26134,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IPointStrategy","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[26134],"name":"IPointStrategy","nameLocation":"1364:14:59","scope":30152,"usedErrors":[]},{"id":26138,"nodeType":"EnumDefinition","src":"1699:63:59","nodes":[],"canonicalName":"ProposalType","members":[{"id":26135,"name":"Signaling","nameLocation":"1723:9:59","nodeType":"EnumValue","src":"1723:9:59"},{"id":26136,"name":"Funding","nameLocation":"1738:7:59","nodeType":"EnumValue","src":"1738:7:59"},{"id":26137,"name":"Streaming","nameLocation":"1751:9:59","nodeType":"EnumValue","src":"1751:9:59"}],"name":"ProposalType","nameLocation":"1704:12:59"},{"id":26143,"nodeType":"EnumDefinition","src":"1764:72:59","nodes":[],"canonicalName":"PointSystem","members":[{"id":26139,"name":"Fixed","nameLocation":"1787:5:59","nodeType":"EnumValue","src":"1787:5:59"},{"id":26140,"name":"Capped","nameLocation":"1798:6:59","nodeType":"EnumValue","src":"1798:6:59"},{"id":26141,"name":"Unlimited","nameLocation":"1810:9:59","nodeType":"EnumValue","src":"1810:9:59"},{"id":26142,"name":"Quadratic","nameLocation":"1825:9:59","nodeType":"EnumValue","src":"1825:9:59"}],"name":"PointSystem","nameLocation":"1769:11:59"},{"id":26155,"nodeType":"StructDefinition","src":"1838:211:59","nodes":[],"canonicalName":"CreateProposal","members":[{"constant":false,"id":26145,"mutability":"mutable","name":"poolId","nameLocation":"1901:6:59","nodeType":"VariableDeclaration","scope":26155,"src":"1893:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26144,"name":"uint256","nodeType":"ElementaryTypeName","src":"1893:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26147,"mutability":"mutable","name":"beneficiary","nameLocation":"1921:11:59","nodeType":"VariableDeclaration","scope":26155,"src":"1913:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26146,"name":"address","nodeType":"ElementaryTypeName","src":"1913:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26149,"mutability":"mutable","name":"amountRequested","nameLocation":"1980:15:59","nodeType":"VariableDeclaration","scope":26155,"src":"1972:23:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26148,"name":"uint256","nodeType":"ElementaryTypeName","src":"1972:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26151,"mutability":"mutable","name":"requestedToken","nameLocation":"2009:14:59","nodeType":"VariableDeclaration","scope":26155,"src":"2001:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26150,"name":"address","nodeType":"ElementaryTypeName","src":"2001:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26154,"mutability":"mutable","name":"metadata","nameLocation":"2038:8:59","nodeType":"VariableDeclaration","scope":26155,"src":"2029:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":26153,"nodeType":"UserDefinedTypeName","pathNode":{"id":26152,"name":"Metadata","nameLocations":["2029:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"2029:8:59"},"referencedDeclaration":802,"src":"2029:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"name":"CreateProposal","nameLocation":"1845:14:59","scope":30152,"visibility":"public"},{"id":26163,"nodeType":"EnumDefinition","src":"2051:360:59","nodes":[],"canonicalName":"ProposalStatus","members":[{"id":26156,"name":"Inactive","nameLocation":"2077:8:59","nodeType":"EnumValue","src":"2077:8:59"},{"id":26157,"name":"Active","nameLocation":"2103:6:59","nodeType":"EnumValue","src":"2103:6:59"},{"id":26158,"name":"Paused","nameLocation":"2162:6:59","nodeType":"EnumValue","src":"2162:6:59"},{"id":26159,"name":"Cancelled","nameLocation":"2224:9:59","nodeType":"EnumValue","src":"2224:9:59"},{"id":26160,"name":"Executed","nameLocation":"2273:8:59","nodeType":"EnumValue","src":"2273:8:59"},{"id":26161,"name":"Disputed","nameLocation":"2320:8:59","nodeType":"EnumValue","src":"2320:8:59"},{"id":26162,"name":"Rejected","nameLocation":"2367:8:59","nodeType":"EnumValue","src":"2367:8:59"}],"name":"ProposalStatus","nameLocation":"2056:14:59"},{"id":26170,"nodeType":"StructDefinition","src":"2413:107:59","nodes":[],"canonicalName":"ProposalDisputeInfo","members":[{"constant":false,"id":26165,"mutability":"mutable","name":"disputeId","nameLocation":"2454:9:59","nodeType":"VariableDeclaration","scope":26170,"src":"2446:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26164,"name":"uint256","nodeType":"ElementaryTypeName","src":"2446:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26167,"mutability":"mutable","name":"disputeTimestamp","nameLocation":"2477:16:59","nodeType":"VariableDeclaration","scope":26170,"src":"2469:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26166,"name":"uint256","nodeType":"ElementaryTypeName","src":"2469:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26169,"mutability":"mutable","name":"challenger","nameLocation":"2507:10:59","nodeType":"VariableDeclaration","scope":26170,"src":"2499:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26168,"name":"address","nodeType":"ElementaryTypeName","src":"2499:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"ProposalDisputeInfo","nameLocation":"2420:19:59","scope":30152,"visibility":"public"},{"id":26204,"nodeType":"StructDefinition","src":"2522:466:59","nodes":[],"canonicalName":"Proposal","members":[{"constant":false,"id":26172,"mutability":"mutable","name":"proposalId","nameLocation":"2552:10:59","nodeType":"VariableDeclaration","scope":26204,"src":"2544:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26171,"name":"uint256","nodeType":"ElementaryTypeName","src":"2544:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26174,"mutability":"mutable","name":"requestedAmount","nameLocation":"2576:15:59","nodeType":"VariableDeclaration","scope":26204,"src":"2568:23:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26173,"name":"uint256","nodeType":"ElementaryTypeName","src":"2568:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26176,"mutability":"mutable","name":"stakedAmount","nameLocation":"2605:12:59","nodeType":"VariableDeclaration","scope":26204,"src":"2597:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26175,"name":"uint256","nodeType":"ElementaryTypeName","src":"2597:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26178,"mutability":"mutable","name":"convictionLast","nameLocation":"2631:14:59","nodeType":"VariableDeclaration","scope":26204,"src":"2623:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26177,"name":"uint256","nodeType":"ElementaryTypeName","src":"2623:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26180,"mutability":"mutable","name":"beneficiary","nameLocation":"2659:11:59","nodeType":"VariableDeclaration","scope":26204,"src":"2651:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26179,"name":"address","nodeType":"ElementaryTypeName","src":"2651:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26182,"mutability":"mutable","name":"submitter","nameLocation":"2684:9:59","nodeType":"VariableDeclaration","scope":26204,"src":"2676:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26181,"name":"address","nodeType":"ElementaryTypeName","src":"2676:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26184,"mutability":"mutable","name":"requestedToken","nameLocation":"2707:14:59","nodeType":"VariableDeclaration","scope":26204,"src":"2699:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26183,"name":"address","nodeType":"ElementaryTypeName","src":"2699:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26186,"mutability":"mutable","name":"blockLast","nameLocation":"2735:9:59","nodeType":"VariableDeclaration","scope":26204,"src":"2727:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26185,"name":"uint256","nodeType":"ElementaryTypeName","src":"2727:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26189,"mutability":"mutable","name":"proposalStatus","nameLocation":"2765:14:59","nodeType":"VariableDeclaration","scope":26204,"src":"2750:29:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"typeName":{"id":26188,"nodeType":"UserDefinedTypeName","pathNode":{"id":26187,"name":"ProposalStatus","nameLocations":["2750:14:59"],"nodeType":"IdentifierPath","referencedDeclaration":26163,"src":"2750:14:59"},"referencedDeclaration":26163,"src":"2750:14:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":26193,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"2813:17:59","nodeType":"VariableDeclaration","scope":26204,"src":"2785:45:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":26192,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":26190,"name":"address","nodeType":"ElementaryTypeName","src":"2793:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"2785:27:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":26191,"name":"uint256","nodeType":"ElementaryTypeName","src":"2804:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"internal"},{"constant":false,"id":26196,"mutability":"mutable","name":"metadata","nameLocation":"2868:8:59","nodeType":"VariableDeclaration","scope":26204,"src":"2859:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":26195,"nodeType":"UserDefinedTypeName","pathNode":{"id":26194,"name":"Metadata","nameLocations":["2859:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"2859:8:59"},"referencedDeclaration":802,"src":"2859:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":26199,"mutability":"mutable","name":"disputeInfo","nameLocation":"2902:11:59","nodeType":"VariableDeclaration","scope":26204,"src":"2882:31:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage_ptr","typeString":"struct ProposalDisputeInfo"},"typeName":{"id":26198,"nodeType":"UserDefinedTypeName","pathNode":{"id":26197,"name":"ProposalDisputeInfo","nameLocations":["2882:19:59"],"nodeType":"IdentifierPath","referencedDeclaration":26170,"src":"2882:19:59"},"referencedDeclaration":26170,"src":"2882:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage_ptr","typeString":"struct ProposalDisputeInfo"}},"visibility":"internal"},{"constant":false,"id":26201,"mutability":"mutable","name":"lastDisputeCompletion","nameLocation":"2927:21:59","nodeType":"VariableDeclaration","scope":26204,"src":"2919:29:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26200,"name":"uint256","nodeType":"ElementaryTypeName","src":"2919:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26203,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"2962:23:59","nodeType":"VariableDeclaration","scope":26204,"src":"2954:31:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26202,"name":"uint256","nodeType":"ElementaryTypeName","src":"2954:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Proposal","nameLocation":"2529:8:59","scope":30152,"visibility":"public"},{"id":26209,"nodeType":"StructDefinition","src":"2990:114:59","nodes":[],"canonicalName":"ProposalSupport","members":[{"constant":false,"id":26206,"mutability":"mutable","name":"proposalId","nameLocation":"3027:10:59","nodeType":"VariableDeclaration","scope":26209,"src":"3019:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26205,"name":"uint256","nodeType":"ElementaryTypeName","src":"3019:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26208,"mutability":"mutable","name":"deltaSupport","nameLocation":"3050:12:59","nodeType":"VariableDeclaration","scope":26209,"src":"3043:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":26207,"name":"int256","nodeType":"ElementaryTypeName","src":"3043:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"name":"ProposalSupport","nameLocation":"2997:15:59","scope":30152,"visibility":"public"},{"id":26212,"nodeType":"StructDefinition","src":"3106:77:59","nodes":[],"canonicalName":"PointSystemConfig","members":[{"constant":false,"id":26211,"mutability":"mutable","name":"maxAmount","nameLocation":"3171:9:59","nodeType":"VariableDeclaration","scope":26212,"src":"3163:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26210,"name":"uint256","nodeType":"ElementaryTypeName","src":"3163:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"PointSystemConfig","nameLocation":"3113:17:59","scope":30152,"visibility":"public"},{"id":26226,"nodeType":"StructDefinition","src":"3185:221:59","nodes":[],"canonicalName":"ArbitrableConfig","members":[{"constant":false,"id":26215,"mutability":"mutable","name":"arbitrator","nameLocation":"3227:10:59","nodeType":"VariableDeclaration","scope":26226,"src":"3215:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"},"typeName":{"id":26214,"nodeType":"UserDefinedTypeName","pathNode":{"id":26213,"name":"IArbitrator","nameLocations":["3215:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":33254,"src":"3215:11:59"},"referencedDeclaration":33254,"src":"3215:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":26217,"mutability":"mutable","name":"tribunalSafe","nameLocation":"3251:12:59","nodeType":"VariableDeclaration","scope":26226,"src":"3243:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26216,"name":"address","nodeType":"ElementaryTypeName","src":"3243:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26219,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"3277:25:59","nodeType":"VariableDeclaration","scope":26226,"src":"3269:33:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26218,"name":"uint256","nodeType":"ElementaryTypeName","src":"3269:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26221,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"3316:26:59","nodeType":"VariableDeclaration","scope":26226,"src":"3308:34:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26220,"name":"uint256","nodeType":"ElementaryTypeName","src":"3308:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26223,"mutability":"mutable","name":"defaultRuling","nameLocation":"3356:13:59","nodeType":"VariableDeclaration","scope":26226,"src":"3348:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26222,"name":"uint256","nodeType":"ElementaryTypeName","src":"3348:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26225,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"3383:20:59","nodeType":"VariableDeclaration","scope":26226,"src":"3375:28:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26224,"name":"uint256","nodeType":"ElementaryTypeName","src":"3375:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"ArbitrableConfig","nameLocation":"3192:16:59","scope":30152,"visibility":"public"},{"id":26235,"nodeType":"StructDefinition","src":"3408:112:59","nodes":[],"canonicalName":"CVParams","members":[{"constant":false,"id":26228,"mutability":"mutable","name":"maxRatio","nameLocation":"3438:8:59","nodeType":"VariableDeclaration","scope":26235,"src":"3430:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26227,"name":"uint256","nodeType":"ElementaryTypeName","src":"3430:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26230,"mutability":"mutable","name":"weight","nameLocation":"3460:6:59","nodeType":"VariableDeclaration","scope":26235,"src":"3452:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26229,"name":"uint256","nodeType":"ElementaryTypeName","src":"3452:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26232,"mutability":"mutable","name":"decay","nameLocation":"3480:5:59","nodeType":"VariableDeclaration","scope":26235,"src":"3472:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26231,"name":"uint256","nodeType":"ElementaryTypeName","src":"3472:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26234,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"3499:18:59","nodeType":"VariableDeclaration","scope":26235,"src":"3491:26:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26233,"name":"uint256","nodeType":"ElementaryTypeName","src":"3491:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"CVParams","nameLocation":"3415:8:59","scope":30152,"visibility":"public"},{"id":26255,"nodeType":"StructDefinition","src":"3522:254:59","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_0","members":[{"constant":false,"id":26238,"mutability":"mutable","name":"cvParams","nameLocation":"3575:8:59","nodeType":"VariableDeclaration","scope":26255,"src":"3566:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":26237,"nodeType":"UserDefinedTypeName","pathNode":{"id":26236,"name":"CVParams","nameLocations":["3566:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"3566:8:59"},"referencedDeclaration":26235,"src":"3566:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":26241,"mutability":"mutable","name":"proposalType","nameLocation":"3602:12:59","nodeType":"VariableDeclaration","scope":26255,"src":"3589:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"},"typeName":{"id":26240,"nodeType":"UserDefinedTypeName","pathNode":{"id":26239,"name":"ProposalType","nameLocations":["3589:12:59"],"nodeType":"IdentifierPath","referencedDeclaration":26138,"src":"3589:12:59"},"referencedDeclaration":26138,"src":"3589:12:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":26244,"mutability":"mutable","name":"pointSystem","nameLocation":"3632:11:59","nodeType":"VariableDeclaration","scope":26255,"src":"3620:23:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"typeName":{"id":26243,"nodeType":"UserDefinedTypeName","pathNode":{"id":26242,"name":"PointSystem","nameLocations":["3620:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":26143,"src":"3620:11:59"},"referencedDeclaration":26143,"src":"3620:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":26247,"mutability":"mutable","name":"pointConfig","nameLocation":"3667:11:59","nodeType":"VariableDeclaration","scope":26255,"src":"3649:29:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":26246,"nodeType":"UserDefinedTypeName","pathNode":{"id":26245,"name":"PointSystemConfig","nameLocations":["3649:17:59"],"nodeType":"IdentifierPath","referencedDeclaration":26212,"src":"3649:17:59"},"referencedDeclaration":26212,"src":"3649:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":26250,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3701:16:59","nodeType":"VariableDeclaration","scope":26255,"src":"3684:33:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":26249,"nodeType":"UserDefinedTypeName","pathNode":{"id":26248,"name":"ArbitrableConfig","nameLocations":["3684:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"3684:16:59"},"referencedDeclaration":26226,"src":"3684:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":26252,"mutability":"mutable","name":"registryCommunity","nameLocation":"3731:17:59","nodeType":"VariableDeclaration","scope":26255,"src":"3723:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26251,"name":"address","nodeType":"ElementaryTypeName","src":"3723:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26254,"mutability":"mutable","name":"sybilScorer","nameLocation":"3762:11:59","nodeType":"VariableDeclaration","scope":26255,"src":"3754:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26253,"name":"address","nodeType":"ElementaryTypeName","src":"3754:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_0","nameLocation":"3529:30:59","scope":30152,"visibility":"public"},{"id":26280,"nodeType":"StructDefinition","src":"3778:320:59","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_1","members":[{"constant":false,"id":26258,"mutability":"mutable","name":"cvParams","nameLocation":"3831:8:59","nodeType":"VariableDeclaration","scope":26280,"src":"3822:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":26257,"nodeType":"UserDefinedTypeName","pathNode":{"id":26256,"name":"CVParams","nameLocations":["3822:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"3822:8:59"},"referencedDeclaration":26235,"src":"3822:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":26261,"mutability":"mutable","name":"proposalType","nameLocation":"3858:12:59","nodeType":"VariableDeclaration","scope":26280,"src":"3845:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"},"typeName":{"id":26260,"nodeType":"UserDefinedTypeName","pathNode":{"id":26259,"name":"ProposalType","nameLocations":["3845:12:59"],"nodeType":"IdentifierPath","referencedDeclaration":26138,"src":"3845:12:59"},"referencedDeclaration":26138,"src":"3845:12:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":26264,"mutability":"mutable","name":"pointSystem","nameLocation":"3888:11:59","nodeType":"VariableDeclaration","scope":26280,"src":"3876:23:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"typeName":{"id":26263,"nodeType":"UserDefinedTypeName","pathNode":{"id":26262,"name":"PointSystem","nameLocations":["3876:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":26143,"src":"3876:11:59"},"referencedDeclaration":26143,"src":"3876:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":26267,"mutability":"mutable","name":"pointConfig","nameLocation":"3923:11:59","nodeType":"VariableDeclaration","scope":26280,"src":"3905:29:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":26266,"nodeType":"UserDefinedTypeName","pathNode":{"id":26265,"name":"PointSystemConfig","nameLocations":["3905:17:59"],"nodeType":"IdentifierPath","referencedDeclaration":26212,"src":"3905:17:59"},"referencedDeclaration":26212,"src":"3905:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":26270,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3957:16:59","nodeType":"VariableDeclaration","scope":26280,"src":"3940:33:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":26269,"nodeType":"UserDefinedTypeName","pathNode":{"id":26268,"name":"ArbitrableConfig","nameLocations":["3940:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"3940:16:59"},"referencedDeclaration":26226,"src":"3940:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":26272,"mutability":"mutable","name":"registryCommunity","nameLocation":"3987:17:59","nodeType":"VariableDeclaration","scope":26280,"src":"3979:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26271,"name":"address","nodeType":"ElementaryTypeName","src":"3979:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26274,"mutability":"mutable","name":"sybilScorer","nameLocation":"4018:11:59","nodeType":"VariableDeclaration","scope":26280,"src":"4010:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26273,"name":"address","nodeType":"ElementaryTypeName","src":"4010:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26276,"mutability":"mutable","name":"sybilScorerThreshold","nameLocation":"4043:20:59","nodeType":"VariableDeclaration","scope":26280,"src":"4035:28:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26275,"name":"uint256","nodeType":"ElementaryTypeName","src":"4035:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26279,"mutability":"mutable","name":"initialAllowlist","nameLocation":"4079:16:59","nodeType":"VariableDeclaration","scope":26280,"src":"4069:26:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":26277,"name":"address","nodeType":"ElementaryTypeName","src":"4069:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26278,"nodeType":"ArrayTypeName","src":"4069:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_1","nameLocation":"3785:30:59","scope":30152,"visibility":"public"},{"id":30151,"nodeType":"ContractDefinition","src":"4144:56506:59","nodes":[{"id":26291,"nodeType":"ErrorDefinition","src":"4451:26:59","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4457:17:59","parameters":{"id":26290,"nodeType":"ParameterList","parameters":[],"src":"4474:2:59"}},{"id":26293,"nodeType":"ErrorDefinition","src":"4495:23:59","nodes":[],"errorSelector":"5fccb67f","name":"UserIsInactive","nameLocation":"4501:14:59","parameters":{"id":26292,"nodeType":"ParameterList","parameters":[],"src":"4515:2:59"}},{"id":26295,"nodeType":"ErrorDefinition","src":"4537:20:59","nodes":[],"errorSelector":"ed4421ad","name":"PoolIsEmpty","nameLocation":"4543:11:59","parameters":{"id":26294,"nodeType":"ParameterList","parameters":[],"src":"4554:2:59"}},{"id":26297,"nodeType":"ErrorDefinition","src":"4762:28:59","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4768:19:59","parameters":{"id":26296,"nodeType":"ParameterList","parameters":[],"src":"4787:2:59"}},{"id":26303,"nodeType":"ErrorDefinition","src":"4953:77:59","nodes":[],"errorSelector":"d64182fe","name":"NotEnoughPointsToSupport","nameLocation":"4959:24:59","parameters":{"id":26302,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26299,"mutability":"mutable","name":"pointsSupport","nameLocation":"4992:13:59","nodeType":"VariableDeclaration","scope":26303,"src":"4984:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26298,"name":"uint256","nodeType":"ElementaryTypeName","src":"4984:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26301,"mutability":"mutable","name":"pointsBalance","nameLocation":"5015:13:59","nodeType":"VariableDeclaration","scope":26303,"src":"5007:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26300,"name":"uint256","nodeType":"ElementaryTypeName","src":"5007:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4983:46:59"}},{"id":26307,"nodeType":"ErrorDefinition","src":"5151:45:59","nodes":[],"errorSelector":"44980d8f","name":"ProposalNotActive","nameLocation":"5157:17:59","parameters":{"id":26306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26305,"mutability":"mutable","name":"_proposalId","nameLocation":"5183:11:59","nodeType":"VariableDeclaration","scope":26307,"src":"5175:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26304,"name":"uint256","nodeType":"ElementaryTypeName","src":"5175:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5174:21:59"}},{"id":26311,"nodeType":"ErrorDefinition","src":"5215:45:59","nodes":[],"errorSelector":"c1d17bef","name":"ProposalNotInList","nameLocation":"5221:17:59","parameters":{"id":26310,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26309,"mutability":"mutable","name":"_proposalId","nameLocation":"5247:11:59","nodeType":"VariableDeclaration","scope":26311,"src":"5239:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26308,"name":"uint256","nodeType":"ElementaryTypeName","src":"5239:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5238:21:59"}},{"id":26317,"nodeType":"ErrorDefinition","src":"5279:68:59","nodes":[],"errorSelector":"adebb154","name":"ProposalSupportDuplicated","nameLocation":"5285:25:59","parameters":{"id":26316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26313,"mutability":"mutable","name":"_proposalId","nameLocation":"5319:11:59","nodeType":"VariableDeclaration","scope":26317,"src":"5311:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26312,"name":"uint256","nodeType":"ElementaryTypeName","src":"5311:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26315,"mutability":"mutable","name":"index","nameLocation":"5340:5:59","nodeType":"VariableDeclaration","scope":26317,"src":"5332:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26314,"name":"uint256","nodeType":"ElementaryTypeName","src":"5332:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5310:36:59"}},{"id":26319,"nodeType":"ErrorDefinition","src":"5365:40:59","nodes":[],"errorSelector":"cce79308","name":"ConvictionUnderMinimumThreshold","nameLocation":"5371:31:59","parameters":{"id":26318,"nodeType":"ParameterList","parameters":[],"src":"5402:2:59"}},{"id":26321,"nodeType":"ErrorDefinition","src":"5424:29:59","nodes":[],"errorSelector":"af0916a2","name":"OnlyCommunityAllowed","nameLocation":"5430:20:59","parameters":{"id":26320,"nodeType":"ParameterList","parameters":[],"src":"5450:2:59"}},{"id":26323,"nodeType":"ErrorDefinition","src":"5587:24:59","nodes":[],"errorSelector":"e860ec7e","name":"OnlyCouncilSafe","nameLocation":"5593:15:59","parameters":{"id":26322,"nodeType":"ParameterList","parameters":[],"src":"5608:2:59"}},{"id":26325,"nodeType":"ErrorDefinition","src":"5616:32:59","nodes":[],"errorSelector":"5b96b588","name":"UserCannotExecuteAction","nameLocation":"5622:23:59","parameters":{"id":26324,"nodeType":"ParameterList","parameters":[],"src":"5645:2:59"}},{"id":26327,"nodeType":"ErrorDefinition","src":"5734:23:59","nodes":[],"errorSelector":"2eef310a","name":"OnlyArbitrator","nameLocation":"5740:14:59","parameters":{"id":26326,"nodeType":"ParameterList","parameters":[],"src":"5754:2:59"}},{"id":26331,"nodeType":"ErrorDefinition","src":"5762:47:59","nodes":[],"errorSelector":"96023952","name":"ProposalNotDisputed","nameLocation":"5768:19:59","parameters":{"id":26330,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26329,"mutability":"mutable","name":"_proposalId","nameLocation":"5796:11:59","nodeType":"VariableDeclaration","scope":26331,"src":"5788:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26328,"name":"uint256","nodeType":"ElementaryTypeName","src":"5788:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5787:21:59"}},{"id":26337,"nodeType":"ErrorDefinition","src":"5853:55:59","nodes":[],"errorSelector":"8a89b922","name":"OnlySubmitter","nameLocation":"5859:13:59","parameters":{"id":26336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26333,"mutability":"mutable","name":"submitter","nameLocation":"5881:9:59","nodeType":"VariableDeclaration","scope":26337,"src":"5873:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26332,"name":"address","nodeType":"ElementaryTypeName","src":"5873:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26335,"mutability":"mutable","name":"sender","nameLocation":"5900:6:59","nodeType":"VariableDeclaration","scope":26337,"src":"5892:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26334,"name":"address","nodeType":"ElementaryTypeName","src":"5892:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5872:35:59"}},{"id":26339,"nodeType":"ErrorDefinition","src":"5994:28:59","nodes":[],"errorSelector":"dd466dd0","name":"DefaultRulingNotSet","nameLocation":"6000:19:59","parameters":{"id":26338,"nodeType":"ParameterList","parameters":[],"src":"6019:2:59"}},{"id":26341,"nodeType":"ErrorDefinition","src":"6206:30:59","nodes":[],"errorSelector":"3e668d03","name":"AShouldBeUnderTwo_128","nameLocation":"6212:21:59","parameters":{"id":26340,"nodeType":"ParameterList","parameters":[],"src":"6233:2:59"}},{"id":26343,"nodeType":"ErrorDefinition","src":"6241:29:59","nodes":[],"errorSelector":"70b7a2d9","name":"BShouldBeLessTwo_128","nameLocation":"6247:20:59","parameters":{"id":26342,"nodeType":"ParameterList","parameters":[],"src":"6267:2:59"}},{"id":26345,"nodeType":"ErrorDefinition","src":"6275:34:59","nodes":[],"errorSelector":"ff5b3cef","name":"AShouldBeUnderOrEqTwo_128","nameLocation":"6281:25:59","parameters":{"id":26344,"nodeType":"ParameterList","parameters":[],"src":"6306:2:59"}},{"id":26352,"nodeType":"EventDefinition","src":"6481:73:59","nodes":[],"anonymous":false,"eventSelector":"e5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b","name":"InitializedCV","nameLocation":"6487:13:59","parameters":{"id":26351,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26347,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6509:6:59","nodeType":"VariableDeclaration","scope":26352,"src":"6501:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26346,"name":"uint256","nodeType":"ElementaryTypeName","src":"6501:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26350,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6548:4:59","nodeType":"VariableDeclaration","scope":26352,"src":"6517:35:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$26255_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":26349,"nodeType":"UserDefinedTypeName","pathNode":{"id":26348,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["6517:30:59"],"nodeType":"IdentifierPath","referencedDeclaration":26255,"src":"6517:30:59"},"referencedDeclaration":26255,"src":"6517:30:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$26255_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"src":"6500:53:59"}},{"id":26359,"nodeType":"EventDefinition","src":"6559:74:59","nodes":[],"anonymous":false,"eventSelector":"b6a062fc5f19aa17637bf61ab001ce3e5ceb67a5bd51d9753281e41df94f3fd3","name":"InitializedCV2","nameLocation":"6565:14:59","parameters":{"id":26358,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26354,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6588:6:59","nodeType":"VariableDeclaration","scope":26359,"src":"6580:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26353,"name":"uint256","nodeType":"ElementaryTypeName","src":"6580:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26357,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6627:4:59","nodeType":"VariableDeclaration","scope":26359,"src":"6596:35:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":26356,"nodeType":"UserDefinedTypeName","pathNode":{"id":26355,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["6596:30:59"],"nodeType":"IdentifierPath","referencedDeclaration":26280,"src":"6596:30:59"},"referencedDeclaration":26280,"src":"6596:30:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"6579:53:59"}},{"id":26367,"nodeType":"EventDefinition","src":"6638:75:59","nodes":[],"anonymous":false,"eventSelector":"a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847","name":"Distributed","nameLocation":"6644:11:59","parameters":{"id":26366,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26361,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6664:10:59","nodeType":"VariableDeclaration","scope":26367,"src":"6656:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26360,"name":"uint256","nodeType":"ElementaryTypeName","src":"6656:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26363,"indexed":false,"mutability":"mutable","name":"beneficiary","nameLocation":"6684:11:59","nodeType":"VariableDeclaration","scope":26367,"src":"6676:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26362,"name":"address","nodeType":"ElementaryTypeName","src":"6676:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26365,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6705:6:59","nodeType":"VariableDeclaration","scope":26367,"src":"6697:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26364,"name":"uint256","nodeType":"ElementaryTypeName","src":"6697:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6655:57:59"}},{"id":26373,"nodeType":"EventDefinition","src":"6718:58:59","nodes":[],"anonymous":false,"eventSelector":"fcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b","name":"ProposalCreated","nameLocation":"6724:15:59","parameters":{"id":26372,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26369,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6748:6:59","nodeType":"VariableDeclaration","scope":26373,"src":"6740:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26368,"name":"uint256","nodeType":"ElementaryTypeName","src":"6740:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26371,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6764:10:59","nodeType":"VariableDeclaration","scope":26373,"src":"6756:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26370,"name":"uint256","nodeType":"ElementaryTypeName","src":"6756:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6739:36:59"}},{"id":26377,"nodeType":"EventDefinition","src":"6781:42:59","nodes":[],"anonymous":false,"eventSelector":"46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339","name":"PoolAmountIncreased","nameLocation":"6787:19:59","parameters":{"id":26376,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26375,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6815:6:59","nodeType":"VariableDeclaration","scope":26377,"src":"6807:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26374,"name":"uint256","nodeType":"ElementaryTypeName","src":"6807:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6806:16:59"}},{"id":26381,"nodeType":"EventDefinition","src":"6828:40:59","nodes":[],"anonymous":false,"eventSelector":"1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b","name":"PointsDeactivated","nameLocation":"6834:17:59","parameters":{"id":26380,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26379,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6860:6:59","nodeType":"VariableDeclaration","scope":26381,"src":"6852:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26378,"name":"address","nodeType":"ElementaryTypeName","src":"6852:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6851:16:59"}},{"id":26389,"nodeType":"EventDefinition","src":"6873:85:59","nodes":[],"anonymous":false,"eventSelector":"0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a","name":"PowerIncreased","nameLocation":"6879:14:59","parameters":{"id":26388,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26383,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6902:6:59","nodeType":"VariableDeclaration","scope":26389,"src":"6894:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26382,"name":"address","nodeType":"ElementaryTypeName","src":"6894:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26385,"indexed":false,"mutability":"mutable","name":"tokensStaked","nameLocation":"6918:12:59","nodeType":"VariableDeclaration","scope":26389,"src":"6910:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26384,"name":"uint256","nodeType":"ElementaryTypeName","src":"6910:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26387,"indexed":false,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"6940:16:59","nodeType":"VariableDeclaration","scope":26389,"src":"6932:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26386,"name":"uint256","nodeType":"ElementaryTypeName","src":"6932:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6893:64:59"}},{"id":26397,"nodeType":"EventDefinition","src":"6963:87:59","nodes":[],"anonymous":false,"eventSelector":"70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1","name":"PowerDecreased","nameLocation":"6969:14:59","parameters":{"id":26396,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26391,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6992:6:59","nodeType":"VariableDeclaration","scope":26397,"src":"6984:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26390,"name":"address","nodeType":"ElementaryTypeName","src":"6984:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26393,"indexed":false,"mutability":"mutable","name":"tokensUnStaked","nameLocation":"7008:14:59","nodeType":"VariableDeclaration","scope":26397,"src":"7000:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26392,"name":"uint256","nodeType":"ElementaryTypeName","src":"7000:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26395,"indexed":false,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"7032:16:59","nodeType":"VariableDeclaration","scope":26397,"src":"7024:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26394,"name":"uint256","nodeType":"ElementaryTypeName","src":"7024:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6983:66:59"}},{"id":26409,"nodeType":"EventDefinition","src":"7055:134:59","nodes":[],"anonymous":false,"eventSelector":"0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f","name":"SupportAdded","nameLocation":"7061:12:59","parameters":{"id":26408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26399,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"7091:4:59","nodeType":"VariableDeclaration","scope":26409,"src":"7083:12:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26398,"name":"address","nodeType":"ElementaryTypeName","src":"7083:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26401,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7105:10:59","nodeType":"VariableDeclaration","scope":26409,"src":"7097:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26400,"name":"uint256","nodeType":"ElementaryTypeName","src":"7097:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26403,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"7125:6:59","nodeType":"VariableDeclaration","scope":26409,"src":"7117:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26402,"name":"uint256","nodeType":"ElementaryTypeName","src":"7117:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26405,"indexed":false,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"7141:17:59","nodeType":"VariableDeclaration","scope":26409,"src":"7133:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26404,"name":"uint256","nodeType":"ElementaryTypeName","src":"7133:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26407,"indexed":false,"mutability":"mutable","name":"convictionLast","nameLocation":"7168:14:59","nodeType":"VariableDeclaration","scope":26409,"src":"7160:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26406,"name":"uint256","nodeType":"ElementaryTypeName","src":"7160:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7073:115:59"}},{"id":26414,"nodeType":"EventDefinition","src":"7194:41:59","nodes":[],"anonymous":false,"eventSelector":"ec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc","name":"CVParamsUpdated","nameLocation":"7200:15:59","parameters":{"id":26413,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26412,"indexed":false,"mutability":"mutable","name":"cvParams","nameLocation":"7225:8:59","nodeType":"VariableDeclaration","scope":26414,"src":"7216:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":26411,"nodeType":"UserDefinedTypeName","pathNode":{"id":26410,"name":"CVParams","nameLocations":["7216:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"7216:8:59"},"referencedDeclaration":26235,"src":"7216:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"7215:19:59"}},{"id":26418,"nodeType":"EventDefinition","src":"7240:49:59","nodes":[],"anonymous":false,"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"7246:15:59","parameters":{"id":26417,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26416,"indexed":false,"mutability":"mutable","name":"registryCommunity","nameLocation":"7270:17:59","nodeType":"VariableDeclaration","scope":26418,"src":"7262:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26415,"name":"address","nodeType":"ElementaryTypeName","src":"7262:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7261:27:59"}},{"id":26433,"nodeType":"EventDefinition","src":"7294:195:59","nodes":[],"anonymous":false,"eventSelector":"034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d","name":"ProposalDisputed","nameLocation":"7300:16:59","parameters":{"id":26432,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26421,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7338:10:59","nodeType":"VariableDeclaration","scope":26433,"src":"7326:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"},"typeName":{"id":26420,"nodeType":"UserDefinedTypeName","pathNode":{"id":26419,"name":"IArbitrator","nameLocations":["7326:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":33254,"src":"7326:11:59"},"referencedDeclaration":33254,"src":"7326:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":26423,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7366:10:59","nodeType":"VariableDeclaration","scope":26433,"src":"7358:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26422,"name":"uint256","nodeType":"ElementaryTypeName","src":"7358:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26425,"indexed":false,"mutability":"mutable","name":"disputeId","nameLocation":"7394:9:59","nodeType":"VariableDeclaration","scope":26433,"src":"7386:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26424,"name":"uint256","nodeType":"ElementaryTypeName","src":"7386:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26427,"indexed":false,"mutability":"mutable","name":"challenger","nameLocation":"7421:10:59","nodeType":"VariableDeclaration","scope":26433,"src":"7413:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26426,"name":"address","nodeType":"ElementaryTypeName","src":"7413:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26429,"indexed":false,"mutability":"mutable","name":"context","nameLocation":"7448:7:59","nodeType":"VariableDeclaration","scope":26433,"src":"7441:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":26428,"name":"string","nodeType":"ElementaryTypeName","src":"7441:6:59","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":26431,"indexed":false,"mutability":"mutable","name":"timestamp","nameLocation":"7473:9:59","nodeType":"VariableDeclaration","scope":26433,"src":"7465:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26430,"name":"uint256","nodeType":"ElementaryTypeName","src":"7465:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7316:172:59"}},{"id":26441,"nodeType":"EventDefinition","src":"7494:88:59","nodes":[],"anonymous":false,"eventSelector":"dc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f","name":"TribunaSafeRegistered","nameLocation":"7500:21:59","parameters":{"id":26440,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26435,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7530:8:59","nodeType":"VariableDeclaration","scope":26441,"src":"7522:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26434,"name":"address","nodeType":"ElementaryTypeName","src":"7522:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26437,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7548:10:59","nodeType":"VariableDeclaration","scope":26441,"src":"7540:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26436,"name":"address","nodeType":"ElementaryTypeName","src":"7540:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26439,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7568:12:59","nodeType":"VariableDeclaration","scope":26441,"src":"7560:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26438,"name":"address","nodeType":"ElementaryTypeName","src":"7560:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7521:60:59"}},{"id":26445,"nodeType":"EventDefinition","src":"7587:44:59","nodes":[],"anonymous":false,"eventSelector":"416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c","name":"ProposalCancelled","nameLocation":"7593:17:59","parameters":{"id":26444,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26443,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7619:10:59","nodeType":"VariableDeclaration","scope":26445,"src":"7611:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26442,"name":"uint256","nodeType":"ElementaryTypeName","src":"7611:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7610:20:59"}},{"id":26462,"nodeType":"EventDefinition","src":"7636:302:59","nodes":[],"anonymous":false,"eventSelector":"e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53","name":"ArbitrableConfigUpdated","nameLocation":"7642:23:59","parameters":{"id":26461,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26447,"indexed":false,"mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"7683:30:59","nodeType":"VariableDeclaration","scope":26462,"src":"7675:38:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26446,"name":"uint256","nodeType":"ElementaryTypeName","src":"7675:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26450,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7735:10:59","nodeType":"VariableDeclaration","scope":26462,"src":"7723:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"},"typeName":{"id":26449,"nodeType":"UserDefinedTypeName","pathNode":{"id":26448,"name":"IArbitrator","nameLocations":["7723:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":33254,"src":"7723:11:59"},"referencedDeclaration":33254,"src":"7723:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":26452,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7763:12:59","nodeType":"VariableDeclaration","scope":26462,"src":"7755:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26451,"name":"address","nodeType":"ElementaryTypeName","src":"7755:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26454,"indexed":false,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"7793:25:59","nodeType":"VariableDeclaration","scope":26462,"src":"7785:33:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26453,"name":"uint256","nodeType":"ElementaryTypeName","src":"7785:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26456,"indexed":false,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"7836:26:59","nodeType":"VariableDeclaration","scope":26462,"src":"7828:34:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26455,"name":"uint256","nodeType":"ElementaryTypeName","src":"7828:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26458,"indexed":false,"mutability":"mutable","name":"defaultRuling","nameLocation":"7880:13:59","nodeType":"VariableDeclaration","scope":26462,"src":"7872:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26457,"name":"uint256","nodeType":"ElementaryTypeName","src":"7872:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26460,"indexed":false,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"7911:20:59","nodeType":"VariableDeclaration","scope":26462,"src":"7903:28:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26459,"name":"uint256","nodeType":"ElementaryTypeName","src":"7903:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7665:272:59"}},{"id":26469,"nodeType":"EventDefinition","src":"7943:65:59","nodes":[],"anonymous":false,"eventSelector":"d418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e","name":"AllowlistMembersRemoved","nameLocation":"7949:23:59","parameters":{"id":26468,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26464,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"7981:6:59","nodeType":"VariableDeclaration","scope":26469,"src":"7973:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26463,"name":"uint256","nodeType":"ElementaryTypeName","src":"7973:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26467,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"7999:7:59","nodeType":"VariableDeclaration","scope":26469,"src":"7989:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":26465,"name":"address","nodeType":"ElementaryTypeName","src":"7989:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26466,"nodeType":"ArrayTypeName","src":"7989:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"7972:35:59"}},{"id":26476,"nodeType":"EventDefinition","src":"8013:63:59","nodes":[],"anonymous":false,"eventSelector":"7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a","name":"AllowlistMembersAdded","nameLocation":"8019:21:59","parameters":{"id":26475,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26471,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"8049:6:59","nodeType":"VariableDeclaration","scope":26476,"src":"8041:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26470,"name":"uint256","nodeType":"ElementaryTypeName","src":"8041:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26474,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"8067:7:59","nodeType":"VariableDeclaration","scope":26476,"src":"8057:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":26472,"name":"address","nodeType":"ElementaryTypeName","src":"8057:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26473,"nodeType":"ArrayTypeName","src":"8057:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"8040:35:59"}},{"id":26480,"nodeType":"EventDefinition","src":"8081:46:59","nodes":[],"anonymous":false,"eventSelector":"2667a0cd99dbc787d1d2596efe938cf43dfe83e8b8ddeb70e28007c09ff33485","name":"SybilScorerUpdated","nameLocation":"8087:18:59","parameters":{"id":26479,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26478,"indexed":false,"mutability":"mutable","name":"sybilScorer","nameLocation":"8114:11:59","nodeType":"VariableDeclaration","scope":26480,"src":"8106:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26477,"name":"address","nodeType":"ElementaryTypeName","src":"8106:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8105:21:59"}},{"id":26483,"nodeType":"VariableDeclaration","src":"8501:38:59","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"8524:7:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":26481,"name":"string","nodeType":"ElementaryTypeName","src":"8501:6:59","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":26482,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8534:5:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":26486,"nodeType":"VariableDeclaration","src":"8545:36:59","nodes":[],"constant":true,"functionSelector":"0f529ba2","mutability":"constant","name":"D","nameLocation":"8569:1:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26484,"name":"uint256","nodeType":"ElementaryTypeName","src":"8545:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030303030","id":26485,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8573:8:59","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"value":"10000000"},"visibility":"public"},{"id":26489,"nodeType":"VariableDeclaration","src":"8595:71:59","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"8621:7:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26487,"name":"uint256","nodeType":"ElementaryTypeName","src":"8595:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313030303030303030303030303030303030303030303030303030303030303030","id":26488,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8631:35:59","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"value":"0x100000000000000000000000000000000"},"visibility":"internal"},{"id":26492,"nodeType":"VariableDeclaration","src":"8682:70:59","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"8708:7:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26490,"name":"uint256","nodeType":"ElementaryTypeName","src":"8682:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830303030303030303030303030303030303030303030303030303030303030","id":26491,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8718:34:59","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"value":"0x80000000000000000000000000000000"},"visibility":"internal"},{"id":26495,"nodeType":"VariableDeclaration","src":"8768:54:59","nodes":[],"constant":true,"mutability":"constant","name":"TWO_64","nameLocation":"8794:6:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26493,"name":"uint256","nodeType":"ElementaryTypeName","src":"8768:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030303030303030303030303030","id":26494,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8803:19:59","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"value":"0x10000000000000000"},"visibility":"internal"},{"id":26498,"nodeType":"VariableDeclaration","src":"8837:49:59","nodes":[],"constant":true,"functionSelector":"406244d8","mutability":"constant","name":"MAX_STAKED_PROPOSALS","nameLocation":"8861:20:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26496,"name":"uint256","nodeType":"ElementaryTypeName","src":"8837:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130","id":26497,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8884:2:59","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"visibility":"public"},{"id":26501,"nodeType":"VariableDeclaration","src":"8972:42:59","nodes":[],"constant":true,"functionSelector":"626c47e8","mutability":"constant","name":"RULING_OPTIONS","nameLocation":"8996:14:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26499,"name":"uint256","nodeType":"ElementaryTypeName","src":"8972:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"33","id":26500,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9013:1:59","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"visibility":"public"},{"id":26504,"nodeType":"VariableDeclaration","src":"9020:54:59","nodes":[],"constant":true,"functionSelector":"f5be3f7c","mutability":"constant","name":"DISPUTE_COOLDOWN_SEC","nameLocation":"9044:20:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26502,"name":"uint256","nodeType":"ElementaryTypeName","src":"9020:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"32","id":26503,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9067:7:59","subdenomination":"hours","typeDescriptions":{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"},"value":"2"},"visibility":"public"},{"id":26506,"nodeType":"VariableDeclaration","src":"9081:40:59","nodes":[],"constant":false,"mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"9098:23:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26505,"name":"address","nodeType":"ElementaryTypeName","src":"9081:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":26508,"nodeType":"VariableDeclaration","src":"9169:47:59","nodes":[],"constant":false,"mutability":"mutable","name":"surpressStateMutabilityWarning","nameLocation":"9186:30:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26507,"name":"uint256","nodeType":"ElementaryTypeName","src":"9169:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":26510,"nodeType":"VariableDeclaration","src":"9260:25:59","nodes":[],"constant":false,"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"9275:10:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26509,"name":"uint256","nodeType":"ElementaryTypeName","src":"9260:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":26512,"nodeType":"VariableDeclaration","src":"9291:26:59","nodes":[],"constant":false,"functionSelector":"a28889e1","mutability":"mutable","name":"disputeCount","nameLocation":"9305:12:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":26511,"name":"uint64","nodeType":"ElementaryTypeName","src":"9291:6:59","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"public"},{"id":26514,"nodeType":"VariableDeclaration","src":"9323:30:59","nodes":[],"constant":false,"functionSelector":"0c0512e9","mutability":"mutable","name":"proposalCounter","nameLocation":"9338:15:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26513,"name":"uint256","nodeType":"ElementaryTypeName","src":"9323:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":26516,"nodeType":"VariableDeclaration","src":"9359:45:59","nodes":[],"constant":false,"functionSelector":"125fd1d9","mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"9374:30:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26515,"name":"uint256","nodeType":"ElementaryTypeName","src":"9359:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":26518,"nodeType":"VariableDeclaration","src":"9411:26:59","nodes":[],"constant":false,"functionSelector":"817b1cd2","mutability":"mutable","name":"totalStaked","nameLocation":"9426:11:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26517,"name":"uint256","nodeType":"ElementaryTypeName","src":"9411:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":26520,"nodeType":"VariableDeclaration","src":"9443:35:59","nodes":[],"constant":false,"functionSelector":"aba9ffee","mutability":"mutable","name":"totalPointsActivated","nameLocation":"9458:20:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26519,"name":"uint256","nodeType":"ElementaryTypeName","src":"9443:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":26523,"nodeType":"VariableDeclaration","src":"9485:24:59","nodes":[],"constant":false,"functionSelector":"2506b870","mutability":"mutable","name":"cvParams","nameLocation":"9501:8:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams"},"typeName":{"id":26522,"nodeType":"UserDefinedTypeName","pathNode":{"id":26521,"name":"CVParams","nameLocations":["9485:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"9485:8:59"},"referencedDeclaration":26235,"src":"9485:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"public"},{"id":26526,"nodeType":"VariableDeclaration","src":"9556:32:59","nodes":[],"constant":false,"functionSelector":"351d9f96","mutability":"mutable","name":"proposalType","nameLocation":"9576:12:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"},"typeName":{"id":26525,"nodeType":"UserDefinedTypeName","pathNode":{"id":26524,"name":"ProposalType","nameLocations":["9556:12:59"],"nodeType":"IdentifierPath","referencedDeclaration":26138,"src":"9556:12:59"},"referencedDeclaration":26138,"src":"9556:12:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"visibility":"public"},{"id":26529,"nodeType":"VariableDeclaration","src":"9647:30:59","nodes":[],"constant":false,"functionSelector":"2dbd6fdd","mutability":"mutable","name":"pointSystem","nameLocation":"9666:11:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"typeName":{"id":26528,"nodeType":"UserDefinedTypeName","pathNode":{"id":26527,"name":"PointSystem","nameLocations":["9647:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":26143,"src":"9647:11:59"},"referencedDeclaration":26143,"src":"9647:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"visibility":"public"},{"id":26532,"nodeType":"VariableDeclaration","src":"9683:36:59","nodes":[],"constant":false,"functionSelector":"a47ff7e5","mutability":"mutable","name":"pointConfig","nameLocation":"9708:11:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage","typeString":"struct PointSystemConfig"},"typeName":{"id":26531,"nodeType":"UserDefinedTypeName","pathNode":{"id":26530,"name":"PointSystemConfig","nameLocations":["9683:17:59"],"nodeType":"IdentifierPath","referencedDeclaration":26212,"src":"9683:17:59"},"referencedDeclaration":26212,"src":"9683:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"public"},{"id":26535,"nodeType":"VariableDeclaration","src":"9752:46:59","nodes":[],"constant":false,"functionSelector":"6003e414","mutability":"mutable","name":"registryCommunity","nameLocation":"9781:17:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":26534,"nodeType":"UserDefinedTypeName","pathNode":{"id":26533,"name":"RegistryCommunityV0_0","nameLocations":["9752:21:59"],"nodeType":"IdentifierPath","referencedDeclaration":33072,"src":"9752:21:59"},"referencedDeclaration":33072,"src":"9752:21:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"visibility":"public"},{"id":26538,"nodeType":"VariableDeclaration","src":"9805:39:59","nodes":[],"constant":false,"functionSelector":"0bece79c","mutability":"mutable","name":"collateralVault","nameLocation":"9829:15:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"},"typeName":{"id":26537,"nodeType":"UserDefinedTypeName","pathNode":{"id":26536,"name":"ICollateralVault","nameLocations":["9805:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":33287,"src":"9805:16:59"},"referencedDeclaration":33287,"src":"9805:16:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"visibility":"public"},{"id":26541,"nodeType":"VariableDeclaration","src":"9850:31:59","nodes":[],"constant":false,"functionSelector":"b6c61f31","mutability":"mutable","name":"sybilScorer","nameLocation":"9870:11:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"},"typeName":{"id":26540,"nodeType":"UserDefinedTypeName","pathNode":{"id":26539,"name":"ISybilScorer","nameLocations":["9850:12:59"],"nodeType":"IdentifierPath","referencedDeclaration":30228,"src":"9850:12:59"},"referencedDeclaration":30228,"src":"9850:12:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"visibility":"public"},{"id":26546,"nodeType":"VariableDeclaration","src":"9948:45:59","nodes":[],"constant":false,"functionSelector":"013cf08b","mutability":"mutable","name":"proposals","nameLocation":"9984:9:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"typeName":{"id":26545,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":26542,"name":"uint256","nodeType":"ElementaryTypeName","src":"9956:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9948:28:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":26544,"nodeType":"UserDefinedTypeName","pathNode":{"id":26543,"name":"Proposal","nameLocations":["9967:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"9967:8:59"},"referencedDeclaration":26204,"src":"9967:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}}},"visibility":"public"},{"id":26550,"nodeType":"VariableDeclaration","src":"10049:53:59","nodes":[],"constant":false,"functionSelector":"5db64b99","mutability":"mutable","name":"totalVoterStakePct","nameLocation":"10084:18:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":26549,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":26547,"name":"address","nodeType":"ElementaryTypeName","src":"10057:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"10049:27:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":26548,"name":"uint256","nodeType":"ElementaryTypeName","src":"10068:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":26555,"nodeType":"VariableDeclaration","src":"10140:57:59","nodes":[],"constant":false,"functionSelector":"868c57b8","mutability":"mutable","name":"voterStakedProposals","nameLocation":"10177:20:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"typeName":{"id":26554,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":26551,"name":"address","nodeType":"ElementaryTypeName","src":"10148:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"10140:29:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"baseType":{"id":26552,"name":"uint256","nodeType":"ElementaryTypeName","src":"10159:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":26553,"nodeType":"ArrayTypeName","src":"10159:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"visibility":"public"},{"id":26559,"nodeType":"VariableDeclaration","src":"10235:56:59","nodes":[],"constant":false,"functionSelector":"255ffb38","mutability":"mutable","name":"disputeIdToProposalId","nameLocation":"10270:21:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"typeName":{"id":26558,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":26556,"name":"uint256","nodeType":"ElementaryTypeName","src":"10243:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"10235:27:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":26557,"name":"uint256","nodeType":"ElementaryTypeName","src":"10254:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":26564,"nodeType":"VariableDeclaration","src":"10297:61:59","nodes":[],"constant":false,"functionSelector":"41bb7605","mutability":"mutable","name":"arbitrableConfigs","nameLocation":"10341:17:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"typeName":{"id":26563,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":26560,"name":"uint256","nodeType":"ElementaryTypeName","src":"10305:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"10297:36:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":26562,"nodeType":"UserDefinedTypeName","pathNode":{"id":26561,"name":"ArbitrableConfig","nameLocations":["10316:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"10316:16:59"},"referencedDeclaration":26226,"src":"10316:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}}},"visibility":"public"},{"id":26588,"nodeType":"FunctionDefinition","src":"10610:222:59","nodes":[],"body":{"id":26587,"nodeType":"Block","src":"10717:115:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":26578,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26566,"src":"10738:5:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"43565374726174656779","id":26579,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10745:12:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},"value":"CVStrategy"},{"id":26580,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26570,"src":"10759:5:59","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":26575,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10727:5:59","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$30151_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":26577,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10733:4:59","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":25517,"src":"10727:10:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (address,string memory,address)"}},"id":26581,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10727:38:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26582,"nodeType":"ExpressionStatement","src":"10727:38:59"},{"expression":{"id":26585,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26583,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26506,"src":"10775:23:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":26584,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26568,"src":"10801:24:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10775:50:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26586,"nodeType":"ExpressionStatement","src":"10775:50:59"}]},"functionSelector":"184b9559","implemented":true,"kind":"function","modifiers":[{"id":26573,"kind":"modifierInvocation","modifierName":{"id":26572,"name":"initializer","nameLocations":["10705:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":14193,"src":"10705:11:59"},"nodeType":"ModifierInvocation","src":"10705:11:59"}],"name":"init","nameLocation":"10619:4:59","parameters":{"id":26571,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26566,"mutability":"mutable","name":"_allo","nameLocation":"10632:5:59","nodeType":"VariableDeclaration","scope":26588,"src":"10624:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26565,"name":"address","nodeType":"ElementaryTypeName","src":"10624:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26568,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10647:24:59","nodeType":"VariableDeclaration","scope":26588,"src":"10639:32:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26567,"name":"address","nodeType":"ElementaryTypeName","src":"10639:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26570,"mutability":"mutable","name":"owner","nameLocation":"10681:5:59","nodeType":"VariableDeclaration","scope":26588,"src":"10673:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26569,"name":"address","nodeType":"ElementaryTypeName","src":"10673:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10623:64:59"},"returnParameters":{"id":26574,"nodeType":"ParameterList","parameters":[],"src":"10717:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":26634,"nodeType":"FunctionDefinition","src":"10838:826:59","nodes":[],"body":{"id":26633,"nodeType":"Block","src":"10914:750:59","nodes":[],"statements":[{"expression":{"id":26603,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":26596,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"10982:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26598,"indexExpression":{"id":26597,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11000:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10982:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26599,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"11032:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"10982:60:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":26601,"name":"newSafeArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26590,"src":"11057:17:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":26600,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33254,"src":"11045:11:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IArbitrator_$33254_$","typeString":"type(contract IArbitrator)"}},"id":26602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11045:30:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"src":"10982:93:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"id":26604,"nodeType":"ExpressionStatement","src":"10982:93:59"},{"eventCall":{"arguments":[{"id":26606,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11127:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":26607,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"11171:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26609,"indexExpression":{"id":26608,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11189:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11171:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26610,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11221:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"11171:60:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},{"expression":{"baseExpression":{"id":26611,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"11245:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26613,"indexExpression":{"id":26612,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11263:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11245:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26614,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11295:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"11245:62:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":26615,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"11321:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26617,"indexExpression":{"id":26616,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11339:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11321:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26618,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11371:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"11321:75:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":26619,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"11410:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26621,"indexExpression":{"id":26620,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11428:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11410:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26622,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11460:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"11410:76:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":26623,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"11500:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26625,"indexExpression":{"id":26624,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11518:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11500:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26626,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11550:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"11500:63:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":26627,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"11577:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26629,"indexExpression":{"id":26628,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11595:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11577:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26630,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11627:20:59","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":26225,"src":"11577:70:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$33254","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":26605,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26462,"src":"11090:23:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$33254_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":26631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11090:567:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26632,"nodeType":"EmitStatement","src":"11085:572:59"}]},"functionSelector":"f4fe2556","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":26593,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10911:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":26594,"kind":"modifierInvocation","modifierName":{"id":26592,"name":"reinitializer","nameLocations":["10897:13:59"],"nodeType":"IdentifierPath","referencedDeclaration":14226,"src":"10897:13:59"},"nodeType":"ModifierInvocation","src":"10897:16:59"}],"name":"init2","nameLocation":"10847:5:59","parameters":{"id":26591,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26590,"mutability":"mutable","name":"newSafeArbitrator","nameLocation":"10861:17:59","nodeType":"VariableDeclaration","scope":26634,"src":"10853:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26589,"name":"address","nodeType":"ElementaryTypeName","src":"10853:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10852:27:59"},"returnParameters":{"id":26595,"nodeType":"ParameterList","parameters":[],"src":"10914:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":26742,"nodeType":"FunctionDefinition","src":"11670:1036:59","nodes":[],"body":{"id":26741,"nodeType":"Block","src":"11754:952:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":26645,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26636,"src":"11784:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":26644,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25653,"src":"11764:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":26646,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11764:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26647,"nodeType":"ExpressionStatement","src":"11764:28:59"},{"expression":{"id":26657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26648,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"11803:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":26652,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26506,"src":"11856:23:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":26654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"11881:12:59","subExpression":{"id":26653,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26510,"src":"11881:10:59","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":26650,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":706,"src":"11838:5:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$706_$","typeString":"type(library Clone)"}},"id":26651,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11844:11:59","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":705,"src":"11838:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":26655,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11838:56:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":26649,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33287,"src":"11821:16:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$33287_$","typeString":"type(contract ICollateralVault)"}},"id":26656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11821:74:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"src":"11803:92:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":26658,"nodeType":"ExpressionStatement","src":"11803:92:59"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":26659,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"11905:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":26661,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11921:10:59","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":33259,"src":"11905:26:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":26662,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11905:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26663,"nodeType":"ExpressionStatement","src":"11905:28:59"},{"assignments":[26666],"declarations":[{"constant":false,"id":26666,"mutability":"mutable","name":"ip","nameLocation":"11982:2:59","nodeType":"VariableDeclaration","scope":26741,"src":"11944:40:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":26665,"nodeType":"UserDefinedTypeName","pathNode":{"id":26664,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["11944:30:59"],"nodeType":"IdentifierPath","referencedDeclaration":26280,"src":"11944:30:59"},"referencedDeclaration":26280,"src":"11944:30:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":26673,"initialValue":{"arguments":[{"id":26669,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26638,"src":"11998:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":26670,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26280,"src":"12006:30:59","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$26280_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}}],"id":26671,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"12005:32:59","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$26280_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_$26280_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}],"expression":{"id":26667,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"11987:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":26668,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11991:6:59","memberName":"decode","nodeType":"MemberAccess","src":"11987:10:59","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":26672,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11987:51:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"11944:94:59"},{"expression":{"id":26679,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26674,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"12206:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":26676,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12248:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26677,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12251:17:59","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":26272,"src":"12248:20:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":26675,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33072,"src":"12226:21:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$33072_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":26678,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12226:43:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"src":"12206:63:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":26680,"nodeType":"ExpressionStatement","src":"12206:63:59"},{"expression":{"id":26684,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26681,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26526,"src":"12280:12:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":26682,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12295:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26683,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12298:12:59","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":26261,"src":"12295:15:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"src":"12280:30:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"id":26685,"nodeType":"ExpressionStatement","src":"12280:30:59"},{"expression":{"id":26689,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26686,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"12320:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":26687,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12334:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26688,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12337:11:59","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":26264,"src":"12334:14:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"12320:28:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"id":26690,"nodeType":"ExpressionStatement","src":"12320:28:59"},{"expression":{"id":26694,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26691,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26532,"src":"12358:11:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":26692,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12372:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26693,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12375:11:59","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":26267,"src":"12372:14:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"12358:28:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage","typeString":"struct PointSystemConfig storage ref"}},"id":26695,"nodeType":"ExpressionStatement","src":"12358:28:59"},{"expression":{"id":26701,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26696,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"12396:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":26698,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12423:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26699,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12426:11:59","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":26274,"src":"12423:14:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":26697,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30228,"src":"12410:12:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$30228_$","typeString":"type(contract ISybilScorer)"}},"id":26700,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12410:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"src":"12396:42:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"id":26702,"nodeType":"ExpressionStatement","src":"12396:42:59"},{"eventCall":{"arguments":[{"id":26704,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26636,"src":"12469:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":26705,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12478:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"id":26703,"name":"InitializedCV2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26359,"src":"12454:14:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_1 memory)"}},"id":26706,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12454:27:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26707,"nodeType":"EmitStatement","src":"12449:32:59"},{"expression":{"arguments":[{"expression":{"id":26709,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12507:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12510:16:59","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":26270,"src":"12507:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":26711,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12528:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26712,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12531:8:59","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":26258,"src":"12528:11:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}},{"arguments":[{"hexValue":"30","id":26716,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12555:1:59","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":26715,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12541:13:59","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":26713,"name":"address","nodeType":"ElementaryTypeName","src":"12545:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26714,"nodeType":"ArrayTypeName","src":"12545:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":26717,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12541:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"arguments":[{"hexValue":"30","id":26721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12573:1:59","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":26720,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12559:13:59","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":26718,"name":"address","nodeType":"ElementaryTypeName","src":"12563:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26719,"nodeType":"ArrayTypeName","src":"12563:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":26722,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12559:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$26235_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":26708,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[29257,29398,29436],"referencedDeclaration":29398,"src":"12492:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$26226_memory_ptr_$_t_struct$_CVParams_$26235_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":26723,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12492:84:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26724,"nodeType":"ExpressionStatement","src":"12492:84:59"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":26733,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":26727,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"12598:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}],"id":26726,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12590:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26725,"name":"address","nodeType":"ElementaryTypeName","src":"12590:7:59","typeDescriptions":{}}},"id":26728,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12590:20:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"307830","id":26731,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12622:3:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0x0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":26730,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12614:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26729,"name":"address","nodeType":"ElementaryTypeName","src":"12614:7:59","typeDescriptions":{}}},"id":26732,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12614:12:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12590:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26740,"nodeType":"IfStatement","src":"12586:114:59","trueBody":{"id":26739,"nodeType":"Block","src":"12628:72:59","statements":[{"expression":{"arguments":[{"expression":{"id":26735,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12665:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26736,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12668:20:59","memberName":"sybilScorerThreshold","nodeType":"MemberAccess","referencedDeclaration":26276,"src":"12665:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":26734,"name":"_registerToSybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30146,"src":"12642:22:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":26737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12642:47:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26738,"nodeType":"ExpressionStatement","src":"12642:47:59"}]}}]},"baseFunctions":[643],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":26642,"kind":"modifierInvocation","modifierName":{"id":26641,"name":"onlyAllo","nameLocations":["11745:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":25525,"src":"11745:8:59"},"nodeType":"ModifierInvocation","src":"11745:8:59"}],"name":"initialize","nameLocation":"11679:10:59","overrides":{"id":26640,"nodeType":"OverrideSpecifier","overrides":[],"src":"11736:8:59"},"parameters":{"id":26639,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26636,"mutability":"mutable","name":"_poolId","nameLocation":"11698:7:59","nodeType":"VariableDeclaration","scope":26742,"src":"11690:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26635,"name":"uint256","nodeType":"ElementaryTypeName","src":"11690:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26638,"mutability":"mutable","name":"_data","nameLocation":"11720:5:59","nodeType":"VariableDeclaration","scope":26742,"src":"11707:18:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":26637,"name":"bytes","nodeType":"ElementaryTypeName","src":"11707:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"11689:37:59"},"returnParameters":{"id":26643,"nodeType":"ParameterList","parameters":[],"src":"11754:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":26746,"nodeType":"FunctionDefinition","src":"12877:83:59","nodes":[],"body":{"id":26745,"nodeType":"Block","src":"12905:55:59","nodes":[],"statements":[]},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":26743,"nodeType":"ParameterList","parameters":[],"src":"12885:2:59"},"returnParameters":{"id":26744,"nodeType":"ParameterList","parameters":[],"src":"12905:0:59"},"scope":30151,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":26750,"nodeType":"FunctionDefinition","src":"12966:135:59","nodes":[],"body":{"id":26749,"nodeType":"Block","src":"12993:108:59","nodes":[],"statements":[]},"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":26747,"nodeType":"ParameterList","parameters":[],"src":"12973:2:59"},"returnParameters":{"id":26748,"nodeType":"ParameterList","parameters":[],"src":"12993:0:59"},"scope":30151,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":26772,"nodeType":"FunctionDefinition","src":"13107:210:59","nodes":[],"body":{"id":26771,"nodeType":"Block","src":"13206:111:59","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":26769,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"id":26764,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":26759,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26752,"src":"13223:11:59","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":26761,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26134,"src":"13243:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}],"id":26760,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"13238:4:59","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":26762,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13238:20:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$26134","typeString":"type(contract IPointStrategy)"}},"id":26763,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13259:11:59","memberName":"interfaceId","nodeType":"MemberAccess","src":"13238:32:59","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"src":"13223:47:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":26767,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26752,"src":"13298:11:59","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":26765,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"13274:5:59","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$30151_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":26766,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13280:17:59","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":18549,"src":"13274:23:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes4_$returns$_t_bool_$","typeString":"function (bytes4) view returns (bool)"}},"id":26768,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13274:36:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"13223:87:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":26758,"id":26770,"nodeType":"Return","src":"13216:94:59"}]},"baseFunctions":[18549],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"13116:17:59","overrides":{"id":26755,"nodeType":"OverrideSpecifier","overrides":[{"id":26754,"name":"ERC165","nameLocations":["13183:6:59"],"nodeType":"IdentifierPath","referencedDeclaration":18550,"src":"13183:6:59"}],"src":"13174:16:59"},"parameters":{"id":26753,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26752,"mutability":"mutable","name":"interfaceId","nameLocation":"13141:11:59","nodeType":"VariableDeclaration","scope":26772,"src":"13134:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":26751,"name":"bytes4","nodeType":"ElementaryTypeName","src":"13134:6:59","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"13133:20:59"},"returnParameters":{"id":26758,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26757,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":26772,"src":"13200:4:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":26756,"name":"bool","nodeType":"ElementaryTypeName","src":"13200:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13199:6:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":26788,"nodeType":"FunctionDefinition","src":"13488:404:59","nodes":[],"body":{"id":26787,"nodeType":"Block","src":"13556:336:59","nodes":[],"statements":[{"condition":{"id":26781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"13783:36:59","subExpression":{"arguments":[{"id":26779,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26774,"src":"13811:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":26777,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"13784:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":26778,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13802:8:59","memberName":"isMember","nodeType":"MemberAccess","referencedDeclaration":32515,"src":"13784:26:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":26780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13784:35:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26786,"nodeType":"IfStatement","src":"13779:93:59","trueBody":{"id":26785,"nodeType":"Block","src":"13821:51:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":26782,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26291,"src":"13842:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":26783,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13842:19:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26784,"nodeType":"RevertStatement","src":"13835:26:59"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkSenderIsMember","nameLocation":"13497:19:59","parameters":{"id":26775,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26774,"mutability":"mutable","name":"_sender","nameLocation":"13525:7:59","nodeType":"VariableDeclaration","scope":26788,"src":"13517:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26773,"name":"address","nodeType":"ElementaryTypeName","src":"13517:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13516:17:59"},"returnParameters":{"id":26776,"nodeType":"ParameterList","parameters":[],"src":"13556:0:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":26804,"nodeType":"FunctionDefinition","src":"13898:171:59","nodes":[],"body":{"id":26803,"nodeType":"Block","src":"13953:116:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":26797,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":26791,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"13967:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":26792,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13971:6:59","memberName":"sender","nodeType":"MemberAccess","src":"13967:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":26795,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"13989:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}],"id":26794,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13981:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26793,"name":"address","nodeType":"ElementaryTypeName","src":"13981:7:59","typeDescriptions":{}}},"id":26796,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13981:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13967:40:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26802,"nodeType":"IfStatement","src":"13963:100:59","trueBody":{"id":26801,"nodeType":"Block","src":"14009:54:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":26798,"name":"OnlyCommunityAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26321,"src":"14030:20:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":26799,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14030:22:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26800,"nodeType":"RevertStatement","src":"14023:29:59"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryCommunity","nameLocation":"13907:21:59","parameters":{"id":26789,"nodeType":"ParameterList","parameters":[],"src":"13928:2:59"},"returnParameters":{"id":26790,"nodeType":"ParameterList","parameters":[],"src":"13953:0:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":26820,"nodeType":"FunctionDefinition","src":"14075:141:59","nodes":[],"body":{"id":26819,"nodeType":"Block","src":"14143:73:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":26814,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":26809,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26806,"src":"14157:8:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":26812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14177:1:59","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":26811,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14169:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26810,"name":"address","nodeType":"ElementaryTypeName","src":"14169:7:59","typeDescriptions":{}}},"id":26813,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14169:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14157:22:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26818,"nodeType":"IfStatement","src":"14153:56:59","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":26815,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26297,"src":"14188:19:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":26816,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14188:21:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26817,"nodeType":"RevertStatement","src":"14181:28:59"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"14084:18:59","parameters":{"id":26807,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26806,"mutability":"mutable","name":"_address","nameLocation":"14111:8:59","nodeType":"VariableDeclaration","scope":26820,"src":"14103:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26805,"name":"address","nodeType":"ElementaryTypeName","src":"14103:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14102:18:59"},"returnParameters":{"id":26808,"nodeType":"ParameterList","parameters":[],"src":"14143:0:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":26838,"nodeType":"FunctionDefinition","src":"14222:174:59","nodes":[],"body":{"id":26837,"nodeType":"Block","src":"14271:125:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":26831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":26823,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"14285:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":26824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14289:6:59","memberName":"sender","nodeType":"MemberAccess","src":"14285:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":26827,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"14307:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":26828,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14325:11:59","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":31136,"src":"14307:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$33380_$","typeString":"function () view external returns (contract ISafe)"}},"id":26829,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14307:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":26826,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14299:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26825,"name":"address","nodeType":"ElementaryTypeName","src":"14299:7:59","typeDescriptions":{}}},"id":26830,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14299:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14285:54:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26836,"nodeType":"IfStatement","src":"14281:109:59","trueBody":{"id":26835,"nodeType":"Block","src":"14341:49:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":26832,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26323,"src":"14362:15:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":26833,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14362:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26834,"nodeType":"RevertStatement","src":"14355:24:59"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"14231:15:59","parameters":{"id":26821,"nodeType":"ParameterList","parameters":[],"src":"14246:2:59"},"returnParameters":{"id":26822,"nodeType":"ParameterList","parameters":[],"src":"14271:0:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":26895,"nodeType":"FunctionDefinition","src":"14402:499:59","nodes":[],"body":{"id":26894,"nodeType":"Block","src":"14473:428:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":26853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":26847,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"14495:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}],"id":26846,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14487:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26845,"name":"address","nodeType":"ElementaryTypeName","src":"14487:7:59","typeDescriptions":{}}},"id":26848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14487:20:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":26851,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14519:1:59","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":26850,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14511:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26849,"name":"address","nodeType":"ElementaryTypeName","src":"14511:7:59","typeDescriptions":{}}},"id":26852,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14511:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14487:34:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26884,"nodeType":"IfStatement","src":"14483:345:59","trueBody":{"id":26883,"nodeType":"Block","src":"14523:305:59","statements":[{"assignments":[26855],"declarations":[{"constant":false,"id":26855,"mutability":"mutable","name":"allowlistRole","nameLocation":"14545:13:59","nodeType":"VariableDeclaration","scope":26883,"src":"14537:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":26854,"name":"bytes32","nodeType":"ElementaryTypeName","src":"14537:7:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":26863,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":26859,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14588:11:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":26860,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"14601:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":26857,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14571:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":26858,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14575:12:59","memberName":"encodePacked","nodeType":"MemberAccess","src":"14571:16:59","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":26861,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14571:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":26856,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14561:9:59","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":26862,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14561:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"14537:72:59"},{"condition":{"arguments":[{"id":26866,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26855,"src":"14653:13:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":26869,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14676:1:59","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":26868,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14668:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26867,"name":"address","nodeType":"ElementaryTypeName","src":"14668:7:59","typeDescriptions":{}}},"id":26870,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14668:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":26864,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"14627:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":26865,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14645:7:59","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":13595,"src":"14627:25:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":26871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14627:52:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":26881,"nodeType":"Block","src":"14731:87:59","statements":[{"expression":{"arguments":[{"id":26877,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26855,"src":"14782:13:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":26878,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26840,"src":"14797:5:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":26875,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"14756:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":26876,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14774:7:59","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":13595,"src":"14756:25:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":26879,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14756:47:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":26844,"id":26880,"nodeType":"Return","src":"14749:54:59"}]},"id":26882,"nodeType":"IfStatement","src":"14623:195:59","trueBody":{"id":26874,"nodeType":"Block","src":"14681:44:59","statements":[{"expression":{"hexValue":"74727565","id":26872,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"14706:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":26844,"id":26873,"nodeType":"Return","src":"14699:11:59"}]}}]}},{"expression":{"arguments":[{"id":26887,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26840,"src":"14873:5:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":26890,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"14888:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":26889,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14880:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26888,"name":"address","nodeType":"ElementaryTypeName","src":"14880:7:59","typeDescriptions":{}}},"id":26891,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14880:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":26885,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"14844:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"id":26886,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14856:16:59","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":30201,"src":"14844:28:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":26892,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14844:50:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":26844,"id":26893,"nodeType":"Return","src":"14837:57:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"14411:17:59","parameters":{"id":26841,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26840,"mutability":"mutable","name":"_user","nameLocation":"14437:5:59","nodeType":"VariableDeclaration","scope":26895,"src":"14429:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26839,"name":"address","nodeType":"ElementaryTypeName","src":"14429:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14428:15:59"},"returnParameters":{"id":26844,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26843,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":26895,"src":"14467:4:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":26842,"name":"bool","nodeType":"ElementaryTypeName","src":"14467:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"14466:6:59"},"scope":30151,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":26943,"nodeType":"FunctionDefinition","src":"14907:666:59","nodes":[],"body":{"id":26942,"nodeType":"Block","src":"15013:560:59","nodes":[],"statements":[{"assignments":[26904],"declarations":[{"constant":false,"id":26904,"mutability":"mutable","name":"p","nameLocation":"15040:1:59","nodeType":"VariableDeclaration","scope":26942,"src":"15023:18:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":26903,"nodeType":"UserDefinedTypeName","pathNode":{"id":26902,"name":"Proposal","nameLocations":["15023:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"15023:8:59"},"referencedDeclaration":26204,"src":"15023:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":26908,"initialValue":{"baseExpression":{"id":26905,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"15044:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":26907,"indexExpression":{"id":26906,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26897,"src":"15054:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15044:22:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15023:43:59"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":26936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":26911,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":26909,"name":"deltaSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26899,"src":"15093:12:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":26910,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15108:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15093:16:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":26934,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":26928,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":26922,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":26916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":26912,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26904,"src":"15151:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":26913,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15153:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"15151:16:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":26914,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"15171:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":26915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15186:8:59","memberName":"Inactive","nodeType":"MemberAccess","referencedDeclaration":26156,"src":"15171:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"15151:43:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":26921,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":26917,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26904,"src":"15198:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":26918,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15200:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"15198:16:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":26919,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"15218:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":26920,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15233:9:59","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":26159,"src":"15218:24:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"15198:44:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15151:91:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":26927,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":26923,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26904,"src":"15270:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":26924,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15272:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"15270:16:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":26925,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"15290:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":26926,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15305:8:59","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":26160,"src":"15290:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"15270:43:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15151:162:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":26933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":26929,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26904,"src":"15317:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":26930,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15319:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"15317:16:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":26931,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"15337:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":26932,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15352:8:59","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":26162,"src":"15337:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"15317:43:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15151:209:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":26935,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"15129:249:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15093:285:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26941,"nodeType":"IfStatement","src":"15076:491:59","trueBody":{"id":26940,"nodeType":"Block","src":"15389:178:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":26937,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"15486:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":26938,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15486:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26939,"nodeType":"ExpressionStatement","src":"15486:8:59"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkProposalAllocationValidity","nameLocation":"14916:32:59","parameters":{"id":26900,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26897,"mutability":"mutable","name":"_proposalId","nameLocation":"14957:11:59","nodeType":"VariableDeclaration","scope":26943,"src":"14949:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26896,"name":"uint256","nodeType":"ElementaryTypeName","src":"14949:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26899,"mutability":"mutable","name":"deltaSupport","nameLocation":"14977:12:59","nodeType":"VariableDeclaration","scope":26943,"src":"14970:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":26898,"name":"int256","nodeType":"ElementaryTypeName","src":"14970:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"14948:42:59"},"returnParameters":{"id":26901,"nodeType":"ParameterList","parameters":[],"src":"15013:0:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":26955,"nodeType":"FunctionDefinition","src":"15579:132:59","nodes":[],"body":{"id":26954,"nodeType":"Block","src":"15660:51:59","nodes":[],"statements":[{"expression":{"id":26952,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26950,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26506,"src":"15670:23:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":26951,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26945,"src":"15696:8:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15670:34:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26953,"nodeType":"ExpressionStatement","src":"15670:34:59"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":26948,"kind":"modifierInvocation","modifierName":{"id":26947,"name":"onlyOwner","nameLocations":["15650:9:59"],"nodeType":"IdentifierPath","referencedDeclaration":13956,"src":"15650:9:59"},"nodeType":"ModifierInvocation","src":"15650:9:59"}],"name":"setCollateralVaultTemplate","nameLocation":"15588:26:59","parameters":{"id":26946,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26945,"mutability":"mutable","name":"template","nameLocation":"15623:8:59","nodeType":"VariableDeclaration","scope":26955,"src":"15615:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26944,"name":"address","nodeType":"ElementaryTypeName","src":"15615:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15614:18:59"},"returnParameters":{"id":26949,"nodeType":"ParameterList","parameters":[],"src":"15660:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":27159,"nodeType":"FunctionDefinition","src":"16037:2679:59","nodes":[],"body":{"id":27158,"nodeType":"Block","src":"16146:2570:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":26966,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26959,"src":"16176:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":26965,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26788,"src":"16156:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":26967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16156:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26968,"nodeType":"ExpressionStatement","src":"16156:28:59"},{"expression":{"arguments":[{"arguments":[{"id":26974,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16240:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":26973,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16232:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26972,"name":"address","nodeType":"ElementaryTypeName","src":"16232:7:59","typeDescriptions":{}}},"id":26975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16232:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":26969,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"16194:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":26971,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16212:19:59","memberName":"onlyStrategyEnabled","nodeType":"MemberAccess","referencedDeclaration":31251,"src":"16194:37:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$__$","typeString":"function (address) view external"}},"id":26976,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16194:52:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26977,"nodeType":"ExpressionStatement","src":"16194:52:59"},{"expression":{"id":26978,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26957,"src":"16301:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":26979,"nodeType":"ExpressionStatement","src":"16301:5:59"},{"assignments":[26982],"declarations":[{"constant":false,"id":26982,"mutability":"mutable","name":"proposal","nameLocation":"16338:8:59","nodeType":"VariableDeclaration","scope":27158,"src":"16316:30:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal"},"typeName":{"id":26981,"nodeType":"UserDefinedTypeName","pathNode":{"id":26980,"name":"CreateProposal","nameLocations":["16316:14:59"],"nodeType":"IdentifierPath","referencedDeclaration":26155,"src":"16316:14:59"},"referencedDeclaration":26155,"src":"16316:14:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_storage_ptr","typeString":"struct CreateProposal"}},"visibility":"internal"}],"id":26989,"initialValue":{"arguments":[{"id":26985,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26957,"src":"16360:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":26986,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26155,"src":"16368:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$26155_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"id":26987,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"16367:16:59","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$26155_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$26155_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}],"expression":{"id":26983,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"16349:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":26984,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"16353:6:59","memberName":"decode","nodeType":"MemberAccess","src":"16349:10:59","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":26988,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16349:35:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"nodeType":"VariableDeclarationStatement","src":"16316:68:59"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"},"id":26993,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":26990,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26526,"src":"16462:12:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":26991,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26138,"src":"16478:12:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$26138_$","typeString":"type(enum ProposalType)"}},"id":26992,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"16491:7:59","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":26136,"src":"16478:20:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"src":"16462:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27030,"nodeType":"IfStatement","src":"16458:897:59","trueBody":{"id":27029,"nodeType":"Block","src":"16500:855:59","statements":[{"expression":{"arguments":[{"expression":{"id":26995,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"16533:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":26996,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16542:11:59","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":26147,"src":"16533:20:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":26994,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26820,"src":"16514:18:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":26997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16514:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26998,"nodeType":"ExpressionStatement","src":"16514:40:59"},{"assignments":[27001],"declarations":[{"constant":false,"id":27001,"mutability":"mutable","name":"_allo","nameLocation":"16746:5:59","nodeType":"VariableDeclaration","scope":27029,"src":"16740:11:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$314","typeString":"contract IAllo"},"typeName":{"id":27000,"nodeType":"UserDefinedTypeName","pathNode":{"id":26999,"name":"IAllo","nameLocations":["16740:5:59"],"nodeType":"IdentifierPath","referencedDeclaration":314,"src":"16740:5:59"},"referencedDeclaration":314,"src":"16740:5:59","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$314","typeString":"contract IAllo"}},"visibility":"internal"}],"id":27005,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":27002,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16754:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}},"id":27003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16759:7:59","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":25571,"src":"16754:12:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$314_$","typeString":"function () view external returns (contract IAllo)"}},"id":27004,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16754:14:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$314","typeString":"contract IAllo"}},"nodeType":"VariableDeclarationStatement","src":"16740:28:59"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":27014,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":27006,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"16786:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16795:14:59","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":26151,"src":"16786:23:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"arguments":[{"expression":{"id":27010,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"16827:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27011,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16836:6:59","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":26145,"src":"16827:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":27008,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27001,"src":"16813:5:59","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$314","typeString":"contract IAllo"}},"id":27009,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16819:7:59","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":307,"src":"16813:13:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$23_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":27012,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16813:30:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$23_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":27013,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16844:5:59","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":15,"src":"16813:36:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"16786:63:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27019,"nodeType":"IfStatement","src":"16782:352:59","trueBody":{"id":27018,"nodeType":"Block","src":"16851:283:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27015,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"17049:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":27016,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17049:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27017,"nodeType":"ExpressionStatement","src":"17049:8:59"}]}},{"condition":{"arguments":[{"expression":{"id":27021,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"17167:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17176:15:59","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":26149,"src":"17167:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27020,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28250,"src":"17151:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":27023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17151:41:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27028,"nodeType":"IfStatement","src":"17147:198:59","trueBody":{"id":27027,"nodeType":"Block","src":"17194:151:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27024,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"17260:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":27025,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17260:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27026,"nodeType":"ExpressionStatement","src":"17260:8:59"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":27050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":27042,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":27033,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"17390:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":27035,"indexExpression":{"id":27034,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"17408:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17390:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":27036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17440:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"17390:60:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}],"id":27032,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17382:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27031,"name":"address","nodeType":"ElementaryTypeName","src":"17382:7:59","typeDescriptions":{}}},"id":27037,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17382:69:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":27040,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17463:1:59","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":27039,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17455:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27038,"name":"address","nodeType":"ElementaryTypeName","src":"17455:7:59","typeDescriptions":{}}},"id":27041,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17455:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17382:83:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27049,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":27043,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17485:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":27044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17489:5:59","memberName":"value","nodeType":"MemberAccess","src":"17485:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":27045,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"17497:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":27047,"indexExpression":{"id":27046,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"17515:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17497:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":27048,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17547:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"17497:75:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17485:87:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"17382:190:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27055,"nodeType":"IfStatement","src":"17365:483:59","trueBody":{"id":27054,"nodeType":"Block","src":"17583:265:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27051,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"17767:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":27052,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17767:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27053,"nodeType":"ExpressionStatement","src":"17767:8:59"}]}},{"assignments":[27057],"declarations":[{"constant":false,"id":27057,"mutability":"mutable","name":"proposalId","nameLocation":"17866:10:59","nodeType":"VariableDeclaration","scope":27158,"src":"17858:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27056,"name":"uint256","nodeType":"ElementaryTypeName","src":"17858:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27060,"initialValue":{"id":27059,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"17879:17:59","subExpression":{"id":27058,"name":"proposalCounter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26514,"src":"17881:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"17858:38:59"},{"assignments":[27063],"declarations":[{"constant":false,"id":27063,"mutability":"mutable","name":"p","nameLocation":"17923:1:59","nodeType":"VariableDeclaration","scope":27158,"src":"17906:18:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":27062,"nodeType":"UserDefinedTypeName","pathNode":{"id":27061,"name":"Proposal","nameLocations":["17906:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"17906:8:59"},"referencedDeclaration":26204,"src":"17906:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":27067,"initialValue":{"baseExpression":{"id":27064,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"17927:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27066,"indexExpression":{"id":27065,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27057,"src":"17937:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17927:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"17906:42:59"},{"expression":{"id":27072,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27068,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"17959:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27070,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"17961:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"17959:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":27071,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27057,"src":"17974:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17959:25:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27073,"nodeType":"ExpressionStatement","src":"17959:25:59"},{"expression":{"id":27078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27074,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"17994:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27076,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"17996:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"17994:11:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":27077,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26959,"src":"18008:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17994:21:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":27079,"nodeType":"ExpressionStatement","src":"17994:21:59"},{"expression":{"id":27085,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27080,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18025:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27082,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18027:11:59","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":26180,"src":"18025:13:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27083,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"18041:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27084,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18050:11:59","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":26147,"src":"18041:20:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18025:36:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":27086,"nodeType":"ExpressionStatement","src":"18025:36:59"},{"expression":{"id":27092,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27087,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18071:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27089,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18073:14:59","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":26184,"src":"18071:16:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27090,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"18090:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27091,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18099:14:59","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":26151,"src":"18090:23:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18071:42:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":27093,"nodeType":"ExpressionStatement","src":"18071:42:59"},{"expression":{"id":27099,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27094,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18123:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27096,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18125:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"18123:17:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27097,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"18143:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27098,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18152:15:59","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":26149,"src":"18143:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18123:44:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27100,"nodeType":"ExpressionStatement","src":"18123:44:59"},{"expression":{"id":27106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27101,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18228:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27103,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18230:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"18228:16:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27104,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"18247:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":27105,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18262:6:59","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":26157,"src":"18247:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"18228:40:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":27107,"nodeType":"ExpressionStatement","src":"18228:40:59"},{"expression":{"id":27113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27108,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18278:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27110,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18280:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"18278:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27111,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"18292:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":27112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18298:6:59","memberName":"number","nodeType":"MemberAccess","src":"18292:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18278:26:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27114,"nodeType":"ExpressionStatement","src":"18278:26:59"},{"expression":{"id":27119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27115,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18314:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18316:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"18314:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":27118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18333:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"18314:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27120,"nodeType":"ExpressionStatement","src":"18314:20:59"},{"expression":{"id":27126,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27121,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18380:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27123,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18382:8:59","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":26196,"src":"18380:10:59","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27124,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"18393:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27125,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18402:8:59","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":26154,"src":"18393:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata memory"}},"src":"18380:30:59","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage","typeString":"struct Metadata storage ref"}},"id":27127,"nodeType":"ExpressionStatement","src":"18380:30:59"},{"expression":{"id":27132,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27128,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18420:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27130,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18422:23:59","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":26203,"src":"18420:25:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":27131,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"18448:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18420:58:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27133,"nodeType":"ExpressionStatement","src":"18420:58:59"},{"expression":{"arguments":[{"id":27140,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27057,"src":"18540:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":27141,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18552:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27142,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18554:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"18552:11:59","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":27134,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"18488:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":27136,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18504:17:59","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":33266,"src":"18488:33:59","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":27139,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":27137,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"18529:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":27138,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18533:5:59","memberName":"value","nodeType":"MemberAccess","src":"18529:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"18488:51:59","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":27143,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18488:76:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27144,"nodeType":"ExpressionStatement","src":"18488:76:59"},{"eventCall":{"arguments":[{"id":27146,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"18596:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":27147,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27057,"src":"18604:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27145,"name":"ProposalCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26373,"src":"18580:15:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":27148,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18580:35:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27149,"nodeType":"EmitStatement","src":"18575:40:59"},{"expression":{"arguments":[{"arguments":[{"id":27154,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27057,"src":"18697:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27153,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18689:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":27152,"name":"uint160","nodeType":"ElementaryTypeName","src":"18689:7:59","typeDescriptions":{}}},"id":27155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18689:19:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":27151,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18681:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27150,"name":"address","nodeType":"ElementaryTypeName","src":"18681:7:59","typeDescriptions":{}}},"id":27156,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18681:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":26964,"id":27157,"nodeType":"Return","src":"18674:35:59"}]},"baseFunctions":[25954],"implemented":true,"kind":"function","modifiers":[],"name":"_registerRecipient","nameLocation":"16046:18:59","overrides":{"id":26961,"nodeType":"OverrideSpecifier","overrides":[],"src":"16119:8:59"},"parameters":{"id":26960,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26957,"mutability":"mutable","name":"_data","nameLocation":"16078:5:59","nodeType":"VariableDeclaration","scope":27159,"src":"16065:18:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":26956,"name":"bytes","nodeType":"ElementaryTypeName","src":"16065:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":26959,"mutability":"mutable","name":"_sender","nameLocation":"16093:7:59","nodeType":"VariableDeclaration","scope":27159,"src":"16085:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26958,"name":"address","nodeType":"ElementaryTypeName","src":"16085:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16064:37:59"},"returnParameters":{"id":26964,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26963,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27159,"src":"16137:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26962,"name":"address","nodeType":"ElementaryTypeName","src":"16137:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16136:9:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":27195,"nodeType":"FunctionDefinition","src":"18835:339:59","nodes":[],"body":{"id":27194,"nodeType":"Block","src":"18892:282:59","nodes":[],"statements":[{"condition":{"id":27167,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"18906:27:59","subExpression":{"arguments":[{"id":27165,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27161,"src":"18925:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27164,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26895,"src":"18907:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":27166,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18907:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27172,"nodeType":"IfStatement","src":"18902:90:59","trueBody":{"id":27171,"nodeType":"Block","src":"18935:57:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":27168,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26325,"src":"18956:23:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":27169,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18956:25:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27170,"nodeType":"RevertStatement","src":"18949:32:59"}]}},{"expression":{"arguments":[{"id":27176,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27161,"src":"19044:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27179,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19061:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27178,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19053:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27177,"name":"address","nodeType":"ElementaryTypeName","src":"19053:7:59","typeDescriptions":{}}},"id":27180,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19053:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27173,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"19001:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27175,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19019:24:59","memberName":"activateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":31890,"src":"19001:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":27181,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19001:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27182,"nodeType":"ExpressionStatement","src":"19001:66:59"},{"expression":{"id":27192,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27183,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26520,"src":"19077:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"id":27186,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27161,"src":"19144:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27189,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19161:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19153:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27187,"name":"address","nodeType":"ElementaryTypeName","src":"19153:7:59","typeDescriptions":{}}},"id":27190,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19153:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27184,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"19101:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27185,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19119:24:59","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":32252,"src":"19101:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":27191,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19101:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19077:90:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27193,"nodeType":"ExpressionStatement","src":"19077:90:59"}]},"functionSelector":"db9b5d50","implemented":true,"kind":"function","modifiers":[],"name":"_activatePoints","nameLocation":"18844:15:59","parameters":{"id":27162,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27161,"mutability":"mutable","name":"_sender","nameLocation":"18868:7:59","nodeType":"VariableDeclaration","scope":27195,"src":"18860:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27160,"name":"address","nodeType":"ElementaryTypeName","src":"18860:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"18859:17:59"},"returnParameters":{"id":27163,"nodeType":"ParameterList","parameters":[],"src":"18892:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":27204,"nodeType":"FunctionDefinition","src":"19180:87:59","nodes":[],"body":{"id":27203,"nodeType":"Block","src":"19223:44:59","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":27199,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"19249:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":27200,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19253:6:59","memberName":"sender","nodeType":"MemberAccess","src":"19249:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27198,"name":"_activatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27195,"src":"19233:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":27201,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19233:27:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27202,"nodeType":"ExpressionStatement","src":"19233:27:59"}]},"functionSelector":"814516ad","implemented":true,"kind":"function","modifiers":[],"name":"activatePoints","nameLocation":"19189:14:59","parameters":{"id":27196,"nodeType":"ParameterList","parameters":[],"src":"19203:2:59"},"returnParameters":{"id":27197,"nodeType":"ParameterList","parameters":[],"src":"19223:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":27213,"nodeType":"FunctionDefinition","src":"19273:89:59","nodes":[],"body":{"id":27212,"nodeType":"Block","src":"19316:46:59","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":27208,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"19344:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":27209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19348:6:59","memberName":"sender","nodeType":"MemberAccess","src":"19344:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27207,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27261,"src":"19326:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":27210,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19326:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27211,"nodeType":"ExpressionStatement","src":"19326:29:59"}]},"functionSelector":"1ddf1e23","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"19282:16:59","parameters":{"id":27205,"nodeType":"ParameterList","parameters":[],"src":"19298:2:59"},"returnParameters":{"id":27206,"nodeType":"ParameterList","parameters":[],"src":"19316:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":27226,"nodeType":"FunctionDefinition","src":"19368:136:59","nodes":[],"body":{"id":27225,"nodeType":"Block","src":"19428:76:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27218,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26804,"src":"19438:21:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":27219,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19438:23:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27220,"nodeType":"ExpressionStatement","src":"19438:23:59"},{"expression":{"arguments":[{"id":27222,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27215,"src":"19489:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27221,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27261,"src":"19471:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":27223,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19471:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27224,"nodeType":"ExpressionStatement","src":"19471:26:59"}]},"baseFunctions":[26109],"functionSelector":"6453d9c4","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"19377:16:59","parameters":{"id":27216,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27215,"mutability":"mutable","name":"_member","nameLocation":"19402:7:59","nodeType":"VariableDeclaration","scope":27226,"src":"19394:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27214,"name":"address","nodeType":"ElementaryTypeName","src":"19394:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19393:17:59"},"returnParameters":{"id":27217,"nodeType":"ParameterList","parameters":[],"src":"19428:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":27261,"nodeType":"FunctionDefinition","src":"19510:359:59","nodes":[],"body":{"id":27260,"nodeType":"Block","src":"19571:298:59","nodes":[],"statements":[{"expression":{"id":27240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27231,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26520,"src":"19581:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"arguments":[{"id":27234,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27228,"src":"19648:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27237,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19665:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27236,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19657:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27235,"name":"address","nodeType":"ElementaryTypeName","src":"19657:7:59","typeDescriptions":{}}},"id":27238,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19657:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27232,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"19605:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27233,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19623:24:59","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":32252,"src":"19605:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":27239,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19605:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19581:90:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27241,"nodeType":"ExpressionStatement","src":"19581:90:59"},{"expression":{"arguments":[{"id":27245,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27228,"src":"19726:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27248,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19743:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27247,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19735:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27246,"name":"address","nodeType":"ElementaryTypeName","src":"19735:7:59","typeDescriptions":{}}},"id":27249,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19735:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27242,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"19681:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19699:26:59","memberName":"deactivateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":31945,"src":"19681:44:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":27250,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19681:68:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27251,"nodeType":"ExpressionStatement","src":"19681:68:59"},{"expression":{"arguments":[{"id":27253,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27228,"src":"19813:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27252,"name":"withdraw","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28087,"src":"19804:8:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":27254,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19804:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27255,"nodeType":"ExpressionStatement","src":"19804:17:59"},{"eventCall":{"arguments":[{"id":27257,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27228,"src":"19854:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27256,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26381,"src":"19836:17:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":27258,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19836:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27259,"nodeType":"EmitStatement","src":"19831:31:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_deactivatePoints","nameLocation":"19519:17:59","parameters":{"id":27229,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27228,"mutability":"mutable","name":"_member","nameLocation":"19545:7:59","nodeType":"VariableDeclaration","scope":27261,"src":"19537:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27227,"name":"address","nodeType":"ElementaryTypeName","src":"19537:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19536:17:59"},"returnParameters":{"id":27230,"nodeType":"ParameterList","parameters":[],"src":"19571:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":27349,"nodeType":"FunctionDefinition","src":"19875:1045:59","nodes":[],"body":{"id":27348,"nodeType":"Block","src":"19974:946:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27270,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26804,"src":"20029:21:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":27271,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20029:23:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27272,"nodeType":"ExpressionStatement","src":"20029:23:59"},{"condition":{"id":27276,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"20066:27:59","subExpression":{"arguments":[{"id":27274,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27263,"src":"20085:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27273,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26895,"src":"20067:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":27275,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20067:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27281,"nodeType":"IfStatement","src":"20062:90:59","trueBody":{"id":27280,"nodeType":"Block","src":"20095:57:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":27277,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26325,"src":"20116:23:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":27278,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20116:25:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27279,"nodeType":"RevertStatement","src":"20109:32:59"}]}},{"assignments":[27283],"declarations":[{"constant":false,"id":27283,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"20169:16:59","nodeType":"VariableDeclaration","scope":27348,"src":"20161:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27282,"name":"uint256","nodeType":"ElementaryTypeName","src":"20161:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27285,"initialValue":{"hexValue":"30","id":27284,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20188:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"20161:28:59"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"id":27289,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27286,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"20203:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":27287,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"20218:11:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$26143_$","typeString":"type(enum PointSystem)"}},"id":27288,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"20230:9:59","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":26141,"src":"20218:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"20203:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"id":27298,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27295,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"20358:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":27296,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"20373:11:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$26143_$","typeString":"type(enum PointSystem)"}},"id":27297,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"20385:6:59","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":26140,"src":"20373:18:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"20358:33:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"id":27310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27307,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"20491:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":27308,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"20506:11:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$26143_$","typeString":"type(enum PointSystem)"}},"id":27309,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"20518:9:59","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":26142,"src":"20506:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"20491:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27319,"nodeType":"IfStatement","src":"20487:133:59","trueBody":{"id":27318,"nodeType":"Block","src":"20529:91:59","statements":[{"expression":{"id":27316,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27311,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27283,"src":"20543:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":27313,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27263,"src":"20585:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27314,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27265,"src":"20594:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27312,"name":"increasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27517,"src":"20562:22:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":27315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20562:47:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20543:66:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27317,"nodeType":"ExpressionStatement","src":"20543:66:59"}]}},"id":27320,"nodeType":"IfStatement","src":"20354:266:59","trueBody":{"id":27306,"nodeType":"Block","src":"20393:88:59","statements":[{"expression":{"id":27304,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27299,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27283,"src":"20407:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":27301,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27263,"src":"20446:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27302,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27265,"src":"20455:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27300,"name":"increasePowerCapped","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27439,"src":"20426:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":27303,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20426:44:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20407:63:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27305,"nodeType":"ExpressionStatement","src":"20407:63:59"}]}},"id":27321,"nodeType":"IfStatement","src":"20199:421:59","trueBody":{"id":27294,"nodeType":"Block","src":"20241:107:59","statements":[{"expression":{"id":27292,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27290,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27283,"src":"20255:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":27291,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27265,"src":"20274:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20255:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27293,"nodeType":"ExpressionStatement","src":"20255:33:59"}]}},{"assignments":[27323],"declarations":[{"constant":false,"id":27323,"mutability":"mutable","name":"isActivated","nameLocation":"20634:11:59","nodeType":"VariableDeclaration","scope":27348,"src":"20629:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":27322,"name":"bool","nodeType":"ElementaryTypeName","src":"20629:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":27332,"initialValue":{"arguments":[{"id":27326,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27263,"src":"20694:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27329,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"20711:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27328,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20703:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27327,"name":"address","nodeType":"ElementaryTypeName","src":"20703:7:59","typeDescriptions":{}}},"id":27330,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20703:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27324,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"20648:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20666:27:59","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":31177,"src":"20648:45:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":27331,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20648:69:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"20629:88:59"},{"condition":{"id":27333,"name":"isActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27323,"src":"20731:11:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27339,"nodeType":"IfStatement","src":"20727:82:59","trueBody":{"id":27338,"nodeType":"Block","src":"20744:65:59","statements":[{"expression":{"id":27336,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27334,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26520,"src":"20758:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":27335,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27283,"src":"20782:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20758:40:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27337,"nodeType":"ExpressionStatement","src":"20758:40:59"}]}},{"eventCall":{"arguments":[{"id":27341,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27263,"src":"20838:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27342,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27265,"src":"20847:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":27343,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27283,"src":"20863:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27340,"name":"PowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26389,"src":"20823:14:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":27344,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20823:57:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27345,"nodeType":"EmitStatement","src":"20818:62:59"},{"expression":{"id":27346,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27283,"src":"20897:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":27269,"id":27347,"nodeType":"Return","src":"20890:23:59"}]},"baseFunctions":[26118],"functionSelector":"782aadff","implemented":true,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"19884:13:59","parameters":{"id":27266,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27263,"mutability":"mutable","name":"_member","nameLocation":"19906:7:59","nodeType":"VariableDeclaration","scope":27349,"src":"19898:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27262,"name":"address","nodeType":"ElementaryTypeName","src":"19898:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":27265,"mutability":"mutable","name":"_amountToStake","nameLocation":"19923:14:59","nodeType":"VariableDeclaration","scope":27349,"src":"19915:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27264,"name":"uint256","nodeType":"ElementaryTypeName","src":"19915:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19897:41:59"},"returnParameters":{"id":27269,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27268,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27349,"src":"19965:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27267,"name":"uint256","nodeType":"ElementaryTypeName","src":"19965:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19964:9:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":27401,"nodeType":"FunctionDefinition","src":"20926:684:59","nodes":[],"body":{"id":27400,"nodeType":"Block","src":"21027:583:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27358,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26804,"src":"21037:21:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":27359,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21037:23:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27360,"nodeType":"ExpressionStatement","src":"21037:23:59"},{"assignments":[27362],"declarations":[{"constant":false,"id":27362,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"21124:16:59","nodeType":"VariableDeclaration","scope":27400,"src":"21116:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27361,"name":"uint256","nodeType":"ElementaryTypeName","src":"21116:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27364,"initialValue":{"hexValue":"30","id":27363,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21143:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"21116:28:59"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":27373,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"id":27368,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27365,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"21158:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":27366,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"21173:11:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$26143_$","typeString":"type(enum PointSystem)"}},"id":27367,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"21185:9:59","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":26141,"src":"21173:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"21158:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"id":27372,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27369,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"21198:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":27370,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"21213:11:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$26143_$","typeString":"type(enum PointSystem)"}},"id":27371,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"21225:6:59","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":26140,"src":"21213:18:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"21198:33:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"21158:73:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":27386,"nodeType":"Block","src":"21354:93:59","statements":[{"expression":{"id":27384,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27379,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27362,"src":"21368:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":27381,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27351,"src":"21410:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27382,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27353,"src":"21419:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27380,"name":"decreasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27591,"src":"21387:22:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":27383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21387:49:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21368:68:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27385,"nodeType":"ExpressionStatement","src":"21368:68:59"}]},"id":27387,"nodeType":"IfStatement","src":"21154:293:59","trueBody":{"id":27378,"nodeType":"Block","src":"21233:115:59","statements":[{"expression":{"id":27376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27374,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27362,"src":"21247:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":27375,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27353,"src":"21266:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21247:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27377,"nodeType":"ExpressionStatement","src":"21247:35:59"}]}},{"expression":{"id":27390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27388,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26520,"src":"21456:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":27389,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27362,"src":"21480:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21456:40:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27391,"nodeType":"ExpressionStatement","src":"21456:40:59"},{"eventCall":{"arguments":[{"id":27393,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27351,"src":"21526:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27394,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27353,"src":"21535:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":27395,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27362,"src":"21553:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27392,"name":"PowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26397,"src":"21511:14:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":27396,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21511:59:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27397,"nodeType":"EmitStatement","src":"21506:64:59"},{"expression":{"id":27398,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27362,"src":"21587:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":27357,"id":27399,"nodeType":"Return","src":"21580:23:59"}]},"baseFunctions":[26127],"functionSelector":"2ed04b2b","implemented":true,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"20935:13:59","parameters":{"id":27354,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27351,"mutability":"mutable","name":"_member","nameLocation":"20957:7:59","nodeType":"VariableDeclaration","scope":27401,"src":"20949:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27350,"name":"address","nodeType":"ElementaryTypeName","src":"20949:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":27353,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20974:16:59","nodeType":"VariableDeclaration","scope":27401,"src":"20966:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27352,"name":"uint256","nodeType":"ElementaryTypeName","src":"20966:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20948:43:59"},"returnParameters":{"id":27357,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27356,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27401,"src":"21018:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27355,"name":"uint256","nodeType":"ElementaryTypeName","src":"21018:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21017:9:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":27439,"nodeType":"FunctionDefinition","src":"21616:571:59","nodes":[],"body":{"id":27438,"nodeType":"Block","src":"21726:461:59","nodes":[],"statements":[{"assignments":[27411],"declarations":[{"constant":false,"id":27411,"mutability":"mutable","name":"memberPower","nameLocation":"21806:11:59","nodeType":"VariableDeclaration","scope":27438,"src":"21798:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27410,"name":"uint256","nodeType":"ElementaryTypeName","src":"21798:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27420,"initialValue":{"arguments":[{"id":27414,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27403,"src":"21863:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27417,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21880:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27416,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21872:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27415,"name":"address","nodeType":"ElementaryTypeName","src":"21872:7:59","typeDescriptions":{}}},"id":27418,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21872:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27412,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"21820:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27413,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21838:24:59","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":32252,"src":"21820:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":27419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21820:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21798:88:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27426,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27423,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27421,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27411,"src":"21952:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":27422,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27405,"src":"21966:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21952:28:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":27424,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26532,"src":"21983:11:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage","typeString":"struct PointSystemConfig storage ref"}},"id":27425,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21995:9:59","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":26211,"src":"21983:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21952:52:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27435,"nodeType":"IfStatement","src":"21948:135:59","trueBody":{"id":27434,"nodeType":"Block","src":"22006:77:59","statements":[{"expression":{"id":27432,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27427,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27405,"src":"22020:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27431,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":27428,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26532,"src":"22037:11:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage","typeString":"struct PointSystemConfig storage ref"}},"id":27429,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"22049:9:59","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":26211,"src":"22037:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":27430,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27411,"src":"22061:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22037:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22020:52:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27433,"nodeType":"ExpressionStatement","src":"22020:52:59"}]}},{"expression":{"id":27436,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27405,"src":"22166:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":27409,"id":27437,"nodeType":"Return","src":"22159:21:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerCapped","nameLocation":"21625:19:59","parameters":{"id":27406,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27403,"mutability":"mutable","name":"_member","nameLocation":"21653:7:59","nodeType":"VariableDeclaration","scope":27439,"src":"21645:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27402,"name":"address","nodeType":"ElementaryTypeName","src":"21645:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":27405,"mutability":"mutable","name":"_amountToStake","nameLocation":"21670:14:59","nodeType":"VariableDeclaration","scope":27439,"src":"21662:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27404,"name":"uint256","nodeType":"ElementaryTypeName","src":"21662:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21644:41:59"},"returnParameters":{"id":27409,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27408,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27439,"src":"21717:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27407,"name":"uint256","nodeType":"ElementaryTypeName","src":"21717:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21716:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":27517,"nodeType":"FunctionDefinition","src":"22193:741:59","nodes":[],"body":{"id":27516,"nodeType":"Block","src":"22306:628:59","nodes":[],"statements":[{"assignments":[27449],"declarations":[{"constant":false,"id":27449,"mutability":"mutable","name":"totalStake","nameLocation":"22324:10:59","nodeType":"VariableDeclaration","scope":27516,"src":"22316:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27448,"name":"uint256","nodeType":"ElementaryTypeName","src":"22316:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27456,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":27452,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27441,"src":"22377:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27450,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"22337:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27451,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22355:21:59","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":32265,"src":"22337:39:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":27453,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22337:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":27454,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27443,"src":"22388:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22337:65:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22316:86:59"},{"assignments":[27458],"declarations":[{"constant":false,"id":27458,"mutability":"mutable","name":"decimal","nameLocation":"22421:7:59","nodeType":"VariableDeclaration","scope":27516,"src":"22413:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27457,"name":"uint256","nodeType":"ElementaryTypeName","src":"22413:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27460,"initialValue":{"hexValue":"3138","id":27459,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22431:2:59","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"22413:20:59"},{"clauses":[{"block":{"id":27481,"nodeType":"Block","src":"22531:52:59","statements":[{"expression":{"id":27479,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27474,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27458,"src":"22545:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":27477,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27472,"src":"22563:8:59","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":27476,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22555:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":27475,"name":"uint256","nodeType":"ElementaryTypeName","src":"22555:7:59","typeDescriptions":{}}},"id":27478,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22555:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22545:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27480,"nodeType":"ExpressionStatement","src":"22545:27:59"}]},"errorName":"","id":27482,"nodeType":"TryCatchClause","parameters":{"id":27473,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27472,"mutability":"mutable","name":"_decimal","nameLocation":"22521:8:59","nodeType":"VariableDeclaration","scope":27482,"src":"22515:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":27471,"name":"uint8","nodeType":"ElementaryTypeName","src":"22515:5:59","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"22514:16:59"},"src":"22506:77:59"},{"block":{"id":27483,"nodeType":"Block","src":"22590:64:59","statements":[]},"errorName":"","id":27484,"nodeType":"TryCatchClause","src":"22584:70:59"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":27464,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"22461:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27465,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22479:11:59","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":31132,"src":"22461:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$17398_$","typeString":"function () view external returns (contract IERC20)"}},"id":27466,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22461:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}],"id":27463,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22453:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27462,"name":"address","nodeType":"ElementaryTypeName","src":"22453:7:59","typeDescriptions":{}}},"id":27467,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22453:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27461,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17320,"src":"22447:5:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$17320_$","typeString":"type(contract ERC20)"}},"id":27468,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22447:47:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$17320","typeString":"contract ERC20"}},"id":27469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22495:8:59","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":16808,"src":"22447:56:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":27470,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22447:58:59","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":27485,"nodeType":"TryStatement","src":"22443:211:59"},{"assignments":[27487],"declarations":[{"constant":false,"id":27487,"mutability":"mutable","name":"newTotalPoints","nameLocation":"22671:14:59","nodeType":"VariableDeclaration","scope":27516,"src":"22663:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27486,"name":"uint256","nodeType":"ElementaryTypeName","src":"22663:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27496,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27494,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27490,"name":"totalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27449,"src":"22698:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":27491,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22711:2:59","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":27492,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27458,"src":"22717:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22711:13:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22698:26:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":27488,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":19622,"src":"22688:4:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$19622_$","typeString":"type(library Math)"}},"id":27489,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22693:4:59","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":19126,"src":"22688:9:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":27495,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22688:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22663:62:59"},{"assignments":[27498],"declarations":[{"constant":false,"id":27498,"mutability":"mutable","name":"currentPoints","nameLocation":"22743:13:59","nodeType":"VariableDeclaration","scope":27516,"src":"22735:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27497,"name":"uint256","nodeType":"ElementaryTypeName","src":"22735:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27507,"initialValue":{"arguments":[{"id":27501,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27441,"src":"22802:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27504,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22819:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27503,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22811:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27502,"name":"address","nodeType":"ElementaryTypeName","src":"22811:7:59","typeDescriptions":{}}},"id":27505,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22811:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27499,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"22759:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22777:24:59","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":32252,"src":"22759:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":27506,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22759:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22735:90:59"},{"assignments":[27509],"declarations":[{"constant":false,"id":27509,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"22844:16:59","nodeType":"VariableDeclaration","scope":27516,"src":"22836:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27508,"name":"uint256","nodeType":"ElementaryTypeName","src":"22836:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27513,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27512,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27510,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27487,"src":"22863:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":27511,"name":"currentPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27498,"src":"22880:13:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22863:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22836:57:59"},{"expression":{"id":27514,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27509,"src":"22911:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":27447,"id":27515,"nodeType":"Return","src":"22904:23:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerQuadratic","nameLocation":"22202:22:59","parameters":{"id":27444,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27441,"mutability":"mutable","name":"_member","nameLocation":"22233:7:59","nodeType":"VariableDeclaration","scope":27517,"src":"22225:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27440,"name":"address","nodeType":"ElementaryTypeName","src":"22225:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":27443,"mutability":"mutable","name":"_amountToStake","nameLocation":"22250:14:59","nodeType":"VariableDeclaration","scope":27517,"src":"22242:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27442,"name":"uint256","nodeType":"ElementaryTypeName","src":"22242:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22224:41:59"},"returnParameters":{"id":27447,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27446,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27517,"src":"22297:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27445,"name":"uint256","nodeType":"ElementaryTypeName","src":"22297:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22296:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":27591,"nodeType":"FunctionDefinition","src":"22940:855:59","nodes":[],"body":{"id":27590,"nodeType":"Block","src":"23091:704:59","nodes":[],"statements":[{"assignments":[27527],"declarations":[{"constant":false,"id":27527,"mutability":"mutable","name":"decimal","nameLocation":"23109:7:59","nodeType":"VariableDeclaration","scope":27590,"src":"23101:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27526,"name":"uint256","nodeType":"ElementaryTypeName","src":"23101:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27529,"initialValue":{"hexValue":"3138","id":27528,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23119:2:59","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"23101:20:59"},{"clauses":[{"block":{"id":27550,"nodeType":"Block","src":"23219:52:59","statements":[{"expression":{"id":27548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27543,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27527,"src":"23233:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":27546,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27541,"src":"23251:8:59","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":27545,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23243:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":27544,"name":"uint256","nodeType":"ElementaryTypeName","src":"23243:7:59","typeDescriptions":{}}},"id":27547,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23243:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23233:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27549,"nodeType":"ExpressionStatement","src":"23233:27:59"}]},"errorName":"","id":27551,"nodeType":"TryCatchClause","parameters":{"id":27542,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27541,"mutability":"mutable","name":"_decimal","nameLocation":"23209:8:59","nodeType":"VariableDeclaration","scope":27551,"src":"23203:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":27540,"name":"uint8","nodeType":"ElementaryTypeName","src":"23203:5:59","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"23202:16:59"},"src":"23194:77:59"},{"block":{"id":27552,"nodeType":"Block","src":"23278:64:59","statements":[]},"errorName":"","id":27553,"nodeType":"TryCatchClause","src":"23272:70:59"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":27533,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"23149:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27534,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23167:11:59","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":31132,"src":"23149:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$17398_$","typeString":"function () view external returns (contract IERC20)"}},"id":27535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23149:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}],"id":27532,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23141:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27531,"name":"address","nodeType":"ElementaryTypeName","src":"23141:7:59","typeDescriptions":{}}},"id":27536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23141:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27530,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17320,"src":"23135:5:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$17320_$","typeString":"type(contract ERC20)"}},"id":27537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23135:47:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$17320","typeString":"contract ERC20"}},"id":27538,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23183:8:59","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":16808,"src":"23135:56:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":27539,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23135:58:59","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":27554,"nodeType":"TryStatement","src":"23131:211:59"},{"assignments":[27556],"declarations":[{"constant":false,"id":27556,"mutability":"mutable","name":"newTotalStake","nameLocation":"23421:13:59","nodeType":"VariableDeclaration","scope":27590,"src":"23413:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27555,"name":"uint256","nodeType":"ElementaryTypeName","src":"23413:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27563,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27562,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":27559,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27519,"src":"23477:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27557,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"23437:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27558,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23455:21:59","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":32265,"src":"23437:39:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":27560,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23437:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":27561,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27521,"src":"23488:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23437:67:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23413:91:59"},{"assignments":[27565],"declarations":[{"constant":false,"id":27565,"mutability":"mutable","name":"newTotalPoints","nameLocation":"23578:14:59","nodeType":"VariableDeclaration","scope":27590,"src":"23570:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27564,"name":"uint256","nodeType":"ElementaryTypeName","src":"23570:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27574,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27572,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27568,"name":"newTotalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27556,"src":"23605:13:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27571,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":27569,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23621:2:59","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":27570,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27527,"src":"23627:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23621:13:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23605:29:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":27566,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":19622,"src":"23595:4:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$19622_$","typeString":"type(library Math)"}},"id":27567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23600:4:59","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":19126,"src":"23595:9:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":27573,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23595:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23570:65:59"},{"assignments":[27576],"declarations":[{"constant":false,"id":27576,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"23653:16:59","nodeType":"VariableDeclaration","scope":27590,"src":"23645:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27575,"name":"uint256","nodeType":"ElementaryTypeName","src":"23645:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27587,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27586,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":27579,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27519,"src":"23715:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27582,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"23732:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27581,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23724:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27580,"name":"address","nodeType":"ElementaryTypeName","src":"23724:7:59","typeDescriptions":{}}},"id":27583,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23724:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27577,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"23672:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27578,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23690:24:59","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":32252,"src":"23672:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":27584,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23672:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":27585,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27565,"src":"23741:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23672:83:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23645:110:59"},{"expression":{"id":27588,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27576,"src":"23772:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":27525,"id":27589,"nodeType":"Return","src":"23765:23:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerQuadratic","nameLocation":"22949:22:59","parameters":{"id":27522,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27519,"mutability":"mutable","name":"_member","nameLocation":"22980:7:59","nodeType":"VariableDeclaration","scope":27591,"src":"22972:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27518,"name":"address","nodeType":"ElementaryTypeName","src":"22972:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":27521,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"22997:16:59","nodeType":"VariableDeclaration","scope":27591,"src":"22989:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27520,"name":"uint256","nodeType":"ElementaryTypeName","src":"22989:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22971:43:59"},"returnParameters":{"id":27525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27524,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27591,"src":"23078:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27523,"name":"uint256","nodeType":"ElementaryTypeName","src":"23078:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23077:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":27600,"nodeType":"FunctionDefinition","src":"23990:103:59","nodes":[],"body":{"id":27599,"nodeType":"Block","src":"24058:35:59","nodes":[],"statements":[{"expression":{"id":27597,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"24075:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"functionReturnParameters":27596,"id":27598,"nodeType":"Return","src":"24068:18:59"}]},"baseFunctions":[26133],"functionSelector":"c3292171","implemented":true,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"23999:14:59","parameters":{"id":27592,"nodeType":"ParameterList","parameters":[],"src":"24013:2:59"},"returnParameters":{"id":27596,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27595,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27600,"src":"24045:11:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"typeName":{"id":27594,"nodeType":"UserDefinedTypeName","pathNode":{"id":27593,"name":"PointSystem","nameLocations":["24045:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":26143,"src":"24045:11:59"},"referencedDeclaration":26143,"src":"24045:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"24044:13:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":27646,"nodeType":"FunctionDefinition","src":"24444:322:59","nodes":[],"body":{"id":27645,"nodeType":"Block","src":"24537:229:59","nodes":[],"statements":[{"assignments":[27612],"declarations":[{"constant":false,"id":27612,"mutability":"mutable","name":"pv","nameLocation":"24572:2:59","nodeType":"VariableDeclaration","scope":27645,"src":"24547:27:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":27610,"nodeType":"UserDefinedTypeName","pathNode":{"id":27609,"name":"ProposalSupport","nameLocations":["24547:15:59"],"nodeType":"IdentifierPath","referencedDeclaration":26209,"src":"24547:15:59"},"referencedDeclaration":26209,"src":"24547:15:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_storage_ptr","typeString":"struct ProposalSupport"}},"id":27611,"nodeType":"ArrayTypeName","src":"24547:17:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":27620,"initialValue":{"arguments":[{"id":27615,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27602,"src":"24588:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":27616,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26209,"src":"24596:15:59","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$26209_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":27617,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"24596:17:59","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":27618,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"24595:19:59","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$26209_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_$26209_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":27613,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"24577:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":27614,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"24581:6:59","memberName":"decode","nodeType":"MemberAccess","src":"24577:10:59","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":27619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24577:38:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"24547:68:59"},{"body":{"id":27643,"nodeType":"Block","src":"24665:95:59","statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":27633,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27612,"src":"24712:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":27635,"indexExpression":{"id":27634,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27622,"src":"24715:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24712:5:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":27636,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24718:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26206,"src":"24712:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":27637,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27612,"src":"24730:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":27639,"indexExpression":{"id":27638,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27622,"src":"24733:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24730:5:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":27640,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24736:12:59","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":26208,"src":"24730:18:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":27632,"name":"_checkProposalAllocationValidity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26943,"src":"24679:32:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_int256_$returns$__$","typeString":"function (uint256,int256) view"}},"id":27641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24679:70:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27642,"nodeType":"ExpressionStatement","src":"24679:70:59"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27625,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27622,"src":"24645:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":27626,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27612,"src":"24649:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":27627,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24652:6:59","memberName":"length","nodeType":"MemberAccess","src":"24649:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24645:13:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27644,"initializationExpression":{"assignments":[27622],"declarations":[{"constant":false,"id":27622,"mutability":"mutable","name":"i","nameLocation":"24638:1:59","nodeType":"VariableDeclaration","scope":27644,"src":"24630:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27621,"name":"uint256","nodeType":"ElementaryTypeName","src":"24630:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27624,"initialValue":{"hexValue":"30","id":27623,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24642:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"24630:13:59"},"loopExpression":{"expression":{"id":27630,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"24660:3:59","subExpression":{"id":27629,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27622,"src":"24660:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27631,"nodeType":"ExpressionStatement","src":"24660:3:59"},"nodeType":"ForStatement","src":"24625:135:59"}]},"baseFunctions":[26034],"implemented":true,"kind":"function","modifiers":[],"name":"_beforeAllocate","nameLocation":"24453:15:59","overrides":{"id":27606,"nodeType":"OverrideSpecifier","overrides":[],"src":"24528:8:59"},"parameters":{"id":27605,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27602,"mutability":"mutable","name":"_data","nameLocation":"24482:5:59","nodeType":"VariableDeclaration","scope":27646,"src":"24469:18:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":27601,"name":"bytes","nodeType":"ElementaryTypeName","src":"24469:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":27604,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27646,"src":"24489:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27603,"name":"address","nodeType":"ElementaryTypeName","src":"24489:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24468:42:59"},"returnParameters":{"id":27607,"nodeType":"ParameterList","parameters":[],"src":"24537:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":27726,"nodeType":"FunctionDefinition","src":"24912:739:59","nodes":[],"body":{"id":27725,"nodeType":"Block","src":"24994:657:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":27655,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27650,"src":"25024:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27654,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26788,"src":"25004:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":27656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25004:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27657,"nodeType":"ExpressionStatement","src":"25004:28:59"},{"assignments":[27662],"declarations":[{"constant":false,"id":27662,"mutability":"mutable","name":"pv","nameLocation":"25067:2:59","nodeType":"VariableDeclaration","scope":27725,"src":"25042:27:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":27660,"nodeType":"UserDefinedTypeName","pathNode":{"id":27659,"name":"ProposalSupport","nameLocations":["25042:15:59"],"nodeType":"IdentifierPath","referencedDeclaration":26209,"src":"25042:15:59"},"referencedDeclaration":26209,"src":"25042:15:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_storage_ptr","typeString":"struct ProposalSupport"}},"id":27661,"nodeType":"ArrayTypeName","src":"25042:17:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":27670,"initialValue":{"arguments":[{"id":27665,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27648,"src":"25083:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":27666,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26209,"src":"25091:15:59","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$26209_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":27667,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"25091:17:59","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":27668,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"25090:19:59","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$26209_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_$26209_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":27663,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"25072:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":27664,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"25076:6:59","memberName":"decode","nodeType":"MemberAccess","src":"25072:10:59","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":27669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25072:38:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"25042:68:59"},{"condition":{"id":27674,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25124:27:59","subExpression":{"arguments":[{"id":27672,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27650,"src":"25143:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27671,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26895,"src":"25125:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":27673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25125:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27700,"nodeType":"IfStatement","src":"25120:230:59","trueBody":{"id":27699,"nodeType":"Block","src":"25153:197:59","statements":[{"body":{"id":27697,"nodeType":"Block","src":"25207:133:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":27691,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":27686,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27662,"src":"25229:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":27688,"indexExpression":{"id":27687,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27676,"src":"25232:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25229:5:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":27689,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25235:12:59","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":26208,"src":"25229:18:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":27690,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25250:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25229:22:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27696,"nodeType":"IfStatement","src":"25225:101:59","trueBody":{"id":27695,"nodeType":"Block","src":"25253:73:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":27692,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26325,"src":"25282:23:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":27693,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25282:25:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27694,"nodeType":"RevertStatement","src":"25275:32:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27682,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27679,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27676,"src":"25187:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":27680,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27662,"src":"25191:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":27681,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25194:6:59","memberName":"length","nodeType":"MemberAccess","src":"25191:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25187:13:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27698,"initializationExpression":{"assignments":[27676],"declarations":[{"constant":false,"id":27676,"mutability":"mutable","name":"i","nameLocation":"25180:1:59","nodeType":"VariableDeclaration","scope":27698,"src":"25172:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27675,"name":"uint256","nodeType":"ElementaryTypeName","src":"25172:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27678,"initialValue":{"hexValue":"30","id":27677,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25184:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"25172:13:59"},"loopExpression":{"expression":{"id":27684,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"25202:3:59","subExpression":{"id":27683,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27676,"src":"25202:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27685,"nodeType":"ExpressionStatement","src":"25202:3:59"},"nodeType":"ForStatement","src":"25167:173:59"}]}},{"condition":{"id":27709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25363:70:59","subExpression":{"arguments":[{"id":27703,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27650,"src":"25410:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27706,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"25427:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27705,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"25419:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27704,"name":"address","nodeType":"ElementaryTypeName","src":"25419:7:59","typeDescriptions":{}}},"id":27707,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25419:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27701,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"25364:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25382:27:59","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":31177,"src":"25364:45:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":27708,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25364:69:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27714,"nodeType":"IfStatement","src":"25359:124:59","trueBody":{"id":27713,"nodeType":"Block","src":"25435:48:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":27710,"name":"UserIsInactive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26293,"src":"25456:14:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":27711,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25456:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27712,"nodeType":"RevertStatement","src":"25449:23:59"}]}},{"expression":{"arguments":[{"id":27716,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27650,"src":"25598:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27717,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27662,"src":"25607:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":27715,"name":"_check_before_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28366,"src":"25573:24:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":27718,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25573:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27719,"nodeType":"ExpressionStatement","src":"25573:37:59"},{"expression":{"arguments":[{"id":27721,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27650,"src":"25632:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27722,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27662,"src":"25641:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":27720,"name":"_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28651,"src":"25620:11:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":27723,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25620:24:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27724,"nodeType":"ExpressionStatement","src":"25620:24:59"}]},"baseFunctions":[25962],"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"24921:9:59","overrides":{"id":27652,"nodeType":"OverrideSpecifier","overrides":[],"src":"24985:8:59"},"parameters":{"id":27651,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27648,"mutability":"mutable","name":"_data","nameLocation":"24944:5:59","nodeType":"VariableDeclaration","scope":27726,"src":"24931:18:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":27647,"name":"bytes","nodeType":"ElementaryTypeName","src":"24931:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":27650,"mutability":"mutable","name":"_sender","nameLocation":"24959:7:59","nodeType":"VariableDeclaration","scope":27726,"src":"24951:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27649,"name":"address","nodeType":"ElementaryTypeName","src":"24951:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24930:37:59"},"returnParameters":{"id":27653,"nodeType":"ParameterList","parameters":[],"src":"24994:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":27877,"nodeType":"FunctionDefinition","src":"25907:2078:59","nodes":[],"body":{"id":27876,"nodeType":"Block","src":"26001:1984:59","nodes":[],"statements":[{"assignments":[27738],"declarations":[{"constant":false,"id":27738,"mutability":"mutable","name":"proposalId","nameLocation":"26159:10:59","nodeType":"VariableDeclaration","scope":27876,"src":"26151:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27737,"name":"uint256","nodeType":"ElementaryTypeName","src":"26151:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27746,"initialValue":{"arguments":[{"id":27741,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27731,"src":"26183:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":27743,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"26191:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":27742,"name":"uint256","nodeType":"ElementaryTypeName","src":"26191:7:59","typeDescriptions":{}}}],"id":27744,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"26190:9:59","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":27739,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"26172:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":27740,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"26176:6:59","memberName":"decode","nodeType":"MemberAccess","src":"26172:10:59","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":27745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26172:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"26151:49:59"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"},"id":27750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27747,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26526,"src":"26311:12:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":27748,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26138,"src":"26327:12:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$26138_$","typeString":"type(enum ProposalType)"}},"id":27749,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"26340:7:59","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":26136,"src":"26327:20:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"src":"26311:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27875,"nodeType":"IfStatement","src":"26307:1612:59","trueBody":{"id":27874,"nodeType":"Block","src":"26349:1570:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27756,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":27751,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"26367:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27753,"indexExpression":{"id":27752,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26377:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26367:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27754,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26389:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"26367:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":27755,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26403:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26367:46:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27762,"nodeType":"IfStatement","src":"26363:121:59","trueBody":{"id":27761,"nodeType":"Block","src":"26415:69:59","statements":[{"errorCall":{"arguments":[{"id":27758,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26458:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27757,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26311,"src":"26440:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":27759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26440:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27760,"nodeType":"RevertStatement","src":"26433:36:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27768,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":27763,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"26502:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27765,"indexExpression":{"id":27764,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26512:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26502:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27766,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26524:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"26502:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":27767,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25483,"src":"26542:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26502:50:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27773,"nodeType":"IfStatement","src":"26498:269:59","trueBody":{"id":27772,"nodeType":"Block","src":"26554:213:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27769,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"26682:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":27770,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26682:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27771,"nodeType":"ExpressionStatement","src":"26682:8:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":27780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":27774,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"26785:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27776,"indexExpression":{"id":27775,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26795:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26785:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27777,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26807:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"26785:36:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":27778,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"26825:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":27779,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"26840:6:59","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":26157,"src":"26825:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"26785:61:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27786,"nodeType":"IfStatement","src":"26781:136:59","trueBody":{"id":27785,"nodeType":"Block","src":"26848:69:59","statements":[{"errorCall":{"arguments":[{"id":27782,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26891:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27781,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26307,"src":"26873:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":27783,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26873:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27784,"nodeType":"RevertStatement","src":"26866:36:59"}]}},{"assignments":[27788],"declarations":[{"constant":false,"id":27788,"mutability":"mutable","name":"convictionLast","nameLocation":"26939:14:59","nodeType":"VariableDeclaration","scope":27874,"src":"26931:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27787,"name":"uint256","nodeType":"ElementaryTypeName","src":"26931:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27792,"initialValue":{"arguments":[{"id":27790,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26981:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27789,"name":"updateProposalConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29291,"src":"26956:24:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":27791,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26956:36:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"26931:61:59"},{"assignments":[27794],"declarations":[{"constant":false,"id":27794,"mutability":"mutable","name":"threshold","nameLocation":"27014:9:59","nodeType":"VariableDeclaration","scope":27874,"src":"27006:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27793,"name":"uint256","nodeType":"ElementaryTypeName","src":"27006:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27801,"initialValue":{"arguments":[{"expression":{"baseExpression":{"id":27796,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27045:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27798,"indexExpression":{"id":27797,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27055:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27045:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27799,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27067:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"27045:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27795,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28888,"src":"27026:18:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":27800,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27026:57:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27006:77:59"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":27811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27802,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27788,"src":"27102:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":27803,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27794,"src":"27119:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27102:26:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":27805,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27132:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27807,"indexExpression":{"id":27806,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27142:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27132:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27154:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"27132:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":27809,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27172:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"27132:41:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"27102:71:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27816,"nodeType":"IfStatement","src":"27098:150:59","trueBody":{"id":27815,"nodeType":"Block","src":"27175:73:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":27812,"name":"ConvictionUnderMinimumThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26319,"src":"27200:31:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":27813,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27200:33:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27814,"nodeType":"RevertStatement","src":"27193:40:59"}]}},{"expression":{"id":27822,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27817,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25483,"src":"27262:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"expression":{"baseExpression":{"id":27818,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27276:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27820,"indexExpression":{"id":27819,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27286:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27276:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27821,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27298:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"27276:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27262:51:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27823,"nodeType":"ExpressionStatement","src":"27262:51:59"},{"expression":{"arguments":[{"expression":{"arguments":[{"id":27827,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"27381:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":27825,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25475,"src":"27368:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$314","typeString":"contract IAllo"}},"id":27826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27373:7:59","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":307,"src":"27368:12:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$23_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":27828,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27368:20:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$23_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":27829,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27389:5:59","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":15,"src":"27368:26:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":27830,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27396:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27832,"indexExpression":{"id":27831,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27406:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27396:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27833,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27418:11:59","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":26180,"src":"27396:33:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":27834,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27431:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27836,"indexExpression":{"id":27835,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27441:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27431:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27837,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27453:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"27431:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27824,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":991,"src":"27335:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":27838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27335:147:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27839,"nodeType":"ExpressionStatement","src":"27335:147:59"},{"expression":{"id":27846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":27840,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27497:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27842,"indexExpression":{"id":27841,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27507:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27497:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27843,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"27519:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"27497:36:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27844,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"27536:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":27845,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"27551:8:59","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":26160,"src":"27536:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"27497:62:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":27847,"nodeType":"ExpressionStatement","src":"27497:62:59"},{"expression":{"arguments":[{"id":27851,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27625:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":27852,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27653:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27854,"indexExpression":{"id":27853,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27663:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27653:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27855,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27675:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"27653:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":27856,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"27702:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":27858,"indexExpression":{"id":27857,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"27720:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27702:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":27859,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27752:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"27702:75:59","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":27848,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"27573:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":27850,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27589:18:59","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":33275,"src":"27573:34:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":27860,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27573:218:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27861,"nodeType":"ExpressionStatement","src":"27573:218:59"},{"eventCall":{"arguments":[{"id":27863,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27823:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":27864,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27835:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27866,"indexExpression":{"id":27865,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27845:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27835:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27867,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27857:11:59","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":26180,"src":"27835:33:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":27868,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27870:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27870,"indexExpression":{"id":27869,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27880:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27870:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27871,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27892:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"27870:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27862,"name":"Distributed","nodeType":"Identifier","overloadedDeclarations":[26367,562],"referencedDeclaration":26367,"src":"27811:11:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":27872,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27811:97:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27873,"nodeType":"EmitStatement","src":"27806:102:59"}]}}]},"baseFunctions":[25973],"implemented":true,"kind":"function","modifiers":[],"name":"_distribute","nameLocation":"25916:11:59","overrides":{"id":27735,"nodeType":"OverrideSpecifier","overrides":[],"src":"25992:8:59"},"parameters":{"id":27734,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27729,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27877,"src":"25928:16:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":27727,"name":"address","nodeType":"ElementaryTypeName","src":"25928:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":27728,"nodeType":"ArrayTypeName","src":"25928:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":27731,"mutability":"mutable","name":"_data","nameLocation":"25959:5:59","nodeType":"VariableDeclaration","scope":27877,"src":"25946:18:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":27730,"name":"bytes","nodeType":"ElementaryTypeName","src":"25946:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":27733,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27877,"src":"25966:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27732,"name":"address","nodeType":"ElementaryTypeName","src":"25966:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"25927:47:59"},"returnParameters":{"id":27736,"nodeType":"ParameterList","parameters":[],"src":"26001:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":27929,"nodeType":"FunctionDefinition","src":"27991:728:59","nodes":[],"body":{"id":27928,"nodeType":"Block","src":"28088:631:59","nodes":[],"statements":[{"assignments":[27886],"declarations":[{"constant":false,"id":27886,"mutability":"mutable","name":"proposal","nameLocation":"28115:8:59","nodeType":"VariableDeclaration","scope":27928,"src":"28098:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":27885,"nodeType":"UserDefinedTypeName","pathNode":{"id":27884,"name":"Proposal","nameLocations":["28098:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"28098:8:59"},"referencedDeclaration":26204,"src":"28098:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":27890,"initialValue":{"baseExpression":{"id":27887,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"28126:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27889,"indexExpression":{"id":27888,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27879,"src":"28136:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"28126:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"28098:49:59"},{"assignments":[27892,27894],"declarations":[{"constant":false,"id":27892,"mutability":"mutable","name":"convictionLast","nameLocation":"28241:14:59","nodeType":"VariableDeclaration","scope":27928,"src":"28233:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27891,"name":"uint256","nodeType":"ElementaryTypeName","src":"28233:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":27894,"mutability":"mutable","name":"blockNumber","nameLocation":"28265:11:59","nodeType":"VariableDeclaration","scope":27928,"src":"28257:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27893,"name":"uint256","nodeType":"ElementaryTypeName","src":"28257:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27900,"initialValue":{"arguments":[{"id":27896,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27886,"src":"28326:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":27897,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27886,"src":"28336:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27898,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28345:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"28336:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27895,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29087,"src":"28292:33:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$26204_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":27899,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28292:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"28232:126:59"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":27907,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27903,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27901,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27892,"src":"28373:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":27902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28391:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"28373:19:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27906,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27904,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27894,"src":"28396:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":27905,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28411:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"28396:16:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"28373:39:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27914,"nodeType":"IfStatement","src":"28369:110:59","trueBody":{"id":27913,"nodeType":"Block","src":"28414:65:59","statements":[{"expression":{"id":27911,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27908,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27892,"src":"28428:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27909,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27886,"src":"28445:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27910,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28454:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"28445:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28428:40:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27912,"nodeType":"ExpressionStatement","src":"28428:40:59"}]}},{"assignments":[27916],"declarations":[{"constant":false,"id":27916,"mutability":"mutable","name":"threshold","nameLocation":"28496:9:59","nodeType":"VariableDeclaration","scope":27928,"src":"28488:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27915,"name":"uint256","nodeType":"ElementaryTypeName","src":"28488:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27921,"initialValue":{"arguments":[{"expression":{"id":27918,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27886,"src":"28527:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28536:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"28527:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27917,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28888,"src":"28508:18:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":27920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28508:44:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"28488:64:59"},{"expression":{"id":27926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27922,"name":"canBeExecuted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27882,"src":"28669:13:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27925,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27923,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27892,"src":"28685:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":27924,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27916,"src":"28703:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28685:27:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"28669:43:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27927,"nodeType":"ExpressionStatement","src":"28669:43:59"}]},"functionSelector":"824ea8ed","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteProposal","nameLocation":"28000:18:59","parameters":{"id":27880,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27879,"mutability":"mutable","name":"proposalId","nameLocation":"28027:10:59","nodeType":"VariableDeclaration","scope":27929,"src":"28019:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27878,"name":"uint256","nodeType":"ElementaryTypeName","src":"28019:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"28018:20:59"},"returnParameters":{"id":27883,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27882,"mutability":"mutable","name":"canBeExecuted","nameLocation":"28073:13:59","nodeType":"VariableDeclaration","scope":27929,"src":"28068:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":27881,"name":"bool","nodeType":"ElementaryTypeName","src":"28068:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"28067:20:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":27939,"nodeType":"FunctionDefinition","src":"29009:231:59","nodes":[],"body":{"id":27938,"nodeType":"Block","src":"29108:132:59","nodes":[],"statements":[]},"baseFunctions":[25993],"implemented":true,"kind":"function","modifiers":[],"name":"_getRecipientStatus","nameLocation":"29018:19:59","overrides":{"id":27933,"nodeType":"OverrideSpecifier","overrides":[],"src":"29082:8:59"},"parameters":{"id":27932,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27931,"mutability":"mutable","name":"_recipientId","nameLocation":"29046:12:59","nodeType":"VariableDeclaration","scope":27939,"src":"29038:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27930,"name":"address","nodeType":"ElementaryTypeName","src":"29038:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"29037:22:59"},"returnParameters":{"id":27937,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27936,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27939,"src":"29100:6:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$519","typeString":"enum IStrategy.Status"},"typeName":{"id":27935,"nodeType":"UserDefinedTypeName","pathNode":{"id":27934,"name":"Status","nameLocations":["29100:6:59"],"nodeType":"IdentifierPath","referencedDeclaration":519,"src":"29100:6:59"},"referencedDeclaration":519,"src":"29100:6:59","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$519","typeString":"enum IStrategy.Status"}},"visibility":"internal"}],"src":"29099:8:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":27958,"nodeType":"FunctionDefinition","src":"29369:308:59","nodes":[],"body":{"id":27957,"nodeType":"Block","src":"29479:198:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27954,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"29662:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":27955,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29662:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27956,"nodeType":"ExpressionStatement","src":"29662:8:59"}]},"baseFunctions":[25832],"documentation":{"id":27940,"nodeType":"StructuredDocumentation","src":"29246:118:59","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":"29378:10:59","overrides":{"id":27948,"nodeType":"OverrideSpecifier","overrides":[],"src":"29437:8:59"},"parameters":{"id":27947,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27943,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27958,"src":"29389:16:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":27941,"name":"address","nodeType":"ElementaryTypeName","src":"29389:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":27942,"nodeType":"ArrayTypeName","src":"29389:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":27946,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27958,"src":"29407:14:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":27944,"name":"bytes","nodeType":"ElementaryTypeName","src":"29407:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":27945,"nodeType":"ArrayTypeName","src":"29407:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"29388:34:59"},"returnParameters":{"id":27953,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27952,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27958,"src":"29455:22:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$524_memory_ptr_$dyn_memory_ptr","typeString":"struct IStrategy.PayoutSummary[]"},"typeName":{"baseType":{"id":27950,"nodeType":"UserDefinedTypeName","pathNode":{"id":27949,"name":"PayoutSummary","nameLocations":["29455:13:59"],"nodeType":"IdentifierPath","referencedDeclaration":524,"src":"29455:13:59"},"referencedDeclaration":524,"src":"29455:13:59","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$524_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"id":27951,"nodeType":"ArrayTypeName","src":"29455:15:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$524_storage_$dyn_storage_ptr","typeString":"struct IStrategy.PayoutSummary[]"}},"visibility":"internal"}],"src":"29454:24:59"},"scope":30151,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":27970,"nodeType":"FunctionDefinition","src":"29683:286:59","nodes":[],"body":{"id":27969,"nodeType":"Block","src":"29851:118:59","nodes":[],"statements":[]},"baseFunctions":[25984],"implemented":true,"kind":"function","modifiers":[],"name":"_getPayout","nameLocation":"29692:10:59","overrides":{"id":27964,"nodeType":"OverrideSpecifier","overrides":[],"src":"29799:8:59"},"parameters":{"id":27963,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27960,"mutability":"mutable","name":"_recipientId","nameLocation":"29711:12:59","nodeType":"VariableDeclaration","scope":27970,"src":"29703:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27959,"name":"address","nodeType":"ElementaryTypeName","src":"29703:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":27962,"mutability":"mutable","name":"_data","nameLocation":"29738:5:59","nodeType":"VariableDeclaration","scope":27970,"src":"29725:18:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":27961,"name":"bytes","nodeType":"ElementaryTypeName","src":"29725:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"29702:42:59"},"returnParameters":{"id":27968,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27967,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27970,"src":"29825:20:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$524_memory_ptr","typeString":"struct IStrategy.PayoutSummary"},"typeName":{"id":27966,"nodeType":"UserDefinedTypeName","pathNode":{"id":27965,"name":"PayoutSummary","nameLocations":["29825:13:59"],"nodeType":"IdentifierPath","referencedDeclaration":524,"src":"29825:13:59"},"referencedDeclaration":524,"src":"29825:13:59","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$524_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"visibility":"internal"}],"src":"29824:22:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":27981,"nodeType":"FunctionDefinition","src":"29975:127:59","nodes":[],"body":{"id":27980,"nodeType":"Block","src":"30052:50:59","nodes":[],"statements":[{"eventCall":{"arguments":[{"id":27977,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27972,"src":"30087:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27976,"name":"PoolAmountIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26377,"src":"30067:19:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":27978,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30067:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27979,"nodeType":"EmitStatement","src":"30062:33:59"}]},"baseFunctions":[26007],"implemented":true,"kind":"function","modifiers":[],"name":"_afterIncreasePoolAmount","nameLocation":"29984:24:59","overrides":{"id":27974,"nodeType":"OverrideSpecifier","overrides":[],"src":"30043:8:59"},"parameters":{"id":27973,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27972,"mutability":"mutable","name":"_amount","nameLocation":"30017:7:59","nodeType":"VariableDeclaration","scope":27981,"src":"30009:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27971,"name":"uint256","nodeType":"ElementaryTypeName","src":"30009:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30008:17:59"},"returnParameters":{"id":27975,"nodeType":"ParameterList","parameters":[],"src":"30052:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":27990,"nodeType":"FunctionDefinition","src":"30197:143:59","nodes":[],"body":{"id":27989,"nodeType":"Block","src":"30290:50:59","nodes":[],"statements":[]},"baseFunctions":[25944],"implemented":true,"kind":"function","modifiers":[],"name":"_isValidAllocator","nameLocation":"30206:17:59","overrides":{"id":27985,"nodeType":"OverrideSpecifier","overrides":[],"src":"30266:8:59"},"parameters":{"id":27984,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27983,"mutability":"mutable","name":"_allocator","nameLocation":"30232:10:59","nodeType":"VariableDeclaration","scope":27990,"src":"30224:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27982,"name":"address","nodeType":"ElementaryTypeName","src":"30224:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30223:20:59"},"returnParameters":{"id":27988,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27987,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27990,"src":"30284:4:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":27986,"name":"bool","nodeType":"ElementaryTypeName","src":"30284:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"30283:6:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":28000,"nodeType":"FunctionDefinition","src":"30346:86:59","nodes":[],"body":{"id":27999,"nodeType":"Block","src":"30392:40:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":27996,"name":"_active","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27992,"src":"30417:7:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":27995,"name":"_setPoolActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25927,"src":"30402:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":27997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30402:23:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27998,"nodeType":"ExpressionStatement","src":"30402:23:59"}]},"functionSelector":"b5f620ce","implemented":true,"kind":"function","modifiers":[],"name":"setPoolActive","nameLocation":"30355:13:59","parameters":{"id":27993,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27992,"mutability":"mutable","name":"_active","nameLocation":"30374:7:59","nodeType":"VariableDeclaration","scope":28000,"src":"30369:12:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":27991,"name":"bool","nodeType":"ElementaryTypeName","src":"30369:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"30368:14:59"},"returnParameters":{"id":27994,"nodeType":"ParameterList","parameters":[],"src":"30392:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":28087,"nodeType":"FunctionDefinition","src":"30438:833:59","nodes":[],"body":{"id":28086,"nodeType":"Block","src":"30490:781:59","nodes":[],"statements":[{"body":{"id":28078,"nodeType":"Block","src":"30615:609:59","statements":[{"assignments":[28019],"declarations":[{"constant":false,"id":28019,"mutability":"mutable","name":"proposalId","nameLocation":"30637:10:59","nodeType":"VariableDeclaration","scope":28078,"src":"30629:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28018,"name":"uint256","nodeType":"ElementaryTypeName","src":"30629:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28025,"initialValue":{"baseExpression":{"baseExpression":{"id":28020,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26555,"src":"30650:20:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":28022,"indexExpression":{"id":28021,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28002,"src":"30671:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30650:29:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":28024,"indexExpression":{"id":28023,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28006,"src":"30680:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30650:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"30629:53:59"},{"assignments":[28028],"declarations":[{"constant":false,"id":28028,"mutability":"mutable","name":"proposal","nameLocation":"30713:8:59","nodeType":"VariableDeclaration","scope":28078,"src":"30696:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":28027,"nodeType":"UserDefinedTypeName","pathNode":{"id":28026,"name":"Proposal","nameLocations":["30696:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"30696:8:59"},"referencedDeclaration":26204,"src":"30696:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":28032,"initialValue":{"baseExpression":{"id":28029,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"30724:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28031,"indexExpression":{"id":28030,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28019,"src":"30734:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30724:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30696:49:59"},{"condition":{"arguments":[{"id":28034,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28019,"src":"30778:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28033,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28231,"src":"30763:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":28035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30763:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28077,"nodeType":"IfStatement","src":"30759:455:59","trueBody":{"id":28076,"nodeType":"Block","src":"30791:423:59","statements":[{"assignments":[28037],"declarations":[{"constant":false,"id":28037,"mutability":"mutable","name":"stakedPoints","nameLocation":"30817:12:59","nodeType":"VariableDeclaration","scope":28076,"src":"30809:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28036,"name":"uint256","nodeType":"ElementaryTypeName","src":"30809:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28042,"initialValue":{"baseExpression":{"expression":{"id":28038,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28028,"src":"30832:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28039,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30841:17:59","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":26193,"src":"30832:26:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28041,"indexExpression":{"id":28040,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28002,"src":"30859:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30832:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"30809:58:59"},{"expression":{"id":28049,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":28043,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28028,"src":"30885:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28046,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30894:17:59","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":26193,"src":"30885:26:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28047,"indexExpression":{"id":28045,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28002,"src":"30912:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"30885:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":28048,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30923:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"30885:39:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28050,"nodeType":"ExpressionStatement","src":"30885:39:59"},{"expression":{"id":28055,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":28051,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28028,"src":"30942:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28053,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"30951:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"30942:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":28054,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28037,"src":"30967:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30942:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28056,"nodeType":"ExpressionStatement","src":"30942:37:59"},{"expression":{"id":28059,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28057,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26518,"src":"30997:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":28058,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28037,"src":"31012:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30997:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28060,"nodeType":"ExpressionStatement","src":"30997:27:59"},{"expression":{"arguments":[{"id":28062,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28028,"src":"31069:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":28063,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28037,"src":"31079:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28061,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29040,"src":"31042:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$26204_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":28064,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31042:50:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28065,"nodeType":"ExpressionStatement","src":"31042:50:59"},{"eventCall":{"arguments":[{"id":28067,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28002,"src":"31128:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":28068,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28019,"src":"31137:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":28069,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31149:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":28070,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28028,"src":"31152:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28071,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31161:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"31152:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28072,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28028,"src":"31175:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28073,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31184:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"31175:23:59","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":28066,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26409,"src":"31115:12:59","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":28074,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31115:84:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28075,"nodeType":"EmitStatement","src":"31110:89:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28014,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28009,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28006,"src":"30568:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":28010,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26555,"src":"30572:20:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":28012,"indexExpression":{"id":28011,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28002,"src":"30593:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30572:29:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":28013,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30602:6:59","memberName":"length","nodeType":"MemberAccess","src":"30572:36:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30568:40:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28079,"initializationExpression":{"assignments":[28006],"declarations":[{"constant":false,"id":28006,"mutability":"mutable","name":"i","nameLocation":"30561:1:59","nodeType":"VariableDeclaration","scope":28079,"src":"30553:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28005,"name":"uint256","nodeType":"ElementaryTypeName","src":"30553:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28008,"initialValue":{"hexValue":"30","id":28007,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30565:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"30553:13:59"},"loopExpression":{"expression":{"id":28016,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"30610:3:59","subExpression":{"id":28015,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28006,"src":"30610:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28017,"nodeType":"ExpressionStatement","src":"30610:3:59"},"nodeType":"ForStatement","src":"30548:676:59"},{"expression":{"id":28084,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":28080,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26550,"src":"31233:18:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28082,"indexExpression":{"id":28081,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28002,"src":"31252:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"31233:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":28083,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31263:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"31233:31:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28085,"nodeType":"ExpressionStatement","src":"31233:31:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"withdraw","nameLocation":"30447:8:59","parameters":{"id":28003,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28002,"mutability":"mutable","name":"_member","nameLocation":"30464:7:59","nodeType":"VariableDeclaration","scope":28087,"src":"30456:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28001,"name":"address","nodeType":"ElementaryTypeName","src":"30456:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30455:17:59"},"returnParameters":{"id":28004,"nodeType":"ParameterList","parameters":[],"src":"30490:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":28163,"nodeType":"FunctionDefinition","src":"31955:1115:59","nodes":[],"body":{"id":28162,"nodeType":"Block","src":"32470:600:59","nodes":[],"statements":[{"assignments":[28118],"declarations":[{"constant":false,"id":28118,"mutability":"mutable","name":"proposal","nameLocation":"32497:8:59","nodeType":"VariableDeclaration","scope":28162,"src":"32480:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":28117,"nodeType":"UserDefinedTypeName","pathNode":{"id":28116,"name":"Proposal","nameLocations":["32480:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"32480:8:59"},"referencedDeclaration":26204,"src":"32480:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":28122,"initialValue":{"baseExpression":{"id":28119,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"32508:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28121,"indexExpression":{"id":28120,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28090,"src":"32518:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32508:22:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"32480:50:59"},{"expression":{"id":28134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28123,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28110,"src":"32541:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28127,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28124,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32553:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28125,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32562:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"32553:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":28126,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32581:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32553:29:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"expression":{"id":28130,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32608:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28131,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32617:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"32608:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28129,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28888,"src":"32589:18:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":28132,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32589:44:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"32553:80:59","trueExpression":{"hexValue":"30","id":28128,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32585:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32541:92:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28135,"nodeType":"ExpressionStatement","src":"32541:92:59"},{"expression":{"components":[{"expression":{"id":28136,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32664:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28137,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32673:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"32664:18:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":28138,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32696:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28139,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32705:11:59","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":26180,"src":"32696:20:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":28140,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32730:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28141,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32739:14:59","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":26184,"src":"32730:23:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":28142,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32767:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28143,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32776:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"32767:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28144,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32805:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28145,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32814:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"32805:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28146,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32840:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28147,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32849:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"32840:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},{"expression":{"id":28148,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32877:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28149,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32886:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"32877:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28150,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32909:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28151,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32918:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"32909:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28152,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28110,"src":"32946:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"expression":{"id":28153,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32969:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28154,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32978:17:59","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":26193,"src":"32969:26:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28157,"indexExpression":{"expression":{"id":28155,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"32996:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":28156,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33000:6:59","memberName":"sender","nodeType":"MemberAccess","src":"32996:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32969:38:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28158,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"33021:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28159,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33030:23:59","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":26203,"src":"33021:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28160,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"32650:413:59","typeDescriptions":{"typeIdentifier":"t_tuple$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_enum$_ProposalStatus_$26163_$_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":28115,"id":28161,"nodeType":"Return","src":"32643:420:59"}]},"documentation":{"id":28088,"nodeType":"StructuredDocumentation","src":"31277:673:59","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":"31964:11:59","parameters":{"id":28091,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28090,"mutability":"mutable","name":"_proposalId","nameLocation":"31984:11:59","nodeType":"VariableDeclaration","scope":28163,"src":"31976:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28089,"name":"uint256","nodeType":"ElementaryTypeName","src":"31976:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31975:21:59"},"returnParameters":{"id":28115,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28093,"mutability":"mutable","name":"submitter","nameLocation":"32081:9:59","nodeType":"VariableDeclaration","scope":28163,"src":"32073:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28092,"name":"address","nodeType":"ElementaryTypeName","src":"32073:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":28095,"mutability":"mutable","name":"beneficiary","nameLocation":"32112:11:59","nodeType":"VariableDeclaration","scope":28163,"src":"32104:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28094,"name":"address","nodeType":"ElementaryTypeName","src":"32104:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":28097,"mutability":"mutable","name":"requestedToken","nameLocation":"32145:14:59","nodeType":"VariableDeclaration","scope":28163,"src":"32137:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28096,"name":"address","nodeType":"ElementaryTypeName","src":"32137:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":28099,"mutability":"mutable","name":"requestedAmount","nameLocation":"32181:15:59","nodeType":"VariableDeclaration","scope":28163,"src":"32173:23:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28098,"name":"uint256","nodeType":"ElementaryTypeName","src":"32173:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28101,"mutability":"mutable","name":"stakedAmount","nameLocation":"32218:12:59","nodeType":"VariableDeclaration","scope":28163,"src":"32210:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28100,"name":"uint256","nodeType":"ElementaryTypeName","src":"32210:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28104,"mutability":"mutable","name":"proposalStatus","nameLocation":"32259:14:59","nodeType":"VariableDeclaration","scope":28163,"src":"32244:29:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"typeName":{"id":28103,"nodeType":"UserDefinedTypeName","pathNode":{"id":28102,"name":"ProposalStatus","nameLocations":["32244:14:59"],"nodeType":"IdentifierPath","referencedDeclaration":26163,"src":"32244:14:59"},"referencedDeclaration":26163,"src":"32244:14:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":28106,"mutability":"mutable","name":"blockLast","nameLocation":"32295:9:59","nodeType":"VariableDeclaration","scope":28163,"src":"32287:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28105,"name":"uint256","nodeType":"ElementaryTypeName","src":"32287:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28108,"mutability":"mutable","name":"convictionLast","nameLocation":"32326:14:59","nodeType":"VariableDeclaration","scope":28163,"src":"32318:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28107,"name":"uint256","nodeType":"ElementaryTypeName","src":"32318:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28110,"mutability":"mutable","name":"threshold","nameLocation":"32362:9:59","nodeType":"VariableDeclaration","scope":28163,"src":"32354:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28109,"name":"uint256","nodeType":"ElementaryTypeName","src":"32354:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28112,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"32393:17:59","nodeType":"VariableDeclaration","scope":28163,"src":"32385:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28111,"name":"uint256","nodeType":"ElementaryTypeName","src":"32385:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28114,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"32432:23:59","nodeType":"VariableDeclaration","scope":28163,"src":"32424:31:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28113,"name":"uint256","nodeType":"ElementaryTypeName","src":"32424:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32059:406:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":28179,"nodeType":"FunctionDefinition","src":"33544:184:59","nodes":[],"body":{"id":28178,"nodeType":"Block","src":"33652:76:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":28174,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28166,"src":"33701:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28175,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28168,"src":"33714:6:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":28173,"name":"_internal_getProposalVoterStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28196,"src":"33669:31:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_uint256_$","typeString":"function (uint256,address) view returns (uint256)"}},"id":28176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33669:52:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28172,"id":28177,"nodeType":"Return","src":"33662:59:59"}]},"documentation":{"id":28164,"nodeType":"StructuredDocumentation","src":"33349:190:59","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":"33553:21:59","parameters":{"id":28169,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28166,"mutability":"mutable","name":"_proposalId","nameLocation":"33583:11:59","nodeType":"VariableDeclaration","scope":28179,"src":"33575:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28165,"name":"uint256","nodeType":"ElementaryTypeName","src":"33575:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28168,"mutability":"mutable","name":"_voter","nameLocation":"33604:6:59","nodeType":"VariableDeclaration","scope":28179,"src":"33596:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28167,"name":"address","nodeType":"ElementaryTypeName","src":"33596:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"33574:37:59"},"returnParameters":{"id":28172,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28171,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28179,"src":"33643:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28170,"name":"uint256","nodeType":"ElementaryTypeName","src":"33643:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"33642:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":28196,"nodeType":"FunctionDefinition","src":"35252:226:59","nodes":[],"body":{"id":28195,"nodeType":"Block","src":"35406:72:59","nodes":[],"statements":[{"expression":{"baseExpression":{"expression":{"baseExpression":{"id":28188,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"35423:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28190,"indexExpression":{"id":28189,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28181,"src":"35433:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35423:22:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":28191,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35446:17:59","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":26193,"src":"35423:40:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28193,"indexExpression":{"id":28192,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28183,"src":"35464:6:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35423:48:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28187,"id":28194,"nodeType":"Return","src":"35416:55:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_internal_getProposalVoterStake","nameLocation":"35261:31:59","parameters":{"id":28184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28181,"mutability":"mutable","name":"_proposalId","nameLocation":"35301:11:59","nodeType":"VariableDeclaration","scope":28196,"src":"35293:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28180,"name":"uint256","nodeType":"ElementaryTypeName","src":"35293:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28183,"mutability":"mutable","name":"_voter","nameLocation":"35322:6:59","nodeType":"VariableDeclaration","scope":28196,"src":"35314:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28182,"name":"address","nodeType":"ElementaryTypeName","src":"35314:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"35292:37:59"},"returnParameters":{"id":28187,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28186,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28196,"src":"35393:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28185,"name":"uint256","nodeType":"ElementaryTypeName","src":"35393:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35392:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":28206,"nodeType":"FunctionDefinition","src":"35484:153:59","nodes":[],"body":{"id":28205,"nodeType":"Block","src":"35556:81:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":28201,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"35573:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":28202,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35591:20:59","memberName":"getBasisStakedAmount","nodeType":"MemberAccess","referencedDeclaration":32688,"src":"35573:38:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":28203,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35573:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28200,"id":28204,"nodeType":"Return","src":"35566:47:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"35493:20:59","parameters":{"id":28197,"nodeType":"ParameterList","parameters":[],"src":"35513:2:59"},"returnParameters":{"id":28200,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28199,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28206,"src":"35547:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28198,"name":"uint256","nodeType":"ElementaryTypeName","src":"35547:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35546:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":28231,"nodeType":"FunctionDefinition","src":"35643:193:59","nodes":[],"body":{"id":28230,"nodeType":"Block","src":"35725:111:59","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":28228,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28218,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":28213,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"35742:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28215,"indexExpression":{"id":28214,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28208,"src":"35752:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35742:22:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":28216,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35765:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"35742:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":28217,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35778:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"35742:37:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":28227,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":28219,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"35783:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28221,"indexExpression":{"id":28220,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28208,"src":"35793:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35783:22:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":28222,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35806:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"35783:32:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":28225,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35827:1:59","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":28224,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"35819:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":28223,"name":"address","nodeType":"ElementaryTypeName","src":"35819:7:59","typeDescriptions":{}}},"id":28226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35819:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"35783:46:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"35742:87:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":28212,"id":28229,"nodeType":"Return","src":"35735:94:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"proposalExists","nameLocation":"35652:14:59","parameters":{"id":28209,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28208,"mutability":"mutable","name":"_proposalID","nameLocation":"35675:11:59","nodeType":"VariableDeclaration","scope":28231,"src":"35667:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28207,"name":"uint256","nodeType":"ElementaryTypeName","src":"35667:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35666:21:59"},"returnParameters":{"id":28212,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28211,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28231,"src":"35719:4:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":28210,"name":"bool","nodeType":"ElementaryTypeName","src":"35719:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"35718:6:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":28250,"nodeType":"FunctionDefinition","src":"35842:191:59","nodes":[],"body":{"id":28249,"nodeType":"Block","src":"35945:88:59","nodes":[],"statements":[{"expression":{"id":28247,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28238,"name":"isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28236,"src":"35955:14:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28242,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28239,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"35972:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28240,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35981:8:59","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":26228,"src":"35972:17:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28241,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25483,"src":"35992:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35972:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28243,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28233,"src":"36006:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28244,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"36025:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36006:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35972:54:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"35955:71:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28248,"nodeType":"ExpressionStatement","src":"35955:71:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_isOverMaxRatio","nameLocation":"35851:15:59","parameters":{"id":28234,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28233,"mutability":"mutable","name":"_requestedAmount","nameLocation":"35875:16:59","nodeType":"VariableDeclaration","scope":28250,"src":"35867:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28232,"name":"uint256","nodeType":"ElementaryTypeName","src":"35867:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35866:26:59"},"returnParameters":{"id":28237,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28236,"mutability":"mutable","name":"isOverMaxRatio","nameLocation":"35929:14:59","nodeType":"VariableDeclaration","scope":28250,"src":"35924:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":28235,"name":"bool","nodeType":"ElementaryTypeName","src":"35924:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"35923:21:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":28366,"nodeType":"FunctionDefinition","src":"36039:1713:59","nodes":[],"body":{"id":28365,"nodeType":"Block","src":"36142:1610:59","nodes":[],"statements":[{"assignments":[28260],"declarations":[{"constant":false,"id":28260,"mutability":"mutable","name":"deltaSupportSum","nameLocation":"36159:15:59","nodeType":"VariableDeclaration","scope":28365,"src":"36152:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":28259,"name":"int256","nodeType":"ElementaryTypeName","src":"36152:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":28262,"initialValue":{"hexValue":"30","id":28261,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36177:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36152:26:59"},{"assignments":[28264],"declarations":[{"constant":false,"id":28264,"mutability":"mutable","name":"canAddSupport","nameLocation":"36193:13:59","nodeType":"VariableDeclaration","scope":28365,"src":"36188:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":28263,"name":"bool","nodeType":"ElementaryTypeName","src":"36188:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":28268,"initialValue":{"arguments":[{"id":28266,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28252,"src":"36227:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":28265,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26895,"src":"36209:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":28267,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36209:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"36188:47:59"},{"body":{"id":28327,"nodeType":"Block","src":"36299:714:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":28288,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36372:14:59","subExpression":{"id":28280,"name":"canAddSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28264,"src":"36373:13:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":28287,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":28282,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28256,"src":"36390:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28284,"indexExpression":{"id":28283,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28270,"src":"36407:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36390:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":28285,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36410:12:59","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":26208,"src":"36390:32:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":28286,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36425:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"36390:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"36372:54:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28293,"nodeType":"IfStatement","src":"36368:125:59","trueBody":{"id":28292,"nodeType":"Block","src":"36428:65:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":28289,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26325,"src":"36453:23:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":28290,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36453:25:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28291,"nodeType":"RevertStatement","src":"36446:32:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28299,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":28294,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28256,"src":"36510:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28296,"indexExpression":{"id":28295,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28270,"src":"36527:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36510:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":28297,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36530:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26206,"src":"36510:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":28298,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36544:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"36510:35:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28302,"nodeType":"IfStatement","src":"36506:187:59","trueBody":{"id":28301,"nodeType":"Block","src":"36547:146:59","statements":[{"id":28300,"nodeType":"Continue","src":"36670:8:59"}]}},{"assignments":[28304],"declarations":[{"constant":false,"id":28304,"mutability":"mutable","name":"proposalId","nameLocation":"36714:10:59","nodeType":"VariableDeclaration","scope":28327,"src":"36706:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28303,"name":"uint256","nodeType":"ElementaryTypeName","src":"36706:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28309,"initialValue":{"expression":{"baseExpression":{"id":28305,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28256,"src":"36727:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28307,"indexExpression":{"id":28306,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28270,"src":"36744:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36727:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":28308,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36747:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26206,"src":"36727:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"36706:51:59"},{"condition":{"id":28313,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36775:27:59","subExpression":{"arguments":[{"id":28311,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28304,"src":"36791:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28310,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28231,"src":"36776:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":28312,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36776:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28319,"nodeType":"IfStatement","src":"36771:167:59","trueBody":{"id":28318,"nodeType":"Block","src":"36804:134:59","statements":[{"errorCall":{"arguments":[{"id":28315,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28304,"src":"36847:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28314,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26311,"src":"36829:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":28316,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36829:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28317,"nodeType":"RevertStatement","src":"36822:36:59"}]}},{"expression":{"id":28325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28320,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28260,"src":"36951:15:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"baseExpression":{"id":28321,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28256,"src":"36970:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28323,"indexExpression":{"id":28322,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28270,"src":"36987:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36970:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":28324,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36990:12:59","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":26208,"src":"36970:32:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"36951:51:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":28326,"nodeType":"ExpressionStatement","src":"36951:51:59"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28276,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28273,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28270,"src":"36265:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":28274,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28256,"src":"36269:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28275,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36286:6:59","memberName":"length","nodeType":"MemberAccess","src":"36269:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36265:27:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28328,"initializationExpression":{"assignments":[28270],"declarations":[{"constant":false,"id":28270,"mutability":"mutable","name":"i","nameLocation":"36258:1:59","nodeType":"VariableDeclaration","scope":28328,"src":"36250:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28269,"name":"uint256","nodeType":"ElementaryTypeName","src":"36250:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28272,"initialValue":{"hexValue":"30","id":28271,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36262:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36250:13:59"},"loopExpression":{"expression":{"id":28278,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"36294:3:59","subExpression":{"id":28277,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28270,"src":"36294:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28279,"nodeType":"ExpressionStatement","src":"36294:3:59"},"nodeType":"ForStatement","src":"36245:768:59"},{"assignments":[28330],"declarations":[{"constant":false,"id":28330,"mutability":"mutable","name":"newTotalVotingSupport","nameLocation":"37117:21:59","nodeType":"VariableDeclaration","scope":28365,"src":"37109:29:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28329,"name":"uint256","nodeType":"ElementaryTypeName","src":"37109:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28337,"initialValue":{"arguments":[{"baseExpression":{"id":28332,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26550,"src":"37153:18:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28334,"indexExpression":{"id":28333,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28252,"src":"37172:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"37153:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28335,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28260,"src":"37182:15:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":28331,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28683,"src":"37141:11:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":28336,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37141:57:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"37109:89:59"},{"assignments":[28339],"declarations":[{"constant":false,"id":28339,"mutability":"mutable","name":"participantBalance","nameLocation":"37288:18:59","nodeType":"VariableDeclaration","scope":28365,"src":"37280:26:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28338,"name":"uint256","nodeType":"ElementaryTypeName","src":"37280:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28348,"initialValue":{"arguments":[{"id":28342,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28252,"src":"37352:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":28345,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"37369:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":28344,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37361:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":28343,"name":"address","nodeType":"ElementaryTypeName","src":"37361:7:59","typeDescriptions":{}}},"id":28346,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37361:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":28340,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"37309:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":28341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37327:24:59","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":32252,"src":"37309:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":28347,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37309:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"37280:95:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28349,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28330,"src":"37541:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":28350,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28339,"src":"37565:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37541:42:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28358,"nodeType":"IfStatement","src":"37537:147:59","trueBody":{"id":28357,"nodeType":"Block","src":"37585:99:59","statements":[{"errorCall":{"arguments":[{"id":28353,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28330,"src":"37631:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28354,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28339,"src":"37654:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28352,"name":"NotEnoughPointsToSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26303,"src":"37606:24:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":28355,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37606:67:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28356,"nodeType":"RevertStatement","src":"37599:74:59"}]}},{"expression":{"id":28363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":28359,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26550,"src":"37694:18:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28361,"indexExpression":{"id":28360,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28252,"src":"37713:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"37694:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28362,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28330,"src":"37724:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37694:51:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28364,"nodeType":"ExpressionStatement","src":"37694:51:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_check_before_addSupport","nameLocation":"36048:24:59","parameters":{"id":28257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28252,"mutability":"mutable","name":"_sender","nameLocation":"36081:7:59","nodeType":"VariableDeclaration","scope":28366,"src":"36073:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28251,"name":"address","nodeType":"ElementaryTypeName","src":"36073:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":28256,"mutability":"mutable","name":"_proposalSupport","nameLocation":"36115:16:59","nodeType":"VariableDeclaration","scope":28366,"src":"36090:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":28254,"nodeType":"UserDefinedTypeName","pathNode":{"id":28253,"name":"ProposalSupport","nameLocations":["36090:15:59"],"nodeType":"IdentifierPath","referencedDeclaration":26209,"src":"36090:15:59"},"referencedDeclaration":26209,"src":"36090:15:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_storage_ptr","typeString":"struct ProposalSupport"}},"id":28255,"nodeType":"ArrayTypeName","src":"36090:17:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"36072:60:59"},"returnParameters":{"id":28258,"nodeType":"ParameterList","parameters":[],"src":"36142:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":28651,"nodeType":"FunctionDefinition","src":"37758:3457:59","nodes":[],"body":{"id":28650,"nodeType":"Block","src":"37856:3359:59","nodes":[],"statements":[{"assignments":[28379],"declarations":[{"constant":false,"id":28379,"mutability":"mutable","name":"proposalsIds","nameLocation":"37883:12:59","nodeType":"VariableDeclaration","scope":28650,"src":"37866:29:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":28377,"name":"uint256","nodeType":"ElementaryTypeName","src":"37866:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28378,"nodeType":"ArrayTypeName","src":"37866:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":28380,"nodeType":"VariableDeclarationStatement","src":"37866:29:59"},{"body":{"id":28648,"nodeType":"Block","src":"37959:3250:59","statements":[{"assignments":[28393],"declarations":[{"constant":false,"id":28393,"mutability":"mutable","name":"proposalId","nameLocation":"37981:10:59","nodeType":"VariableDeclaration","scope":28648,"src":"37973:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28392,"name":"uint256","nodeType":"ElementaryTypeName","src":"37973:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28398,"initialValue":{"expression":{"baseExpression":{"id":28394,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28372,"src":"37994:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28396,"indexExpression":{"id":28395,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28382,"src":"38011:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"37994:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":28397,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"38014:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26206,"src":"37994:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"37973:51:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28399,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38097:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28400,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38110:6:59","memberName":"length","nodeType":"MemberAccess","src":"38097:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":28401,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38120:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"38097:24:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":28501,"nodeType":"Block","src":"38249:764:59","statements":[{"assignments":[28419],"declarations":[{"constant":false,"id":28419,"mutability":"mutable","name":"exist","nameLocation":"38272:5:59","nodeType":"VariableDeclaration","scope":28501,"src":"38267:10:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":28418,"name":"bool","nodeType":"ElementaryTypeName","src":"38267:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":28421,"initialValue":{"hexValue":"66616c7365","id":28420,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"38280:5:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"38267:18:59"},{"body":{"id":28449,"nodeType":"Block","src":"38353:268:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28437,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":28433,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38404:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28435,"indexExpression":{"id":28434,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28423,"src":"38417:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"38404:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":28436,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28393,"src":"38423:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38404:29:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28448,"nodeType":"IfStatement","src":"38400:203:59","trueBody":{"id":28447,"nodeType":"Block","src":"38435:168:59","statements":[{"expression":{"id":28440,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28438,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28419,"src":"38461:5:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":28439,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"38469:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"38461:12:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28441,"nodeType":"ExpressionStatement","src":"38461:12:59"},{"errorCall":{"arguments":[{"id":28443,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28393,"src":"38532:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28444,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28423,"src":"38544:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28442,"name":"ProposalSupportDuplicated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26317,"src":"38506:25:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":28445,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38506:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28446,"nodeType":"RevertStatement","src":"38499:47:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28429,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28426,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28423,"src":"38323:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":28427,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38327:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38340:6:59","memberName":"length","nodeType":"MemberAccess","src":"38327:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38323:23:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28450,"initializationExpression":{"assignments":[28423],"declarations":[{"constant":false,"id":28423,"mutability":"mutable","name":"j","nameLocation":"38316:1:59","nodeType":"VariableDeclaration","scope":28450,"src":"38308:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28422,"name":"uint256","nodeType":"ElementaryTypeName","src":"38308:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28425,"initialValue":{"hexValue":"30","id":28424,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38320:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"38308:13:59"},"loopExpression":{"expression":{"id":28431,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"38348:3:59","subExpression":{"id":28430,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28423,"src":"38348:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28432,"nodeType":"ExpressionStatement","src":"38348:3:59"},"nodeType":"ForStatement","src":"38303:318:59"},{"condition":{"id":28452,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"38642:6:59","subExpression":{"id":28451,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28419,"src":"38643:5:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28500,"nodeType":"IfStatement","src":"38638:361:59","trueBody":{"id":28499,"nodeType":"Block","src":"38650:349:59","statements":[{"assignments":[28457],"declarations":[{"constant":false,"id":28457,"mutability":"mutable","name":"temp","nameLocation":"38689:4:59","nodeType":"VariableDeclaration","scope":28499,"src":"38672:21:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":28455,"name":"uint256","nodeType":"ElementaryTypeName","src":"38672:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28456,"nodeType":"ArrayTypeName","src":"38672:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":28466,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28464,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28461,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38710:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38723:6:59","memberName":"length","nodeType":"MemberAccess","src":"38710:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":28463,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38732:1:59","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"38710:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28460,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"38696:13:59","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":28458,"name":"uint256","nodeType":"ElementaryTypeName","src":"38700:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28459,"nodeType":"ArrayTypeName","src":"38700:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":28465,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38696:38:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"VariableDeclarationStatement","src":"38672:62:59"},{"body":{"id":28486,"nodeType":"Block","src":"38806:74:59","statements":[{"expression":{"id":28484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":28478,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28457,"src":"38832:4:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28480,"indexExpression":{"id":28479,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28468,"src":"38837:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"38832:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":28481,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38842:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28483,"indexExpression":{"id":28482,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28468,"src":"38855:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"38842:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38832:25:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28485,"nodeType":"ExpressionStatement","src":"38832:25:59"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28474,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28471,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28468,"src":"38776:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":28472,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38780:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28473,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38793:6:59","memberName":"length","nodeType":"MemberAccess","src":"38780:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38776:23:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28487,"initializationExpression":{"assignments":[28468],"declarations":[{"constant":false,"id":28468,"mutability":"mutable","name":"j","nameLocation":"38769:1:59","nodeType":"VariableDeclaration","scope":28487,"src":"38761:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28467,"name":"uint256","nodeType":"ElementaryTypeName","src":"38761:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28470,"initialValue":{"hexValue":"30","id":28469,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38773:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"38761:13:59"},"loopExpression":{"expression":{"id":28476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"38801:3:59","subExpression":{"id":28475,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28468,"src":"38801:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28477,"nodeType":"ExpressionStatement","src":"38801:3:59"},"nodeType":"ForStatement","src":"38756:124:59"},{"expression":{"id":28493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":28488,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28457,"src":"38901:4:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28491,"indexExpression":{"expression":{"id":28489,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38906:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28490,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38919:6:59","memberName":"length","nodeType":"MemberAccess","src":"38906:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"38901:25:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28492,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28393,"src":"38929:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38901:38:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28494,"nodeType":"ExpressionStatement","src":"38901:38:59"},{"expression":{"id":28497,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28495,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38961:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28496,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28457,"src":"38976:4:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"38961:19:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28498,"nodeType":"ExpressionStatement","src":"38961:19:59"}]}}]},"id":28502,"nodeType":"IfStatement","src":"38093:920:59","trueBody":{"id":28417,"nodeType":"Block","src":"38123:120:59","statements":[{"expression":{"id":28409,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28403,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38141:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":28407,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38170:1:59","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":28406,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"38156:13:59","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":28404,"name":"uint256","nodeType":"ElementaryTypeName","src":"38160:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28405,"nodeType":"ArrayTypeName","src":"38160:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":28408,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38156:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"38141:31:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28410,"nodeType":"ExpressionStatement","src":"38141:31:59"},{"expression":{"id":28415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":28411,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38190:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28413,"indexExpression":{"hexValue":"30","id":28412,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38203:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"38190:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28414,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28393,"src":"38208:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38190:28:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28416,"nodeType":"ExpressionStatement","src":"38190:28:59"}]}},{"assignments":[28504],"declarations":[{"constant":false,"id":28504,"mutability":"mutable","name":"delta","nameLocation":"39033:5:59","nodeType":"VariableDeclaration","scope":28648,"src":"39026:12:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":28503,"name":"int256","nodeType":"ElementaryTypeName","src":"39026:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":28509,"initialValue":{"expression":{"baseExpression":{"id":28505,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28372,"src":"39041:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28507,"indexExpression":{"id":28506,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28382,"src":"39058:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"39041:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":28508,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39061:12:59","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":26208,"src":"39041:32:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"39026:47:59"},{"assignments":[28512],"declarations":[{"constant":false,"id":28512,"mutability":"mutable","name":"proposal","nameLocation":"39105:8:59","nodeType":"VariableDeclaration","scope":28648,"src":"39088:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":28511,"nodeType":"UserDefinedTypeName","pathNode":{"id":28510,"name":"Proposal","nameLocations":["39088:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"39088:8:59"},"referencedDeclaration":26204,"src":"39088:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":28516,"initialValue":{"baseExpression":{"id":28513,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"39116:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28515,"indexExpression":{"id":28514,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28393,"src":"39126:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"39116:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"39088:49:59"},{"assignments":[28518],"declarations":[{"constant":false,"id":28518,"mutability":"mutable","name":"previousStakedPoints","nameLocation":"39247:20:59","nodeType":"VariableDeclaration","scope":28648,"src":"39239:28:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28517,"name":"uint256","nodeType":"ElementaryTypeName","src":"39239:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28523,"initialValue":{"baseExpression":{"expression":{"id":28519,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"39270:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28520,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39279:17:59","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":26193,"src":"39270:26:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28522,"indexExpression":{"id":28521,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28368,"src":"39297:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"39270:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"39239:66:59"},{"assignments":[28525],"declarations":[{"constant":false,"id":28525,"mutability":"mutable","name":"stakedPoints","nameLocation":"39478:12:59","nodeType":"VariableDeclaration","scope":28648,"src":"39470:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28524,"name":"uint256","nodeType":"ElementaryTypeName","src":"39470:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28530,"initialValue":{"arguments":[{"id":28527,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"39505:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28528,"name":"delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28504,"src":"39527:5:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":28526,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28683,"src":"39493:11:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":28529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39493:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"39470:63:59"},{"expression":{"id":28537,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":28531,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"39668:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28534,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39677:17:59","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":26193,"src":"39668:26:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28535,"indexExpression":{"id":28533,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28368,"src":"39695:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"39668:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28536,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"39706:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"39668:50:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28538,"nodeType":"ExpressionStatement","src":"39668:50:59"},{"assignments":[28540],"declarations":[{"constant":false,"id":28540,"mutability":"mutable","name":"hasProposal","nameLocation":"39957:11:59","nodeType":"VariableDeclaration","scope":28648,"src":"39952:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":28539,"name":"bool","nodeType":"ElementaryTypeName","src":"39952:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":28542,"initialValue":{"hexValue":"66616c7365","id":28541,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"39971:5:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"39952:24:59"},{"body":{"id":28571,"nodeType":"Block","src":"40057:179:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28563,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"baseExpression":{"id":28556,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26555,"src":"40079:20:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":28558,"indexExpression":{"id":28557,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28368,"src":"40100:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40079:29:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":28560,"indexExpression":{"id":28559,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28544,"src":"40109:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40079:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":28561,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"40115:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28562,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40124:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"40115:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40079:55:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28570,"nodeType":"IfStatement","src":"40075:147:59","trueBody":{"id":28569,"nodeType":"Block","src":"40136:86:59","statements":[{"expression":{"id":28566,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28564,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28540,"src":"40158:11:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":28565,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"40172:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"40158:18:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28567,"nodeType":"ExpressionStatement","src":"40158:18:59"},{"id":28568,"nodeType":"Break","src":"40198:5:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28552,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28547,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28544,"src":"40010:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":28548,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26555,"src":"40014:20:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":28550,"indexExpression":{"id":28549,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28368,"src":"40035:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40014:29:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":28551,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40044:6:59","memberName":"length","nodeType":"MemberAccess","src":"40014:36:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40010:40:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28572,"initializationExpression":{"assignments":[28544],"declarations":[{"constant":false,"id":28544,"mutability":"mutable","name":"k","nameLocation":"40003:1:59","nodeType":"VariableDeclaration","scope":28572,"src":"39995:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28543,"name":"uint256","nodeType":"ElementaryTypeName","src":"39995:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28546,"initialValue":{"hexValue":"30","id":28545,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40007:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"39995:13:59"},"loopExpression":{"expression":{"id":28554,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"40052:3:59","subExpression":{"id":28553,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28544,"src":"40052:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28555,"nodeType":"ExpressionStatement","src":"40052:3:59"},"nodeType":"ForStatement","src":"39990:246:59"},{"condition":{"id":28574,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"40253:12:59","subExpression":{"id":28573,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28540,"src":"40254:11:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28584,"nodeType":"IfStatement","src":"40249:106:59","trueBody":{"id":28583,"nodeType":"Block","src":"40267:88:59","statements":[{"expression":{"arguments":[{"expression":{"id":28579,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"40320:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28580,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40329:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"40320:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"baseExpression":{"id":28575,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26555,"src":"40285:20:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":28577,"indexExpression":{"id":28576,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28368,"src":"40306:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40285:29:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":28578,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40315:4:59","memberName":"push","nodeType":"MemberAccess","src":"40285:34:59","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":28581,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40285:55:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28582,"nodeType":"ExpressionStatement","src":"40285:55:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28587,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28585,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"40510:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":28586,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"40534:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40510:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":28617,"nodeType":"Block","src":"40715:161:59","statements":[{"expression":{"id":28607,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28603,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26518,"src":"40733:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28606,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28604,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"40748:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":28605,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"40771:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40748:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40733:50:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28608,"nodeType":"ExpressionStatement","src":"40733:50:59"},{"expression":{"id":28615,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":28609,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"40801:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28611,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"40810:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"40801:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28614,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28612,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"40826:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":28613,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"40849:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40826:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40801:60:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28616,"nodeType":"ExpressionStatement","src":"40801:60:59"}]},"id":28618,"nodeType":"IfStatement","src":"40506:370:59","trueBody":{"id":28602,"nodeType":"Block","src":"40548:161:59","statements":[{"expression":{"id":28592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28588,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26518,"src":"40566:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28591,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28589,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"40581:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":28590,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"40596:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40581:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40566:50:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28593,"nodeType":"ExpressionStatement","src":"40566:50:59"},{"expression":{"id":28600,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":28594,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"40634:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"40643:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"40634:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28599,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28597,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"40659:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":28598,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"40674:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40659:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40634:60:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28601,"nodeType":"ExpressionStatement","src":"40634:60:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28622,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28619,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"40893:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28620,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40902:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"40893:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":28621,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40915:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"40893:23:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":28646,"nodeType":"Block","src":"40990:209:59","statements":[{"expression":{"arguments":[{"id":28632,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"41035:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":28633,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"41045:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28631,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29040,"src":"41008:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$26204_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":28634,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41008:58:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28635,"nodeType":"ExpressionStatement","src":"41008:58:59"},{"eventCall":{"arguments":[{"id":28637,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28368,"src":"41102:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":28638,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28393,"src":"41111:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28639,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"41123:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28640,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"41137:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28641,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41146:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"41137:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28642,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"41160:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28643,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41169:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"41160:23:59","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":28636,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26409,"src":"41089:12:59","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":28644,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41089:95:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28645,"nodeType":"EmitStatement","src":"41084:100:59"}]},"id":28647,"nodeType":"IfStatement","src":"40889:310:59","trueBody":{"id":28630,"nodeType":"Block","src":"40918:66:59","statements":[{"expression":{"id":28628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":28623,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"40936:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28625,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"40945:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"40936:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":28626,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"40957:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":28627,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40963:6:59","memberName":"number","nodeType":"MemberAccess","src":"40957:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40936:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28629,"nodeType":"ExpressionStatement","src":"40936:33:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28385,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28382,"src":"37925:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":28386,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28372,"src":"37929:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37946:6:59","memberName":"length","nodeType":"MemberAccess","src":"37929:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37925:27:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28649,"initializationExpression":{"assignments":[28382],"declarations":[{"constant":false,"id":28382,"mutability":"mutable","name":"i","nameLocation":"37918:1:59","nodeType":"VariableDeclaration","scope":28649,"src":"37910:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28381,"name":"uint256","nodeType":"ElementaryTypeName","src":"37910:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28384,"initialValue":{"hexValue":"30","id":28383,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37922:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"37910:13:59"},"loopExpression":{"expression":{"id":28390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"37954:3:59","subExpression":{"id":28389,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28382,"src":"37954:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28391,"nodeType":"ExpressionStatement","src":"37954:3:59"},"nodeType":"ForStatement","src":"37905:3304:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addSupport","nameLocation":"37767:11:59","parameters":{"id":28373,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28368,"mutability":"mutable","name":"_sender","nameLocation":"37787:7:59","nodeType":"VariableDeclaration","scope":28651,"src":"37779:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28367,"name":"address","nodeType":"ElementaryTypeName","src":"37779:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":28372,"mutability":"mutable","name":"_proposalSupport","nameLocation":"37821:16:59","nodeType":"VariableDeclaration","scope":28651,"src":"37796:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":28370,"nodeType":"UserDefinedTypeName","pathNode":{"id":28369,"name":"ProposalSupport","nameLocations":["37796:15:59"],"nodeType":"IdentifierPath","referencedDeclaration":26209,"src":"37796:15:59"},"referencedDeclaration":26209,"src":"37796:15:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_storage_ptr","typeString":"struct ProposalSupport"}},"id":28371,"nodeType":"ArrayTypeName","src":"37796:17:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"37778:60:59"},"returnParameters":{"id":28374,"nodeType":"ParameterList","parameters":[],"src":"37856:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":28683,"nodeType":"FunctionDefinition","src":"41221:371:59","nodes":[],"body":{"id":28682,"nodeType":"Block","src":"41315:277:59","nodes":[],"statements":[{"assignments":[28661],"declarations":[{"constant":false,"id":28661,"mutability":"mutable","name":"result","nameLocation":"41332:6:59","nodeType":"VariableDeclaration","scope":28682,"src":"41325:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":28660,"name":"int256","nodeType":"ElementaryTypeName","src":"41325:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":28668,"initialValue":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":28667,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":28664,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28653,"src":"41348:8:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28663,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"41341:6:59","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":28662,"name":"int256","nodeType":"ElementaryTypeName","src":"41341:6:59","typeDescriptions":{}}},"id":28665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41341:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":28666,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28655,"src":"41360:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"41341:25:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"41325:41:59"},{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":28671,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28669,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28661,"src":"41381:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":28670,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41390:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"41381:10:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28676,"nodeType":"IfStatement","src":"41377:177:59","trueBody":{"id":28675,"nodeType":"Block","src":"41393:161:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":28672,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"41473:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":28673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41473:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28674,"nodeType":"ExpressionStatement","src":"41473:8:59"}]}},{"expression":{"arguments":[{"id":28679,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28661,"src":"41578:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":28678,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"41570:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":28677,"name":"uint256","nodeType":"ElementaryTypeName","src":"41570:7:59","typeDescriptions":{}}},"id":28680,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41570:15:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28659,"id":28681,"nodeType":"Return","src":"41563:22:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_applyDelta","nameLocation":"41230:11:59","parameters":{"id":28656,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28653,"mutability":"mutable","name":"_support","nameLocation":"41250:8:59","nodeType":"VariableDeclaration","scope":28683,"src":"41242:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28652,"name":"uint256","nodeType":"ElementaryTypeName","src":"41242:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28655,"mutability":"mutable","name":"_delta","nameLocation":"41267:6:59","nodeType":"VariableDeclaration","scope":28683,"src":"41260:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":28654,"name":"int256","nodeType":"ElementaryTypeName","src":"41260:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"41241:33:59"},"returnParameters":{"id":28659,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28658,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28683,"src":"41306:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28657,"name":"uint256","nodeType":"ElementaryTypeName","src":"41306:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41305:9:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":28710,"nodeType":"FunctionDefinition","src":"41598:282:59","nodes":[],"body":{"id":28709,"nodeType":"Block","src":"41694:186:59","nodes":[],"statements":[{"assignments":[28692],"declarations":[{"constant":false,"id":28692,"mutability":"mutable","name":"proposal","nameLocation":"41721:8:59","nodeType":"VariableDeclaration","scope":28709,"src":"41704:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":28691,"nodeType":"UserDefinedTypeName","pathNode":{"id":28690,"name":"Proposal","nameLocations":["41704:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"41704:8:59"},"referencedDeclaration":26204,"src":"41704:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":28696,"initialValue":{"baseExpression":{"id":28693,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"41732:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28695,"indexExpression":{"id":28694,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28685,"src":"41742:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"41732:22:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"41704:50:59"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28698,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"41791:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":28699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"41797:6:59","memberName":"number","nodeType":"MemberAccess","src":"41791:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":28700,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28692,"src":"41806:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28701,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41815:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"41806:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41791:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28703,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28692,"src":"41826:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28704,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41835:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"41826:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28705,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28692,"src":"41851:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28706,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41860:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"41851:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28697,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28768,"src":"41771:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":28707,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41771:102:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28689,"id":28708,"nodeType":"Return","src":"41764:109:59"}]},"functionSelector":"60b0645a","implemented":true,"kind":"function","modifiers":[],"name":"calculateProposalConviction","nameLocation":"41607:27:59","parameters":{"id":28686,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28685,"mutability":"mutable","name":"_proposalId","nameLocation":"41643:11:59","nodeType":"VariableDeclaration","scope":28710,"src":"41635:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28684,"name":"uint256","nodeType":"ElementaryTypeName","src":"41635:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41634:21:59"},"returnParameters":{"id":28689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28688,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28710,"src":"41685:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28687,"name":"uint256","nodeType":"ElementaryTypeName","src":"41685:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41684:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":28768,"nodeType":"FunctionDefinition","src":"42297:644:59","nodes":[],"body":{"id":28767,"nodeType":"Block","src":"42460:481:59","nodes":[],"statements":[{"assignments":[28723],"declarations":[{"constant":false,"id":28723,"mutability":"mutable","name":"t","nameLocation":"42478:1:59","nodeType":"VariableDeclaration","scope":28767,"src":"42470:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28722,"name":"uint256","nodeType":"ElementaryTypeName","src":"42470:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28725,"initialValue":{"id":28724,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28713,"src":"42482:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42470:23:59"},{"assignments":[28727],"declarations":[{"constant":false,"id":28727,"mutability":"mutable","name":"atTWO_128","nameLocation":"42745:9:59","nodeType":"VariableDeclaration","scope":28767,"src":"42737:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28726,"name":"uint256","nodeType":"ElementaryTypeName","src":"42737:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28738,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28732,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28729,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"42763:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28730,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"42772:5:59","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":26232,"src":"42763:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":28731,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42781:3:59","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"42763:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28733,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42762:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":28734,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"42788:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42762:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28736,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28723,"src":"42791:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28728,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28991,"src":"42757:4:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":28737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42757:36:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42737:56:59"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28765,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28759,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28739,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28727,"src":"42813:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28740,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28715,"src":"42825:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42813:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28742,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42812:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28757,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28745,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28743,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28717,"src":"42840:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28744,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"42853:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42840:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28748,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28746,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26489,"src":"42858:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":28747,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28727,"src":"42868:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42858:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28749,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42857:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42840:38:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28751,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42839:40:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28755,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28752,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"42883:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":28753,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"42887:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28754,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"42896:5:59","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":26232,"src":"42887:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42883:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28756,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42882:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42839:63:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28758,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42838:65:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42812:91:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28760,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42811:93:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":28761,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26492,"src":"42907:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42811:103:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28763,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42810:105:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":28764,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42931:3:59","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"42810:124:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28721,"id":28766,"nodeType":"Return","src":"42803:131:59"}]},"documentation":{"id":28711,"nodeType":"StructuredDocumentation","src":"41886:406:59","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":"42306:19:59","parameters":{"id":28718,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28713,"mutability":"mutable","name":"_timePassed","nameLocation":"42334:11:59","nodeType":"VariableDeclaration","scope":28768,"src":"42326:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28712,"name":"uint256","nodeType":"ElementaryTypeName","src":"42326:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28715,"mutability":"mutable","name":"_lastConv","nameLocation":"42355:9:59","nodeType":"VariableDeclaration","scope":28768,"src":"42347:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28714,"name":"uint256","nodeType":"ElementaryTypeName","src":"42347:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28717,"mutability":"mutable","name":"_oldAmount","nameLocation":"42374:10:59","nodeType":"VariableDeclaration","scope":28768,"src":"42366:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28716,"name":"uint256","nodeType":"ElementaryTypeName","src":"42366:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42325:60:59"},"returnParameters":{"id":28721,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28720,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28768,"src":"42447:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28719,"name":"uint256","nodeType":"ElementaryTypeName","src":"42447:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42446:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":28888,"nodeType":"FunctionDefinition","src":"43522:1158:59","nodes":[],"body":{"id":28887,"nodeType":"Block","src":"43625:1055:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28778,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28776,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25483,"src":"43759:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":28777,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43773:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"43759:15:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28783,"nodeType":"IfStatement","src":"43755:66:59","trueBody":{"id":28782,"nodeType":"Block","src":"43776:45:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":28779,"name":"PoolIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26295,"src":"43797:11:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":28780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43797:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28781,"nodeType":"RevertStatement","src":"43790:20:59"}]}},{"condition":{"arguments":[{"id":28785,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28771,"src":"43851:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28784,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28250,"src":"43835:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":28786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43835:33:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28791,"nodeType":"IfStatement","src":"43831:178:59","trueBody":{"id":28790,"nodeType":"Block","src":"43870:139:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":28787,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"43928:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":28788,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43928:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28789,"nodeType":"ExpressionStatement","src":"43928:8:59"}]}},{"assignments":[28793],"declarations":[{"constant":false,"id":28793,"mutability":"mutable","name":"denom","nameLocation":"44027:5:59","nodeType":"VariableDeclaration","scope":28887,"src":"44019:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28792,"name":"uint256","nodeType":"ElementaryTypeName","src":"44019:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28812,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28802,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28794,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"44036:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28795,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44045:8:59","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":26228,"src":"44036:17:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":28798,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":28796,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44056:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":28797,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44061:2:59","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44056:7:59","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"44036:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28800,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44035:29:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":28801,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"44067:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44035:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28807,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28803,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28771,"src":"44072:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":28806,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":28804,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44091:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":28805,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44096:2:59","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44091:7:59","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"44072:26:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28808,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44071:28:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":28809,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25483,"src":"44102:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44071:41:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44035:77:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"44019:93:59"},{"expression":{"id":28847,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28813,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28774,"src":"44122:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28843,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28832,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28829,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28817,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28814,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"44154:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28815,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44163:6:59","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":26230,"src":"44154:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":28816,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44173:3:59","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"44154:22:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28818,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44153:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":28819,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"44180:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44153:28:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28821,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44152:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28827,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28822,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28793,"src":"44187:5:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28823,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28793,"src":"44195:5:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44187:13:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28825,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44186:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":28826,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44205:2:59","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44186:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28828,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44185:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44152:56:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28830,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44151:58:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28831,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"44212:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44151:62:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28833,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44150:64:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28837,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28834,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"44218:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":28835,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"44222:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28836,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44231:5:59","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":26232,"src":"44222:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44218:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28838,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44217:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44150:87:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28840,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44149:89:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":28841,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28999,"src":"44257:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":28842,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44257:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44149:136:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28844,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44135:160:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":28845,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44299:2:59","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44135:166:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44122:179:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28848,"nodeType":"ExpressionStatement","src":"44122:179:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28852,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":28849,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28999,"src":"44316:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":28850,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44316:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":28851,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44348:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"44316:33:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28886,"nodeType":"IfStatement","src":"44312:362:59","trueBody":{"id":28885,"nodeType":"Block","src":"44351:323:59","statements":[{"assignments":[28854],"declarations":[{"constant":false,"id":28854,"mutability":"mutable","name":"thresholdOverride","nameLocation":"44373:17:59","nodeType":"VariableDeclaration","scope":28885,"src":"44365:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28853,"name":"uint256","nodeType":"ElementaryTypeName","src":"44365:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28875,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28874,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28869,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28862,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28855,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"44413:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28856,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44422:18:59","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":26234,"src":"44413:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":28857,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28999,"src":"44443:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":28858,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44443:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44413:58:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28860,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44412:60:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28861,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"44475:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44412:64:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28863,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44411:66:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":28865,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28999,"src":"44518:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":28866,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44518:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28864,"name":"getMaxConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29311,"src":"44501:16:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":28867,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44501:46:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28868,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44500:48:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44411:137:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28870,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44393:169:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"commonType":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"},"id":28873,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":28871,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44565:2:59","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3131","id":28872,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44571:2:59","typeDescriptions":{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},"value":"11"},"src":"44565:8:59","typeDescriptions":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"}},"src":"44393:180:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"44365:208:59"},{"expression":{"id":28883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28876,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28774,"src":"44587:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28879,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28877,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28774,"src":"44600:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":28878,"name":"thresholdOverride","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28854,"src":"44613:17:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44600:30:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"id":28881,"name":"thresholdOverride","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28854,"src":"44646:17:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28882,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"44600:63:59","trueExpression":{"id":28880,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28774,"src":"44633:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44587:76:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28884,"nodeType":"ExpressionStatement","src":"44587:76:59"}]}}]},"documentation":{"id":28769,"nodeType":"StructuredDocumentation","src":"42947:570:59","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":"43531:18:59","parameters":{"id":28772,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28771,"mutability":"mutable","name":"_requestedAmount","nameLocation":"43558:16:59","nodeType":"VariableDeclaration","scope":28888,"src":"43550:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28770,"name":"uint256","nodeType":"ElementaryTypeName","src":"43550:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43549:26:59"},"returnParameters":{"id":28775,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28774,"mutability":"mutable","name":"_threshold","nameLocation":"43613:10:59","nodeType":"VariableDeclaration","scope":28888,"src":"43605:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28773,"name":"uint256","nodeType":"ElementaryTypeName","src":"43605:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43604:20:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":28925,"nodeType":"FunctionDefinition","src":"44941:306:59","nodes":[],"body":{"id":28924,"nodeType":"Block","src":"45027:220:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28900,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28898,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28891,"src":"45041:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":28899,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26489,"src":"45046:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45041:12:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28905,"nodeType":"IfStatement","src":"45037:77:59","trueBody":{"id":28904,"nodeType":"Block","src":"45055:59:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":28901,"name":"AShouldBeUnderOrEqTwo_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26345,"src":"45076:25:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":28902,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45076:27:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28903,"nodeType":"RevertStatement","src":"45069:34:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28908,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28906,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28893,"src":"45127:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":28907,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26489,"src":"45132:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45127:12:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28913,"nodeType":"IfStatement","src":"45123:72:59","trueBody":{"id":28912,"nodeType":"Block","src":"45141:54:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":28909,"name":"BShouldBeLessTwo_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26343,"src":"45162:20:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":28910,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45162:22:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28911,"nodeType":"RevertStatement","src":"45155:29:59"}]}},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28922,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28919,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28914,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28891,"src":"45214:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28915,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28893,"src":"45219:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45214:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28917,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"45213:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":28918,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26492,"src":"45225:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45213:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28920,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"45212:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":28921,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45237:3:59","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"45212:28:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28897,"id":28923,"nodeType":"Return","src":"45205:35:59"}]},"documentation":{"id":28889,"nodeType":"StructuredDocumentation","src":"44686:250:59","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":"44950:4:59","parameters":{"id":28894,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28891,"mutability":"mutable","name":"_a","nameLocation":"44963:2:59","nodeType":"VariableDeclaration","scope":28925,"src":"44955:10:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28890,"name":"uint256","nodeType":"ElementaryTypeName","src":"44955:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28893,"mutability":"mutable","name":"_b","nameLocation":"44975:2:59","nodeType":"VariableDeclaration","scope":28925,"src":"44967:10:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28892,"name":"uint256","nodeType":"ElementaryTypeName","src":"44967:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"44954:24:59"},"returnParameters":{"id":28897,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28896,"mutability":"mutable","name":"_result","nameLocation":"45018:7:59","nodeType":"VariableDeclaration","scope":28925,"src":"45010:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28895,"name":"uint256","nodeType":"ElementaryTypeName","src":"45010:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45009:17:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":28991,"nodeType":"FunctionDefinition","src":"45469:476:59","nodes":[],"body":{"id":28990,"nodeType":"Block","src":"45555:390:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28937,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28935,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28928,"src":"45569:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":28936,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26489,"src":"45575:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45569:13:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28942,"nodeType":"IfStatement","src":"45565:74:59","trueBody":{"id":28941,"nodeType":"Block","src":"45584:55:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":28938,"name":"AShouldBeUnderTwo_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26341,"src":"45605:21:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":28939,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45605:23:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28940,"nodeType":"RevertStatement","src":"45598:30:59"}]}},{"assignments":[28944],"declarations":[{"constant":false,"id":28944,"mutability":"mutable","name":"a","nameLocation":"45657:1:59","nodeType":"VariableDeclaration","scope":28990,"src":"45649:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28943,"name":"uint256","nodeType":"ElementaryTypeName","src":"45649:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28946,"initialValue":{"id":28945,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28928,"src":"45661:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"45649:14:59"},{"assignments":[28948],"declarations":[{"constant":false,"id":28948,"mutability":"mutable","name":"b","nameLocation":"45681:1:59","nodeType":"VariableDeclaration","scope":28990,"src":"45673:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28947,"name":"uint256","nodeType":"ElementaryTypeName","src":"45673:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28950,"initialValue":{"id":28949,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28930,"src":"45685:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"45673:14:59"},{"expression":{"id":28953,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28951,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28933,"src":"45697:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28952,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26489,"src":"45707:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45697:17:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28954,"nodeType":"ExpressionStatement","src":"45697:17:59"},{"body":{"id":28988,"nodeType":"Block","src":"45738:201:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28960,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28958,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28948,"src":"45756:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":28959,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45760:1:59","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"45756:5:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":28961,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45765:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"45756:10:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":28986,"nodeType":"Block","src":"45846:83:59","statements":[{"expression":{"id":28980,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28975,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28933,"src":"45864:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":28977,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28933,"src":"45879:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28978,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28944,"src":"45888:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28976,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28925,"src":"45874:4:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":28979,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45874:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45864:26:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28981,"nodeType":"ExpressionStatement","src":"45864:26:59"},{"expression":{"id":28984,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28982,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28948,"src":"45908:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":28983,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45913:1:59","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"45908:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28985,"nodeType":"ExpressionStatement","src":"45908:6:59"}]},"id":28987,"nodeType":"IfStatement","src":"45752:177:59","trueBody":{"id":28974,"nodeType":"Block","src":"45768:72:59","statements":[{"expression":{"id":28968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28963,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28944,"src":"45786:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":28965,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28944,"src":"45795:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28966,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28944,"src":"45798:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28964,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28925,"src":"45790:4:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":28967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45790:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45786:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28969,"nodeType":"ExpressionStatement","src":"45786:14:59"},{"expression":{"id":28972,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28970,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28948,"src":"45818:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":28971,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45824:1:59","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"45818:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28973,"nodeType":"ExpressionStatement","src":"45818:7:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28957,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28955,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28948,"src":"45731:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":28956,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45735:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"45731:5:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28989,"nodeType":"WhileStatement","src":"45724:215:59"}]},"documentation":{"id":28926,"nodeType":"StructuredDocumentation","src":"45253:211:59","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":"45478:4:59","parameters":{"id":28931,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28928,"mutability":"mutable","name":"_a","nameLocation":"45491:2:59","nodeType":"VariableDeclaration","scope":28991,"src":"45483:10:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28927,"name":"uint256","nodeType":"ElementaryTypeName","src":"45483:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28930,"mutability":"mutable","name":"_b","nameLocation":"45503:2:59","nodeType":"VariableDeclaration","scope":28991,"src":"45495:10:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28929,"name":"uint256","nodeType":"ElementaryTypeName","src":"45495:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45482:24:59"},"returnParameters":{"id":28934,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28933,"mutability":"mutable","name":"_result","nameLocation":"45546:7:59","nodeType":"VariableDeclaration","scope":28991,"src":"45538:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28932,"name":"uint256","nodeType":"ElementaryTypeName","src":"45538:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45537:17:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":28999,"nodeType":"FunctionDefinition","src":"45951:120:59","nodes":[],"body":{"id":28998,"nodeType":"Block","src":"46027:44:59","nodes":[],"statements":[{"expression":{"id":28996,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26520,"src":"46044:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28995,"id":28997,"nodeType":"Return","src":"46037:27:59"}]},"functionSelector":"d1e36232","implemented":true,"kind":"function","modifiers":[],"name":"totalEffectiveActivePoints","nameLocation":"45960:26:59","parameters":{"id":28992,"nodeType":"ParameterList","parameters":[],"src":"45986:2:59"},"returnParameters":{"id":28995,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28994,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28999,"src":"46018:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28993,"name":"uint256","nodeType":"ElementaryTypeName","src":"46018:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46017:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":29040,"nodeType":"FunctionDefinition","src":"46261:389:59","nodes":[],"body":{"id":29039,"nodeType":"Block","src":"46362:288:59","nodes":[],"statements":[{"assignments":[29009,29011],"declarations":[{"constant":false,"id":29009,"mutability":"mutable","name":"conviction","nameLocation":"46381:10:59","nodeType":"VariableDeclaration","scope":29039,"src":"46373:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29008,"name":"uint256","nodeType":"ElementaryTypeName","src":"46373:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":29011,"mutability":"mutable","name":"blockNumber","nameLocation":"46401:11:59","nodeType":"VariableDeclaration","scope":29039,"src":"46393:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29010,"name":"uint256","nodeType":"ElementaryTypeName","src":"46393:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":29016,"initialValue":{"arguments":[{"id":29013,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29003,"src":"46450:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":29014,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29005,"src":"46461:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29012,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29087,"src":"46416:33:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$26204_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":29015,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46416:56:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"46372:100:59"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29023,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29019,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29017,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29009,"src":"46486:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":29018,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"46500:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"46486:15:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29022,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29020,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29011,"src":"46505:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":29021,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"46520:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"46505:16:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"46486:35:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29026,"nodeType":"IfStatement","src":"46482:72:59","trueBody":{"id":29025,"nodeType":"Block","src":"46523:31:59","statements":[{"functionReturnParameters":29007,"id":29024,"nodeType":"Return","src":"46537:7:59"}]}},{"expression":{"id":29031,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29027,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29003,"src":"46563:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29029,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"46573:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"46563:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":29030,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29011,"src":"46585:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46563:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29032,"nodeType":"ExpressionStatement","src":"46563:33:59"},{"expression":{"id":29037,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29033,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29003,"src":"46606:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29035,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"46616:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"46606:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":29036,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29009,"src":"46633:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46606:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29038,"nodeType":"ExpressionStatement","src":"46606:37:59"}]},"documentation":{"id":29000,"nodeType":"StructuredDocumentation","src":"46077:179:59","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":"46270:26:59","parameters":{"id":29006,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29003,"mutability":"mutable","name":"_proposal","nameLocation":"46314:9:59","nodeType":"VariableDeclaration","scope":29040,"src":"46297:26:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":29002,"nodeType":"UserDefinedTypeName","pathNode":{"id":29001,"name":"Proposal","nameLocations":["46297:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"46297:8:59"},"referencedDeclaration":26204,"src":"46297:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":29005,"mutability":"mutable","name":"_oldStaked","nameLocation":"46333:10:59","nodeType":"VariableDeclaration","scope":29040,"src":"46325:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29004,"name":"uint256","nodeType":"ElementaryTypeName","src":"46325:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46296:48:59"},"returnParameters":{"id":29007,"nodeType":"ParameterList","parameters":[],"src":"46362:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":29087,"nodeType":"FunctionDefinition","src":"46656:720:59","nodes":[],"body":{"id":29086,"nodeType":"Block","src":"46855:521:59","nodes":[],"statements":[{"expression":{"id":29055,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":29052,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29050,"src":"46865:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29053,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"46879:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":29054,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"46885:6:59","memberName":"number","nodeType":"MemberAccess","src":"46879:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46865:26:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29056,"nodeType":"ExpressionStatement","src":"46865:26:59"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29058,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29043,"src":"46908:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29059,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46918:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"46908:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":29060,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29050,"src":"46931:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46908:34:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":29057,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"46901:6:59","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":29062,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46901:42:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29063,"nodeType":"ExpressionStatement","src":"46901:42:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29067,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29064,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29043,"src":"46957:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29065,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46967:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"46957:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":29066,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29050,"src":"46980:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46957:34:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29073,"nodeType":"IfStatement","src":"46953:173:59","trueBody":{"id":29072,"nodeType":"Block","src":"46993:133:59","statements":[{"expression":{"components":[{"hexValue":"30","id":29068,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47081:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"30","id":29069,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47084:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"id":29070,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"47080:6:59","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$","typeString":"tuple(int_const 0,int_const 0)"}},"functionReturnParameters":29051,"id":29071,"nodeType":"Return","src":"47073:13:59"}]}},{"expression":{"id":29084,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":29074,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29048,"src":"47179:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29079,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29076,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29050,"src":"47225:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":29077,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29043,"src":"47239:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29078,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47249:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"47239:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47225:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29080,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29043,"src":"47311:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29081,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47321:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"47311:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":29082,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29045,"src":"47349:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29075,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28768,"src":"47192:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":29083,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47192:177:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47179:190:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29085,"nodeType":"ExpressionStatement","src":"47179:190:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkBlockAndCalculateConviction","nameLocation":"46665:33:59","parameters":{"id":29046,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29043,"mutability":"mutable","name":"_proposal","nameLocation":"46716:9:59","nodeType":"VariableDeclaration","scope":29087,"src":"46699:26:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":29042,"nodeType":"UserDefinedTypeName","pathNode":{"id":29041,"name":"Proposal","nameLocations":["46699:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"46699:8:59"},"referencedDeclaration":26204,"src":"46699:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":29045,"mutability":"mutable","name":"_oldStaked","nameLocation":"46735:10:59","nodeType":"VariableDeclaration","scope":29087,"src":"46727:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29044,"name":"uint256","nodeType":"ElementaryTypeName","src":"46727:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46698:48:59"},"returnParameters":{"id":29051,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29048,"mutability":"mutable","name":"conviction","nameLocation":"46818:10:59","nodeType":"VariableDeclaration","scope":29087,"src":"46810:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29047,"name":"uint256","nodeType":"ElementaryTypeName","src":"46810:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":29050,"mutability":"mutable","name":"blockNumber","nameLocation":"46838:11:59","nodeType":"VariableDeclaration","scope":29087,"src":"46830:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29049,"name":"uint256","nodeType":"ElementaryTypeName","src":"46830:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46809:41:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":29105,"nodeType":"FunctionDefinition","src":"47382:198:59","nodes":[],"body":{"id":29104,"nodeType":"Block","src":"47492:88:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":29096,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26838,"src":"47502:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":29097,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47502:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29098,"nodeType":"ExpressionStatement","src":"47502:17:59"},{"expression":{"arguments":[{"id":29100,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29090,"src":"47544:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":29101,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29093,"src":"47563:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}],"id":29099,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[29257,29398,29436],"referencedDeclaration":29257,"src":"47529:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$26226_memory_ptr_$_t_struct$_CVParams_$26235_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":29102,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47529:44:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29103,"nodeType":"ExpressionStatement","src":"47529:44:59"}]},"functionSelector":"062f9ece","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"47391:13:59","parameters":{"id":29094,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29090,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47429:17:59","nodeType":"VariableDeclaration","scope":29105,"src":"47405:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29089,"nodeType":"UserDefinedTypeName","pathNode":{"id":29088,"name":"ArbitrableConfig","nameLocations":["47405:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"47405:16:59"},"referencedDeclaration":26226,"src":"47405:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":29093,"mutability":"mutable","name":"_cvParams","nameLocation":"47464:9:59","nodeType":"VariableDeclaration","scope":29105,"src":"47448:25:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":29092,"nodeType":"UserDefinedTypeName","pathNode":{"id":29091,"name":"CVParams","nameLocations":["47448:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"47448:8:59"},"referencedDeclaration":26235,"src":"47448:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47404:70:59"},"returnParameters":{"id":29095,"nodeType":"ParameterList","parameters":[],"src":"47492:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":29257,"nodeType":"FunctionDefinition","src":"47586:2357:59","nodes":[],"body":{"id":29256,"nodeType":"Block","src":"47697:2246:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29180,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29114,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"47724:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29115,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47742:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"47724:30:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":29118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47766:1:59","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":29117,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"47758:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29116,"name":"address","nodeType":"ElementaryTypeName","src":"47758:7:59","typeDescriptions":{}}},"id":29119,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47758:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"47724:44:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29130,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":29123,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"47780:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29124,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47798:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"47780:28:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}],"id":29122,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"47772:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29121,"name":"address","nodeType":"ElementaryTypeName","src":"47772:7:59","typeDescriptions":{}}},"id":29125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47772:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":29128,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47821:1:59","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":29127,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"47813:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29126,"name":"address","nodeType":"ElementaryTypeName","src":"47813:7:59","typeDescriptions":{}}},"id":29129,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47813:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"47772:51:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47724:99:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29178,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29170,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29162,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29138,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29132,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"47865:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29133,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47883:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"47865:30:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":29134,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"47899:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29136,"indexExpression":{"id":29135,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"47917:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"47899:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29137,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47949:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"47899:62:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"47865:96:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"},"id":29145,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29139,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"47989:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29140,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48007:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"47989:28:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":29141,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48021:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29143,"indexExpression":{"id":29142,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48039:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48021:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29144,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48071:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"48021:60:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"src":"47989:92:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47865:216:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29153,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29147,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"48109:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29148,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48127:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"48109:43:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":29149,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48184:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29151,"indexExpression":{"id":29150,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48202:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48184:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29152,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48234:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"48184:75:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48109:150:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47865:394:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29161,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29155,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"48287:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29156,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48305:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"48287:44:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":29157,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48363:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29159,"indexExpression":{"id":29158,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48381:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48363:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29160,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48413:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"48363:76:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48287:152:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47865:574:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29169,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29163,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"48467:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29164,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48485:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"48467:31:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":29165,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48502:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29167,"indexExpression":{"id":29166,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48520:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48502:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29168,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48552:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"48502:63:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48467:98:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47865:700:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29177,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29171,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"48593:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29172,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48611:20:59","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":26225,"src":"48593:38:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":29173,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48663:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29175,"indexExpression":{"id":29174,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48681:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48663:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29176,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48713:20:59","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":26225,"src":"48663:70:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48593:140:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47865:868:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":29179,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47843:908:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47724:1027:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29247,"nodeType":"IfStatement","src":"47707:2158:59","trueBody":{"id":29246,"nodeType":"Block","src":"48762:1103:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29187,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":29181,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48797:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29183,"indexExpression":{"id":29182,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48815:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48797:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29184,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48847:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"48797:62:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":29185,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"48863:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29186,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48881:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"48863:30:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"48797:96:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"},"id":29194,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":29188,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48917:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29190,"indexExpression":{"id":29189,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48935:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48917:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29191,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48967:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"48917:60:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":29192,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"48981:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29193,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48999:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"48981:28:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"src":"48917:92:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"48797:212:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29220,"nodeType":"IfStatement","src":"48776:522:59","trueBody":{"id":29219,"nodeType":"Block","src":"49024:274:59","statements":[{"expression":{"arguments":[{"expression":{"id":29201,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49084:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49102:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"49084:30:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"id":29196,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49042:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29199,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49060:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"49042:28:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"id":29200,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49071:12:59","memberName":"registerSafe","nodeType":"MemberAccess","referencedDeclaration":33253,"src":"49042:41:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":29203,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49042:73:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29204,"nodeType":"ExpressionStatement","src":"49042:73:59"},{"eventCall":{"arguments":[{"arguments":[{"id":29208,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"49189:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":29207,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"49181:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29206,"name":"address","nodeType":"ElementaryTypeName","src":"49181:7:59","typeDescriptions":{}}},"id":29209,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49181:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":29212,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49204:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29213,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49222:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"49204:28:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}],"id":29211,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"49196:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29210,"name":"address","nodeType":"ElementaryTypeName","src":"49196:7:59","typeDescriptions":{}}},"id":29214,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49196:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29215,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49235:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29216,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49253:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"49235:30:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":29205,"name":"TribunaSafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26441,"src":"49138:21:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (address,address,address)"}},"id":29217,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49138:145:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29218,"nodeType":"EmitStatement","src":"49133:150:59"}]}},{"expression":{"id":29222,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"49312:32:59","subExpression":{"id":29221,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"49312:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29223,"nodeType":"ExpressionStatement","src":"49312:32:59"},{"expression":{"id":29228,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":29224,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"49358:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29226,"indexExpression":{"id":29225,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"49376:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"49358:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":29227,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49410:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"49358:69:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29229,"nodeType":"ExpressionStatement","src":"49358:69:59"},{"eventCall":{"arguments":[{"id":29231,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"49488:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29232,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49536:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29233,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49554:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"49536:28:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},{"expression":{"id":29234,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49582:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29235,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49600:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"49582:30:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29236,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49630:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29237,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49648:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"49630:43:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29238,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49691:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29239,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49709:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"49691:44:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29240,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49753:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29241,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49771:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"49753:31:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29242,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49802:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49820:20:59","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":26225,"src":"49802:38:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$33254","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":29230,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26462,"src":"49447:23:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$33254_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":29244,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49447:407:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29245,"nodeType":"EmitStatement","src":"49442:412:59"}]}},{"expression":{"id":29250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":29248,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"49875:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":29249,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29111,"src":"49886:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}},"src":"49875:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":29251,"nodeType":"ExpressionStatement","src":"49875:20:59"},{"eventCall":{"arguments":[{"id":29253,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29111,"src":"49926:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}],"id":29252,"name":"CVParamsUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26414,"src":"49910:15:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_struct$_CVParams_$26235_memory_ptr_$returns$__$","typeString":"function (struct CVParams memory)"}},"id":29254,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49910:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29255,"nodeType":"EmitStatement","src":"49905:31:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"47595:14:59","parameters":{"id":29112,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29108,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47634:17:59","nodeType":"VariableDeclaration","scope":29257,"src":"47610:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29107,"nodeType":"UserDefinedTypeName","pathNode":{"id":29106,"name":"ArbitrableConfig","nameLocations":["47610:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"47610:16:59"},"referencedDeclaration":26226,"src":"47610:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":29111,"mutability":"mutable","name":"_cvParams","nameLocation":"47669:9:59","nodeType":"VariableDeclaration","scope":29257,"src":"47653:25:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":29110,"nodeType":"UserDefinedTypeName","pathNode":{"id":29109,"name":"CVParams","nameLocations":["47653:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"47653:8:59"},"referencedDeclaration":26235,"src":"47653:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47609:70:59"},"returnParameters":{"id":29113,"nodeType":"ParameterList","parameters":[],"src":"47697:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":29291,"nodeType":"FunctionDefinition","src":"49949:609:59","nodes":[],"body":{"id":29290,"nodeType":"Block","src":"50036:522:59","nodes":[],"statements":[{"assignments":[29266],"declarations":[{"constant":false,"id":29266,"mutability":"mutable","name":"proposal","nameLocation":"50063:8:59","nodeType":"VariableDeclaration","scope":29290,"src":"50046:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":29265,"nodeType":"UserDefinedTypeName","pathNode":{"id":29264,"name":"Proposal","nameLocations":["50046:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"50046:8:59"},"referencedDeclaration":26204,"src":"50046:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":29270,"initialValue":{"baseExpression":{"id":29267,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"50074:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29269,"indexExpression":{"id":29268,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29259,"src":"50084:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50074:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50046:49:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29271,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29266,"src":"50110:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29272,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50119:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"50110:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":29273,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29259,"src":"50133:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50110:33:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29280,"nodeType":"IfStatement","src":"50106:100:59","trueBody":{"id":29279,"nodeType":"Block","src":"50145:61:59","statements":[{"errorCall":{"arguments":[{"id":29276,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29259,"src":"50184:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29275,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26311,"src":"50166:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":29277,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50166:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29278,"nodeType":"RevertStatement","src":"50159:36:59"}]}},{"expression":{"arguments":[{"id":29282,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29266,"src":"50479:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":29283,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29266,"src":"50489:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29284,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50498:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"50489:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29281,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29040,"src":"50452:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$26204_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":29285,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50452:59:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29286,"nodeType":"ExpressionStatement","src":"50452:59:59"},{"expression":{"expression":{"id":29287,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29266,"src":"50528:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29288,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50537:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"50528:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":29263,"id":29289,"nodeType":"Return","src":"50521:30:59"}]},"functionSelector":"1aa91a9e","implemented":true,"kind":"function","modifiers":[],"name":"updateProposalConviction","nameLocation":"49958:24:59","parameters":{"id":29260,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29259,"mutability":"mutable","name":"proposalId","nameLocation":"49991:10:59","nodeType":"VariableDeclaration","scope":29291,"src":"49983:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29258,"name":"uint256","nodeType":"ElementaryTypeName","src":"49983:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"49982:20:59"},"returnParameters":{"id":29263,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29262,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":29291,"src":"50027:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29261,"name":"uint256","nodeType":"ElementaryTypeName","src":"50027:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50026:9:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":29311,"nodeType":"FunctionDefinition","src":"50564:141:59","nodes":[],"body":{"id":29310,"nodeType":"Block","src":"50644:61:59","nodes":[],"statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29307,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29300,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29298,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29293,"src":"50663:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":29299,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"50672:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50663:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":29301,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"50662:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29305,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29302,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"50678:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":29303,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"50682:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":29304,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50691:5:59","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":26232,"src":"50682:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50678:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":29306,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"50677:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50662:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":29308,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"50661:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":29297,"id":29309,"nodeType":"Return","src":"50654:44:59"}]},"functionSelector":"950559d7","implemented":true,"kind":"function","modifiers":[],"name":"getMaxConviction","nameLocation":"50573:16:59","parameters":{"id":29294,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29293,"mutability":"mutable","name":"amount","nameLocation":"50598:6:59","nodeType":"VariableDeclaration","scope":29311,"src":"50590:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29292,"name":"uint256","nodeType":"ElementaryTypeName","src":"50590:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50589:16:59"},"returnParameters":{"id":29297,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29296,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":29311,"src":"50635:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29295,"name":"uint256","nodeType":"ElementaryTypeName","src":"50635:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50634:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":29357,"nodeType":"FunctionDefinition","src":"51056:412:59","nodes":[],"body":{"id":29356,"nodeType":"Block","src":"51138:330:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29332,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29326,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29318,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"51152:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51156:6:59","memberName":"sender","nodeType":"MemberAccess","src":"51152:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":29322,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"51174:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":29323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51192:11:59","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":31136,"src":"51174:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$33380_$","typeString":"function () view external returns (contract ISafe)"}},"id":29324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51174:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":29321,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"51166:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29320,"name":"address","nodeType":"ElementaryTypeName","src":"51166:7:59","typeDescriptions":{}}},"id":29325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51166:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"51152:54:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29331,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29327,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"51210:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29328,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51214:6:59","memberName":"sender","nodeType":"MemberAccess","src":"51210:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":29329,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[30779],"referencedDeclaration":30779,"src":"51224:5:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":29330,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51224:7:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"51210:21:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"51152:79:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29337,"nodeType":"IfStatement","src":"51148:132:59","trueBody":{"id":29336,"nodeType":"Block","src":"51233:47:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":29333,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26323,"src":"51252:15:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":29334,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51252:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29335,"nodeType":"RevertStatement","src":"51245:24:59"}]}},{"expression":{"arguments":[{"id":29339,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29313,"src":"51308:12:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":29338,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26820,"src":"51289:18:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":29340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51289:32:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29341,"nodeType":"ExpressionStatement","src":"51289:32:59"},{"expression":{"id":29346,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":29342,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"51331:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":29344,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29313,"src":"51358:12:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":29343,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30228,"src":"51345:12:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$30228_$","typeString":"type(contract ISybilScorer)"}},"id":29345,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51345:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"src":"51331:40:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"id":29347,"nodeType":"ExpressionStatement","src":"51331:40:59"},{"expression":{"arguments":[{"id":29349,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29315,"src":"51404:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29348,"name":"_registerToSybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30146,"src":"51381:22:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":29350,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51381:33:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29351,"nodeType":"ExpressionStatement","src":"51381:33:59"},{"eventCall":{"arguments":[{"id":29353,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29313,"src":"51448:12:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":29352,"name":"SybilScorerUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26480,"src":"51429:18:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":29354,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51429:32:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29355,"nodeType":"EmitStatement","src":"51424:37:59"}]},"functionSelector":"3864d366","implemented":true,"kind":"function","modifiers":[],"name":"setSybilScorer","nameLocation":"51065:14:59","parameters":{"id":29316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29313,"mutability":"mutable","name":"_sybilScorer","nameLocation":"51088:12:59","nodeType":"VariableDeclaration","scope":29357,"src":"51080:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":29312,"name":"address","nodeType":"ElementaryTypeName","src":"51080:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":29315,"mutability":"mutable","name":"threshold","nameLocation":"51110:9:59","nodeType":"VariableDeclaration","scope":29357,"src":"51102:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29314,"name":"uint256","nodeType":"ElementaryTypeName","src":"51102:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"51079:41:59"},"returnParameters":{"id":29317,"nodeType":"ParameterList","parameters":[],"src":"51138:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":29398,"nodeType":"FunctionDefinition","src":"51474:470:59","nodes":[],"body":{"id":29397,"nodeType":"Block","src":"51688:256:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":29373,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29360,"src":"51713:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":29374,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29363,"src":"51732:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}],"id":29372,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[29257,29398,29436],"referencedDeclaration":29257,"src":"51698:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$26226_memory_ptr_$_t_struct$_CVParams_$26235_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":29375,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51698:44:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29376,"nodeType":"ExpressionStatement","src":"51698:44:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29380,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29377,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29366,"src":"51756:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":29378,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51769:6:59","memberName":"length","nodeType":"MemberAccess","src":"51756:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":29379,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51778:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51756:23:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29386,"nodeType":"IfStatement","src":"51752:83:59","trueBody":{"id":29385,"nodeType":"Block","src":"51781:54:59","statements":[{"expression":{"arguments":[{"id":29382,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29366,"src":"51811:12:59","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":29381,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30055,"src":"51795:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":29383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51795:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29384,"nodeType":"ExpressionStatement","src":"51795:29:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29387,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29369,"src":"51848:15:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":29388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51864:6:59","memberName":"length","nodeType":"MemberAccess","src":"51848:22:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":29389,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51873:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51848:26:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29396,"nodeType":"IfStatement","src":"51844:94:59","trueBody":{"id":29395,"nodeType":"Block","src":"51876:62:59","statements":[{"expression":{"arguments":[{"id":29392,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29369,"src":"51911:15:59","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":29391,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30124,"src":"51890:20:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":29393,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51890:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29394,"nodeType":"ExpressionStatement","src":"51890:37:59"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"51483:14:59","parameters":{"id":29370,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29360,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"51531:17:59","nodeType":"VariableDeclaration","scope":29398,"src":"51507:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29359,"nodeType":"UserDefinedTypeName","pathNode":{"id":29358,"name":"ArbitrableConfig","nameLocations":["51507:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"51507:16:59"},"referencedDeclaration":26226,"src":"51507:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":29363,"mutability":"mutable","name":"_cvParams","nameLocation":"51574:9:59","nodeType":"VariableDeclaration","scope":29398,"src":"51558:25:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":29362,"nodeType":"UserDefinedTypeName","pathNode":{"id":29361,"name":"CVParams","nameLocations":["51558:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"51558:8:59"},"referencedDeclaration":26235,"src":"51558:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":29366,"mutability":"mutable","name":"membersToAdd","nameLocation":"51610:12:59","nodeType":"VariableDeclaration","scope":29398,"src":"51593:29:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":29364,"name":"address","nodeType":"ElementaryTypeName","src":"51593:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29365,"nodeType":"ArrayTypeName","src":"51593:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":29369,"mutability":"mutable","name":"membersToRemove","nameLocation":"51649:15:59","nodeType":"VariableDeclaration","scope":29398,"src":"51632:32:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":29367,"name":"address","nodeType":"ElementaryTypeName","src":"51632:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29368,"nodeType":"ArrayTypeName","src":"51632:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"51497:173:59"},"returnParameters":{"id":29371,"nodeType":"ParameterList","parameters":[],"src":"51688:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":29436,"nodeType":"FunctionDefinition","src":"51950:368:59","nodes":[],"body":{"id":29435,"nodeType":"Block","src":"52120:198:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":29410,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29401,"src":"52145:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":29411,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29404,"src":"52164:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}],"id":29409,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[29257,29398,29436],"referencedDeclaration":29257,"src":"52130:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$26226_memory_ptr_$_t_struct$_CVParams_$26235_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":29412,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52130:44:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29413,"nodeType":"ExpressionStatement","src":"52130:44:59"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29422,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":29416,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"52196:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}],"id":29415,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52188:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29414,"name":"address","nodeType":"ElementaryTypeName","src":"52188:7:59","typeDescriptions":{}}},"id":29417,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52188:20:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":29420,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52220:1:59","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":29419,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52212:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29418,"name":"address","nodeType":"ElementaryTypeName","src":"52212:7:59","typeDescriptions":{}}},"id":29421,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52212:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"52188:34:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29434,"nodeType":"IfStatement","src":"52184:128:59","trueBody":{"id":29433,"nodeType":"Block","src":"52224:88:59","statements":[{"expression":{"arguments":[{"arguments":[{"id":29428,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"52274:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":29427,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52266:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29426,"name":"address","nodeType":"ElementaryTypeName","src":"52266:7:59","typeDescriptions":{}}},"id":29429,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52266:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":29430,"name":"sybilScoreThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29406,"src":"52281:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":29423,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"52238:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"id":29425,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52250:15:59","memberName":"modifyThreshold","nodeType":"MemberAccess","referencedDeclaration":30208,"src":"52238:27:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256) external"}},"id":29431,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52238:63:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29432,"nodeType":"ExpressionStatement","src":"52238:63:59"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"51959:14:59","parameters":{"id":29407,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29401,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"52007:17:59","nodeType":"VariableDeclaration","scope":29436,"src":"51983:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29400,"nodeType":"UserDefinedTypeName","pathNode":{"id":29399,"name":"ArbitrableConfig","nameLocations":["51983:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"51983:16:59"},"referencedDeclaration":26226,"src":"51983:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":29404,"mutability":"mutable","name":"_cvParams","nameLocation":"52050:9:59","nodeType":"VariableDeclaration","scope":29436,"src":"52034:25:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":29403,"nodeType":"UserDefinedTypeName","pathNode":{"id":29402,"name":"CVParams","nameLocations":["52034:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"52034:8:59"},"referencedDeclaration":26235,"src":"52034:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":29406,"mutability":"mutable","name":"sybilScoreThreshold","nameLocation":"52077:19:59","nodeType":"VariableDeclaration","scope":29436,"src":"52069:27:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29405,"name":"uint256","nodeType":"ElementaryTypeName","src":"52069:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"51973:129:59"},"returnParameters":{"id":29408,"nodeType":"ParameterList","parameters":[],"src":"52120:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":29462,"nodeType":"FunctionDefinition","src":"52324:332:59","nodes":[],"body":{"id":29461,"nodeType":"Block","src":"52537:119:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":29451,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26838,"src":"52547:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":29452,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52547:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29453,"nodeType":"ExpressionStatement","src":"52547:17:59"},{"expression":{"arguments":[{"id":29455,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29439,"src":"52589:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":29456,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29442,"src":"52608:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}},{"id":29457,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29445,"src":"52619:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"id":29458,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29448,"src":"52633:15:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$26235_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":29454,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[29257,29398,29436],"referencedDeclaration":29398,"src":"52574:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$26226_memory_ptr_$_t_struct$_CVParams_$26235_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":29459,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52574:75:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29460,"nodeType":"ExpressionStatement","src":"52574:75:59"}]},"functionSelector":"948e7a59","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"52333:13:59","parameters":{"id":29449,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29439,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"52380:17:59","nodeType":"VariableDeclaration","scope":29462,"src":"52356:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29438,"nodeType":"UserDefinedTypeName","pathNode":{"id":29437,"name":"ArbitrableConfig","nameLocations":["52356:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"52356:16:59"},"referencedDeclaration":26226,"src":"52356:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":29442,"mutability":"mutable","name":"_cvParams","nameLocation":"52423:9:59","nodeType":"VariableDeclaration","scope":29462,"src":"52407:25:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":29441,"nodeType":"UserDefinedTypeName","pathNode":{"id":29440,"name":"CVParams","nameLocations":["52407:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"52407:8:59"},"referencedDeclaration":26235,"src":"52407:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":29445,"mutability":"mutable","name":"membersToAdd","nameLocation":"52459:12:59","nodeType":"VariableDeclaration","scope":29462,"src":"52442:29:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":29443,"name":"address","nodeType":"ElementaryTypeName","src":"52442:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29444,"nodeType":"ArrayTypeName","src":"52442:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":29448,"mutability":"mutable","name":"membersToRemove","nameLocation":"52498:15:59","nodeType":"VariableDeclaration","scope":29462,"src":"52481:32:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":29446,"name":"address","nodeType":"ElementaryTypeName","src":"52481:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29447,"nodeType":"ArrayTypeName","src":"52481:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"52346:173:59"},"returnParameters":{"id":29450,"nodeType":"ParameterList","parameters":[],"src":"52537:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":29483,"nodeType":"FunctionDefinition","src":"52662:278:59","nodes":[],"body":{"id":29482,"nodeType":"Block","src":"52831:109:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":29473,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26838,"src":"52841:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":29474,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52841:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29475,"nodeType":"ExpressionStatement","src":"52841:17:59"},{"expression":{"arguments":[{"id":29477,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29465,"src":"52883:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":29478,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29468,"src":"52902:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}},{"id":29479,"name":"sybilScoreThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29470,"src":"52913:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29476,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[29257,29398,29436],"referencedDeclaration":29436,"src":"52868:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$26226_memory_ptr_$_t_struct$_CVParams_$26235_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory,uint256)"}},"id":29480,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52868:65:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29481,"nodeType":"ExpressionStatement","src":"52868:65:59"}]},"functionSelector":"ad56fd5d","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"52671:13:59","parameters":{"id":29471,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29465,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"52718:17:59","nodeType":"VariableDeclaration","scope":29483,"src":"52694:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29464,"nodeType":"UserDefinedTypeName","pathNode":{"id":29463,"name":"ArbitrableConfig","nameLocations":["52694:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"52694:16:59"},"referencedDeclaration":26226,"src":"52694:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":29468,"mutability":"mutable","name":"_cvParams","nameLocation":"52761:9:59","nodeType":"VariableDeclaration","scope":29483,"src":"52745:25:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":29467,"nodeType":"UserDefinedTypeName","pathNode":{"id":29466,"name":"CVParams","nameLocations":["52745:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"52745:8:59"},"referencedDeclaration":26235,"src":"52745:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":29470,"mutability":"mutable","name":"sybilScoreThreshold","nameLocation":"52788:19:59","nodeType":"VariableDeclaration","scope":29483,"src":"52780:27:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29469,"name":"uint256","nodeType":"ElementaryTypeName","src":"52780:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"52684:129:59"},"returnParameters":{"id":29472,"nodeType":"ParameterList","parameters":[],"src":"52831:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":29648,"nodeType":"FunctionDefinition","src":"52946:2575:59","nodes":[],"body":{"id":29647,"nodeType":"Block","src":"53132:2389:59","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":29495,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53162:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29496,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53166:6:59","memberName":"sender","nodeType":"MemberAccess","src":"53162:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":29494,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26788,"src":"53142:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":29497,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53142:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29498,"nodeType":"ExpressionStatement","src":"53142:31:59"},{"assignments":[29501],"declarations":[{"constant":false,"id":29501,"mutability":"mutable","name":"proposal","nameLocation":"53200:8:59","nodeType":"VariableDeclaration","scope":29647,"src":"53183:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":29500,"nodeType":"UserDefinedTypeName","pathNode":{"id":29499,"name":"Proposal","nameLocations":["53183:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"53183:8:59"},"referencedDeclaration":26204,"src":"53183:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":29505,"initialValue":{"baseExpression":{"id":29502,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"53211:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29504,"indexExpression":{"id":29503,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"53221:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53211:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"53183:49:59"},{"assignments":[29508],"declarations":[{"constant":false,"id":29508,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"53266:16:59","nodeType":"VariableDeclaration","scope":29647,"src":"53242:40:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29507,"nodeType":"UserDefinedTypeName","pathNode":{"id":29506,"name":"ArbitrableConfig","nameLocations":["53242:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"53242:16:59"},"referencedDeclaration":26226,"src":"53242:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":29513,"initialValue":{"baseExpression":{"id":29509,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"53285:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29512,"indexExpression":{"expression":{"id":29510,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"53303:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29511,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53312:23:59","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":26203,"src":"53303:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53285:51:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"53242:94:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29514,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"53645:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53654:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"53645:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":29516,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"53668:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"53645:33:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29523,"nodeType":"IfStatement","src":"53641:100:59","trueBody":{"id":29522,"nodeType":"Block","src":"53680:61:59","statements":[{"errorCall":{"arguments":[{"id":29519,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"53719:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29518,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26311,"src":"53701:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":29520,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53701:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29521,"nodeType":"RevertStatement","src":"53694:36:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":29528,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29524,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"53754:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29525,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53763:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"53754:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":29526,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"53781:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29527,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53796:6:59","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":26157,"src":"53781:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"53754:48:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29534,"nodeType":"IfStatement","src":"53750:115:59","trueBody":{"id":29533,"nodeType":"Block","src":"53804:61:59","statements":[{"errorCall":{"arguments":[{"id":29530,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"53843:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29529,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26307,"src":"53825:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":29531,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53825:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29532,"nodeType":"RevertStatement","src":"53818:36:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29539,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29535,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53878:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29536,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53882:5:59","memberName":"value","nodeType":"MemberAccess","src":"53878:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":29537,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29508,"src":"53890:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53907:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"53890:43:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"53878:55:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29544,"nodeType":"IfStatement","src":"53874:258:59","trueBody":{"id":29543,"nodeType":"Block","src":"53935:197:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":29540,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"54051:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":29541,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54051:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29542,"nodeType":"ExpressionStatement","src":"54051:8:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29545,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"54251:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29546,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54260:21:59","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":26201,"src":"54251:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":29547,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"54285:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"54251:35:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29555,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29552,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29549,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"54306:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29550,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54315:21:59","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":26201,"src":"54306:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":29551,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26504,"src":"54339:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54306:53:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":29553,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"54362:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":29554,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54368:9:59","memberName":"timestamp","nodeType":"MemberAccess","src":"54362:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54306:71:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"54251:126:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29561,"nodeType":"IfStatement","src":"54234:418:59","trueBody":{"id":29560,"nodeType":"Block","src":"54388:264:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":29557,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"54571:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":29558,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54571:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29559,"nodeType":"ExpressionStatement","src":"54571:8:59"}]}},{"assignments":[29563],"declarations":[{"constant":false,"id":29563,"mutability":"mutable","name":"arbitrationFee","nameLocation":"54670:14:59","nodeType":"VariableDeclaration","scope":29647,"src":"54662:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29562,"name":"uint256","nodeType":"ElementaryTypeName","src":"54662:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":29569,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29568,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29564,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"54687:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29565,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54691:5:59","memberName":"value","nodeType":"MemberAccess","src":"54687:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":29566,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29508,"src":"54699:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29567,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54716:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"54699:43:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54687:55:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"54662:80:59"},{"expression":{"arguments":[{"id":29576,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"54839:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29577,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"54851:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29578,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54855:6:59","memberName":"sender","nodeType":"MemberAccess","src":"54851:10:59","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":29570,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"54753:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29572,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54769:17:59","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":33266,"src":"54753:33:59","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":29575,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":29573,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29508,"src":"54794:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29574,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54811:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"54794:43:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"54753:85:59","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":29579,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54753:109:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29580,"nodeType":"ExpressionStatement","src":"54753:109:59"},{"expression":{"id":29590,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":29581,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29492,"src":"54873:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":29587,"name":"RULING_OPTIONS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26501,"src":"54950:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":29588,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29489,"src":"54966:10:59","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":29582,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29508,"src":"54885:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29583,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54902:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"54885:27:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"id":29584,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54913:13:59","memberName":"createDispute","nodeType":"MemberAccess","referencedDeclaration":33201,"src":"54885:41:59","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":29586,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":29585,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29563,"src":"54934:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"54885:64:59","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":29589,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54885:92:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54873:104:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29591,"nodeType":"ExpressionStatement","src":"54873:104:59"},{"expression":{"id":29597,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29592,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"54988:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29594,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"54997:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"54988:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29595,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"55014:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29596,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"55029:8:59","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":26161,"src":"55014:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"54988:49:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":29598,"nodeType":"ExpressionStatement","src":"54988:49:59"},{"expression":{"id":29605,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":29599,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"55047:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29602,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55056:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"55047:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29603,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55068:9:59","memberName":"disputeId","nodeType":"MemberAccess","referencedDeclaration":26165,"src":"55047:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":29604,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29492,"src":"55080:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"55047:42:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29606,"nodeType":"ExpressionStatement","src":"55047:42:59"},{"expression":{"id":29614,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":29607,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"55099:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29610,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55108:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"55099:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29611,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55120:16:59","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":26167,"src":"55099:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29612,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"55139:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":29613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55145:9:59","memberName":"timestamp","nodeType":"MemberAccess","src":"55139:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"55099:55:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29615,"nodeType":"ExpressionStatement","src":"55099:55:59"},{"expression":{"id":29623,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":29616,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"55164:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29619,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55173:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"55164:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29620,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55185:10:59","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":26169,"src":"55164:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29621,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"55198:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29622,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55202:6:59","memberName":"sender","nodeType":"MemberAccess","src":"55198:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"55164:44:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29624,"nodeType":"ExpressionStatement","src":"55164:44:59"},{"expression":{"id":29629,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":29625,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26559,"src":"55218:21:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":29627,"indexExpression":{"id":29626,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29492,"src":"55240:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"55218:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":29628,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"55253:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"55218:45:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29630,"nodeType":"ExpressionStatement","src":"55218:45:59"},{"expression":{"id":29632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"55274:14:59","subExpression":{"id":29631,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26512,"src":"55274:12:59","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":29633,"nodeType":"ExpressionStatement","src":"55274:14:59"},{"eventCall":{"arguments":[{"expression":{"id":29635,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29508,"src":"55334:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29636,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55351:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"55334:27:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},{"id":29637,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"55375:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":29638,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29492,"src":"55399:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29639,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"55422:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29640,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55426:6:59","memberName":"sender","nodeType":"MemberAccess","src":"55422:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":29641,"name":"context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29487,"src":"55446:7:59","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"expression":{"expression":{"id":29642,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"55467:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29643,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55476:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"55467:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29644,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55488:16:59","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":26167,"src":"55467:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$33254","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":29634,"name":"ProposalDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26433,"src":"55304:16:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$33254_$_t_uint256_$_t_uint256_$_t_address_$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256,address,string memory,uint256)"}},"id":29645,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"55304:210:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29646,"nodeType":"EmitStatement","src":"55299:215:59"}]},"functionSelector":"b41596ec","implemented":true,"kind":"function","modifiers":[],"name":"disputeProposal","nameLocation":"52955:15:59","parameters":{"id":29490,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29485,"mutability":"mutable","name":"proposalId","nameLocation":"52979:10:59","nodeType":"VariableDeclaration","scope":29648,"src":"52971:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29484,"name":"uint256","nodeType":"ElementaryTypeName","src":"52971:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":29487,"mutability":"mutable","name":"context","nameLocation":"53007:7:59","nodeType":"VariableDeclaration","scope":29648,"src":"52991:23:59","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":29486,"name":"string","nodeType":"ElementaryTypeName","src":"52991:6:59","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":29489,"mutability":"mutable","name":"_extraData","nameLocation":"53031:10:59","nodeType":"VariableDeclaration","scope":29648,"src":"53016:25:59","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":29488,"name":"bytes","nodeType":"ElementaryTypeName","src":"53016:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"52970:72:59"},"returnParameters":{"id":29493,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29492,"mutability":"mutable","name":"disputeId","nameLocation":"53117:9:59","nodeType":"VariableDeclaration","scope":29648,"src":"53109:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29491,"name":"uint256","nodeType":"ElementaryTypeName","src":"53109:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"53108:19:59"},"scope":30151,"stateMutability":"payable","virtual":true,"visibility":"external"},{"id":29895,"nodeType":"FunctionDefinition","src":"55527:2889:59","nodes":[],"body":{"id":29894,"nodeType":"Block","src":"55604:2812:59","nodes":[],"statements":[{"assignments":[29657],"declarations":[{"constant":false,"id":29657,"mutability":"mutable","name":"proposalId","nameLocation":"55622:10:59","nodeType":"VariableDeclaration","scope":29894,"src":"55614:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29656,"name":"uint256","nodeType":"ElementaryTypeName","src":"55614:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":29661,"initialValue":{"baseExpression":{"id":29658,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26559,"src":"55635:21:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":29660,"indexExpression":{"id":29659,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29650,"src":"55657:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"55635:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"55614:54:59"},{"assignments":[29664],"declarations":[{"constant":false,"id":29664,"mutability":"mutable","name":"proposal","nameLocation":"55695:8:59","nodeType":"VariableDeclaration","scope":29894,"src":"55678:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":29663,"nodeType":"UserDefinedTypeName","pathNode":{"id":29662,"name":"Proposal","nameLocations":["55678:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"55678:8:59"},"referencedDeclaration":26204,"src":"55678:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":29668,"initialValue":{"baseExpression":{"id":29665,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"55706:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29667,"indexExpression":{"id":29666,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"55716:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"55706:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"55678:49:59"},{"assignments":[29671],"declarations":[{"constant":false,"id":29671,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"55761:16:59","nodeType":"VariableDeclaration","scope":29894,"src":"55737:40:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29670,"nodeType":"UserDefinedTypeName","pathNode":{"id":29669,"name":"ArbitrableConfig","nameLocations":["55737:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"55737:16:59"},"referencedDeclaration":26226,"src":"55737:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":29676,"initialValue":{"baseExpression":{"id":29672,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"55780:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29675,"indexExpression":{"expression":{"id":29673,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"55798:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29674,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55807:23:59","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":26203,"src":"55798:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"55780:51:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"55737:94:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29679,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29677,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"55846:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":29678,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"55860:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"55846:15:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29685,"nodeType":"IfStatement","src":"55842:82:59","trueBody":{"id":29684,"nodeType":"Block","src":"55863:61:59","statements":[{"errorCall":{"arguments":[{"id":29681,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"55902:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29680,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26311,"src":"55884:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":29682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"55884:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29683,"nodeType":"RevertStatement","src":"55877:36:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":29690,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29686,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"55937:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29687,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55946:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"55937:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":29688,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"55964:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29689,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"55979:8:59","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":26161,"src":"55964:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"55937:50:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29696,"nodeType":"IfStatement","src":"55933:119:59","trueBody":{"id":29695,"nodeType":"Block","src":"55989:63:59","statements":[{"errorCall":{"arguments":[{"id":29692,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"56030:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29691,"name":"ProposalNotDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26331,"src":"56010:19:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":29693,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56010:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29694,"nodeType":"RevertStatement","src":"56003:38:59"}]}},{"assignments":[29698],"declarations":[{"constant":false,"id":29698,"mutability":"mutable","name":"isTimeOut","nameLocation":"56067:9:59","nodeType":"VariableDeclaration","scope":29894,"src":"56062:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":29697,"name":"bool","nodeType":"ElementaryTypeName","src":"56062:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":29708,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29707,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29699,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"56079:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":29700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56085:9:59","memberName":"timestamp","nodeType":"MemberAccess","src":"56079:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29706,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":29701,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"56097:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29702,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56106:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"56097:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29703,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56118:16:59","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":26167,"src":"56097:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":29704,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"56137:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29705,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56154:20:59","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":26225,"src":"56137:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"56097:77:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"56079:95:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"56062:112:59"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29719,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29710,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"56189:10:59","subExpression":{"id":29709,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29698,"src":"56190:9:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29711,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"56203:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29712,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56207:6:59","memberName":"sender","nodeType":"MemberAccess","src":"56203:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"expression":{"id":29715,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"56225:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56242:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"56225:27:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}],"id":29714,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"56217:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29713,"name":"address","nodeType":"ElementaryTypeName","src":"56217:7:59","typeDescriptions":{}}},"id":29717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56217:36:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"56203:50:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"56189:64:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29724,"nodeType":"IfStatement","src":"56185:118:59","trueBody":{"id":29723,"nodeType":"Block","src":"56255:48:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":29720,"name":"OnlyArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26327,"src":"56276:14:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":29721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56276:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29722,"nodeType":"RevertStatement","src":"56269:23:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29725,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29698,"src":"56317:9:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29728,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29726,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29652,"src":"56330:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":29727,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56341:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"56330:12:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"56317:25:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29789,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29787,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29652,"src":"57084:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":29788,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"57095:1:59","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"57084:12:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29817,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29815,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29652,"src":"57441:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":29816,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"57452:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"57441:12:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29874,"nodeType":"IfStatement","src":"57437:819:59","trueBody":{"id":29873,"nodeType":"Block","src":"57455:801:59","statements":[{"expression":{"id":29823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29818,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"57469:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"57478:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"57469:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29821,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"57495:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29822,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"57510:8:59","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":26162,"src":"57495:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"57469:49:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":29824,"nodeType":"ExpressionStatement","src":"57469:49:59"},{"expression":{"arguments":[{"id":29828,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"57584:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":29829,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"57596:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29830,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57605:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"57596:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29831,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57617:10:59","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":26169,"src":"57596:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29832,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"57629:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29833,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57646:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"57629:43:59","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":29825,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"57532:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29827,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57548:18:59","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":33275,"src":"57532:34:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":29834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57532:154:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29835,"nodeType":"ExpressionStatement","src":"57532:154:59"},{"expression":{"arguments":[{"id":29839,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"57755:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29840,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"57783:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29841,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57792:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"57783:18:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":29844,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"57827:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":29845,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57845:11:59","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":31136,"src":"57827:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$33380_$","typeString":"function () view external returns (contract ISafe)"}},"id":29846,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57827:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":29843,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"57819:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29842,"name":"address","nodeType":"ElementaryTypeName","src":"57819:7:59","typeDescriptions":{}}},"id":29847,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57819:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":29848,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"57877:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29850,"indexExpression":{"id":29849,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"57895:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"57877:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29851,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57927:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"57877:75:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":29852,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"57955:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"57877:79:59","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":29836,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"57700:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29838,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57716:21:59","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":33286,"src":"57700:37:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":29854,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57700:270:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29855,"nodeType":"ExpressionStatement","src":"57700:270:59"},{"expression":{"arguments":[{"id":29859,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"58039:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29860,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"58067:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29861,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58076:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"58067:18:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"expression":{"id":29862,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"58103:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29863,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58112:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"58103:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29864,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58124:10:59","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":26169,"src":"58103:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29870,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":29865,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"58152:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29867,"indexExpression":{"id":29866,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"58170:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58152:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29868,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58202:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"58152:75:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":29869,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"58230:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"58152:79:59","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":29856,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"57984:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58000:21:59","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":33286,"src":"57984:37:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":29871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57984:261:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29872,"nodeType":"ExpressionStatement","src":"57984:261:59"}]}},"id":29875,"nodeType":"IfStatement","src":"57080:1176:59","trueBody":{"id":29814,"nodeType":"Block","src":"57098:333:59","statements":[{"expression":{"id":29795,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29790,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"57112:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29792,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"57121:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"57112:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29793,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"57138:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29794,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"57153:6:59","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":26157,"src":"57138:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"57112:47:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":29796,"nodeType":"ExpressionStatement","src":"57112:47:59"},{"expression":{"arguments":[{"id":29800,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"57228:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":29801,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"57256:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29802,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57265:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"57256:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29803,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57277:10:59","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":26169,"src":"57256:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":29806,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"57313:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":29807,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57331:11:59","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":31136,"src":"57313:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$33380_$","typeString":"function () view external returns (contract ISafe)"}},"id":29808,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57313:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":29805,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"57305:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29804,"name":"address","nodeType":"ElementaryTypeName","src":"57305:7:59","typeDescriptions":{}}},"id":29809,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57305:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29810,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"57363:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29811,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57380:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"57363:43:59","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":29797,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"57173:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57189:21:59","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":33286,"src":"57173:37:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":29812,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57173:247:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29813,"nodeType":"ExpressionStatement","src":"57173:247:59"}]}},"id":29876,"nodeType":"IfStatement","src":"56313:1943:59","trueBody":{"id":29786,"nodeType":"Block","src":"56344:730:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29733,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29730,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"56362:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29731,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56379:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"56362:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":29732,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56396:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"56362:35:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29738,"nodeType":"IfStatement","src":"56358:102:59","trueBody":{"id":29737,"nodeType":"Block","src":"56399:61:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":29734,"name":"DefaultRulingNotSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26339,"src":"56424:19:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":29735,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56424:21:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29736,"nodeType":"RevertStatement","src":"56417:28:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29739,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"56477:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29740,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56494:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"56477:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":29741,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56511:1:59","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"56477:35:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29751,"nodeType":"IfStatement","src":"56473:121:59","trueBody":{"id":29750,"nodeType":"Block","src":"56514:80:59","statements":[{"expression":{"id":29748,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29743,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"56532:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29745,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"56541:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"56532:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29746,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"56558:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29747,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"56573:6:59","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":26157,"src":"56558:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"56532:47:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":29749,"nodeType":"ExpressionStatement","src":"56532:47:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29755,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29752,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"56611:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29753,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56628:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"56611:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":29754,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56645:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"56611:35:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29774,"nodeType":"IfStatement","src":"56607:289:59","trueBody":{"id":29773,"nodeType":"Block","src":"56648:248:59","statements":[{"expression":{"id":29761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29756,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"56666:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"56675:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"56666:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29759,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"56692:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29760,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"56707:8:59","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":26162,"src":"56692:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"56666:49:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":29762,"nodeType":"ExpressionStatement","src":"56666:49:59"},{"expression":{"arguments":[{"id":29766,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"56789:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29767,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"56801:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29768,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56810:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"56801:18:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29769,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"56821:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29770,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56838:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"56821:42:59","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":29763,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"56733:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29765,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56749:18:59","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":33275,"src":"56733:34:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":29771,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56733:148:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29772,"nodeType":"ExpressionStatement","src":"56733:148:59"}]}},{"expression":{"arguments":[{"id":29778,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"56961:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":29779,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"56973:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29780,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56982:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"56973:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29781,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56994:10:59","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":26169,"src":"56973:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29782,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"57006:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29783,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57023:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"57006:43:59","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":29775,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"56909:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29777,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56925:18:59","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":33275,"src":"56909:34:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":29784,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56909:154:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29785,"nodeType":"ExpressionStatement","src":"56909:154:59"}]}},{"expression":{"id":29878,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"58266:14:59","subExpression":{"id":29877,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26512,"src":"58266:12:59","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":29879,"nodeType":"ExpressionStatement","src":"58266:14:59"},{"expression":{"id":29885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29880,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"58290:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29882,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"58299:21:59","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":26201,"src":"58290:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29883,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"58323:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":29884,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58329:9:59","memberName":"timestamp","nodeType":"MemberAccess","src":"58323:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"58290:48:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29886,"nodeType":"ExpressionStatement","src":"58290:48:59"},{"eventCall":{"arguments":[{"expression":{"id":29888,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"58360:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29889,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58377:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"58360:27:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},{"id":29890,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29650,"src":"58389:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":29891,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29652,"src":"58401:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29887,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33141,"src":"58353:6:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$33254_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256)"}},"id":29892,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58353:56:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29893,"nodeType":"EmitStatement","src":"58348:61:59"}]},"baseFunctions":[33149],"functionSelector":"311a6c56","implemented":true,"kind":"function","modifiers":[],"name":"rule","nameLocation":"55536:4:59","overrides":{"id":29654,"nodeType":"OverrideSpecifier","overrides":[],"src":"55595:8:59"},"parameters":{"id":29653,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29650,"mutability":"mutable","name":"_disputeID","nameLocation":"55549:10:59","nodeType":"VariableDeclaration","scope":29895,"src":"55541:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29649,"name":"uint256","nodeType":"ElementaryTypeName","src":"55541:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":29652,"mutability":"mutable","name":"_ruling","nameLocation":"55569:7:59","nodeType":"VariableDeclaration","scope":29895,"src":"55561:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29651,"name":"uint256","nodeType":"ElementaryTypeName","src":"55561:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"55540:37:59"},"returnParameters":{"id":29655,"nodeType":"ParameterList","parameters":[],"src":"55604:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":29961,"nodeType":"FunctionDefinition","src":"58422:702:59","nodes":[],"body":{"id":29960,"nodeType":"Block","src":"58483:641:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":29906,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":29900,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"58497:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29902,"indexExpression":{"id":29901,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58507:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58497:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":29903,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58519:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"58497:36:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":29904,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"58537:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29905,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"58552:6:59","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":26157,"src":"58537:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"58497:61:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29912,"nodeType":"IfStatement","src":"58493:128:59","trueBody":{"id":29911,"nodeType":"Block","src":"58560:61:59","statements":[{"errorCall":{"arguments":[{"id":29908,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58599:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29907,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26307,"src":"58581:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":29909,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58581:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29910,"nodeType":"RevertStatement","src":"58574:36:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29919,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":29913,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"58635:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29915,"indexExpression":{"id":29914,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58645:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58635:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":29916,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58657:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"58635:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":29917,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"58670:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29918,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58674:6:59","memberName":"sender","nodeType":"MemberAccess","src":"58670:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"58635:45:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29930,"nodeType":"IfStatement","src":"58631:141:59","trueBody":{"id":29929,"nodeType":"Block","src":"58682:90:59","statements":[{"errorCall":{"arguments":[{"expression":{"baseExpression":{"id":29921,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"58717:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29923,"indexExpression":{"id":29922,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58727:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58717:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":29924,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58739:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"58717:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29925,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"58750:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58754:6:59","memberName":"sender","nodeType":"MemberAccess","src":"58750:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":29920,"name":"OnlySubmitter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26337,"src":"58703:13:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":29927,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58703:58:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29928,"nodeType":"RevertStatement","src":"58696:65:59"}]}},{"expression":{"arguments":[{"id":29934,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58830:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":29935,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"58854:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29937,"indexExpression":{"id":29936,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58864:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58854:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":29938,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58876:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"58854:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":29939,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"58899:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29944,"indexExpression":{"expression":{"baseExpression":{"id":29940,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"58917:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29942,"indexExpression":{"id":29941,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58927:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58917:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":29943,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58939:23:59","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":26203,"src":"58917:45:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58899:64:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29945,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58964:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"58899:90:59","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":29931,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"58782:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58798:18:59","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":33275,"src":"58782:34:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":29946,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58782:217:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29947,"nodeType":"ExpressionStatement","src":"58782:217:59"},{"expression":{"id":29954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":29948,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"59010:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29950,"indexExpression":{"id":29949,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"59020:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59010:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":29951,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"59032:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"59010:36:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29952,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"59049:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29953,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"59064:9:59","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":26159,"src":"59049:24:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"59010:63:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":29955,"nodeType":"ExpressionStatement","src":"59010:63:59"},{"eventCall":{"arguments":[{"id":29957,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"59106:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29956,"name":"ProposalCancelled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26445,"src":"59088:17:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":29958,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59088:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29959,"nodeType":"EmitStatement","src":"59083:34:59"}]},"functionSelector":"e0a8f6f5","implemented":true,"kind":"function","modifiers":[],"name":"cancelProposal","nameLocation":"58431:14:59","parameters":{"id":29898,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29897,"mutability":"mutable","name":"proposalId","nameLocation":"58454:10:59","nodeType":"VariableDeclaration","scope":29961,"src":"58446:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29896,"name":"uint256","nodeType":"ElementaryTypeName","src":"58446:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"58445:20:59"},"returnParameters":{"id":29899,"nodeType":"ParameterList","parameters":[],"src":"58483:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":29975,"nodeType":"FunctionDefinition","src":"59130:125:59","nodes":[],"body":{"id":29974,"nodeType":"Block","src":"59187:68:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":29967,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26838,"src":"59197:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":29968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59197:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29969,"nodeType":"ExpressionStatement","src":"59197:17:59"},{"expression":{"arguments":[{"id":29971,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29964,"src":"59240:7:59","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":29970,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30055,"src":"59224:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":29972,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59224:24:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29973,"nodeType":"ExpressionStatement","src":"59224:24:59"}]},"functionSelector":"7263cfe2","implemented":true,"kind":"function","modifiers":[],"name":"addToAllowList","nameLocation":"59139:14:59","parameters":{"id":29965,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29964,"mutability":"mutable","name":"members","nameLocation":"59171:7:59","nodeType":"VariableDeclaration","scope":29975,"src":"59154:24:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":29962,"name":"address","nodeType":"ElementaryTypeName","src":"59154:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29963,"nodeType":"ArrayTypeName","src":"59154:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"59153:26:59"},"returnParameters":{"id":29966,"nodeType":"ParameterList","parameters":[],"src":"59187:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":30055,"nodeType":"FunctionDefinition","src":"59261:610:59","nodes":[],"body":{"id":30054,"nodeType":"Block","src":"59321:550:59","nodes":[],"statements":[{"assignments":[29982],"declarations":[{"constant":false,"id":29982,"mutability":"mutable","name":"allowlistRole","nameLocation":"59339:13:59","nodeType":"VariableDeclaration","scope":30054,"src":"59331:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":29981,"name":"bytes32","nodeType":"ElementaryTypeName","src":"59331:7:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":29990,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":29986,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"59382:11:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":29987,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"59395:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":29984,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"59365:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":29985,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"59369:12:59","memberName":"encodePacked","nodeType":"MemberAccess","src":"59365:16:59","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":29988,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59365:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":29983,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"59355:9:59","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":29989,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59355:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"59331:72:59"},{"condition":{"arguments":[{"id":29993,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29982,"src":"59444:13:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":29996,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"59467:1:59","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":29995,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"59459:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29994,"name":"address","nodeType":"ElementaryTypeName","src":"59459:7:59","typeDescriptions":{}}},"id":29997,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59459:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":29991,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"59418:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":29992,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59436:7:59","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":13595,"src":"59418:25:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":29998,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59418:52:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30010,"nodeType":"IfStatement","src":"59414:138:59","trueBody":{"id":30009,"nodeType":"Block","src":"59472:80:59","statements":[{"expression":{"arguments":[{"id":30002,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29982,"src":"59515:13:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":30005,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"59538:1:59","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":30004,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"59530:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":30003,"name":"address","nodeType":"ElementaryTypeName","src":"59530:7:59","typeDescriptions":{}}},"id":30006,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59530:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":29999,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"59486:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":30001,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59504:10:59","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":13702,"src":"59486:28:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":30007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59486:55:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30008,"nodeType":"ExpressionStatement","src":"59486:55:59"}]}},{"body":{"id":30047,"nodeType":"Block","src":"59606:205:59","statements":[{"condition":{"id":30029,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"59624:53:59","subExpression":{"arguments":[{"id":30024,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29982,"src":"59651:13:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":30025,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29978,"src":"59666:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":30027,"indexExpression":{"id":30026,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30012,"src":"59674:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59666:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":30022,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"59625:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":30023,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59643:7:59","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":13595,"src":"59625:25:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":30028,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59625:52:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30046,"nodeType":"IfStatement","src":"59620:181:59","trueBody":{"id":30045,"nodeType":"Block","src":"59679:122:59","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":30036,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"59752:11:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":30037,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"59765:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":30034,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"59735:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":30035,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"59739:12:59","memberName":"encodePacked","nodeType":"MemberAccess","src":"59735:16:59","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":30038,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59735:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":30033,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"59725:9:59","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":30039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59725:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":30040,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29978,"src":"59775:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":30042,"indexExpression":{"id":30041,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30012,"src":"59783:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59775:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":30030,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"59697:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":30032,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59715:9:59","memberName":"grantRole","nodeType":"MemberAccess","referencedDeclaration":13682,"src":"59697:27:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":30043,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59697:89:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30044,"nodeType":"ExpressionStatement","src":"59697:89:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":30018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":30015,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30012,"src":"59581:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":30016,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29978,"src":"59585:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":30017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59593:6:59","memberName":"length","nodeType":"MemberAccess","src":"59585:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"59581:18:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30048,"initializationExpression":{"assignments":[30012],"declarations":[{"constant":false,"id":30012,"mutability":"mutable","name":"i","nameLocation":"59574:1:59","nodeType":"VariableDeclaration","scope":30048,"src":"59566:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30011,"name":"uint256","nodeType":"ElementaryTypeName","src":"59566:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":30014,"initialValue":{"hexValue":"30","id":30013,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"59578:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"59566:13:59"},"loopExpression":{"expression":{"id":30020,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"59601:3:59","subExpression":{"id":30019,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30012,"src":"59601:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":30021,"nodeType":"ExpressionStatement","src":"59601:3:59"},"nodeType":"ForStatement","src":"59561:250:59"},{"eventCall":{"arguments":[{"id":30050,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"59848:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":30051,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29978,"src":"59856:7:59","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":30049,"name":"AllowlistMembersAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26476,"src":"59826:21:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":30052,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59826:38:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30053,"nodeType":"EmitStatement","src":"59821:43:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addToAllowList","nameLocation":"59270:15:59","parameters":{"id":29979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29978,"mutability":"mutable","name":"members","nameLocation":"59303:7:59","nodeType":"VariableDeclaration","scope":30055,"src":"59286:24:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":29976,"name":"address","nodeType":"ElementaryTypeName","src":"59286:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29977,"nodeType":"ArrayTypeName","src":"59286:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"59285:26:59"},"returnParameters":{"id":29980,"nodeType":"ParameterList","parameters":[],"src":"59321:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":30069,"nodeType":"FunctionDefinition","src":"59877:137:59","nodes":[],"body":{"id":30068,"nodeType":"Block","src":"59941:73:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":30061,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26838,"src":"59951:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":30062,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59951:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30063,"nodeType":"ExpressionStatement","src":"59951:17:59"},{"expression":{"arguments":[{"id":30065,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30058,"src":"59999:7:59","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":30064,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30124,"src":"59978:20:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":30066,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59978:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30067,"nodeType":"ExpressionStatement","src":"59978:29:59"}]},"functionSelector":"a51312c8","implemented":true,"kind":"function","modifiers":[],"name":"removeFromAllowList","nameLocation":"59886:19:59","parameters":{"id":30059,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30058,"mutability":"mutable","name":"members","nameLocation":"59923:7:59","nodeType":"VariableDeclaration","scope":30069,"src":"59906:24:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":30056,"name":"address","nodeType":"ElementaryTypeName","src":"59906:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":30057,"nodeType":"ArrayTypeName","src":"59906:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"59905:26:59"},"returnParameters":{"id":30060,"nodeType":"ParameterList","parameters":[],"src":"59941:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":30124,"nodeType":"FunctionDefinition","src":"60020:422:59","nodes":[],"body":{"id":30123,"nodeType":"Block","src":"60085:357:59","nodes":[],"statements":[{"body":{"id":30116,"nodeType":"Block","src":"60140:240:59","statements":[{"condition":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":30091,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"60211:11:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":30092,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"60224:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":30089,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"60194:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":30090,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"60198:12:59","memberName":"encodePacked","nodeType":"MemberAccess","src":"60194:16:59","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":30093,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60194:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":30088,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"60184:9:59","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":30094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60184:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":30095,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30072,"src":"60234:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":30097,"indexExpression":{"id":30096,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30076,"src":"60242:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"60234:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":30086,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"60158:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":30087,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60176:7:59","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":13595,"src":"60158:25:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":30098,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60158:87:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30115,"nodeType":"IfStatement","src":"60154:216:59","trueBody":{"id":30114,"nodeType":"Block","src":"60247:123:59","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":30105,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"60321:11:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":30106,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"60334:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":30103,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"60304:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":30104,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"60308:12:59","memberName":"encodePacked","nodeType":"MemberAccess","src":"60304:16:59","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":30107,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60304:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":30102,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"60294:9:59","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":30108,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60294:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":30109,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30072,"src":"60344:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":30111,"indexExpression":{"id":30110,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30076,"src":"60352:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"60344:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":30099,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"60265:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":30101,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60283:10:59","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":13702,"src":"60265:28:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":30112,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60265:90:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30113,"nodeType":"ExpressionStatement","src":"60265:90:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":30082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":30079,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30076,"src":"60115:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":30080,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30072,"src":"60119:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":30081,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60127:6:59","memberName":"length","nodeType":"MemberAccess","src":"60119:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"60115:18:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30117,"initializationExpression":{"assignments":[30076],"declarations":[{"constant":false,"id":30076,"mutability":"mutable","name":"i","nameLocation":"60108:1:59","nodeType":"VariableDeclaration","scope":30117,"src":"60100:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30075,"name":"uint256","nodeType":"ElementaryTypeName","src":"60100:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":30078,"initialValue":{"hexValue":"30","id":30077,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"60112:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"60100:13:59"},"loopExpression":{"expression":{"id":30084,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"60135:3:59","subExpression":{"id":30083,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30076,"src":"60135:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":30085,"nodeType":"ExpressionStatement","src":"60135:3:59"},"nodeType":"ForStatement","src":"60095:285:59"},{"eventCall":{"arguments":[{"id":30119,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"60419:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":30120,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30072,"src":"60427:7:59","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":30118,"name":"AllowlistMembersRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26469,"src":"60395:23:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":30121,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60395:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30122,"nodeType":"EmitStatement","src":"60390:45:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeFromAllowList","nameLocation":"60029:20:59","parameters":{"id":30073,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30072,"mutability":"mutable","name":"members","nameLocation":"60067:7:59","nodeType":"VariableDeclaration","scope":30124,"src":"60050:24:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":30070,"name":"address","nodeType":"ElementaryTypeName","src":"60050:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":30071,"nodeType":"ArrayTypeName","src":"60050:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"60049:26:59"},"returnParameters":{"id":30074,"nodeType":"ParameterList","parameters":[],"src":"60085:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":30146,"nodeType":"FunctionDefinition","src":"60448:168:59","nodes":[],"body":{"id":30145,"nodeType":"Block","src":"60508:108:59","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":30134,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"60550:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":30133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"60542:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":30132,"name":"address","nodeType":"ElementaryTypeName","src":"60542:7:59","typeDescriptions":{}}},"id":30135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60542:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":30136,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30126,"src":"60557:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":30139,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"60576:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":30140,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60594:11:59","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":31136,"src":"60576:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$33380_$","typeString":"function () view external returns (contract ISafe)"}},"id":30141,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60576:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":30138,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"60568:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":30137,"name":"address","nodeType":"ElementaryTypeName","src":"60568:7:59","typeDescriptions":{}}},"id":30142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60568:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":30129,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"60518:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"id":30131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60530:11:59","memberName":"addStrategy","nodeType":"MemberAccess","referencedDeclaration":30217,"src":"60518:23:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$_t_address_$returns$__$","typeString":"function (address,uint256,address) external"}},"id":30143,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60518:91:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30144,"nodeType":"ExpressionStatement","src":"60518:91:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_registerToSybilScorer","nameLocation":"60457:22:59","parameters":{"id":30127,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30126,"mutability":"mutable","name":"threshold","nameLocation":"60488:9:59","nodeType":"VariableDeclaration","scope":30146,"src":"60480:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30125,"name":"uint256","nodeType":"ElementaryTypeName","src":"60480:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"60479:19:59"},"returnParameters":{"id":30128,"nodeType":"ParameterList","parameters":[],"src":"60508:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":30150,"nodeType":"VariableDeclaration","src":"60622:25:59","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"60642:5:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":30147,"name":"uint256","nodeType":"ElementaryTypeName","src":"60622:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":30149,"length":{"hexValue":"3530","id":30148,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"60630:2:59","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"60622:11:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":26282,"name":"BaseStrategyUpgradeable","nameLocations":["4171:23:59"],"nodeType":"IdentifierPath","referencedDeclaration":26068,"src":"4171:23:59"},"id":26283,"nodeType":"InheritanceSpecifier","src":"4171:23:59"},{"baseName":{"id":26284,"name":"IArbitrable","nameLocations":["4196:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":33150,"src":"4196:11:59"},"id":26285,"nodeType":"InheritanceSpecifier","src":"4196:11:59"},{"baseName":{"id":26286,"name":"IPointStrategy","nameLocations":["4209:14:59"],"nodeType":"IdentifierPath","referencedDeclaration":26134,"src":"4209:14:59"},"id":26287,"nodeType":"InheritanceSpecifier","src":"4209:14:59"},{"baseName":{"id":26288,"name":"ERC165","nameLocations":["4225:6:59"],"nodeType":"IdentifierPath","referencedDeclaration":18550,"src":"4225:6:59"},"id":26289,"nodeType":"InheritanceSpecifier","src":"4225:6:59"}],"canonicalName":"CVStrategyV0_0","contractDependencies":[],"contractKind":"contract","documentation":{"id":26281,"nodeType":"StructuredDocumentation","src":"4100:44:59","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[30151,18550,18756,26134,33150,26068,793,1021,810,673,30801,16733,16386,16035,16045,14042,14757,14291],"name":"CVStrategyV0_0","nameLocation":"4153:14:59","scope":30152,"usedErrors":[712,715,718,721,724,727,730,733,736,739,742,745,748,751,754,757,760,763,766,769,772,775,778,783,786,789,792,821,26291,26293,26295,26297,26303,26307,26311,26317,26319,26321,26323,26325,26327,26331,26337,26339,26341,26343,26345,30716]}],"license":"AGPL-3.0-only"},"id":59} \ 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":[{"name":"_sender","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"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":"calculateProposalConviction","inputs":[{"name":"_proposalId","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":"calculateThresholdOverride","inputs":[],"outputs":[{"name":"","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":"getMaxConviction","inputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"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":"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":"getStrategyId","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"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":"init2","inputs":[{"name":"newSafeArbitrator","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":"proxyOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"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":"contract RegistryCommunityV0_0"}],"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":"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":"sybilScoreThreshold","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSybilScorer","inputs":[{"name":"_sybilScorer","type":"address","internalType":"address"},{"name":"threshold","type":"uint256","internalType":"uint256"}],"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":"sybilScorerThreshold","type":"uint256","internalType":"uint256"},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"}]}],"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":"SybilScorerUpdated","inputs":[{"name":"sybilScorer","type":"address","indexed":false,"internalType":"address"}],"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":"AShouldBeUnderOrEqTwo_128","inputs":[]},{"type":"error","name":"AShouldBeUnderTwo_128","inputs":[]},{"type":"error","name":"AddressCannotBeZero","inputs":[]},{"type":"error","name":"BShouldBeLessTwo_128","inputs":[]},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"ConvictionUnderMinimumThreshold","inputs":[]},{"type":"error","name":"DefaultRulingNotSet","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":"NotEnoughPointsToSupport","inputs":[{"name":"pointsSupport","type":"uint256","internalType":"uint256"},{"name":"pointsBalance","type":"uint256","internalType":"uint256"}]},{"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":"PoolIsEmpty","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":"UNAUTHORIZED","inputs":[]},{"type":"error","name":"UserCannotExecuteAction","inputs":[]},{"type":"error","name":"UserIsInactive","inputs":[]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ZERO_ADDRESS","inputs":[]}],"bytecode":{"object":"0x60a080604052346100325730608052615fd8908162000038823960805181818161245a0152818161254401526129c70152f35b600080fdfe60806040526004361015610018575b361561001657005b005b6000803560e01c8063013cf08b14613e7557806301ffc9a714613e1e578063025313a214613df5578063062f9ece14613dd65780630a6f0ee914613ab85780630bece79c14613a8f5780630c0512e914613a715780630f529ba214613a53578063125fd1d914613a3557806315cc481e14613a0c578063184b9559146138c75780631aa91a9e146138a85780631ddf1e231461388e5780632506b87014613857578063255ffb381461382d5780632bbe0cae1461339f5780632dbd6fdd146116285780632ed04b2b14613138578063311a6c5614612ba05780633396045914612b82578063346db8cb14612b5d578063351d9f9614612b375780633659cfe6146129a25780633864d3661461289f57806338fff2d014612881578063406244d81461286557806341bb7605146127f857806342fda9c7146127da5780634ab4ba42146127bc5780634d31d087146112ce5780634f1ef2861461250657806352d1902d1461244757806359a5db8b146124285780635db64b99146123ef5780636003e414146123c657806360b0645a1461238357806360d5dedc146122c8578063626c47e8146122ac5780636453d9c414612282578063715018a6146122365780637263cfe2146121f5578063782aadff14611e5a578063814516ad14611e40578063817b1cd214611e22578063824ea8ed14611db5578063868c57b814611d5f5780638da5cb5b14611d32578063948e7a5914611cbf578063950559d714611ca0578063a0cf0aea14611c71578063a28889e114611c48578063a47ff7e514611c2a578063a51312c814611be9578063aba9ffee146114fd578063ad56fd5d14611b4f578063b0d3713a14611b0a578063b2b878d014611a51578063b41596ec146116d8578063b5f620ce1461167c578063b6c61f3114611653578063c329217114611628578063c4d66de8146115f6578063c7f758a81461151b578063d1e36232146114fd578063d5cc68a6146114da578063db9b5d50146114b8578063df868ed314611495578063e0a8f6f51461133e578063e0dd2c38146112f4578063eb11af93146112ce578063edd146cc14610ca6578063ef2920fc146105af578063f2fde38b1461051e578063f4fe255614610433578063f5b0dfb7146103da578063f5be3f7c146103bd5763ffa1ad7414610373575061000e565b346103ba57806003193601126103ba576103b6604051610392816140d1565b60038152620302e360ec1b60208201526040519182916020835260208301906141d1565b0390f35b80fd5b50346103ba57806003193601126103ba576020604051611c208152f35b50346103ba5760203660031901126103ba577f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339602060043561041a61474a565b61042681606954614727565b606955604051908152a180f35b50346103ba5760203660031901126103ba57600080516020615f4383398151915261045c61420c565b610102835460ff8160081c161580610511575b6104789061478c565b61ffff1916178355606f80548452607f602052604080852080546001600160a01b0319166001600160a01b0394851617905590548085528185208054600182015460028301546003840154600485015460059095015496519788976104e997909695929482169290911690886147ef565b0390a161ff00198154168155600080516020615ee3833981519152602060405160028152a180f35b50600260ff82161061046f565b50346103ba5760203660031901126103ba5761053861420c565b61054061446a565b6001600160a01b0381161561055b57610558906144c9565b80f35b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b506105b9366143ca565b6105c161474a565b6105c9614770565b8151906020906105e08280860194860101846150eb565b92855b84518110156106a1576105f68186615189565b5151846106038388615189565b510151908852607b8552876040812091139081610632575b5061062e5761062990614829565b6105e3565b8680fd5b60ff915060080154166106448161418e565b801590811561068c575b8115610677575b8115610663575b503861061b565b600691506106708161418e565b143861065c565b90506106828161418e565b6004811490610655565b90506106978161418e565b600381149061064e565b50916106bd869382876106b3866149f3565b80510101906150eb565b6106c683614b9f565b15610c6e575b60785460405163011de97360e61b81526001600160a01b0391821695908481806106fa308a60048401614a96565b03818a5afa908115610c63578291610c36575b5015610c245780959194959161072287614b9f565b96829715935b85518910156107d95784806107c3575b6107b1576107468987615189565b5151156107a7576107578987615189565b5151610762816151be565b1561078f5750610783610789918861077a8c8a615189565b51015190615216565b98614829565b97610728565b6024906040519063c1d17bef60e01b82526004820152fd5b9761078990614829565b604051630b72d6b160e31b8152600490fd5b5083876107d08b89615189565b51015113610738565b91869086926107f68a821695868852607c85526040882054615216565b9186831261062e576108219184916040518080958194637817ee4f60e01b8352309060048401614a96565b03915afa908115610c19578691610be7575b50808211610bc95750838552607c825260408520558392839160609182915b8551851015610bc5576108658587615189565b515192805115600014610abd575060405161087f816140d1565b6001815281810182368237815115610aa7578490525b816108a08789615189565b51015194848952607b83526040892091896009840191866000528286526108cd604060002054998a615216565b92828412610aa357909150866000528552816040600020558a809a81928654935b898452607d8952604084208054821015610a915761090d828792614425565b90549060031b1c1461092b57610924604091614829565b90506108ee565b50989392915099959894939a5060015b15610a2a575b506109a294939291908084116109f15761095b8482614d11565b6109686070918254614727565b90556109748482614d11565b61098360028501918254614727565b90555b60078301928354156000146109aa575050509050439055614829565b939492610852565b60a093506109c7600080516020615ec38339815191529582615468565b6003600282015491015491604051938985528b85015260408401528b8301526080820152a1614829565b6109fb8185614d11565b610a086070918254614d11565b9055610a148185614d11565b610a2360028501918254614d11565b9055610986565b868c52607d895260408c20805490600160401b821015610a7d5781610a5d9160016109a29a999897969594018155614425565b819291549060031b91821b91600019901b19161790559091929394610941565b634e487b7160e01b8e52604160045260248efd5b5050989392915099959894939a61093b565b8280fd5b634e487b7160e01b600052603260045260246000fd5b939195969294908396845b8651811015610b0e5787610adc8289615189565b5114610af057610aeb90614829565b610ac8565b8760449160405191632b7aec5560e21b835260048301526024820152fd5b509294909195939796610895578051906001808301809311610bb157610b33836142d5565b92610b41604051948561416b565b808452610b50601f19916142d5565b01368585013789815b610b72575b5050610b6c85915183615189565b52610895565b829994979951811015610ba85780610b8d610b9e9285615189565b51610b988287615189565b52614829565b8199979499610b59565b98969398610b5e565b634e487b7160e01b8a52601160045260248afd5b8680f35b6044925060405191636b20c17f60e11b835260048301526024820152fd5b90508281813d8311610c12575b610bfe818361416b565b81010312610c0d575186610833565b600080fd5b503d610bf4565b6040513d88823e3d90fd5b604051635fccb67f60e01b8152600490fd5b610c569150853d8711610c5c575b610c4e818361416b565b8101906149db565b8761070d565b503d610c44565b6040513d84823e3d90fd5b8392935b8151811015610c9d578383610c878385615189565b510151136107b157610c9890614829565b610c72565b509291926106cc565b50346103ba5760403660031901126103ba576024356001600160401b03811161126757610cd79036906004016143ac565b610cdf61474a565b610ce761474a565b6068546112bc57600435156112aa57600435606855606a546e5af43d82803e903d91602b57fd5bf3606c54610d1b81614829565b606c5560405160208101913360601b8352603482015260348152610d3e81614150565b519020608883901c62ffffff16763d602d80600a3d3981f3363d3d373d3d3d363d7300000017855260789290921b6001600160781b031916176020526001600160a01b03906037600985f516801561126b57607980546001600160a01b031981168317909155839190821617803b156112675781809160046040518094819363204a7f0760e21b83525af18015610c6357611253575b50508051810190602081830312610aa3576020810151906001600160401b03821161124f5761022082820184031261124f576040519261012084016001600160401b038111858210176112395780604052608084840183031261123157610e3a8161411a565b8284016020810151825260408101516101408701526060810151610160870152608081015161018087015290855260a00151600381101561123157602085015260c0838301015160048110156112315760408501526020828401820360bf190112611235576040516001600160401b036020820190811190821117611239576020810160405260e084840101518152606085015260c060df198484018303011261123557604051610eea816140ff565b82840161010001516001600160a01b038116810361062e578152610f1361012085850101614838565b6020820152828401610140810151604083015261016081015160608301526101808101516080808401919091526101a082015160a0840152860191909152610f5e906101c001614838565b60a0850152610f726101e084840101614838565b60c085015281830161020081015160e08601526102200151926001600160401b0384116112315760208201603f85838601010112156112315760208482850101015192610fbe846142d5565b94610fcc604051968761416b565b8486526020808701940160408660051b838686010101011161122d57818301810160400193925b60408660051b8383860101010185106112115788888861010082015260018060a01b0360a08201511660018060a01b03196078541617607855602081015160038110156111fd57607654604083015160048110156111e95761ff0060ff9160081b1692169061ffff1916171760765560608101515160775560018060a01b0360c08201511660018060a01b0319607a541617607a557fb6a062fc5f19aa17637bf61ab001ce3e5ceb67a5bd51d9753281e41df94f3fd36040516004358152604060208201526110c660408201845161484c565b6110d8602084015160c0830190614418565b6110ea604084015160e083019061440b565b60608301515161010082015260a06080840151600180831b03815116610120840152600180831b036020820151166101408401526040810151610160840152606081015161018084015260808101516101a084015201516101c082015260018060a01b0360a0840151166101e082015260018060a01b0360c08401511661020082015260e08301516102208201528061119661010085015161022061024084015261026083019061486f565b0390a16111c860808201518251604051906111b082614135565b858252604051926111c084614135565b86845261587e565b607a546001600160a01b03166111dc575080f35b60e0610558910151615d08565b634e487b7160e01b85526021600452602485fd5b634e487b7160e01b83526021600452602483fd5b60208060409561122088614838565b8152019501949350610ff3565b8780fd5b8580fd5b8480fd5b634e487b7160e01b600052604160045260246000fd5b8380fd5b61125c906140ec565b611267578138610dd4565b5080fd5b60405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606490fd5b604051637fcce2a960e01b8152600490fd5b60405163439a74c960e01b8152600490fd5b50346103ba5760203660031901126103ba576020906112eb61420c565b50604051908152f35b50346103ba5760403660031901126103ba5760096040611312614222565b926004358152607b60205220019060018060a01b03166000526020526020604060002054604051908152f35b50346103ba576020806003193601126112675760043590818352607b8152600160ff6008604086200154166113728161418e565b0361147c57818352607b815260408320600501546001600160a01b0390811633810361145957508084916079541690848352607b8452601060408420916005830154169101548352607f84526002604084200154823b1561124f576113f19284928360405180968195829463099ea56b60e41b84528c6004850161519d565b03925af18015610c6357611445575b50829052607b81526040808420600801805460ff19166003179055519182527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c91a180f35b61144e906140ec565b610aa3578238611400565b604051634544dc9160e11b815290819061147890339060048401614a96565b0390fd5b6040516344980d8f60e01b815260048101839052602490fd5b50346103ba57806003193601126103ba57602060ff606754166040519015158152f35b50346103ba5760203660031901126103ba576105586114d561420c565b614ab0565b50346103ba57806003193601126103ba5760206114f56153ef565b604051908152f35b50346103ba57806003193601126103ba576020607154604051908152f35b50346103ba5760203660031901126103ba57610160906004358152607b6020526040812060018101549182156000146115e657905b60018060a01b03918260058301541693836004840154169360068401541690600284015460ff6008860154169060078601549260038701549433600052600988016020526010604060002054980154986040519a8b5260208b015260408a0152606089015260808801526115c38161418e565b60a087015260c086015260e0850152610100840152610120830152610140820152f35b506115f08261530e565b90611550565b50346103ba5760203660031901126103ba5761055861161361420c565b61162360ff845460081c166146c7565b6144c9565b50346103ba57806003193601126103ba57602060ff60765460081c16611651604051809261440b565bf35b50346103ba57806003193601126103ba57607a546040516001600160a01b039091168152602090f35b50346103ba5760203660031901126103ba576004358015158091036112675760207fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae09160ff196067541660ff821617606755604051908152a180f35b5060603660031901126103ba576024356001600160401b0381116112675761170490369060040161443d565b906044356001600160401b03811161124f5761172490369060040161443d565b611730929192336149f3565b6004358552607b602052604085209260108401548652607f602052604086206040519261175c846140ff565b81546001600160a01b039081168552600183015416602085015260028201546040850152600382015460608501908152600480840154608087015260059093015460a086015286549092359003611a3857600160ff6008880154166117c08161418e565b03611a1f578151341061122d57600f86015480151590816119f5575b5061122d576117ec825134614d11565b607954925190926001600160a01b0316908990823b15611267576040519283809263240ff7c560e11b82528161182833600435600484016149c2565b03925af180156119ea576119d6575b509160209161187897989360018060a01b0386511691604051809a8195829463c13517e160e01b8452600360048501526040602485015260448401916158b3565b03925af19485156119c9578195611995575b5060088401805460ff19166005179055600c840185905542600d8501908155600e90940180546001600160a01b03191633179055848152607e602052604081206004359055606d54906001600160401b038083169190821461198157506001600160401b031990911660019091016001600160401b031617606d55519154604080516001600160a01b0394909416845260043560208581019190915290840185905233606085015260c06080850181905290957f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d949384939261197092908501916158b3565b9060a08301520390a1604051908152f35b634e487b7160e01b81526011600452602490fd5b9094506020813d6020116119c1575b816119b16020938361416b565b81010312610c0d5751933861188a565b3d91506119a4565b50604051903d90823e3d90fd5b6119e089916140ec565b61122d5738611837565b6040513d8b823e3d90fd5b9050611c208101809111611a0b574210386117dc565b634e487b7160e01b89526011600452602489fd5b60246040516344980d8f60e01b81526004356004820152fd5b602460405163c1d17bef60e01b81526004356004820152fd5b50346103ba5760403660031901126103ba576001600160401b03600435818111610aa357611a839036906004016142ec565b50602490813581811161124f573660238201121561124f57806004013590611aaa826142d5565b93611ab8604051958661416b565b8285528060208096019360051b8301019336851161062e57818301935b858510611ae0578780fd5b8435828111611b06578791611afb83928636918901016143ac565b815201940193611ad5565b8880fd5b50346103ba5760203660031901126103ba57611b2461420c565b611b2c61446a565b606a80546001600160a01b0319166001600160a01b039290921691909117905580f35b50346103ba576101603660031901126103ba57611b85611b6e36614238565b611b773661429b565b90611b806154ed565b61554b565b607a5481906001600160a01b031680611b9b5750f35b803b15611be65781809160446040518094819363642ce76b60e01b83523060048401526101443560248401525af18015610c6357611bd65750f35b611bdf906140ec565b6103ba5780f35b50fd5b50346103ba5760203660031901126103ba576004356001600160401b03811161126757611c1d6105589136906004016142ec565b611c256154ed565b615b5b565b50346103ba57806003193601126103ba576020607754604051908152f35b50346103ba57806003193601126103ba57606d546040516001600160401b039091168152602090f35b50346103ba57806003193601126103ba57602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b50346103ba5760203660031901126103ba5760206114f5600435615854565b50346103ba576101803660031901126103ba57611cdb36614238565b611ce43661429b565b6001600160401b0391906101443583811161123557611d079036906004016142ec565b906101643593841161123557611d246105589436906004016142ec565b92611d2d6154ed565b61587e565b50346103ba57806003193601126103ba576020611d4d615daa565b6040516001600160a01b039091168152f35b50346103ba5760403660031901126103ba57611d7961420c565b6001600160a01b03168152607d60205260408120805460243592908310156103ba576020611da78484614425565b90546040519160031b1c8152f35b50346103ba5760203660031901126103ba5760406020916004358152607b835220611de460028201548261549a565b81929192159081611e19575b50611e0d575b6001611e0391015461530e565b1115604051908152f35b60038101549150611df6565b90501538611df0565b50346103ba57806003193601126103ba576020607054604051908152f35b50346103ba57806003193601126103ba5761055833614ab0565b50346103ba5760403660031901126103ba57611e7461420c565b602435611e7f614ceb565b611e8882614b9f565b156107b1578260ff60765460081c1660048110156111e95760028103611f7257505080915b60785460405163011de97360e61b81529060209082906001600160a01b03168180611edc308860048401614a96565b03915afa908115611f6757907f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a93929160209691611f4a575b50611f36575b611f2b8460405193849384614f11565b0390a1604051908152f35b611f4284607154614727565b607155611f1b565b611f619150863d8111610c5c57610c4e818361416b565b38611f15565b6040513d87823e3d90fd5b6001810361201e575050607854604051637817ee4f60e01b8152829160209082906001600160a01b03168180611fac308a60048401614a96565b03915afa908115611f67578591611fed575b50611fc98382614727565b607754809111611fdc575b505091611ead565b611fe69250614d11565b3880611fd4565b90506020813d8211612016575b816120076020938361416b565b81010312610c0d575138611fbe565b3d9150611ffa565b90929060021901611ead576078546040516316308e2560e11b81526001600160a01b038084166004830152929450908216916020918281602481875afa80156121ea57859088906121b9575b6120749250614727565b6040516336d8759760e21b81529060128483600481895afa9081156119ea576120dd94866120d2936120d8968d9161218c575b5060046040518094819363313ce56760e01b8352165afa8b918161215d575b50612152575b50614f67565b90614f75565b614fa8565b816040518094637817ee4f60e01b825281806120fd308b60048401614a96565b03915afa918215610c19578692612120575b5061211a9250614d11565b91611ead565b90915082813d831161214b575b612137818361416b565b81010312610c0d5761211a9151903861210f565b503d61212d565b60ff915016386120cc565b61217e919250883d8a11612185575b612176818361416b565b810190614f4e565b90386120c6565b503d61216c565b6121ac9150823d84116121b2575b6121a4818361416b565b810190614f2f565b386120a7565b503d61219a565b50508281813d83116121e3575b6121d0818361416b565b81010312610c0d5784612074915161206a565b503d6121c6565b6040513d89823e3d90fd5b50346103ba5760203660031901126103ba576004356001600160401b038111611267576122296105589136906004016142ec565b6122316154ed565b6158fc565b50346103ba57806003193601126103ba5761224f61446a565b603380546001600160a01b031981169091556000906001600160a01b0316600080516020615f038339815191528280a380f35b50346103ba5760203660031901126103ba5761055861229f61420c565b6122a7614ceb565b614d1e565b50346103ba57806003193601126103ba57602060405160038152f35b50346103ba5760603660031901126103ba576122e261420c565b6024356001600160401b038111610aa35736602382011215610aa357612312903690602481600401359101614375565b9061233761231e6141f6565b61162360ff865460081c16612332816146c7565b6146c7565b60018060a01b031660018060a01b0319606554161760655560405161237a8161236c60208201946020865260408301906141d1565b03601f19810183528261416b565b51902060665580f35b50346103ba5760203660031901126103ba576114f560406020926004358152607b8452206123b5600782015443614d11565b906002600382015491015491615232565b50346103ba57806003193601126103ba576078546040516001600160a01b039091168152602090f35b50346103ba5760203660031901126103ba576020906040906001600160a01b0361241761420c565b168152607c83522054604051908152f35b50346103ba5760203660031901126103ba5760206114f560043561530e565b50346103ba57806003193601126103ba577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036124a0576020604051600080516020615ea38339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b5060403660031901126103ba5761251b61420c565b6024356001600160401b038111610aa35761253a9036906004016143ac565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811692919061257430851415614500565b612591600080516020615ea383398151915294828654161461454f565b612599615daa565b813391160361279757600080516020615e438339815191525460ff16156125c6575050610558915061459e565b8216604051936352d1902d60e01b85526020948581600481865afa60009181612768575b506126395760405162461bcd60e51b815260048101879052602e6024820152600080516020615f6383398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b94929394036127115761264b8461459e565b600080516020615f23833981519152600080a2815115801590612709575b612674575b50505080f35b6126f7926000806040519461268886614150565b602786527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c85870152660819985a5b195960ca1b60408701528481519101845af4903d15612700573d6126da8161435a565b906126e8604051928361416b565b8152600081943d92013e61462e565b5038808061266e565b6060925061462e565b506001612669565b60405162461bcd60e51b815260048101839052602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608490fd5b90918782813d8311612790575b61277f818361416b565b810103126103ba57505190386125ea565b503d612775565b6114786127a2615daa565b60405163163678e960e01b81529182913360048401614a96565b50346103ba57806003193601126103ba576020606954604051908152f35b50346103ba57806003193601126103ba576020606654604051908152f35b50346103ba5760203660031901126103ba57604060c0916004358152607f6020522060018060a01b039081815416916001820154169060028101546003820154906005600484015493015493604051958652602086015260408501526060840152608083015260a0820152f35b50346103ba57806003193601126103ba576020604051600a8152f35b50346103ba57806003193601126103ba576020606854604051908152f35b50346103ba5760403660031901126103ba576128b961420c565b607854604051633629edcd60e11b81526001600160a01b0392916020908290600490829087165afa80156129975783918591612979575b501633141580612966575b612954577f2667a0cd99dbc787d1d2596efe938cf43dfe83e8b8ddeb70e28007c09ff33485918161292d602093614a74565b168060018060a01b0319607a541617607a5561294a602435615d08565b604051908152a180f35b604051637430763f60e11b8152600490fd5b5081612970615daa565b163314156128fb565b612991915060203d81116121b2576121a4818361416b565b386128f0565b6040513d86823e3d90fd5b50346103ba57602080600319360112611267576129bd61420c565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166129f430821415614500565b612a11600080516020615ea383398151915291838354161461454f565b612a19615daa565b82339116036127975760405191612a2f83614135565b858352600080516020615e438339815191525460ff1615612a5757505050610558915061459e565b8316906040516352d1902d60e01b81528581600481865afa60009181612b08575b50612ac75760405162461bcd60e51b815260048101879052602e6024820152600080516020615f6383398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b949293940361271157612ad98461459e565b600080516020615f23833981519152600080a2815115801590612b00576126745750505080f35b506000612669565b90918782813d8311612b30575b612b1f818361416b565b810103126103ba5750519038612a78565b503d612b15565b50346103ba57806003193601126103ba57602060ff607654166116516040518092614418565b50346103ba5760603660031901126103ba5760206114f5604435602435600435615232565b50346103ba57806003193601126103ba576020606c54604051908152f35b50346103ba5760403660031901126103ba5760043590818152602091607e8352604082205492838352607b8152604083209360108501548452607f8252604084209060405190612bef826140ff565b60018060a01b0392838154168352600184818301541686850152600282015490604085019182526003830154926060860193845260056004820154916080880192835201549160a08701928352851561311f5760088c0192835490600560ff8316612c598161418e565b0361310657600d8e01549051612c6e91614727565b421180159081806130f9575b6130e757906130dd575b15612e215750815115612e0f576002915190808214612e00575b5014612d85575b505083607954169084600e8a015416905192823b15611b065791612ce493918980946040519687958694859363099ea56b60e41b85526004850161519d565b03925af18015610c1957908691612d71575b50505b606d546001600160401b038082169791908815612d5d577f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222769596979860001901169060018060401b03191617606d55600f429101555116916040516024358152a380f35b634e487b7160e01b88526011600452602488fd5b612d7a906140ec565b611235578438612cf6565b600660ff1982541617905584607954168560058b015416915191813b15612dfc57918991612dcb938360405180968195829463099ea56b60e41b84528b6004850161519d565b03925af18015612df15790889115612ca557612de6906140ec565b61062e578638612ca5565b6040513d8a823e3d90fd5b8980fd5b835460ff191617835538612c9e565b604051630dd466dd60e41b8152600490fd5b9150919250602435828114600014612efd57505060ff198254161790558360795416600485600e8b0154169287876078541660405193848092633629edcd60e11b82525afa918215612ef2578a92612ed3575b5051823b15612dfc57604051638969ab5360e01b8152948a94869493859387938593612ea6938d1691600486016158d4565b03925af18015610c1957908691612ebf575b5050612cf9565b612ec8906140ec565b611235578438612eb8565b612eeb919250883d8a116121b2576121a4818361416b565b9038612e74565b6040513d8c823e3d90fd5b91949291600214612f13575b5050505050612cf9565b60069060ff1916179055846079541691600e8a019286845416915191813b1561307857918a91612f5b938360405180968195829463099ea56b60e41b84528a6004850161519d565b03925af180156119ea579089916130c9575b5050846079541690600460058b0192878454169089896078541660405194858092633629edcd60e11b82525afa9283156130be578c9361309f575b50606f548c52607f8a52600260408d200154871c91813b1561309b57918c91612fef93838c60405196879586948593638969ab5360e01b9b8c865216908c600486016158d4565b03925af1801561309057908b9161307c575b50508680806079541694541694541694606f548b52607f8952600260408c200154901c833b15613078578a9493929161304a8692604051988997889687958652600486016158d4565b03925af18015610c1957908691613064575b808080612f09565b61306d906140ec565b61123557843861305c565b8a80fd5b613085906140ec565b612dfc578938613001565b6040513d8d823e3d90fd5b8c80fd5b6130b79193508a3d8c116121b2576121a4818361416b565b9138612fa8565b6040513d8e823e3d90fd5b6130d2906140ec565b61122d578738612f6d565b5060243515612c84565b604051631777988560e11b8152600490fd5b508a8a5116331415612c7a565b604051634b011ca960e11b815260048101899052602490fd5b60405163c1d17bef60e01b815260048101879052602490fd5b50346103ba5760403660031901126103ba5761315261420c565b6024359161315e614ceb565b60ff60765460081c16600481101561338b5760028114908115613380575b50156131b75750600080516020615e6383398151915282602093925b6131a484607154614d11565b607155611f2b8460405193849384614f11565b6078546040516336d8759760e21b8152602092916001600160a01b0390811691601291908581600481875afa908115611f6757829187918791613363575b5060046040518094819363313ce56760e01b8352165afa859181613344575b50613339575b506040516316308e2560e11b815290861660048201528481602481865afa908115612997579087918591613306575b50916120d261325e6120d89361326495614d11565b91614f67565b92806040518093637817ee4f60e01b82528180613285308b60048401614a96565b03915afa9283156132fa57926132ba575b5050926132b4600080516020615e6383398151915292602095614d11565b92613198565b9080959250813d83116132f3575b6132d2818361416b565b81010312610c0d5792516132b4600080516020615e63833981519152613296565b503d6132c8565b604051903d90823e3d90fd5b809250868092503d8311613332575b61331f818361416b565b81010312610c0d575186906120d2613249565b503d613315565b60ff1691503861321a565b61335c919250873d891161218557612176818361416b565b9038613214565b61337a9150823d84116121b2576121a4818361416b565b386131f5565b60019150143861317c565b634e487b7160e01b82526021600452602482fd5b506133a9366143ca565b90916133b361474a565b6133bb614770565b6133c4826149f3565b6078546001600160a01b0391908216803b1561126757816024916040519283809263208a40f360e11b82523060048301525afa8015610c6357908291613819575b505083518401936020948582820312610aa357818601516001600160401b039283821161123557019160a08383031261124f5760405160a08101818110838211176112395760405287840151815261345f60408501614838565b938882019485526060810151906040830191825261347f60808201614838565b946060840195865260a082015190858211611b06576134a492908c0191018b016148ac565b906080830191825260ff60765416926003841015613805576001809414613722575b50606f548752607f8a52604087208881541615159081613714575b5061062e576134f1606e54614829565b9889606e55898852607b8b528860408920968b88558160058901998160018060a01b03199516858c5416178b555116600489019084825416179055511660068701918254161790555182850155600884018260ff1982541617905543600785015585600385015551918251600a85015588600b850193015180519182116137005761357c8454614097565b601f81116136b9575b508990601f831160011461365957928293918392899461364e575b50501b916000199060031b1c19161790555b6010606f5491015582806079541691541690803b15610aa3576135ed918391604051808095819463240ff7c560e11b83528a600484016149c2565b039134905af18015610c635761363a575b50507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b604060685481519081528486820152a160405191168152f35b61364482916140ec565b6103ba57806135fe565b0151925038806135a0565b8488528a8820919083601f1981168a8e5b888383106136a15750505010613688575b505050811b0190556135b2565b015160001960f88460031b161c1916905538808061367b565b8686015188559096019594850194879350018e61366a565b8488528a8820601f840160051c8101918c85106136f6575b601f0160051c019084905b8281106136ea575050613585565b600081550184906136dc565b90915081906136d1565b634e487b7160e01b87526041600452602487fd5b6002915001543410386134e1565b61372e89885116614a74565b604051630ae6240f60e11b81528b81600481305afa9081156119ea578a918a9182916137ca575b506024838a51169451604051948593849263068bcd8d60e01b84526004840152165afa9081156119ea578a916040918b916137a8575b500151160361062e5761379e81516151ed565b61062e57386134c6565b6137c491503d808d833e6137bc818361416b565b81019061492b565b3861378b565b925050508b81813d83116137fe575b6137e3818361416b565b81010312611b0657518981168103611b0657888a9138613755565b503d6137d9565b634e487b7160e01b88526021600452602488fd5b613822906140ec565b6103ba578038613405565b50346103ba5760203660031901126103ba5760406020916004358152607e83522054604051908152f35b50346103ba57806003193601126103ba57608060725460735460745460755491604051938452602084015260408301526060820152f35b50346103ba57806003193601126103ba5761055833614d1e565b50346103ba5760203660031901126103ba5760206114f5600435615826565b50346103ba5760603660031901126103ba576138e161420c565b6138e9614222565b906138f26141f6565b83549260ff8460081c1615938480956139ff575b80156139e8575b6139169061478c565b60ff1981166001178655846139d7575b5061396260405192613937846140d1565b600a8452694356537472617465677960b01b602085015261162360ff885460081c16612332816146c7565b60018060a01b03918260018060a01b0319941684606554161760655560405161399b8161236c60208201946020865260408301906141d1565b5190206066551690606a541617606a556139b25780f35b61ff00198154168155600080516020615ee3833981519152602060405160018152a180f35b61ffff191661010117855538613926565b50303b15801561390d575060ff811660011461390d565b50600160ff821610613906565b50346103ba57806003193601126103ba576065546040516001600160a01b039091168152602090f35b50346103ba57806003193601126103ba576020606f54604051908152f35b50346103ba57806003193601126103ba576020604051629896808152f35b50346103ba57806003193601126103ba576020606e54604051908152f35b50346103ba57806003193601126103ba576079546040516001600160a01b039091168152602090f35b50346103ba5760603660031901126103ba576001600160401b03600435818111610aa357613aea9036906004016142ec565b5060243590811161126757613b039036906004016143ac565b90613b0c6141f6565b50613b1561474a565b613b1d614770565b60209182818051810103126112675782015160ff607654169060038210156111fd576001809214613b4c578280f35b808352607b9182855281604085205403613dbd578184528285526040842081810154606954106112355760ff60088392015416613b888161418e565b0361147c57613b9682615826565b828552838652613bab8260408720015461530e565b1180613da8575b613d9657818452828552613bce81604086200154606954614d11565b60695560018060a01b039283606554168560685460246040518094819363068bcd8d60e01b835260048301525afa908115610c195785916040918891613d7c575b5001511683865281875285604081208885886004840154169201549373eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8114600014613d3e57505081809381925af115613d31575b8285528086526040852060088101600460ff1982541617905584600581607954169201541690606f548752607f8852600260408820015491813b1561122d57918791613cbc938360405180968195829463099ea56b60e41b84528c6004850161519d565b03925af18015610c1957613d0a575b5090613d0091859684600080516020615f8383398151915297525260408620936004850154169301546040519384938461519d565b0390a18038808280f35b90600080516020615f8383398151915295613d28613d0094936140ec565b95509091613ccb565b63b12d13eb85526004601cfd5b83906010929560449460145260345263a9059cbb60601b82525af13d1583875114171615613d6f5784603452613c58565b6390b8ec1885526004601cfd5b613d9091503d808a833e6137bc818361416b565b38613c0f565b60405163199cf26160e31b8152600490fd5b50818452828552806040852001541515613bb2565b60405163c1d17bef60e01b815260048101839052602490fd5b50346103ba576101403660031901126103ba57610558611b6e36614238565b50346103ba57806003193601126103ba576033546040516001600160a01b039091168152602090f35b50346103ba5760203660031901126103ba5760043563ffffffff60e01b81168091036112675760209063f1801e6160e01b8114908115613e64575b506040519015158152f35b6301ffc9a760e01b14905082613e59565b50346103ba5760203660031901126103ba57600480358252607b6020526040822080546001820154600283015460038401549484015460058501546006860154600787015460088801549599969896979496949560ff169490936001600160a01b03928316938316921690613eea60806140d1565b600a870154608052600b870160405190818b825492613f0884614097565b80845293600181169081156140755750600114614034575b50613f2d9250038261416b565b60a052604051986001600160401b0360608b01908111908b1117614020575060608901604052600c8701548952600d87015460208a015260018060a01b03600e8801541660408a01526010600f880154970154976040519b8c9b8c5260208c015260408b015260608a0152608089015260a088015260c087015260e0860152613fb58161418e565b6101008501526101e08061012086015260805190850152613fe860206080015160406102008701526102208601906141d1565b835161014086015260208401516101608601526040909301516001600160a01b03166101808501526101a08401526101c08301520390f35b634e487b7160e01b81526041600452602490fd5b8d525060208c2090918c915b818310614059575050906020613f2d9282010138613f20565b6020919350806001915483858801015201910190918392614040565b905060209250613f2d94915060ff191682840152151560051b82010138613f20565b90600182811c921680156140c7575b60208310146140b157565b634e487b7160e01b600052602260045260246000fd5b91607f16916140a6565b604081019081106001600160401b0382111761123957604052565b6001600160401b03811161123957604052565b60c081019081106001600160401b0382111761123957604052565b608081019081106001600160401b0382111761123957604052565b602081019081106001600160401b0382111761123957604052565b606081019081106001600160401b0382111761123957604052565b601f909101601f19168101906001600160401b0382119082101761123957604052565b6007111561419857565b634e487b7160e01b600052602160045260246000fd5b60005b8381106141c15750506000910152565b81810151838201526020016141b1565b906020916141ea815180928185528580860191016141ae565b601f01601f1916010190565b604435906001600160a01b0382168203610c0d57565b600435906001600160a01b0382168203610c0d57565b602435906001600160a01b0382168203610c0d57565b60c0906003190112610c0d5760405190614251826140ff565b816001600160a01b036004358181168103610c0d5782526024359081168103610c0d57602082015260443560408201526064356060820152608435608082015260a060a435910152565b60809060c3190112610c0d57604051906142b48261411a565b60c435825260e4356020830152610104356040830152610124356060830152565b6001600160401b0381116112395760051b60200190565b81601f82011215610c0d57803591614303836142d5565b92614311604051948561416b565b808452602092838086019260051b820101928311610c0d578301905b82821061433b575050505090565b81356001600160a01b0381168103610c0d57815290830190830161432d565b6001600160401b03811161123957601f01601f191660200190565b9291926143818261435a565b9161438f604051938461416b565b829481845281830111610c0d578281602093846000960137010152565b9080601f83011215610c0d578160206143c793359101614375565b90565b6040600319820112610c0d57600435906001600160401b038211610c0d576143f4916004016143ac565b906024356001600160a01b0381168103610c0d5790565b9060048210156141985752565b9060038210156141985752565b8054821015610aa75760005260206000200190600090565b9181601f84011215610c0d578235916001600160401b038311610c0d5760208381860195010111610c0d57565b614472615daa565b336001600160a01b039091160361448557565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b031982168117909255909116600080516020615f03833981519152600080a3565b1561450757565b60405162461bcd60e51b815260206004820152602c6024820152600080516020615e8383398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b1561455657565b60405162461bcd60e51b815260206004820152602c6024820152600080516020615e8383398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b156145d357600080516020615ea383398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b919290156146905750815115614642575090565b3b1561464b5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156146a35750805190602001fd5b60405162461bcd60e51b8152602060048201529081906114789060248301906141d1565b156146ce57565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b9190820180921161473457565b634e487b7160e01b600052601160045260246000fd5b6065546001600160a01b0316330361475e57565b60405163075fd2b160e01b8152600490fd5b6068541561477a57565b604051630f68fe6360e21b8152600490fd5b1561479357565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b9390979695929160c0959260e0860199865260018060a01b0380921660208701521660408501526060840152608083015260a08201520152565b60001981146147345760010190565b51906001600160a01b0382168203610c0d57565b606080918051845260208101516020850152604081015160408501520151910152565b90815180825260208080930193019160005b82811061488f575050505090565b83516001600160a01b031685529381019392810192600101614881565b9190604083820312610c0d576040516148c4816140d1565b83518152602084015190938491906001600160401b038211610c0d57019082601f83011215610c0d578151916148f98361435a565b93614907604051958661416b565b83855260208483010111610c0d57602092614927918480870191016141ae565b0152565b90602082820312610c0d5781516001600160401b0392838211610c0d570160c081830312610c0d5760405192614960846140ff565b8151845260208201516001600160a01b0381168103610c0d57602085015261498a60408301614838565b60408501526060820151908111610c0d5760a0926149a99183016148ac565b606084015260808101516080840152015160a082015290565b9081526001600160a01b03909116602082015260400190565b90816020910312610c0d57518015158103610c0d5790565b60785460405163288c314960e21b81526001600160a01b0392831660048201529160209183916024918391165afa908115614a6857600091614a4a575b5015614a3857565b604051636a5cfb6d60e01b8152600490fd5b614a62915060203d8111610c5c57610c4e818361416b565b38614a30565b6040513d6000823e3d90fd5b6001600160a01b031615614a8457565b6040516303988b8160e61b8152600490fd5b6001600160a01b0391821681529116602082015260400190565b90614aba82614b9f565b156000906107b1576078546001600160a01b0390811693909190843b1561126757816040518096630d4a8b4960e01b8252818381614afc308860048401614a96565b03925af1948515610c6357614b379495614b8d575b5060209192607854166040518080968194637817ee4f60e01b8352309060048401614a96565b03915afa9081156132fa5790614b5a575b614b559150607154614727565b607155565b506020813d8211614b85575b81614b736020938361416b565b81010312610c0d57614b559051614b48565b3d9150614b66565b91614b996020936140ec565b91614b11565b607a546001600160a01b03908116908115614c075750614bd99160209160405180809581946302154c3d60e51b8352309060048401614a96565b03915afa908115614a6857600091614bef575090565b6143c7915060203d8111610c5c57610c4e818361416b565b90506068549160405192602093848101916810531313d5d31254d560ba1b8352602982015260298152614c3981614150565b51902091607854169060405191632474521560e21b92838152846004820152600060248201528581604481855afa908115614a6857600091614cce575b5015614c86575050505050600190565b614ca1938593604051958694859384938452600484016149c2565b03915afa918215614a6857600092614cb857505090565b6143c79250803d10610c5c57610c4e818361416b565b614ce59150863d8811610c5c57610c4e818361416b565b38614c76565b6078546001600160a01b03163303614cff57565b6040516357848b5160e11b8152600490fd5b9190820391821161473457565b60785460408051637817ee4f60e01b81529293926000926001600160a01b0391602091831690828180614d55308c60048401614a96565b0381855afa8015614f07578690614ed8575b614d749150607154614d11565b607155803b156112355783516322bcf99960e01b81529085908290818381614da0308e60048401614a96565b03925af18015614ece57614ebb575b50835b828716808652607d83528486208054831015614e7e5790614dd783614e029493614425565b9054600391821b1c91828952607b865287892092614df4816151be565b614e07575b50505050614829565b614db2565b600080516020615ec38339815191529360a093836000526009820189528a6000208c81549155614e576002840191614e40818454614d11565b83556070614e4f828254614d11565b905584615468565b54910154918a51938452888401528a8a84015260608301526080820152a138808080614df9565b5050509291907f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b94951691828152607c84528181205551908152a1565b614ec7909491946140ec565b9238614daf565b84513d87823e3d90fd5b508281813d8311614f00575b614eee818361416b565b8101031261123157614d749051614d67565b503d614ee4565b85513d88823e3d90fd5b604091949392606082019560018060a01b0316825260208201520152565b90816020910312610c0d57516001600160a01b0381168103610c0d5790565b90816020910312610c0d575160ff81168103610c0d5790565b604d811161473457600a0a90565b8181029291811591840414171561473457565b8115614f92570490565b634e487b7160e01b600052601260045260246000fd5b80156150e557615073816000908360801c806150d9575b508060401c806150cc575b508060201c806150bf575b508060101c806150b2575b508060081c806150a5575b508060041c80615098575b508060021c8061508b575b50600191828092811c615084575b1c1b61501b8185614f88565b01811c6150288185614f88565b01811c6150358185614f88565b01811c6150428185614f88565b01811c61504f8185614f88565b01811c61505c8185614f88565b01811c6150698185614f88565b01901c8092614f88565b8082101561507f575090565b905090565b018161500f565b6002915091019038615001565b6004915091019038614ff6565b6008915091019038614feb565b6010915091019038614fe0565b6020915091019038614fd5565b6040915091019038614fca565b91505060809038614fbf565b50600090565b906020918281830312610c0d578051906001600160401b038211610c0d570181601f82011215610c0d57805192615121846142d5565b936040936151318551968761416b565b818652828087019260061b85010193818511610c0d578301915b84831061515b5750505050505090565b8583830312610c0d578386918251615172816140d1565b85518152828601518382015281520192019161514b565b8051821015610aa75760209160051b010190565b9081526001600160a01b039091166020820152604081019190915260600190565b600052607b60205260406000208054151590816151d9575090565b600501546001600160a01b03161515919050565b6151fc60725460695490614f75565b629896809182810292818404149015171561473457111590565b9190916000838201938412911290801582169115161761473457565b9091607454906298968093848360801b0490600160801b91828110156152fc578583965b6152bb5750506152669085614f75565b93858302928084048714901517156147345781039081116147345761528a91614f75565b908303928311614734576152a7926152a191614f88565b90614727565b6001607f1b81019081106147345760801c90565b6001918183166152db57806152cf91615425565b911c90815b9091615256565b8092506152e89197615425565b9560001981019081116147345790816152d4565b604051633e668d0360e01b8152600490fd5b60695480156153dd57615320826151ed565b610c0d57607254604081901b92600160401b9291801590850484141715614734578060401b9281840414901517156147345761536261536e9161538993614f88565b62989680809404614d11565b6153808360735460801b049180614f75565b60401c90614f88565b9080820291808304821490151715614734576074548103908111614734576153b091614f88565b906153be6071548093614f75565b60401c916153c857565b906153d16153ef565b8082111561507f575090565b60405163ed4421ad60e01b8152600490fd5b607554629896809081810290808204831490151715614734576154219061541c607154916120d283615854565b614f88565b0490565b90600160801b808311615453578111615441576152a791614f75565b6040516370b7a2d960e01b8152600490fd5b604051600162a4c31160e01b03198152600490fd5b90615473908261549a565b9091821580615492575b61548d5760039160078201550155565b505050565b50811561547d565b43916007820154918383116154d7578383146154cb5760036154bf6154c89486614d11565b91015490615232565b91565b50505050600090600090565b634e487b7160e01b600052600160045260246000fd5b607854604051633629edcd60e11b81526001600160a01b03916020908290600490829086165afa908115614a685760009161552d575b5016330361295457565b615545915060203d81116121b2576121a4818361416b565b38615523565b6020818101805191929091600091906001600160a01b039081168015159081615819575b81615777575b506155bd575b5050505081608091600080516020615e238339815191529351607255810151607355604081015160745560608101516075556155ba604051809261484c565ba1565b606f548352607f85526040928381208260018201541690838088511680931491821592615765575b505061569b575b509261568f6005600080516020615f4383398151915294600080516020615e238339815191529997948460809a98615625606f54614829565b80606f558152607f8a522090808351169660018060a01b0319918883855416178455600184019151168092825416179055858301519081600284015560608401519283600382015560a08d8601519586600484015501519586910155606f549651978897886147ef565b0390a19181933861557b565b8284511690813b15610aa3578291602483928851948593849263446adb9960e11b845260048401525af1801561575b57600080516020615f4383398151915294600080516020615e238339815191529997948760809a989561568f9560059561574c575b507fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f60608b85875116868c51169086519230845283015285820152a19550979950949799509450506155ec565b615755906140ec565b386156ff565b85513d84823e3d90fd5b909150541683855116141583386155e5565b606f548552607f8752604085206001810154841690911480159250615807575b81156157f4575b81156157e1575b81156157ce575b81156157ba575b5038615575565b9050600560a08401519101541415386157b3565b60808401516004820154141591506157ac565b60608401516003820154141591506157a5565b604084015160028201541415915061579e565b90508183511682825416141590615797565b835183161515915061556f565b80600052607b6020526040600020908082540361078f57508061584f6002600393015482615468565b015490565b6298968080820291808304821490151715614734576074548103908111614734576143c791614f88565b906158889161554b565b80516158a4575b5080516158995750565b6158a290615b5b565b565b6158ad906158fc565b3861588f565b908060209392818452848401376000828201840152601f01601f1916010190565b9081526001600160a01b03918216602082015291166040820152606081019190915260800190565b6068918254926000926040908151956020968781016810531313d5d31254d560ba1b918282526029938482015283815261593581614150565b5190209760018060a01b0392607896848854169a875198632474521560e21b9c8d8b5260049a838c8201528d60248201528681604481855afa908115615a67578e91615b3e575b50615aed575b508b5b8851811015615aa05788838f8d89916159b98f8e6159a789828c541699615189565b511690519586948594855284016149c2565b0381855afa908115615a94578f91615a77575b50156159e2575b506159dd90614829565b615985565b84548b51888101918a8352888201528781526159fd81614150565b5190209089615a0c848d615189565b511691813b15615a7357918f91615a3b938f8f9085915196879586948593632f2ff15d60e01b855284016149c2565b03925af18015615a6757908e91615a53575b506159d3565b615a5c906140ec565b61309b578c38615a4d565b8e8c51903d90823e3d90fd5b8f80fd5b615a8e9150883d8a11610c5c57610c4e818361416b565b386159cc565b8f8d51903d90823e3d90fd5b505050935050959750507f7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a9550615ae89293505492808051958695865285015283019061486f565b0390a1565b803b1561309b578c8360448d838e51958694859363d547741f60e01b85528401528160248401525af18015615b34571561598257615b2d909c919c6140ec565b9a38615982565b8a513d8f823e3d90fd5b615b559150873d8911610c5c57610c4e818361416b565b3861597c565b6000915b8151831015615cc55760018060a01b03928360785416938360685495604096875160209081810192615bdb8388615bbe8b6810531313d5d31254d560ba1b988981526029978789820152888152615bb581614150565b5190209a615189565b51168d5180938192632474521560e21b835260049b8c84016149c2565b0381895afa908115615cba57600091615c9d575b50615c0f575b50505050505050615c0891929350614829565b9190615b5f565b8a51928301938452818301528152615c2681614150565b51902092615c348588615189565b511690803b15610c0d57615c6093600080948a519687958694859363d547741f60e01b855284016149c2565b03925af18015615c9257615c0893949550615c83575b8493928180808080615bf5565b615c8c906140ec565b38615c76565b85513d6000823e3d90fd5b615cb49150843d8611610c5c57610c4e818361416b565b38615bef565b8c513d6000823e3d90fd5b91507fd418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e90606854615ae8604051928392835260406020840152604083019061486f565b60018060a01b0390600482607a54166020846078541660405193848092633629edcd60e11b82525afa918215614a6857600092615d8a575b50803b15610c0d5760009283606492604051968795869463fc2ebdd160e01b865230600487015260248601521660448401525af18015614a6857615d815750565b6158a2906140ec565b615da391925060203d81116121b2576121a4818361416b565b9038615d40565b6033546001600160a01b0316803b615dbf5790565b604051638da5cb5b60e01b8152602081600481855afa60009181615de7575b5061507f575090565b90916020823d8211615e1a575b81615e016020938361416b565b810103126103ba5750615e1390614838565b9038615dde565b3d9150615df456feec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914370b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc146756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024988be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3be677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d5345524331393637557067726164653a206e657720696d706c656d656e74617469a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847a264697066735822122019e25c71e3ceea58c8e2488edc30b528e4c8a91fb1e6308eab318279d8b75c9d64736f6c63430008130033","sourceMap":"4144:56627:96:-:0;;;;;;;1088:4:61;1080:13;;4144:56627:96;;;;;;1080:13:61;4144:56627:96;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040526004361015610018575b361561001657005b005b6000803560e01c8063013cf08b14613e7557806301ffc9a714613e1e578063025313a214613df5578063062f9ece14613dd65780630a6f0ee914613ab85780630bece79c14613a8f5780630c0512e914613a715780630f529ba214613a53578063125fd1d914613a3557806315cc481e14613a0c578063184b9559146138c75780631aa91a9e146138a85780631ddf1e231461388e5780632506b87014613857578063255ffb381461382d5780632bbe0cae1461339f5780632dbd6fdd146116285780632ed04b2b14613138578063311a6c5614612ba05780633396045914612b82578063346db8cb14612b5d578063351d9f9614612b375780633659cfe6146129a25780633864d3661461289f57806338fff2d014612881578063406244d81461286557806341bb7605146127f857806342fda9c7146127da5780634ab4ba42146127bc5780634d31d087146112ce5780634f1ef2861461250657806352d1902d1461244757806359a5db8b146124285780635db64b99146123ef5780636003e414146123c657806360b0645a1461238357806360d5dedc146122c8578063626c47e8146122ac5780636453d9c414612282578063715018a6146122365780637263cfe2146121f5578063782aadff14611e5a578063814516ad14611e40578063817b1cd214611e22578063824ea8ed14611db5578063868c57b814611d5f5780638da5cb5b14611d32578063948e7a5914611cbf578063950559d714611ca0578063a0cf0aea14611c71578063a28889e114611c48578063a47ff7e514611c2a578063a51312c814611be9578063aba9ffee146114fd578063ad56fd5d14611b4f578063b0d3713a14611b0a578063b2b878d014611a51578063b41596ec146116d8578063b5f620ce1461167c578063b6c61f3114611653578063c329217114611628578063c4d66de8146115f6578063c7f758a81461151b578063d1e36232146114fd578063d5cc68a6146114da578063db9b5d50146114b8578063df868ed314611495578063e0a8f6f51461133e578063e0dd2c38146112f4578063eb11af93146112ce578063edd146cc14610ca6578063ef2920fc146105af578063f2fde38b1461051e578063f4fe255614610433578063f5b0dfb7146103da578063f5be3f7c146103bd5763ffa1ad7414610373575061000e565b346103ba57806003193601126103ba576103b6604051610392816140d1565b60038152620302e360ec1b60208201526040519182916020835260208301906141d1565b0390f35b80fd5b50346103ba57806003193601126103ba576020604051611c208152f35b50346103ba5760203660031901126103ba577f46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339602060043561041a61474a565b61042681606954614727565b606955604051908152a180f35b50346103ba5760203660031901126103ba57600080516020615f4383398151915261045c61420c565b610102835460ff8160081c161580610511575b6104789061478c565b61ffff1916178355606f80548452607f602052604080852080546001600160a01b0319166001600160a01b0394851617905590548085528185208054600182015460028301546003840154600485015460059095015496519788976104e997909695929482169290911690886147ef565b0390a161ff00198154168155600080516020615ee3833981519152602060405160028152a180f35b50600260ff82161061046f565b50346103ba5760203660031901126103ba5761053861420c565b61054061446a565b6001600160a01b0381161561055b57610558906144c9565b80f35b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b506105b9366143ca565b6105c161474a565b6105c9614770565b8151906020906105e08280860194860101846150eb565b92855b84518110156106a1576105f68186615189565b5151846106038388615189565b510151908852607b8552876040812091139081610632575b5061062e5761062990614829565b6105e3565b8680fd5b60ff915060080154166106448161418e565b801590811561068c575b8115610677575b8115610663575b503861061b565b600691506106708161418e565b143861065c565b90506106828161418e565b6004811490610655565b90506106978161418e565b600381149061064e565b50916106bd869382876106b3866149f3565b80510101906150eb565b6106c683614b9f565b15610c6e575b60785460405163011de97360e61b81526001600160a01b0391821695908481806106fa308a60048401614a96565b03818a5afa908115610c63578291610c36575b5015610c245780959194959161072287614b9f565b96829715935b85518910156107d95784806107c3575b6107b1576107468987615189565b5151156107a7576107578987615189565b5151610762816151be565b1561078f5750610783610789918861077a8c8a615189565b51015190615216565b98614829565b97610728565b6024906040519063c1d17bef60e01b82526004820152fd5b9761078990614829565b604051630b72d6b160e31b8152600490fd5b5083876107d08b89615189565b51015113610738565b91869086926107f68a821695868852607c85526040882054615216565b9186831261062e576108219184916040518080958194637817ee4f60e01b8352309060048401614a96565b03915afa908115610c19578691610be7575b50808211610bc95750838552607c825260408520558392839160609182915b8551851015610bc5576108658587615189565b515192805115600014610abd575060405161087f816140d1565b6001815281810182368237815115610aa7578490525b816108a08789615189565b51015194848952607b83526040892091896009840191866000528286526108cd604060002054998a615216565b92828412610aa357909150866000528552816040600020558a809a81928654935b898452607d8952604084208054821015610a915761090d828792614425565b90549060031b1c1461092b57610924604091614829565b90506108ee565b50989392915099959894939a5060015b15610a2a575b506109a294939291908084116109f15761095b8482614d11565b6109686070918254614727565b90556109748482614d11565b61098360028501918254614727565b90555b60078301928354156000146109aa575050509050439055614829565b939492610852565b60a093506109c7600080516020615ec38339815191529582615468565b6003600282015491015491604051938985528b85015260408401528b8301526080820152a1614829565b6109fb8185614d11565b610a086070918254614d11565b9055610a148185614d11565b610a2360028501918254614d11565b9055610986565b868c52607d895260408c20805490600160401b821015610a7d5781610a5d9160016109a29a999897969594018155614425565b819291549060031b91821b91600019901b19161790559091929394610941565b634e487b7160e01b8e52604160045260248efd5b5050989392915099959894939a61093b565b8280fd5b634e487b7160e01b600052603260045260246000fd5b939195969294908396845b8651811015610b0e5787610adc8289615189565b5114610af057610aeb90614829565b610ac8565b8760449160405191632b7aec5560e21b835260048301526024820152fd5b509294909195939796610895578051906001808301809311610bb157610b33836142d5565b92610b41604051948561416b565b808452610b50601f19916142d5565b01368585013789815b610b72575b5050610b6c85915183615189565b52610895565b829994979951811015610ba85780610b8d610b9e9285615189565b51610b988287615189565b52614829565b8199979499610b59565b98969398610b5e565b634e487b7160e01b8a52601160045260248afd5b8680f35b6044925060405191636b20c17f60e11b835260048301526024820152fd5b90508281813d8311610c12575b610bfe818361416b565b81010312610c0d575186610833565b600080fd5b503d610bf4565b6040513d88823e3d90fd5b604051635fccb67f60e01b8152600490fd5b610c569150853d8711610c5c575b610c4e818361416b565b8101906149db565b8761070d565b503d610c44565b6040513d84823e3d90fd5b8392935b8151811015610c9d578383610c878385615189565b510151136107b157610c9890614829565b610c72565b509291926106cc565b50346103ba5760403660031901126103ba576024356001600160401b03811161126757610cd79036906004016143ac565b610cdf61474a565b610ce761474a565b6068546112bc57600435156112aa57600435606855606a546e5af43d82803e903d91602b57fd5bf3606c54610d1b81614829565b606c5560405160208101913360601b8352603482015260348152610d3e81614150565b519020608883901c62ffffff16763d602d80600a3d3981f3363d3d373d3d3d363d7300000017855260789290921b6001600160781b031916176020526001600160a01b03906037600985f516801561126b57607980546001600160a01b031981168317909155839190821617803b156112675781809160046040518094819363204a7f0760e21b83525af18015610c6357611253575b50508051810190602081830312610aa3576020810151906001600160401b03821161124f5761022082820184031261124f576040519261012084016001600160401b038111858210176112395780604052608084840183031261123157610e3a8161411a565b8284016020810151825260408101516101408701526060810151610160870152608081015161018087015290855260a00151600381101561123157602085015260c0838301015160048110156112315760408501526020828401820360bf190112611235576040516001600160401b036020820190811190821117611239576020810160405260e084840101518152606085015260c060df198484018303011261123557604051610eea816140ff565b82840161010001516001600160a01b038116810361062e578152610f1361012085850101614838565b6020820152828401610140810151604083015261016081015160608301526101808101516080808401919091526101a082015160a0840152860191909152610f5e906101c001614838565b60a0850152610f726101e084840101614838565b60c085015281830161020081015160e08601526102200151926001600160401b0384116112315760208201603f85838601010112156112315760208482850101015192610fbe846142d5565b94610fcc604051968761416b565b8486526020808701940160408660051b838686010101011161122d57818301810160400193925b60408660051b8383860101010185106112115788888861010082015260018060a01b0360a08201511660018060a01b03196078541617607855602081015160038110156111fd57607654604083015160048110156111e95761ff0060ff9160081b1692169061ffff1916171760765560608101515160775560018060a01b0360c08201511660018060a01b0319607a541617607a557fb6a062fc5f19aa17637bf61ab001ce3e5ceb67a5bd51d9753281e41df94f3fd36040516004358152604060208201526110c660408201845161484c565b6110d8602084015160c0830190614418565b6110ea604084015160e083019061440b565b60608301515161010082015260a06080840151600180831b03815116610120840152600180831b036020820151166101408401526040810151610160840152606081015161018084015260808101516101a084015201516101c082015260018060a01b0360a0840151166101e082015260018060a01b0360c08401511661020082015260e08301516102208201528061119661010085015161022061024084015261026083019061486f565b0390a16111c860808201518251604051906111b082614135565b858252604051926111c084614135565b86845261587e565b607a546001600160a01b03166111dc575080f35b60e0610558910151615d08565b634e487b7160e01b85526021600452602485fd5b634e487b7160e01b83526021600452602483fd5b60208060409561122088614838565b8152019501949350610ff3565b8780fd5b8580fd5b8480fd5b634e487b7160e01b600052604160045260246000fd5b8380fd5b61125c906140ec565b611267578138610dd4565b5080fd5b60405162461bcd60e51b8152602060048201526017602482015276115490cc4c4d8dce8818dc99585d194c8819985a5b1959604a1b6044820152606490fd5b604051637fcce2a960e01b8152600490fd5b60405163439a74c960e01b8152600490fd5b50346103ba5760203660031901126103ba576020906112eb61420c565b50604051908152f35b50346103ba5760403660031901126103ba5760096040611312614222565b926004358152607b60205220019060018060a01b03166000526020526020604060002054604051908152f35b50346103ba576020806003193601126112675760043590818352607b8152600160ff6008604086200154166113728161418e565b0361147c57818352607b815260408320600501546001600160a01b0390811633810361145957508084916079541690848352607b8452601060408420916005830154169101548352607f84526002604084200154823b1561124f576113f19284928360405180968195829463099ea56b60e41b84528c6004850161519d565b03925af18015610c6357611445575b50829052607b81526040808420600801805460ff19166003179055519182527f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c91a180f35b61144e906140ec565b610aa3578238611400565b604051634544dc9160e11b815290819061147890339060048401614a96565b0390fd5b6040516344980d8f60e01b815260048101839052602490fd5b50346103ba57806003193601126103ba57602060ff606754166040519015158152f35b50346103ba5760203660031901126103ba576105586114d561420c565b614ab0565b50346103ba57806003193601126103ba5760206114f56153ef565b604051908152f35b50346103ba57806003193601126103ba576020607154604051908152f35b50346103ba5760203660031901126103ba57610160906004358152607b6020526040812060018101549182156000146115e657905b60018060a01b03918260058301541693836004840154169360068401541690600284015460ff6008860154169060078601549260038701549433600052600988016020526010604060002054980154986040519a8b5260208b015260408a0152606089015260808801526115c38161418e565b60a087015260c086015260e0850152610100840152610120830152610140820152f35b506115f08261530e565b90611550565b50346103ba5760203660031901126103ba5761055861161361420c565b61162360ff845460081c166146c7565b6144c9565b50346103ba57806003193601126103ba57602060ff60765460081c16611651604051809261440b565bf35b50346103ba57806003193601126103ba57607a546040516001600160a01b039091168152602090f35b50346103ba5760203660031901126103ba576004358015158091036112675760207fd94c9bc4d43c51d8dc345a016d8e3d994432fac68e72832e4cf3a616bd8efae09160ff196067541660ff821617606755604051908152a180f35b5060603660031901126103ba576024356001600160401b0381116112675761170490369060040161443d565b906044356001600160401b03811161124f5761172490369060040161443d565b611730929192336149f3565b6004358552607b602052604085209260108401548652607f602052604086206040519261175c846140ff565b81546001600160a01b039081168552600183015416602085015260028201546040850152600382015460608501908152600480840154608087015260059093015460a086015286549092359003611a3857600160ff6008880154166117c08161418e565b03611a1f578151341061122d57600f86015480151590816119f5575b5061122d576117ec825134614d11565b607954925190926001600160a01b0316908990823b15611267576040519283809263240ff7c560e11b82528161182833600435600484016149c2565b03925af180156119ea576119d6575b509160209161187897989360018060a01b0386511691604051809a8195829463c13517e160e01b8452600360048501526040602485015260448401916158b3565b03925af19485156119c9578195611995575b5060088401805460ff19166005179055600c840185905542600d8501908155600e90940180546001600160a01b03191633179055848152607e602052604081206004359055606d54906001600160401b038083169190821461198157506001600160401b031990911660019091016001600160401b031617606d55519154604080516001600160a01b0394909416845260043560208581019190915290840185905233606085015260c06080850181905290957f034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d949384939261197092908501916158b3565b9060a08301520390a1604051908152f35b634e487b7160e01b81526011600452602490fd5b9094506020813d6020116119c1575b816119b16020938361416b565b81010312610c0d5751933861188a565b3d91506119a4565b50604051903d90823e3d90fd5b6119e089916140ec565b61122d5738611837565b6040513d8b823e3d90fd5b9050611c208101809111611a0b574210386117dc565b634e487b7160e01b89526011600452602489fd5b60246040516344980d8f60e01b81526004356004820152fd5b602460405163c1d17bef60e01b81526004356004820152fd5b50346103ba5760403660031901126103ba576001600160401b03600435818111610aa357611a839036906004016142ec565b50602490813581811161124f573660238201121561124f57806004013590611aaa826142d5565b93611ab8604051958661416b565b8285528060208096019360051b8301019336851161062e57818301935b858510611ae0578780fd5b8435828111611b06578791611afb83928636918901016143ac565b815201940193611ad5565b8880fd5b50346103ba5760203660031901126103ba57611b2461420c565b611b2c61446a565b606a80546001600160a01b0319166001600160a01b039290921691909117905580f35b50346103ba576101603660031901126103ba57611b85611b6e36614238565b611b773661429b565b90611b806154ed565b61554b565b607a5481906001600160a01b031680611b9b5750f35b803b15611be65781809160446040518094819363642ce76b60e01b83523060048401526101443560248401525af18015610c6357611bd65750f35b611bdf906140ec565b6103ba5780f35b50fd5b50346103ba5760203660031901126103ba576004356001600160401b03811161126757611c1d6105589136906004016142ec565b611c256154ed565b615b5b565b50346103ba57806003193601126103ba576020607754604051908152f35b50346103ba57806003193601126103ba57606d546040516001600160401b039091168152602090f35b50346103ba57806003193601126103ba57602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b50346103ba5760203660031901126103ba5760206114f5600435615854565b50346103ba576101803660031901126103ba57611cdb36614238565b611ce43661429b565b6001600160401b0391906101443583811161123557611d079036906004016142ec565b906101643593841161123557611d246105589436906004016142ec565b92611d2d6154ed565b61587e565b50346103ba57806003193601126103ba576020611d4d615daa565b6040516001600160a01b039091168152f35b50346103ba5760403660031901126103ba57611d7961420c565b6001600160a01b03168152607d60205260408120805460243592908310156103ba576020611da78484614425565b90546040519160031b1c8152f35b50346103ba5760203660031901126103ba5760406020916004358152607b835220611de460028201548261549a565b81929192159081611e19575b50611e0d575b6001611e0391015461530e565b1115604051908152f35b60038101549150611df6565b90501538611df0565b50346103ba57806003193601126103ba576020607054604051908152f35b50346103ba57806003193601126103ba5761055833614ab0565b50346103ba5760403660031901126103ba57611e7461420c565b602435611e7f614ceb565b611e8882614b9f565b156107b1578260ff60765460081c1660048110156111e95760028103611f7257505080915b60785460405163011de97360e61b81529060209082906001600160a01b03168180611edc308860048401614a96565b03915afa908115611f6757907f0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a93929160209691611f4a575b50611f36575b611f2b8460405193849384614f11565b0390a1604051908152f35b611f4284607154614727565b607155611f1b565b611f619150863d8111610c5c57610c4e818361416b565b38611f15565b6040513d87823e3d90fd5b6001810361201e575050607854604051637817ee4f60e01b8152829160209082906001600160a01b03168180611fac308a60048401614a96565b03915afa908115611f67578591611fed575b50611fc98382614727565b607754809111611fdc575b505091611ead565b611fe69250614d11565b3880611fd4565b90506020813d8211612016575b816120076020938361416b565b81010312610c0d575138611fbe565b3d9150611ffa565b90929060021901611ead576078546040516316308e2560e11b81526001600160a01b038084166004830152929450908216916020918281602481875afa80156121ea57859088906121b9575b6120749250614727565b6040516336d8759760e21b81529060128483600481895afa9081156119ea576120dd94866120d2936120d8968d9161218c575b5060046040518094819363313ce56760e01b8352165afa8b918161215d575b50612152575b50614f67565b90614f75565b614fa8565b816040518094637817ee4f60e01b825281806120fd308b60048401614a96565b03915afa918215610c19578692612120575b5061211a9250614d11565b91611ead565b90915082813d831161214b575b612137818361416b565b81010312610c0d5761211a9151903861210f565b503d61212d565b60ff915016386120cc565b61217e919250883d8a11612185575b612176818361416b565b810190614f4e565b90386120c6565b503d61216c565b6121ac9150823d84116121b2575b6121a4818361416b565b810190614f2f565b386120a7565b503d61219a565b50508281813d83116121e3575b6121d0818361416b565b81010312610c0d5784612074915161206a565b503d6121c6565b6040513d89823e3d90fd5b50346103ba5760203660031901126103ba576004356001600160401b038111611267576122296105589136906004016142ec565b6122316154ed565b6158fc565b50346103ba57806003193601126103ba5761224f61446a565b603380546001600160a01b031981169091556000906001600160a01b0316600080516020615f038339815191528280a380f35b50346103ba5760203660031901126103ba5761055861229f61420c565b6122a7614ceb565b614d1e565b50346103ba57806003193601126103ba57602060405160038152f35b50346103ba5760603660031901126103ba576122e261420c565b6024356001600160401b038111610aa35736602382011215610aa357612312903690602481600401359101614375565b9061233761231e6141f6565b61162360ff865460081c16612332816146c7565b6146c7565b60018060a01b031660018060a01b0319606554161760655560405161237a8161236c60208201946020865260408301906141d1565b03601f19810183528261416b565b51902060665580f35b50346103ba5760203660031901126103ba576114f560406020926004358152607b8452206123b5600782015443614d11565b906002600382015491015491615232565b50346103ba57806003193601126103ba576078546040516001600160a01b039091168152602090f35b50346103ba5760203660031901126103ba576020906040906001600160a01b0361241761420c565b168152607c83522054604051908152f35b50346103ba5760203660031901126103ba5760206114f560043561530e565b50346103ba57806003193601126103ba577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036124a0576020604051600080516020615ea38339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b5060403660031901126103ba5761251b61420c565b6024356001600160401b038111610aa35761253a9036906004016143ac565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811692919061257430851415614500565b612591600080516020615ea383398151915294828654161461454f565b612599615daa565b813391160361279757600080516020615e438339815191525460ff16156125c6575050610558915061459e565b8216604051936352d1902d60e01b85526020948581600481865afa60009181612768575b506126395760405162461bcd60e51b815260048101879052602e6024820152600080516020615f6383398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b94929394036127115761264b8461459e565b600080516020615f23833981519152600080a2815115801590612709575b612674575b50505080f35b6126f7926000806040519461268886614150565b602786527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c85870152660819985a5b195960ca1b60408701528481519101845af4903d15612700573d6126da8161435a565b906126e8604051928361416b565b8152600081943d92013e61462e565b5038808061266e565b6060925061462e565b506001612669565b60405162461bcd60e51b815260048101839052602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608490fd5b90918782813d8311612790575b61277f818361416b565b810103126103ba57505190386125ea565b503d612775565b6114786127a2615daa565b60405163163678e960e01b81529182913360048401614a96565b50346103ba57806003193601126103ba576020606954604051908152f35b50346103ba57806003193601126103ba576020606654604051908152f35b50346103ba5760203660031901126103ba57604060c0916004358152607f6020522060018060a01b039081815416916001820154169060028101546003820154906005600484015493015493604051958652602086015260408501526060840152608083015260a0820152f35b50346103ba57806003193601126103ba576020604051600a8152f35b50346103ba57806003193601126103ba576020606854604051908152f35b50346103ba5760403660031901126103ba576128b961420c565b607854604051633629edcd60e11b81526001600160a01b0392916020908290600490829087165afa80156129975783918591612979575b501633141580612966575b612954577f2667a0cd99dbc787d1d2596efe938cf43dfe83e8b8ddeb70e28007c09ff33485918161292d602093614a74565b168060018060a01b0319607a541617607a5561294a602435615d08565b604051908152a180f35b604051637430763f60e11b8152600490fd5b5081612970615daa565b163314156128fb565b612991915060203d81116121b2576121a4818361416b565b386128f0565b6040513d86823e3d90fd5b50346103ba57602080600319360112611267576129bd61420c565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166129f430821415614500565b612a11600080516020615ea383398151915291838354161461454f565b612a19615daa565b82339116036127975760405191612a2f83614135565b858352600080516020615e438339815191525460ff1615612a5757505050610558915061459e565b8316906040516352d1902d60e01b81528581600481865afa60009181612b08575b50612ac75760405162461bcd60e51b815260048101879052602e6024820152600080516020615f6383398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b949293940361271157612ad98461459e565b600080516020615f23833981519152600080a2815115801590612b00576126745750505080f35b506000612669565b90918782813d8311612b30575b612b1f818361416b565b810103126103ba5750519038612a78565b503d612b15565b50346103ba57806003193601126103ba57602060ff607654166116516040518092614418565b50346103ba5760603660031901126103ba5760206114f5604435602435600435615232565b50346103ba57806003193601126103ba576020606c54604051908152f35b50346103ba5760403660031901126103ba5760043590818152602091607e8352604082205492838352607b8152604083209360108501548452607f8252604084209060405190612bef826140ff565b60018060a01b0392838154168352600184818301541686850152600282015490604085019182526003830154926060860193845260056004820154916080880192835201549160a08701928352851561311f5760088c0192835490600560ff8316612c598161418e565b0361310657600d8e01549051612c6e91614727565b421180159081806130f9575b6130e757906130dd575b15612e215750815115612e0f576002915190808214612e00575b5014612d85575b505083607954169084600e8a015416905192823b15611b065791612ce493918980946040519687958694859363099ea56b60e41b85526004850161519d565b03925af18015610c1957908691612d71575b50505b606d546001600160401b038082169791908815612d5d577f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222769596979860001901169060018060401b03191617606d55600f429101555116916040516024358152a380f35b634e487b7160e01b88526011600452602488fd5b612d7a906140ec565b611235578438612cf6565b600660ff1982541617905584607954168560058b015416915191813b15612dfc57918991612dcb938360405180968195829463099ea56b60e41b84528b6004850161519d565b03925af18015612df15790889115612ca557612de6906140ec565b61062e578638612ca5565b6040513d8a823e3d90fd5b8980fd5b835460ff191617835538612c9e565b604051630dd466dd60e41b8152600490fd5b9150919250602435828114600014612efd57505060ff198254161790558360795416600485600e8b0154169287876078541660405193848092633629edcd60e11b82525afa918215612ef2578a92612ed3575b5051823b15612dfc57604051638969ab5360e01b8152948a94869493859387938593612ea6938d1691600486016158d4565b03925af18015610c1957908691612ebf575b5050612cf9565b612ec8906140ec565b611235578438612eb8565b612eeb919250883d8a116121b2576121a4818361416b565b9038612e74565b6040513d8c823e3d90fd5b91949291600214612f13575b5050505050612cf9565b60069060ff1916179055846079541691600e8a019286845416915191813b1561307857918a91612f5b938360405180968195829463099ea56b60e41b84528a6004850161519d565b03925af180156119ea579089916130c9575b5050846079541690600460058b0192878454169089896078541660405194858092633629edcd60e11b82525afa9283156130be578c9361309f575b50606f548c52607f8a52600260408d200154871c91813b1561309b57918c91612fef93838c60405196879586948593638969ab5360e01b9b8c865216908c600486016158d4565b03925af1801561309057908b9161307c575b50508680806079541694541694541694606f548b52607f8952600260408c200154901c833b15613078578a9493929161304a8692604051988997889687958652600486016158d4565b03925af18015610c1957908691613064575b808080612f09565b61306d906140ec565b61123557843861305c565b8a80fd5b613085906140ec565b612dfc578938613001565b6040513d8d823e3d90fd5b8c80fd5b6130b79193508a3d8c116121b2576121a4818361416b565b9138612fa8565b6040513d8e823e3d90fd5b6130d2906140ec565b61122d578738612f6d565b5060243515612c84565b604051631777988560e11b8152600490fd5b508a8a5116331415612c7a565b604051634b011ca960e11b815260048101899052602490fd5b60405163c1d17bef60e01b815260048101879052602490fd5b50346103ba5760403660031901126103ba5761315261420c565b6024359161315e614ceb565b60ff60765460081c16600481101561338b5760028114908115613380575b50156131b75750600080516020615e6383398151915282602093925b6131a484607154614d11565b607155611f2b8460405193849384614f11565b6078546040516336d8759760e21b8152602092916001600160a01b0390811691601291908581600481875afa908115611f6757829187918791613363575b5060046040518094819363313ce56760e01b8352165afa859181613344575b50613339575b506040516316308e2560e11b815290861660048201528481602481865afa908115612997579087918591613306575b50916120d261325e6120d89361326495614d11565b91614f67565b92806040518093637817ee4f60e01b82528180613285308b60048401614a96565b03915afa9283156132fa57926132ba575b5050926132b4600080516020615e6383398151915292602095614d11565b92613198565b9080959250813d83116132f3575b6132d2818361416b565b81010312610c0d5792516132b4600080516020615e63833981519152613296565b503d6132c8565b604051903d90823e3d90fd5b809250868092503d8311613332575b61331f818361416b565b81010312610c0d575186906120d2613249565b503d613315565b60ff1691503861321a565b61335c919250873d891161218557612176818361416b565b9038613214565b61337a9150823d84116121b2576121a4818361416b565b386131f5565b60019150143861317c565b634e487b7160e01b82526021600452602482fd5b506133a9366143ca565b90916133b361474a565b6133bb614770565b6133c4826149f3565b6078546001600160a01b0391908216803b1561126757816024916040519283809263208a40f360e11b82523060048301525afa8015610c6357908291613819575b505083518401936020948582820312610aa357818601516001600160401b039283821161123557019160a08383031261124f5760405160a08101818110838211176112395760405287840151815261345f60408501614838565b938882019485526060810151906040830191825261347f60808201614838565b946060840195865260a082015190858211611b06576134a492908c0191018b016148ac565b906080830191825260ff60765416926003841015613805576001809414613722575b50606f548752607f8a52604087208881541615159081613714575b5061062e576134f1606e54614829565b9889606e55898852607b8b528860408920968b88558160058901998160018060a01b03199516858c5416178b555116600489019084825416179055511660068701918254161790555182850155600884018260ff1982541617905543600785015585600385015551918251600a85015588600b850193015180519182116137005761357c8454614097565b601f81116136b9575b508990601f831160011461365957928293918392899461364e575b50501b916000199060031b1c19161790555b6010606f5491015582806079541691541690803b15610aa3576135ed918391604051808095819463240ff7c560e11b83528a600484016149c2565b039134905af18015610c635761363a575b50507ffcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b604060685481519081528486820152a160405191168152f35b61364482916140ec565b6103ba57806135fe565b0151925038806135a0565b8488528a8820919083601f1981168a8e5b888383106136a15750505010613688575b505050811b0190556135b2565b015160001960f88460031b161c1916905538808061367b565b8686015188559096019594850194879350018e61366a565b8488528a8820601f840160051c8101918c85106136f6575b601f0160051c019084905b8281106136ea575050613585565b600081550184906136dc565b90915081906136d1565b634e487b7160e01b87526041600452602487fd5b6002915001543410386134e1565b61372e89885116614a74565b604051630ae6240f60e11b81528b81600481305afa9081156119ea578a918a9182916137ca575b506024838a51169451604051948593849263068bcd8d60e01b84526004840152165afa9081156119ea578a916040918b916137a8575b500151160361062e5761379e81516151ed565b61062e57386134c6565b6137c491503d808d833e6137bc818361416b565b81019061492b565b3861378b565b925050508b81813d83116137fe575b6137e3818361416b565b81010312611b0657518981168103611b0657888a9138613755565b503d6137d9565b634e487b7160e01b88526021600452602488fd5b613822906140ec565b6103ba578038613405565b50346103ba5760203660031901126103ba5760406020916004358152607e83522054604051908152f35b50346103ba57806003193601126103ba57608060725460735460745460755491604051938452602084015260408301526060820152f35b50346103ba57806003193601126103ba5761055833614d1e565b50346103ba5760203660031901126103ba5760206114f5600435615826565b50346103ba5760603660031901126103ba576138e161420c565b6138e9614222565b906138f26141f6565b83549260ff8460081c1615938480956139ff575b80156139e8575b6139169061478c565b60ff1981166001178655846139d7575b5061396260405192613937846140d1565b600a8452694356537472617465677960b01b602085015261162360ff885460081c16612332816146c7565b60018060a01b03918260018060a01b0319941684606554161760655560405161399b8161236c60208201946020865260408301906141d1565b5190206066551690606a541617606a556139b25780f35b61ff00198154168155600080516020615ee3833981519152602060405160018152a180f35b61ffff191661010117855538613926565b50303b15801561390d575060ff811660011461390d565b50600160ff821610613906565b50346103ba57806003193601126103ba576065546040516001600160a01b039091168152602090f35b50346103ba57806003193601126103ba576020606f54604051908152f35b50346103ba57806003193601126103ba576020604051629896808152f35b50346103ba57806003193601126103ba576020606e54604051908152f35b50346103ba57806003193601126103ba576079546040516001600160a01b039091168152602090f35b50346103ba5760603660031901126103ba576001600160401b03600435818111610aa357613aea9036906004016142ec565b5060243590811161126757613b039036906004016143ac565b90613b0c6141f6565b50613b1561474a565b613b1d614770565b60209182818051810103126112675782015160ff607654169060038210156111fd576001809214613b4c578280f35b808352607b9182855281604085205403613dbd578184528285526040842081810154606954106112355760ff60088392015416613b888161418e565b0361147c57613b9682615826565b828552838652613bab8260408720015461530e565b1180613da8575b613d9657818452828552613bce81604086200154606954614d11565b60695560018060a01b039283606554168560685460246040518094819363068bcd8d60e01b835260048301525afa908115610c195785916040918891613d7c575b5001511683865281875285604081208885886004840154169201549373eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8114600014613d3e57505081809381925af115613d31575b8285528086526040852060088101600460ff1982541617905584600581607954169201541690606f548752607f8852600260408820015491813b1561122d57918791613cbc938360405180968195829463099ea56b60e41b84528c6004850161519d565b03925af18015610c1957613d0a575b5090613d0091859684600080516020615f8383398151915297525260408620936004850154169301546040519384938461519d565b0390a18038808280f35b90600080516020615f8383398151915295613d28613d0094936140ec565b95509091613ccb565b63b12d13eb85526004601cfd5b83906010929560449460145260345263a9059cbb60601b82525af13d1583875114171615613d6f5784603452613c58565b6390b8ec1885526004601cfd5b613d9091503d808a833e6137bc818361416b565b38613c0f565b60405163199cf26160e31b8152600490fd5b50818452828552806040852001541515613bb2565b60405163c1d17bef60e01b815260048101839052602490fd5b50346103ba576101403660031901126103ba57610558611b6e36614238565b50346103ba57806003193601126103ba576033546040516001600160a01b039091168152602090f35b50346103ba5760203660031901126103ba5760043563ffffffff60e01b81168091036112675760209063f1801e6160e01b8114908115613e64575b506040519015158152f35b6301ffc9a760e01b14905082613e59565b50346103ba5760203660031901126103ba57600480358252607b6020526040822080546001820154600283015460038401549484015460058501546006860154600787015460088801549599969896979496949560ff169490936001600160a01b03928316938316921690613eea60806140d1565b600a870154608052600b870160405190818b825492613f0884614097565b80845293600181169081156140755750600114614034575b50613f2d9250038261416b565b60a052604051986001600160401b0360608b01908111908b1117614020575060608901604052600c8701548952600d87015460208a015260018060a01b03600e8801541660408a01526010600f880154970154976040519b8c9b8c5260208c015260408b015260608a0152608089015260a088015260c087015260e0860152613fb58161418e565b6101008501526101e08061012086015260805190850152613fe860206080015160406102008701526102208601906141d1565b835161014086015260208401516101608601526040909301516001600160a01b03166101808501526101a08401526101c08301520390f35b634e487b7160e01b81526041600452602490fd5b8d525060208c2090918c915b818310614059575050906020613f2d9282010138613f20565b6020919350806001915483858801015201910190918392614040565b905060209250613f2d94915060ff191682840152151560051b82010138613f20565b90600182811c921680156140c7575b60208310146140b157565b634e487b7160e01b600052602260045260246000fd5b91607f16916140a6565b604081019081106001600160401b0382111761123957604052565b6001600160401b03811161123957604052565b60c081019081106001600160401b0382111761123957604052565b608081019081106001600160401b0382111761123957604052565b602081019081106001600160401b0382111761123957604052565b606081019081106001600160401b0382111761123957604052565b601f909101601f19168101906001600160401b0382119082101761123957604052565b6007111561419857565b634e487b7160e01b600052602160045260246000fd5b60005b8381106141c15750506000910152565b81810151838201526020016141b1565b906020916141ea815180928185528580860191016141ae565b601f01601f1916010190565b604435906001600160a01b0382168203610c0d57565b600435906001600160a01b0382168203610c0d57565b602435906001600160a01b0382168203610c0d57565b60c0906003190112610c0d5760405190614251826140ff565b816001600160a01b036004358181168103610c0d5782526024359081168103610c0d57602082015260443560408201526064356060820152608435608082015260a060a435910152565b60809060c3190112610c0d57604051906142b48261411a565b60c435825260e4356020830152610104356040830152610124356060830152565b6001600160401b0381116112395760051b60200190565b81601f82011215610c0d57803591614303836142d5565b92614311604051948561416b565b808452602092838086019260051b820101928311610c0d578301905b82821061433b575050505090565b81356001600160a01b0381168103610c0d57815290830190830161432d565b6001600160401b03811161123957601f01601f191660200190565b9291926143818261435a565b9161438f604051938461416b565b829481845281830111610c0d578281602093846000960137010152565b9080601f83011215610c0d578160206143c793359101614375565b90565b6040600319820112610c0d57600435906001600160401b038211610c0d576143f4916004016143ac565b906024356001600160a01b0381168103610c0d5790565b9060048210156141985752565b9060038210156141985752565b8054821015610aa75760005260206000200190600090565b9181601f84011215610c0d578235916001600160401b038311610c0d5760208381860195010111610c0d57565b614472615daa565b336001600160a01b039091160361448557565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b031982168117909255909116600080516020615f03833981519152600080a3565b1561450757565b60405162461bcd60e51b815260206004820152602c6024820152600080516020615e8383398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b1561455657565b60405162461bcd60e51b815260206004820152602c6024820152600080516020615e8383398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b156145d357600080516020615ea383398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b919290156146905750815115614642575090565b3b1561464b5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156146a35750805190602001fd5b60405162461bcd60e51b8152602060048201529081906114789060248301906141d1565b156146ce57565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b9190820180921161473457565b634e487b7160e01b600052601160045260246000fd5b6065546001600160a01b0316330361475e57565b60405163075fd2b160e01b8152600490fd5b6068541561477a57565b604051630f68fe6360e21b8152600490fd5b1561479357565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b9390979695929160c0959260e0860199865260018060a01b0380921660208701521660408501526060840152608083015260a08201520152565b60001981146147345760010190565b51906001600160a01b0382168203610c0d57565b606080918051845260208101516020850152604081015160408501520151910152565b90815180825260208080930193019160005b82811061488f575050505090565b83516001600160a01b031685529381019392810192600101614881565b9190604083820312610c0d576040516148c4816140d1565b83518152602084015190938491906001600160401b038211610c0d57019082601f83011215610c0d578151916148f98361435a565b93614907604051958661416b565b83855260208483010111610c0d57602092614927918480870191016141ae565b0152565b90602082820312610c0d5781516001600160401b0392838211610c0d570160c081830312610c0d5760405192614960846140ff565b8151845260208201516001600160a01b0381168103610c0d57602085015261498a60408301614838565b60408501526060820151908111610c0d5760a0926149a99183016148ac565b606084015260808101516080840152015160a082015290565b9081526001600160a01b03909116602082015260400190565b90816020910312610c0d57518015158103610c0d5790565b60785460405163288c314960e21b81526001600160a01b0392831660048201529160209183916024918391165afa908115614a6857600091614a4a575b5015614a3857565b604051636a5cfb6d60e01b8152600490fd5b614a62915060203d8111610c5c57610c4e818361416b565b38614a30565b6040513d6000823e3d90fd5b6001600160a01b031615614a8457565b6040516303988b8160e61b8152600490fd5b6001600160a01b0391821681529116602082015260400190565b90614aba82614b9f565b156000906107b1576078546001600160a01b0390811693909190843b1561126757816040518096630d4a8b4960e01b8252818381614afc308860048401614a96565b03925af1948515610c6357614b379495614b8d575b5060209192607854166040518080968194637817ee4f60e01b8352309060048401614a96565b03915afa9081156132fa5790614b5a575b614b559150607154614727565b607155565b506020813d8211614b85575b81614b736020938361416b565b81010312610c0d57614b559051614b48565b3d9150614b66565b91614b996020936140ec565b91614b11565b607a546001600160a01b03908116908115614c075750614bd99160209160405180809581946302154c3d60e51b8352309060048401614a96565b03915afa908115614a6857600091614bef575090565b6143c7915060203d8111610c5c57610c4e818361416b565b90506068549160405192602093848101916810531313d5d31254d560ba1b8352602982015260298152614c3981614150565b51902091607854169060405191632474521560e21b92838152846004820152600060248201528581604481855afa908115614a6857600091614cce575b5015614c86575050505050600190565b614ca1938593604051958694859384938452600484016149c2565b03915afa918215614a6857600092614cb857505090565b6143c79250803d10610c5c57610c4e818361416b565b614ce59150863d8811610c5c57610c4e818361416b565b38614c76565b6078546001600160a01b03163303614cff57565b6040516357848b5160e11b8152600490fd5b9190820391821161473457565b60785460408051637817ee4f60e01b81529293926000926001600160a01b0391602091831690828180614d55308c60048401614a96565b0381855afa8015614f07578690614ed8575b614d749150607154614d11565b607155803b156112355783516322bcf99960e01b81529085908290818381614da0308e60048401614a96565b03925af18015614ece57614ebb575b50835b828716808652607d83528486208054831015614e7e5790614dd783614e029493614425565b9054600391821b1c91828952607b865287892092614df4816151be565b614e07575b50505050614829565b614db2565b600080516020615ec38339815191529360a093836000526009820189528a6000208c81549155614e576002840191614e40818454614d11565b83556070614e4f828254614d11565b905584615468565b54910154918a51938452888401528a8a84015260608301526080820152a138808080614df9565b5050509291907f1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b94951691828152607c84528181205551908152a1565b614ec7909491946140ec565b9238614daf565b84513d87823e3d90fd5b508281813d8311614f00575b614eee818361416b565b8101031261123157614d749051614d67565b503d614ee4565b85513d88823e3d90fd5b604091949392606082019560018060a01b0316825260208201520152565b90816020910312610c0d57516001600160a01b0381168103610c0d5790565b90816020910312610c0d575160ff81168103610c0d5790565b604d811161473457600a0a90565b8181029291811591840414171561473457565b8115614f92570490565b634e487b7160e01b600052601260045260246000fd5b80156150e557615073816000908360801c806150d9575b508060401c806150cc575b508060201c806150bf575b508060101c806150b2575b508060081c806150a5575b508060041c80615098575b508060021c8061508b575b50600191828092811c615084575b1c1b61501b8185614f88565b01811c6150288185614f88565b01811c6150358185614f88565b01811c6150428185614f88565b01811c61504f8185614f88565b01811c61505c8185614f88565b01811c6150698185614f88565b01901c8092614f88565b8082101561507f575090565b905090565b018161500f565b6002915091019038615001565b6004915091019038614ff6565b6008915091019038614feb565b6010915091019038614fe0565b6020915091019038614fd5565b6040915091019038614fca565b91505060809038614fbf565b50600090565b906020918281830312610c0d578051906001600160401b038211610c0d570181601f82011215610c0d57805192615121846142d5565b936040936151318551968761416b565b818652828087019260061b85010193818511610c0d578301915b84831061515b5750505050505090565b8583830312610c0d578386918251615172816140d1565b85518152828601518382015281520192019161514b565b8051821015610aa75760209160051b010190565b9081526001600160a01b039091166020820152604081019190915260600190565b600052607b60205260406000208054151590816151d9575090565b600501546001600160a01b03161515919050565b6151fc60725460695490614f75565b629896809182810292818404149015171561473457111590565b9190916000838201938412911290801582169115161761473457565b9091607454906298968093848360801b0490600160801b91828110156152fc578583965b6152bb5750506152669085614f75565b93858302928084048714901517156147345781039081116147345761528a91614f75565b908303928311614734576152a7926152a191614f88565b90614727565b6001607f1b81019081106147345760801c90565b6001918183166152db57806152cf91615425565b911c90815b9091615256565b8092506152e89197615425565b9560001981019081116147345790816152d4565b604051633e668d0360e01b8152600490fd5b60695480156153dd57615320826151ed565b610c0d57607254604081901b92600160401b9291801590850484141715614734578060401b9281840414901517156147345761536261536e9161538993614f88565b62989680809404614d11565b6153808360735460801b049180614f75565b60401c90614f88565b9080820291808304821490151715614734576074548103908111614734576153b091614f88565b906153be6071548093614f75565b60401c916153c857565b906153d16153ef565b8082111561507f575090565b60405163ed4421ad60e01b8152600490fd5b607554629896809081810290808204831490151715614734576154219061541c607154916120d283615854565b614f88565b0490565b90600160801b808311615453578111615441576152a791614f75565b6040516370b7a2d960e01b8152600490fd5b604051600162a4c31160e01b03198152600490fd5b90615473908261549a565b9091821580615492575b61548d5760039160078201550155565b505050565b50811561547d565b43916007820154918383116154d7578383146154cb5760036154bf6154c89486614d11565b91015490615232565b91565b50505050600090600090565b634e487b7160e01b600052600160045260246000fd5b607854604051633629edcd60e11b81526001600160a01b03916020908290600490829086165afa908115614a685760009161552d575b5016330361295457565b615545915060203d81116121b2576121a4818361416b565b38615523565b6020818101805191929091600091906001600160a01b039081168015159081615819575b81615777575b506155bd575b5050505081608091600080516020615e238339815191529351607255810151607355604081015160745560608101516075556155ba604051809261484c565ba1565b606f548352607f85526040928381208260018201541690838088511680931491821592615765575b505061569b575b509261568f6005600080516020615f4383398151915294600080516020615e238339815191529997948460809a98615625606f54614829565b80606f558152607f8a522090808351169660018060a01b0319918883855416178455600184019151168092825416179055858301519081600284015560608401519283600382015560a08d8601519586600484015501519586910155606f549651978897886147ef565b0390a19181933861557b565b8284511690813b15610aa3578291602483928851948593849263446adb9960e11b845260048401525af1801561575b57600080516020615f4383398151915294600080516020615e238339815191529997948760809a989561568f9560059561574c575b507fdc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f60608b85875116868c51169086519230845283015285820152a19550979950949799509450506155ec565b615755906140ec565b386156ff565b85513d84823e3d90fd5b909150541683855116141583386155e5565b606f548552607f8752604085206001810154841690911480159250615807575b81156157f4575b81156157e1575b81156157ce575b81156157ba575b5038615575565b9050600560a08401519101541415386157b3565b60808401516004820154141591506157ac565b60608401516003820154141591506157a5565b604084015160028201541415915061579e565b90508183511682825416141590615797565b835183161515915061556f565b80600052607b6020526040600020908082540361078f57508061584f6002600393015482615468565b015490565b6298968080820291808304821490151715614734576074548103908111614734576143c791614f88565b906158889161554b565b80516158a4575b5080516158995750565b6158a290615b5b565b565b6158ad906158fc565b3861588f565b908060209392818452848401376000828201840152601f01601f1916010190565b9081526001600160a01b03918216602082015291166040820152606081019190915260800190565b6068918254926000926040908151956020968781016810531313d5d31254d560ba1b918282526029938482015283815261593581614150565b5190209760018060a01b0392607896848854169a875198632474521560e21b9c8d8b5260049a838c8201528d60248201528681604481855afa908115615a67578e91615b3e575b50615aed575b508b5b8851811015615aa05788838f8d89916159b98f8e6159a789828c541699615189565b511690519586948594855284016149c2565b0381855afa908115615a94578f91615a77575b50156159e2575b506159dd90614829565b615985565b84548b51888101918a8352888201528781526159fd81614150565b5190209089615a0c848d615189565b511691813b15615a7357918f91615a3b938f8f9085915196879586948593632f2ff15d60e01b855284016149c2565b03925af18015615a6757908e91615a53575b506159d3565b615a5c906140ec565b61309b578c38615a4d565b8e8c51903d90823e3d90fd5b8f80fd5b615a8e9150883d8a11610c5c57610c4e818361416b565b386159cc565b8f8d51903d90823e3d90fd5b505050935050959750507f7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a9550615ae89293505492808051958695865285015283019061486f565b0390a1565b803b1561309b578c8360448d838e51958694859363d547741f60e01b85528401528160248401525af18015615b34571561598257615b2d909c919c6140ec565b9a38615982565b8a513d8f823e3d90fd5b615b559150873d8911610c5c57610c4e818361416b565b3861597c565b6000915b8151831015615cc55760018060a01b03928360785416938360685495604096875160209081810192615bdb8388615bbe8b6810531313d5d31254d560ba1b988981526029978789820152888152615bb581614150565b5190209a615189565b51168d5180938192632474521560e21b835260049b8c84016149c2565b0381895afa908115615cba57600091615c9d575b50615c0f575b50505050505050615c0891929350614829565b9190615b5f565b8a51928301938452818301528152615c2681614150565b51902092615c348588615189565b511690803b15610c0d57615c6093600080948a519687958694859363d547741f60e01b855284016149c2565b03925af18015615c9257615c0893949550615c83575b8493928180808080615bf5565b615c8c906140ec565b38615c76565b85513d6000823e3d90fd5b615cb49150843d8611610c5c57610c4e818361416b565b38615bef565b8c513d6000823e3d90fd5b91507fd418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e90606854615ae8604051928392835260406020840152604083019061486f565b60018060a01b0390600482607a54166020846078541660405193848092633629edcd60e11b82525afa918215614a6857600092615d8a575b50803b15610c0d5760009283606492604051968795869463fc2ebdd160e01b865230600487015260248601521660448401525af18015614a6857615d815750565b6158a2906140ec565b615da391925060203d81116121b2576121a4818361416b565b9038615d40565b6033546001600160a01b0316803b615dbf5790565b604051638da5cb5b60e01b8152602081600481855afa60009181615de7575b5061507f575090565b90916020823d8211615e1a575b81615e016020938361416b565b810103126103ba5750615e1390614838565b9038615dde565b3d9150615df456feec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914370b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc146756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024988be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3be677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d5345524331393637557067726164653a206e657720696d706c656d656e74617469a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847a264697066735822122019e25c71e3ceea58c8e2488edc30b528e4c8a91fb1e6308eab318279d8b75c9d64736f6c63430008130033","sourceMap":"4144:56627:96:-:0;;;;;;;;;-1:-1:-1;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9067:7;4144:56627;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;30067:28;4144:56627;;;2405:64:95;;:::i;:::-;5757:21;4144:56627:96;5757:21:95;4144:56627:96;5757:21:95;:::i;:::-;;4144:56627:96;;;;;;30067:28;4144:56627;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;-1:-1:-1;;;;;;;;;;;4144:56627:96;;:::i;:::-;;;;;;;;;4881:14:44;:40;;;4144:56627:96;4873:99:44;;;:::i;:::-;-1:-1:-1;;4144:56627:96;;;;11000:30;4144:56627;;;;10982:17;4144:56627;;;;;;;;-1:-1:-1;;;;;;4144:56627:96;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;11245:62;;4144:56627;10911:1;11321:75;;4144:56627;;11410:76;;4144:56627;;11500:63;;4144:56627;11577:70;;;;4144:56627;;;;;;11090:567;;4144:56627;;;;;;;;;;;;;11090:567;:::i;:::-;;;;4144:56627;;;;;;;-1:-1:-1;;;;;;;;;;;4144:56627:96;;;10911:1;4144:56627;;5091:20:44;4144:56627:96;;4881:40:44;-1:-1:-1;10911:1:96;4144:56627;;;4899:22:44;4881:40;;4144:56627:96;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;4144:56627:96;;2423:22:42;4144:56627:96;;2517:8:42;;;:::i;:::-;4144:56627:96;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;:::i;:::-;2405:64:95;;:::i;:::-;3270:78;;:::i;:::-;4144:56627:96;;24577:38;;;;;;;;;;;;;;:::i;:::-;24630:13;;24660:3;4144:56627;;24645:13;;;;;24712:5;;;;:::i;:::-;;4144:56627;24730:5;;;;;:::i;:::-;;:18;4144:56627;;;;15044:9;4144:56627;;;;;;15093:16;;:285;;;;24660:3;15076:491;;;24660:3;;;:::i;:::-;24630:13;;15076:491;15486:8;;;15093:285;4144:56627;15151:16;;;;4144:56627;;;;;:::i;:::-;15151:43;;:91;;;;;15093:285;15151:162;;;;15093:285;15151:209;;;;15093:285;;;;;15151:209;15337:23;4144:56627;;;;;:::i;:::-;15317:43;15151:209;;;:162;4144:56627;;;;;:::i;:::-;;15270:43;;15151:162;;;:91;4144:56627;;;;;:::i;:::-;15218:24;15198:44;;15151:91;;;24645:13;;;25072:38;24645:13;;;;25024:7;;;:::i;:::-;4144:56627;;25072:38;;;;:::i;:::-;25125:26;;;:::i;:::-;25124:27;25120:230;;24625:135;25364:17;4144:56627;;;-1:-1:-1;;;25364:69:96;;-1:-1:-1;;;;;4144:56627:96;;;;;25427:4;4144:56627;;25364:69;25427:4;25364:69;4144:56627;25364:69;;;:::i;:::-;;;;;;;;;;;;;;;24625:135;25363:70;;25359:124;;36152:26;;;;;36209;;;;:::i;:::-;36250:13;;36372:14;;36245:768;36294:3;4144:56627;;36265:27;;;;;36372:54;;;;36294:3;36368:125;;36510:19;;;;:::i;:::-;;4144:56627;36510:35;36506:187;;36727:19;;;;:::i;:::-;;4144:56627;36776:26;;;:::i;:::-;36775:27;36771:167;;36970:19;36951:51;36294:3;36970:19;;;;;;:::i;:::-;;:32;4144:56627;36951:51;;:::i;:::-;36294:3;;:::i;:::-;36250:13;;;36771:167;4144:56627;;;;26440:29;;;;36829;;4144:56627;36829:29;;4144:56627;36829:29;36506:187;36670:8;36294:3;36670:8;36294:3;:::i;36368:125::-;4144:56627;;-1:-1:-1;;;36453:25:96;;4144:56627;;36453:25;36372:54;36390:19;;;;;;;:::i;:::-;;:32;4144:56627;36390:36;36372:54;;36265:27;;;;;;41341:25;36265:27;4144:56627;;;;;;37153:18;4144:56627;;;;;;41341:25;:::i;:::-;41381:10;;;;41377:177;;37309:66;4144:56627;;;;;689:66:57;;;;;;;;37309::96;;25427:4;37309:66;4144:56627;37309:66;;;:::i;:::-;;;;;;;;;;;;;;36245:768;37541:42;;;;37537:147;;-1:-1:-1;4144:56627:96;;;37153:18;4144:56627;;;;;;;;;;;;;;37954:3;4144:56627;;37925:27;;;;;37994:19;;;;:::i;:::-;;4144:56627;;;;38097:24;38093:920;38097:19;;;4144:56627;;;;;;:::i;:::-;;;;;;;;;;;38141:31;4144:56627;;;;;;;38093:920;39041:19;;;;;:::i;:::-;;:32;4144:56627;;;;;15044:9;4144:56627;;;;;39270:26;;;;;4144:56627;;;;;;;41341:25;4144:56627;;;;41341:25;;;:::i;:::-;41381:10;;;;41377:177;;4144:56627;;;;;;;;;;;;;39952:24;;39995:13;;4144:56627;;;39990:246;40052:3;4144:56627;;;40014:20;4144:56627;;;;;;;40010:40;;;;;40079:32;;;;;:::i;:::-;4144:56627;;;;;;40079:55;40075:147;;40052:3;4144:56627;40052:3;;:::i;:::-;39995:13;;;;40075:147;40158:18;;;;;;;;;;;;;4144:56627;39990:246;40253:12;40249:106;;39990:246;-1:-1:-1;37954:3:96;;40510:36;;;;;;;;;40581:35;;;;:::i;:::-;40566:50;;4144:56627;;;40566:50;:::i;:::-;4144:56627;;40659:35;;;;:::i;:::-;40634:60;:21;;;4144:56627;;;40634:60;:::i;:::-;4144:56627;;40506:370;40893:18;;;4144:56627;;;40893:23;40889:310;40893:18;;;40957:12;;;;;;4144:56627;;37954:3;:::i;:::-;37910:13;;;;;40889:310;4144:56627;41045:20;;;-1:-1:-1;;;;;;;;;;;41045:20:96;;;:::i;:::-;4144:56627;41137:21;;;4144:56627;41160:23;;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;41089:95;37954:3;:::i;40506:370::-;40748:35;;;;:::i;:::-;40733:50;;4144:56627;;;40733:50;:::i;:::-;4144:56627;;40826:35;;;;:::i;:::-;40801:60;:21;;;4144:56627;;;40801:60;:::i;:::-;4144:56627;;40506:370;;40249:106;4144:56627;;;40014:20;4144:56627;;;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;37954:3;4144:56627;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;40249:106;;;;;;;4144:56627;-1:-1:-1;;;4144:56627:96;;;;;;;;40010:40;;;;;;;;;;;;;;;;41377:177;41473:8;;;4144:56627;;;;;;;;;;;;38093:920;38267:18;;;;;;;;38308:13;;38348:3;4144:56627;;38323:23;;;;;38404:15;;;;;:::i;:::-;4144:56627;38404:29;38400:203;;38348:3;;;:::i;:::-;38308:13;;38400:203;38461:12;4144:56627;38461:12;4144:56627;;38506:40;;;;;;4144:56627;38506:40;;4144:56627;;;;;38506:40;38323:23;;;;;;;;;;38093:920;38638:361;4144:56627;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;1916:17:95;;4144:56627:96;;:::i;:::-;;;;;;;38761:13;;4144:56627;;;38756:124;4144:56627;;38901:38;4144:56627;;;38901:38;;:::i;:::-;4144:56627;38093:920;;38801:3;4144:56627;;;;;;38776:23;;;;;38842:15;;38801:3;38842:15;;;:::i;:::-;4144:56627;38832:25;;;;:::i;:::-;4144:56627;38801:3;:::i;:::-;38761:13;;;;;;;38776:23;;;;;;;4144:56627;-1:-1:-1;;;4144:56627:96;;;;;;;;37925:27;;4144:56627;;37537:147;4144:56627;;;;;37606:67;;;;;;4144:56627;37606:67;;4144:56627;;;;;37606:67;37309:66;;;;;;;;;;;;;;;;:::i;:::-;;;4144:56627;;;;;37309:66;;;4144:56627;;;;37309:66;;;;;;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;25359:124:96;4144:56627;;-1:-1:-1;;;25456:16:96;;4144:56627;;25456:16;25364:69;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;25120:230:96;25172:13;;;25202:3;4144:56627;;25187:13;;;;;25229:5;;;;;;:::i;:::-;;:18;4144:56627;25229:22;25225:101;;25202:3;;;:::i;:::-;25172:13;;25187;;;;;25120:230;;4144:56627;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;:::i;:::-;2405:64:95;;:::i;:::-;;;:::i;:::-;5243:6;4144:56627:96;5239:45:95;;4144:56627:96;;5371:12:95;5367:34;;4144:56627:96;;5243:6:95;4144:56627:96;11856:23;4144:56627;2273:565:43;11881:12:96;4144:56627;11881:12;;;:::i;:::-;;4144:56627;;;;4867:36:6;;4884:10;;4144:56627:96;;;;;;;;;4867:36:6;;;;;:::i;:::-;4144:56627:96;4857:47:6;;2273:565:43;;;;;;;;;;;;;;;-1:-1:-1;;;;;;2273:565:43;;4144:56627:96;2273:565:43;-1:-1:-1;;;;;4144:56627:96;2273:565:43;;;;4144:56627:96;2855:22:43;;4144:56627:96;;11803:92;4144:56627;;-1:-1:-1;;;;;;4144:56627:96;;;;;;;;;;;;;11905:28;;;;;4144:56627;;;;;;689:66:57;;;;;;;11905:28:96;;;;;;;;;;4144:56627;;;;;11987:51;;4144:56627;;;;;;;;;11987:51;;4144:56627;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;-1:-1:-1;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;11987:51;;4144:56627;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;11987:51;;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2273:565:43;4144:56627:96;;;2273:565:43;4144:56627:96;;;;;;;;;;;12280:30;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;;12280:30;4144:56627;;;;12372:14;4144:56627;12358:28;4144:56627;;;;;;;;;;;;;;;;;12396:42;4144:56627;;;12396:42;4144:56627;12454:27;4144:56627;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12454:27;;;12559:16;4144:56627;;;12507:19;12528:11;;4144:56627;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;12559:16;:::i;:::-;12396:42;4144:56627;-1:-1:-1;;;;;4144:56627:96;12586:114;;4144:56627;;;12586:114;4144:56627;12665:23;4144:56627;;;12665:23;:::i;4144:56627::-;-1:-1:-1;;;4144:56627:96;;;;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11905:28;;;;:::i;:::-;4144:56627;;11905:28;;;;4144:56627;;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;5367:34:95;4144:56627:96;;-1:-1:-1;;;5392:9:95;;4144:56627:96;;5392:9:95;5239:45;4144:56627:96;;-1:-1:-1;;;5263:21:95;;4144:56627:96;;5263:21:95;4144:56627:96;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;35423:40;4144:56627;;;:::i;:::-;;;;;;35423:9;4144:56627;;;35423:40;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;58618:9;4144:56627;;;;58618:36;4144:56627;;;58618:36;4144:56627;;;;;:::i;:::-;58618:61;58614:128;;4144:56627;;;58618:9;4144:56627;;;;;58756:31;;4144:56627;-1:-1:-1;;;;;4144:56627:96;;;58791:10;58756:45;;58752:141;;4144:56627;;;;58903:15;4144:56627;;;;;;58618:9;4144:56627;;59038:45;4144:56627;;;58975:31;58756;58975;;4144:56627;;59038:45;;4144:56627;;;59020:17;4144:56627;;59020:90;4144:56627;;;59020:90;4144:56627;58903:217;;;;;;4144:56627;;;;;;689:66:57;;;;;;;;;58903:217:96;;;4144:56627;58903:217;;;:::i;:::-;;;;;;;;;;;4144:56627;-1:-1:-1;4144:56627:96;;;58618:9;4144:56627;;;;;;58618:36;59131;4144:56627;;-1:-1:-1;;4144:56627:96;;;;;;;;;59209:29;;;4144:56627;;58903:217;;;;:::i;:::-;4144:56627;;58903:217;;;;58752:141;4144:56627;;-1:-1:-1;;;58824:58:96;;4144:56627;;;58824:58;;58791:10;;4144:56627;58824:58;;;:::i;:::-;;;;58614:128;4144:56627;;-1:-1:-1;;;58702:29:96;;4144:56627;58702:29;;4144:56627;;;;;58702:29;4144:56627;;;;;;;;;;;;;;;11249:10:95;689:66:57;4144:56627:96;;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;46163:20;4144:56627;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;;;32508:9;4144:56627;;;;;;32553:24;;4144:56627;32553:80;:29;;:80;:29;;;:80;;4144:56627;;;;;32664:18;;;;;4144:56627;;32696:20;;4144:56627;32696:20;;4144:56627;;32730:23;;;;4144:56627;;32805:21;;;;4144:56627;;32840:23;;;4144:56627;;32877:18;;;;4144:56627;32909:23;4144:56627;32909:23;;4144:56627;32996:10;;4144:56627;;32969:26;;;4144:56627;;33021:32;4144:56627;;;;33021:32;;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;32553:80;32589:44;;;;:::i;:::-;32553:80;;;4144:56627;;;;;;;-1:-1:-1;;4144:56627:96;;;;499:12:102;4144:56627:96;;:::i;:::-;5366:69:44;4144:56627:96;;;;;;5366:69:44;:::i;:::-;499:12:102;:::i;4144:56627:96:-;;;;;;;;;;;;;;;24075:11;4144:56627;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;9850:31;4144:56627;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;;;;;;;;10978:19:95;4144:56627:96;;;10943:20:95;4144:56627:96;;;;;;10943:20:95;4144:56627:96;;;;;;10978:19:95;4144:56627:96;;;-1:-1:-1;4144:56627:96;;-1:-1:-1;;4144:56627:96;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;:::i;:::-;53283:10;;;;;;:::i;:::-;4144:56627;;;;53332:9;4144:56627;;;;;53424:32;;;;4144:56627;;;53406:17;4144:56627;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;53766:33;;53762:100;;4144:56627;;53875:23;;;4144:56627;;;;;:::i;:::-;53875:48;53871:115;;4144:56627;;53999:9;:55;53995:258;;54372:30;;;4144:56627;54372:35;;;:126;;;;4144:56627;54355:418;;;54808:55;4144:56627;;53999:9;54808:55;:::i;:::-;54874:15;4144:56627;;;;;-1:-1:-1;;;;;4144:56627:96;;;;54874:109;;;;;4144:56627;;689:66:57;;;;;;;54874:109:96;;53283:10;54874:109;53283:10;4144:56627;;;54874:109;;;:::i;:::-;;;;;;;;;;;4144:56627;;;;;;;;;;;;;;;;;;;;689:66:57;;;;;;;;;55006:92:96;;4144:56627;;55006:92;;4144:56627;;;;;;;;;;;:::i;:::-;55006:92;;;;;;;;;;;;;4144:56627;-1:-1:-1;53875:23:96;;;4144:56627;;-1:-1:-1;;4144:56627:96;;;;;55168:20;;;4144:56627;;;55260:15;55220:37;;;4144:56627;;;55285:31;;;;4144:56627;;-1:-1:-1;;;;;;4144:56627:96;53283:10;4144:56627;;;;;;55339:21;4144:56627;;;;;;;;;55395:14;4144:56627;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;-1:-1:-1;;;;;;;4144:56627:96;;;;;;;-1:-1:-1;;;;;4144:56627:96;;55395:14;4144:56627;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;53283:10;4144:56627;;;;;;;;;;;;;55425:210;;4144:56627;;;;;;;;;;;:::i;:::-;;;;;;55425:210;;;4144:56627;;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;55006:92;;;;4144:56627;55006:92;;4144:56627;55006:92;;;;;;4144:56627;55006:92;;;:::i;:::-;;;4144:56627;;;;;55006:92;;;;;;;-1:-1:-1;55006:92:96;;;4144:56627;;;689:66:57;;;;;;;;54874:109:96;;;;;:::i;:::-;4144:56627;;54874:109;;;;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;54372:126:96;4144:56627;;9067:7;4144:56627;;;;;;;54483:15;-1:-1:-1;54372:126:96;;;4144:56627;-1:-1:-1;;;4144:56627:96;;;;;;;;53871:115;4144:56627;;;26873:29;;;53946;;4144:56627;;;53946:29;;4144:56627;53946:29;53762:100;4144:56627;;;26440:29;;;53822;;4144:56627;;;53822:29;;4144:56627;53822:29;4144:56627;;;;;;;-1:-1:-1;;4144:56627:96;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29662:8;;;4144:56627;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;15670:34:96;4144:56627;;-1:-1:-1;;;;;;4144:56627:96;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;52285:9;4144:56627;;;:::i;:::-;;;;:::i;:::-;52783:278;;;:::i;:::-;52285:9;:::i;:::-;52317:11;4144:56627;;;-1:-1:-1;;;;;4144:56627:96;;52305:128;;4144:56627;;52305:128;52359:63;;;;;4144:56627;;;;;;689:66:57;;;;;;;52359:63:96;;52395:4;4144:56627;52359:63;;4144:56627;;;;;;;52359:63;;;;;;;;4144:56627;;52359:63;;;;:::i;:::-;4144:56627;;52359:63;4144:56627;52359:63;4144:56627;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;60120:7;4144:56627;;;;;;:::i;:::-;59998:137;;:::i;:::-;60120:7;:::i;4144:56627::-;;;;;;;;;;;;;;9683:36;4144:56627;;;;;;;;;;;;;;;;;;;;9291:26;4144:56627;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;4445:42:9;4144:56627:96;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;:::i;:::-;;;;:::i;:::-;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;52754:15;4144:56627;;;;;;:::i;:::-;52445:332;;;:::i;:::-;52754:15;:::i;4144:56627::-;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;:::i;:::-;-1:-1:-1;;;;;4144:56627:96;;;10140:57;4144:56627;;;;;;;;;;;10140:57;;;;;4144:56627;10140:57;;;;:::i;:::-;4144:56627;;;;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;;;;28126:9;4144:56627;;;28292:66;28336:21;;;4144:56627;28292:66;;:::i;:::-;28232:126;;;28373:19;;:39;;;;4144:56627;28369:110;;;4144:56627;;28508:44;28527:24;;4144:56627;28508:44;:::i;:::-;-1:-1:-1;28685:27:96;4144:56627;;;;;;28369:110;4144:56627;28445:23;;4144:56627;;-1:-1:-1;28369:110:96;;28373:39;28396:16;;;28373:39;;;4144:56627;;;;;;;;;;;;;;9411:26;4144:56627;;;;;;;;;;;;;;;;;;;;19249:10;;;:::i;4144:56627::-;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;:::i;:::-;;;19965:7;;:::i;:::-;20067:26;;;:::i;:::-;20066:27;20062:90;;20161:28;4144:56627;20203:11;4144:56627;;;;;;;;;;20218:21;20203:36;;20218:21;;20255:33;;;20199:421;;20648:17;4144:56627;;;-1:-1:-1;;;20648:69:96;;4144:56627;;;;;-1:-1:-1;;;;;4144:56627:96;;;20648:69;20711:4;20648:69;4144:56627;20648:69;;;:::i;:::-;;;;;;;;;;;20823:57;20648:69;;;4144:56627;20648:69;;;;20199:421;20727:82;;;20199:421;20823:57;4144:56627;;;20823:57;;;;;:::i;:::-;;;;4144:56627;;;;;;20727:82;20758:40;4144:56627;20758:40;4144:56627;20758:40;:::i;:::-;;4144:56627;20727:82;;20648:69;;;;;;;;;;;;;;:::i;:::-;;;;;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;20199:421:96;4144:56627;20358:33;;4144:56627;;-1:-1:-1;;21820:17:96;4144:56627;;;-1:-1:-1;;;21820:66:96;;20426:44;;4144:56627;;;;-1:-1:-1;;;;;4144:56627:96;;;21820:66;21880:4;21820:66;4144:56627;21820:66;;;:::i;:::-;;;;;;;;;;;;;;20354:266;21952:28;;;;;:::i;:::-;21983:11;4144:56627;21952:52;;;21948:135;;20354:266;20407:63;;20354:266;20199:421;;21948:135;22037:35;;;;:::i;:::-;21948:135;;;;21820:66;;;4144:56627;21820:66;;;;;;;;;4144:56627;21820:66;;;:::i;:::-;;;4144:56627;;;;;21820:66;;;;;;-1:-1:-1;21820:66:96;;20354:266;20491:36;;;-1:-1:-1;;20491:36:96;20199:421;20487:133;22337:17;4144:56627;;;-1:-1:-1;;;22337:48:96;;-1:-1:-1;;;;;4144:56627:96;;;;22337:48;;4144:56627;;;-1:-1:-1;4144:56627:96;;;;;;;;;;;22337:48;;;;;;;;;;;;20487:133;22337:65;;;;:::i;:::-;4144:56627;;-1:-1:-1;;;22461:31:96;;4144:56627;22431:2;22461:31;4144:56627;;;22461:31;;;;;;;;22688:37;22461:31;;22711:13;22461:31;22698:26;22461:31;;;;;20487:133;4144:56627;;;;689:66:57;;;;;;;22447:58:96;;4144:56627;22447:58;;;;;;;20487:133;22443:211;;;20487:133;22711:13;;:::i;:::-;22698:26;;:::i;:::-;22688:37;:::i;:::-;4144:56627;;;689:66:57;;;;;22759::96;;22819:4;;22759:66;22819:4;22759:66;4144:56627;22759:66;;;:::i;:::-;;;;;;;;;;;;;;20487:133;22863:30;;;;;:::i;:::-;20487:133;20199:421;;22759:66;;;;;;;;;;;;;;;;:::i;:::-;;;4144:56627;;;;22863:30;4144:56627;;22759:66;;;;;;;;;22443:211;4144:56627;;;;22443:211;;;22447:58;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;22461:31;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;22337:48;;;;;;;;;;;;;;;;:::i;:::-;;;4144:56627;;;;;22337:65;4144:56627;;22337:48;;;;;;;;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;4144:56627:96;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;59361:7;4144:56627;;;;;;:::i;:::-;59251:125;;:::i;:::-;59361:7;:::i;4144:56627::-;;;;;;;;;;;;;1324:62:42;;:::i;:::-;2779:6;4144:56627:96;;-1:-1:-1;;;;;;4144:56627:96;;;;;;;-1:-1:-1;;;;;4144:56627:96;-1:-1:-1;;;;;;;;;;;4144:56627:96;;2827:40:42;4144:56627:96;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;19489:7;4144:56627;;:::i;:::-;19368:136;;:::i;:::-;19489:7;:::i;4144:56627::-;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;:::i;:::-;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;499:12:102;4144:56627:96;;:::i;:::-;5366:69:44;4144:56627:96;;;;;;5366:69:44;;;:::i;:::-;;:::i;499:12:102:-;4144:56627:96;;;;;;;;;;;;1864:19:95;4144:56627:96;;;1864:19:95;4144:56627:96;;;1916:17:95;;4144:56627:96;;1916:17:95;;4144:56627:96;;;;;;;;;:::i;:::-;1916:17:95;;;;;;;;;:::i;:::-;4144:56627:96;1906:28:95;;1893:41;4144:56627:96;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;41771:102;4144:56627;;;;;;;41732:9;4144:56627;;;41791:33;41806:18;;;4144:56627;41791:12;:33;:::i;:::-;41826:23;41851:21;4144:56627;41826:23;;4144:56627;41851:21;;4144:56627;41771:102;;:::i;4144:56627::-;;;;;;;;;;;;;9752:46;4144:56627;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;:::i;:::-;;;;10049:53;4144:56627;;;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2089:6:61;-1:-1:-1;;;;;4144:56627:96;2080:4:61;2072:23;4144:56627:96;;;;;-1:-1:-1;;;;;;;;;;;4144:56627:96;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;-1:-1:-1;4144:56627:96;;-1:-1:-1;;4144:56627:96;;;;;;:::i;:::-;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1654:6:61;4144:56627:96;;;;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;4144:56627:96;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;4144:56627:96;;1256:21:102;1252:94;;-1:-1:-1;;;;;;;;;;;689:66:57;4144:56627:96;;;;;2993:17:57;;;;;;:::i;2906:504::-;4144:56627:96;;;;689:66:57;;;;3046:52;;;;;;4144:56627:96;3046:52:57;;;;4144:56627:96;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;4144:56627:96;;-1:-1:-1;;;3262:56:57;;4144:56627:96;3262:56:57;;689:66;;;;4144:56627:96;689:66:57;;4144:56627:96;-1:-1:-1;;;;;;;;;;;4144:56627:96;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;4144:56627:96;1889:27:57;;4144:56627:96;;2208:15:57;;;:28;;;3042:291;2204:112;;3042:291;2906:504;;;4144:56627:96;;2204:112:57;7307:69:73;4144:56627:96;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;4144:56627:96;;;;7265:25:73;;;;;;;;;4144:56627:96;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;7307:69:73;:::i;:::-;;2204:112:57;;;;;4144:56627:96;;;-1:-1:-1;7307:69:73;:::i;2208:28:57:-;;4144:56627:96;2208:28:57;;689:66;4144:56627:96;;-1:-1:-1;;;689:66:57;;4144:56627:96;689:66:57;;;;;;4144:56627:96;689:66:57;;4144:56627:96;689:66:57;4144:56627:96;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;;3046:52;;;;;;;;;1252:94:102;1300:35;1327:7;;:::i;:::-;4144:56627:96;;-1:-1:-1;;;1300:35:102;;4144:56627:96;;;1267:10:102;4144:56627:96;1300:35:102;;;:::i;4144:56627:96:-;;;;;;;;;;;;;;4192:10:95;4144:56627:96;;;;;;;;;;;;;;;;;;;;;3993:10:95;4144:56627:96;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;;;;10297:61;4144:56627;;;;;;;;;;;;;10297:61;4144:56627;10297:61;;4144:56627;;10297:61;;;;4144:56627;;10297:61;;4144:56627;10297:61;;4144:56627;10297:61;;4144:56627;10297:61;;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8884:2;4144:56627;;;;;;;;;;;;;;;;;3807:6:95;4144:56627:96;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;:::i;:::-;51293:17;4144:56627;;;-1:-1:-1;;;51293:31:96;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;51293:31;;;;;;;;;;;;4144:56627;;;51271:10;:54;;:79;;;4144:56627;51267:134;;51550:32;51429:12;;;4144:56627;51429:12;;:::i;:::-;4144:56627;;;;;;;;51452:40;4144:56627;;;51452:40;4144:56627;51525:9;4144:56627;;51525:9;:::i;:::-;4144:56627;;;;;51550:32;4144:56627;;51267:134;4144:56627;;-1:-1:-1;;;51373:17:96;;4144:56627;;51373:17;51271:79;51343:7;;;;:::i;:::-;4144:56627;51271:10;51329:21;;51271:79;;51293:31;;;;4144:56627;51293:31;;;;;;;;;:::i;:::-;;;;;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;4144:56627:96;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1654:6:61;4144:56627:96;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;4144:56627:96;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;4144:56627:96;;1256:21:102;1252:94;;4144:56627:96;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;689:66:57;4144:56627:96;;;;;2993:17:57;;;;;;;:::i;2906:504::-;4144:56627:96;;;;;689:66:57;;;3046:52;;;;4144:56627:96;3046:52:57;;;;4144:56627:96;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;4144:56627:96;;-1:-1:-1;;;3262:56:57;;4144:56627:96;3262:56:57;;689:66;;;;;;;4144:56627:96;-1:-1:-1;;;;;;;;;;;4144:56627:96;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;4144:56627:96;1889:27:57;;4144:56627:96;;2208:15:57;;;:28;;;2204:112;;2906:504;;;4144:56627:96;;2208:28:57;;4144:56627:96;2208:28:57;;3046:52;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;;3046:52;;;;;;;;;4144:56627:96;;;;;;;;;;;;;;;9556:32;4144:56627;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;9260:25;4144:56627;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;;;;;55756:21;4144:56627;;;;;;;;;;55827:9;4144:56627;;;;;55919:32;;;;4144:56627;;;55901:17;4144:56627;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;55967:15;;55963:82;;56058:23;;;4144:56627;;;;;;;;;;;:::i;:::-;56058:50;56054:119;;56218:37;;;4144:56627;;;56218:77;;;:::i;:::-;56200:15;:95;56310:10;;;;;:64;;4144:56627;56306:118;;56438:25;;;4144:56627;56434:1943;;;4144:56627;;;56483:35;56479:102;;4144:56627;;;56598:35;;;;56594:121;;56434:1943;56732:35;;56728:289;;56434:1943;4144:56627;;;57030:15;4144:56627;;57094:31;;;;;4144:56627;;;;57030:154;;;;;;4144:56627;57030:154;4144:56627;;;;;;;689:66:57;;;;;;;;;;57030:154:96;;4144:56627;57030:154;;;:::i;:::-;;;;;;;;;;;;;;56434:1943;;;;58387:14;4144:56627;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;58474:56;4144:56627;;;;;;;;;;;;;;;;;58387:14;4144:56627;58411:30;56200:15;58411:30;;4144:56627;;;;;;;;;;58474:56;4144:56627;;;-1:-1:-1;;;4144:56627:96;;;;;;;;57030:154;;;;:::i;:::-;4144:56627;;57030:154;;;;56728:289;56813:23;4144:56627;;;;;;;;;56854:15;4144:56627;;56922:18;4144:56627;56922:18;;4144:56627;;;;56854:148;;;;;;4144:56627;;;56854:148;4144:56627;;;;689:66:57;;;;;;;;;56854:148:96;;;4144:56627;56854:148;;;:::i;:::-;;;;;;;;;;;;;56728:289;56854:148;;;;:::i;:::-;4144:56627;;56854:148;;56728:289;;56854:148;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;56854:148:96;4144:56627;;;56594:121;4144:56627;;-1:-1:-1;;4144:56627:96;;;;56594:121;;;56479:102;4144:56627;;-1:-1:-1;;;56545:21:96;;4144:56627;;56545:21;56434:1943;4144:56627;;;;;;;57205:12;;;57201:1176;4144:56627;;;;;;;;;;;;;;57294:15;4144:56627;;;57377:31;;;;4144:56627;;;;;57434:17;4144:56627;;;;689:66:57;;;;;;;57434:31:96;;;;;;;;;;;;;57201:1176;4144:56627;;57294:247;;;;;4144:56627;;-1:-1:-1;;;57294:247:96;;4144:56627;;;;;;;;;;;;57294:247;;4144:56627;;;;57294:247;;;:::i;:::-;;;;;;;;;;;;;;57201:1176;;;56434:1943;;57294:247;;;;:::i;:::-;4144:56627;;57294:247;;;;57434:31;;;;;;;;;;;;;;;:::i;:::-;;;;;;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;57201:1176:96;57562:12;;;;4144:56627;57562:12;57558:819;;57201:1176;;;;;;56434:1943;;57558:819;57616:23;4144:56627;;;;;;;;57653:15;4144:56627;;57717:31;;;;4144:56627;;;;;;;57653:154;;;;;;4144:56627;;;57653:154;4144:56627;;;;689:66:57;;;;;;;;;57653:154:96;;;4144:56627;57653:154;;;:::i;:::-;;;;;;;;;;;;;;57558:819;4144:56627;;;57653:15;4144:56627;;57904:18;4144:56627;;57904:18;;4144:56627;;;;;;;;57948:17;4144:56627;;;;689:66:57;;;;;;;57948:31:96;;;;;;;;;;;;;57558:819;4144:56627;58016:30;4144:56627;;;55901:17;4144:56627;;;;;;57998:75;4144:56627;;;57821:270;;;;;;4144:56627;;;57821:270;4144:56627;;;;;689:66:57;;;;;;;;;;57821:270:96;;;;4144:56627;57821:270;;4144:56627;57821:270;;;:::i;:::-;;;;;;;;;;;;;;57558:819;4144:56627;;;;;57653:15;4144:56627;;;;;;;;;58016:30;4144:56627;;;55901:17;4144:56627;;;;;;58273:75;4144:56627;;;58105:261;;;;;4144:56627;;;;;58105:261;4144:56627;;;;58105:261;;;;;;;;;4144:56627;58105:261;;;:::i;:::-;;;;;;;;;;;;;;57558:819;;;;;;58105:261;;;;:::i;:::-;4144:56627;;58105:261;;;;;4144:56627;;;57821:270;;;;:::i;:::-;4144:56627;;57821:270;;;;;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;57821:270:96;4144:56627;;;57948:31;;;;;;;;;;;;;;;:::i;:::-;;;;;;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;57653:154:96;;;;:::i;:::-;4144:56627;;57653:154;;;;56438:25;4144:56627;;;56451:12;56438:25;;56306:118;4144:56627;;-1:-1:-1;;;56397:16:96;;4144:56627;;56397:16;56310:64;4144:56627;;;;;56324:10;:50;;56310:64;;56054:119;4144:56627;;-1:-1:-1;;;56131:31:96;;4144:56627;56131:31;;4144:56627;;;;;56131:31;55963:82;4144:56627;;-1:-1:-1;;;56005:29:96;;4144:56627;56005:29;;4144:56627;;;;;56005:29;4144:56627;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;:::i;:::-;;;21018:7;;;:::i;:::-;4144:56627;21158:11;4144:56627;;;;;;;;;;21173:21;21158:36;;:73;;;;;4144:56627;-1:-1:-1;21154:293:96;;;21247:35;-1:-1:-1;;;;;;;;;;;21247:35:96;4144:56627;21247:35;21154:293;;21456:40;4144:56627;21456:40;4144:56627;21456:40;:::i;:::-;;4144:56627;21511:59;4144:56627;;;21511:59;;;;;:::i;21154:293::-;23149:17;4144:56627;;;-1:-1:-1;;;23149:31:96;;4144:56627;;;-1:-1:-1;;;;;4144:56627:96;;;;23119:2;;4144:56627;;;;;;23149:31;;;;;;;;;;;;;;;21154:293;4144:56627;;;;689:66:57;;;;;;;23135:58:96;;4144:56627;23135:58;;;;;;;21154:293;23131:211;;;21154:293;-1:-1:-1;4144:56627:96;;-1:-1:-1;;;23437:48:96;;4144:56627;;;;23437:48;;4144:56627;23437:48;4144:56627;;;23437:48;;;;;;;;;;;;;;;21154:293;23437:67;;23621:13;23437:67;23605:29;23437:67;23595:40;23437:67;;:::i;:::-;23621:13;;:::i;23595:40::-;4144:56627;;;;689:66:57;;;;;23672::96;;23732:4;;23672:66;23732:4;23672:66;4144:56627;23672:66;;;:::i;:::-;;;;;;;;;;;;;21154:293;23672:83;;;;-1:-1:-1;;;;;;;;;;;23672:83:96;4144:56627;23672:83;;:::i;:::-;21154:293;;;23672:66;;;;;;;;;;;;;;;;;:::i;:::-;;;4144:56627;;;;;;23672:83;-1:-1:-1;;;;;;;;;;;23672:66:96;;;;;;;;4144:56627;;689:66:57;;;;;;;;23437:48:96;;;;;;;;;;;;;;;;;;:::i;:::-;;;4144:56627;;;;;;;23621:13;23437:48;;;;;;;23131:211;4144:56627;;;-1:-1:-1;23131:211:96;;;23135:58;;;;;;;;;;;;;;;:::i;:::-;;;;;23149:31;;;;;;;;;;;;;;:::i;:::-;;;;21158:73;4144:56627;21198:33;;;21158:73;;;4144:56627;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;;:::i;:::-;2405:64:95;;;;:::i;:::-;3270:78;;:::i;:::-;16176:7:96;;;:::i;:::-;16194:17;4144:56627;-1:-1:-1;;;;;4144:56627:96;;;;16194:52;;;;;4144:56627;;;;;689:66:57;;;;;;;16194:52:96;;16240:4;4144:56627;16194:52;;4144:56627;16194:52;;;;;;;;;;;4144:56627;;;;;16349:35;;4144:56627;;;;;;;;;;16349:35;;;4144:56627;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;16349:35;;;;4144:56627;;;;:::i;:::-;;;;;;;;;16462:12;4144:56627;;;;;;;;;;16462:36;;;16458:897;;4144:56627;;17408:30;4144:56627;;;17390:17;4144:56627;;;;;;;;;17382:83;;:190;;;;4144:56627;17365:483;;;17879:17;;4144:56627;17879:17;:::i;:::-;4144:56627;;17879:17;4144:56627;;;;17927:9;4144:56627;;;;;;;;;;17994:11;;;;4144:56627;;;;;;;;;;;;;;;;;;;;18025:13;;4144:56627;;;;;;;;;;18071:16;;;4144:56627;;;;;;;;18123:17;;;4144:56627;18228:16;;;4144:56627;;;;;;;;;18292:12;18278:11;;;4144:56627;18314:16;4144:56627;18314:16;;4144:56627;18393:17;4144:56627;;;18380:10;;;4144:56627;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18420:25;17408:30;4144:56627;18420:25;;4144:56627;;;18488:15;4144:56627;;;;;18488:76;;;;;;;4144:56627;;;;;689:66:57;;;;;;;;18488:76:96;;;4144:56627;18488:76;;;:::i;:::-;;18529:9;;18488:76;;;;;;;;;4144:56627;;;18580:35;4144:56627;18596:6;4144:56627;;;;;;;;;;;18580:35;4144:56627;;;;;;;18488:76;;;;;:::i;:::-;4144:56627;;18488:76;;;4144:56627;;;;-1:-1:-1;4144:56627:96;;;;;;;;;;;;1916:17:95;4144:56627:96;-1:-1:-1;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4144:56627:96;;;;;;;;;;;;;;17994:11;4144:56627;;;;;;;;;;;;17994:11;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4144:56627:96;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;17382:190;17497:75;;;;4144:56627;17485:9;:87;17382:190;;;16458:897;16533:20;4144:56627;;;;16533:20;:::i;:::-;4144:56627;;-1:-1:-1;;;16754:14:96;;16240:4;4144:56627;;;16240:4;16754:14;;;;;;;;;;;;;;;16458:897;4144:56627;;;;;;;;;;689:66:57;;;;;;;;16813:30:96;;4144:56627;16813:30;;4144:56627;;16813:30;;;;;;;;;4144:56627;16813:30;;;;;16458:897;16813:36;;4144:56627;;16786:63;16782:352;;17151:41;4144:56627;;17151:41;:::i;:::-;17147:198;;16458:897;;;16813:30;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;16754:14;;;;;;;;;;;;;;;;;;:::i;:::-;;;4144:56627;;;;;;;;;;;;16754:14;;;;;;;;;;;4144:56627;-1:-1:-1;;;4144:56627:96;;;;;;;;16194:52;;;;:::i;:::-;4144:56627;;16194:52;;;;4144:56627;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;;;;10235:56;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;9485:24;4144:56627;9485:24;4144:56627;9485:24;4144:56627;9485:24;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19344:10;;;:::i;4144:56627::-;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;:::i;:::-;;;:::i;:::-;;;;:::i;:::-;;;;;;;;;3301:14:44;3347:34;;;;;;4144:56627:96;3346:108:44;;;;4144:56627:96;3325:201:44;;;:::i;:::-;-1:-1:-1;;4144:56627:96;;3551:1:44;4144:56627:96;;;;3562:65:44;;4144:56627:96;;499:12:102;4144:56627:96;;;;;;:::i;:::-;;;;-1:-1:-1;;;4144:56627:96;;;;5366:69:44;4144:56627:96;;;;;;5366:69:44;;;:::i;499:12:102:-;4144:56627:96;;;;;;;;;;;;;;;;1864:19:95;4144:56627:96;;;1864:19:95;4144:56627:96;;;1916:17:95;;4144:56627:96;;1916:17:95;;4144:56627:96;;;;;;;;;:::i;1916:17:95:-;4144:56627:96;1906:28:95;;1893:41;4144:56627:96;;;10775:50;4144:56627;;;10775:50;4144:56627;3647:99:44;;4144:56627:96;;3647:99:44;4144:56627:96;;;;;;;-1:-1:-1;;;;;;;;;;;4144:56627:96;;;3551:1:44;4144:56627:96;;3721:14:44;4144:56627:96;;3562:65:44;-1:-1:-1;;4144:56627:96;;;;;3562:65:44;;;3346:108;3426:4;;1702:19:73;:23;3387:66:44;;3346:108;3387:66;-1:-1:-1;4144:56627:96;;;3452:1:44;3436:17;3346:108;;3347:34;4144:56627:96;3380:1:44;4144:56627:96;;;3365:16:44;3347:34;;4144:56627:96;;;;;;;;;;;;;3635:4:95;4144:56627:96;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;9359:45;4144:56627;;;;;;;;;;;;;;;;;;;;;;;8573:8;4144:56627;;;;;;;;;;;;;;;;;9323:30;4144:56627;;;;;;;;;;;;;;;;;;;;9805:39;4144:56627;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;;:::i;:::-;;2405:64:95;;:::i;:::-;3270:78;;:::i;:::-;4144:56627:96;;;;;;26172:28;;4144:56627;;;;26172:28;;4144:56627;;26311:12;4144:56627;;;;;;;;;;26311:36;;;26307:1612;;4144:56627;;;26307:1612;4144:56627;;;26367:9;4144:56627;;;;;;;;;26367:46;26363:121;;4144:56627;;;;;;;;;26502:37;;;4144:56627;26542:10;4144:56627;-1:-1:-1;26498:269:96;;4144:56627;26785:36;;;;4144:56627;;;;;:::i;:::-;26785:61;26781:136;;26956:36;;;:::i;:::-;4144:56627;;;;;;27026:57;4144:56627;;;;27045:37;4144:56627;27026:57;:::i;:::-;-1:-1:-1;27102:71:96;;;26307:1612;27098:150;;4144:56627;;;;;;27262:51;4144:56627;;;;27276:37;4144:56627;26542:10;4144:56627;27262:51;:::i;:::-;26542:10;4144:56627;;;;;;;;27368:4;4144:56627;;;27381:6;4144:56627;;;;689:66:57;;;;;;;27368:20:96;;4144:56627;27368:20;;4144:56627;27368:20;;;;;;;;;4144:56627;27368:20;;;;;26307:1612;27368:26;;4144:56627;;;;;;;;;;;;27396:33;;;4144:56627;27396:33;;4144:56627;;27431:37;;4144:56627;6815:16:10;4445:42:9;6815:16:10;;6811:173;4445:42:9;;;2570:369:14;;;;;;;;;;;;6811:173:10;4144:56627:96;;;;;;;;;26785:36;27497;;4144:56627;;;;;;;;;;27653:31;4144:56627;27573:15;4144:56627;;27653:31;;4144:56627;;;27720:30;4144:56627;;;27702:17;4144:56627;;27702:75;4144:56627;;;27702:75;4144:56627;27573:218;;;;;;4144:56627;;;27573:218;4144:56627;;;;689:66:57;;;;;;;;;27573:218:96;;;4144:56627;27573:218;;;:::i;:::-;;;;;;;;;;;6811:173:10;4144:56627:96;;27811:97;4144:56627;;;;-1:-1:-1;;;;;;;;;;;4144:56627:96;;;;;;27835:33;4144:56627;27835:33;;4144:56627;;27870:37;;4144:56627;;;27811:97;;;;;:::i;:::-;;;;26307:1612;;;4144:56627;;;27573:218;;-1:-1:-1;;;;;;;;;;;27573:218:96;;27811:97;27573:218;;;:::i;:::-;;;;;;;2570:369:14;;;;4144:56627:96;2570:369:14;;6811:173:10;11581:1056:14;;;;;4144:56627:96;11581:1056:14;;;;;;;;;;;;;;;;;;;;;;;;;;6811:173:10;;11581:1056:14;;;;4144:56627:96;11581:1056:14;;27368:20:96;;;;;;;;;;;;;:::i;:::-;;;;27098:150;4144:56627;;-1:-1:-1;;;27200:33:96;;4144:56627;;27200:33;27102:71;4144:56627;;;;;;;;;;;27132:37;4144:56627;27132:41;;27102:71;;26363:121;4144:56627;;-1:-1:-1;;;26440:29:96;;4144:56627;26440:29;;4144:56627;;;;;26440:29;4144:56627;;;;;;;-1:-1:-1;;4144:56627:96;;;;47682:9;4144:56627;;;:::i;:::-;;;;;;;;;;;;;1534:6:42;4144:56627:96;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;;;;;;;;;;;-1:-1:-1;;;13223:47:96;;;:87;;;;4144:56627;;;;;;;;;;13223:87;-1:-1:-1;;;937:40:77;;-1:-1:-1;13223:87:96;;;4144:56627;;;;;;;-1:-1:-1;;4144:56627:96;;;;;;;;;9948:45;4144:56627;;;;;;;;9948:45;;4144:56627;9948:45;;;4144:56627;;9948:45;;4144:56627;9948:45;;;4144:56627;9948:45;;;4144:56627;9948:45;;;4144:56627;9948:45;;;4144:56627;9948:45;;;4144:56627;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;:::i;:::-;9948:45;;;4144:56627;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;-1:-1:-1;4144:56627:96;;;;;;;;;9948:45;;;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;;9948:45;;;;4144:56627;9948:45;;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;-1:-1:-1;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9948:45;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;:::o;:::-;-1:-1:-1;;;;;4144:56627:96;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;:::o;:::-;1916:17:95;4144:56627:96;;;-1:-1:-1;;4144:56627:96;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;:::o;:::-;;-1:-1:-1;4144:56627:96;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4144:56627:96;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1916:17:95;4144:56627:96;-1:-1:-1;;4144:56627:96;;;;:::o;:::-;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;1916:17:95;4144:56627:96;-1:-1:-1;;4144:56627:96;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;4144:56627:96;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;-1:-1:-1;;4144:56627:96;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;:::o;:::-;;;;;;;;;:::o;:::-;;;;;;;;;:::o;:::-;;;;;;;;-1:-1:-1;4144:56627:96;;-1:-1:-1;4144:56627:96;;;-1:-1:-1;4144:56627:96;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;:::o;1620:130:42:-;1683:7;;:::i;:::-;965:10:48;-1:-1:-1;;;;;4144:56627:96;;;1683:23:42;4144:56627:96;;1620:130:42:o;4144:56627:96:-;;;;689:66:57;;;4144:56627:96;;;;;;;;;;;;;;;;;;2687:187:42;2779:6;4144:56627:96;;-1:-1:-1;;;;;4144:56627:96;;;-1:-1:-1;;;;;;4144:56627:96;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;2827:40:42;2687:187::o;4144:56627:96:-;;;;:::o;:::-;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;4144:56627:96;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;4144:56627:96;;;;-1:-1:-1;;;4144:56627:96;;;;;;;1406:259:57;1702:19:73;;:23;4144:56627:96;;-1:-1:-1;;;;;;;;;;;4144:56627:96;;-1:-1:-1;;;;;;4144:56627:96;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;1406:259:57:o;4144:56627:96:-;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;7671:628:73;;;;7875:418;;;4144:56627:96;;;7906:22:73;7902:286;;8201:17;;:::o;7902:286::-;1702:19;:23;4144:56627:96;;8201:17:73;:::o;4144:56627:96:-;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;7875:418:73;4144:56627:96;;;;-1:-1:-1;8980:21:73;:17;;9152:142;;;;;;;8976:379;4144:56627:96;;-1:-1:-1;;;9324:20:73;;4144:56627:96;9324:20:73;;;4144:56627:96;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;9536:119:95;9620:4;4144:56627:96;-1:-1:-1;;;;;4144:56627:96;9598:10:95;:27;9594:54;;9536:119::o;9594:54::-;4144:56627:96;;-1:-1:-1;;;9634:14:95;;;;;10525:113;10594:6;4144:56627:96;10594:11:95;10590:41;;10525:113::o;10590:41::-;4144:56627:96;;-1:-1:-1;;;10614:17:95;;;;;4144:56627:96;;;;:::o;:::-;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;-1:-1:-1;;4144:56627:96;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;4144:56627:96;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;-1:-1:-1;4144:56627:96;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;:::i;:::-;689:66:57;;4144:56627:96;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;689:66:57;4144:56627:96;;;;;689:66:57;4144:56627:96;;;;;:::o;:::-;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::o;13488:404::-;13784:17;4144:56627;;;-1:-1:-1;;;13784:35:96;;-1:-1:-1;;;;;4144:56627:96;;;13784:35;;;4144:56627;;13784:35;;4144:56627;;;;;;;13784:35;;;;;;;-1:-1:-1;13784:35:96;;;13488:404;13783:36;;13779:93;;13488:404::o;13779:93::-;4144:56627;;-1:-1:-1;;;13842:19:96;;13784:35;;13842:19;13784:35;;;;;;;;;;;;;;:::i;:::-;;;;;4144:56627;;689:66:57;-1:-1:-1;689:66:57;;;;;14075:141:96;-1:-1:-1;;;;;4144:56627:96;14157:22;14153:56;;14075:141::o;14153:56::-;4144:56627;;-1:-1:-1;;;14188:21:96;;;;;4144:56627;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;:::o;18835:339::-;;18907:26;;;:::i;:::-;18906:27;-1:-1:-1;18902:90:96;;;19001:17;4144:56627;-1:-1:-1;;;;;4144:56627:96;;;;;;;19001:66;;;;;4144:56627;;;689:66:57;;;;;19001::96;;19061:4;;;19001:66;19061:4;19001:66;;;;;:::i;:::-;;;;;;;;;;19101;19001;;;;18835:339;4144:56627;19101:66;4144:56627;;19001:17;4144:56627;;;;689:66:57;;;;;;;;19101::96;;19061:4;19101:66;19001;19101;;;:::i;:::-;;;;;;;;;;;;;18835:339;19077:90;4144:56627;;19077:90;4144:56627;19077:90;:::i;:::-;;4144:56627;18835:339::o;19101:66::-;;;;;;;;;;;;;;;;:::i;:::-;;;4144:56627;;;;19077:90;4144:56627;;19101:66;;;;;-1:-1:-1;19101:66:96;;19001;;;19101;19001;;:::i;:::-;;;;14402:499;14495:11;4144:56627;-1:-1:-1;;;;;4144:56627:96;;;;14487:34;;14483:345;;4144:56627;14844:50;4144:56627;14844:50;4144:56627;;;689:66:57;;;;;;;;14844:50:96;;14888:4;14844:50;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;14844:50:96;;;14837:57;14402:499;:::o;14844:50::-;;;;;;;;;;;;;;:::i;14483:345::-;4144:56627;;14601:6;4144:56627;;;;14571:37;;;;;;4144:56627;-1:-1:-1;;;4144:56627:96;;;;;;;14571:37;;;;;:::i;:::-;4144:56627;14561:48;;4144:56627;14627:17;4144:56627;;;;;689:66:57;;;;14627:52:96;;;;;;;;4144:56627;-1:-1:-1;4144:56627:96;;;;14627:52;;4144:56627;14627:52;;;;;;;;;-1:-1:-1;14627:52:96;;;14483:345;-1:-1:-1;14623:195:96;;;14699:11;;;;;4144:56627;14699:11;:::o;14623:195::-;14756:47;4144:56627;;;;;14756:47;;;;;;;;;14627:52;14756:47;;;:::i;:::-;;;;;;;;;;-1:-1:-1;14756:47:96;;;14749:54;;;:::o;14756:47::-;;;;;;-1:-1:-1;14756:47:96;;;;;;:::i;14627:52::-;;;;;;;;;;;;;;:::i;:::-;;;;13898:171;13989:17;4144:56627;-1:-1:-1;;;;;4144:56627:96;13967:10;:40;13963:100;;13898:171::o;13963:100::-;4144:56627;;-1:-1:-1;;;14030:22:96;;;;;4144:56627;;;;;;;;;;:::o;19510:359::-;19605:17;4144:56627;;;;-1:-1:-1;;;19605:66:96;;19510:359;;;-1:-1:-1;;;;;;;4144:56627:96;19605:66;;4144:56627;;;19605:66;4144:56627;;19605:66;19665:4;19510:359;19605:66;;;;:::i;:::-;;;;;;;;;;;;;;19510:359;19581:90;4144:56627;;19581:90;4144:56627;19581:90;:::i;:::-;;4144:56627;19681:68;;;;;4144:56627;;-1:-1:-1;;;19681:68:96;;4144:56627;;;;;;;;19681:68;19665:4;;19605:66;19681:68;;;:::i;:::-;;;;;;;;;;;19510:359;30553:13;;30610:3;4144:56627;;;;;;30572:20;4144:56627;;;;;;;30568:40;;;;;30650:32;;;30610:3;30650:32;;;:::i;:::-;4144:56627;;;;;;;;;;;30724:9;4144:56627;;;;;30763:26;;;;:::i;:::-;30759:455;;30610:3;;;;;;:::i;:::-;30553:13;;30759:455;-1:-1:-1;;;;;;;;;;;4144:56627:96;;;;-1:-1:-1;4144:56627:96;30832:26;;;4144:56627;;;-1:-1:-1;4144:56627:96;;;;;;31079:12;30942:21;;;4144:56627;30942:37;4144:56627;;;30942:37;:::i;:::-;4144:56627;;30997:27;;4144:56627;;;30997:27;:::i;:::-;4144:56627;;31079:12;;:::i;:::-;4144:56627;31175:23;;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;31115:84;30759:455;;;;;;30568:40;;;;;;;19836:26;30568:40;;4144:56627;;;;;31233:18;4144:56627;;;;;;;;;;19836:26;19510:359::o;19681:68::-;;;;;;;:::i;:::-;;;;;;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;19605::96;;;;;;;;;;;;;;;:::i;:::-;;;4144:56627;;;;19581:90;4144:56627;;19605:66;;;;;;;;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::o;:::-;;;;;;;;;;;;6530:1642:80;6601:6;;6597:45;;8144:10;7344:7;6606:1;4144:56627:96;;8769:3:80;4144:56627:96;8760:16:80;8756:99;;6530:1642;4144:56627:96;;8881:2:80;4144:56627:96;8872:15:80;8868:96;;6530:1642;4144:56627:96;;8990:2:80;4144:56627:96;8981:15:80;8977:96;;6530:1642;4144:56627:96;;9099:2:80;4144:56627:96;9090:15:80;9086:96;;6530:1642;4144:56627:96;;9208:1:80;4144:56627:96;9199:14:80;9195:93;;6530:1642;4144:56627:96;;9314:1:80;4144:56627:96;9305:14:80;9301:93;;6530:1642;4144:56627:96;;9420:1:80;4144:56627:96;9411:14:80;9407:93;;6530:1642;9526:1;;4144:56627:96;;;;;;9513:64:80;;6530:1642;4144:56627:96;;7801:10:80;;;;:::i;:::-;4144:56627:96;;;7850:10:80;;;;:::i;:::-;4144:56627:96;;;7899:10:80;;;;:::i;:::-;4144:56627:96;;;7948:10:80;;;;:::i;:::-;4144:56627:96;;;7997:10:80;;;;:::i;:::-;4144:56627:96;;;8046:10:80;;;;:::i;:::-;4144:56627:96;;;8095:10:80;;;;:::i;:::-;4144:56627:96;;;8144:10:80;;;:::i;:::-;672:5;;;;;;:13;6530:1642;:::o;672:13::-;;;6530:1642;:::o;9513:64::-;4144:56627:96;9513:64:80;;;9407:93;9420:1;9445:11;;4144:56627:96;;9407:93:80;;;;9301;9314:1;9339:11;;4144:56627:96;;9301:93:80;;;;9195;9208:1;9233:11;;4144:56627:96;;9195:93:80;;;;9086:96;9099:2;9125:12;;4144:56627:96;;9086:96:80;;;;8977;8990:2;9016:12;;4144:56627:96;;8977:96:80;;;;8868;8881:2;8907:12;;4144:56627:96;;8868:96:80;;;;8756:99;8796:13;;;8769:3;8756:99;;;;6597:45;6623:8;6606:1;6623:8;:::o;4144:56627:96:-;;;;;;;;;;;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;:::o;35643:193::-;-1:-1:-1;4144:56627:96;35742:9;4144:56627;;;-1:-1:-1;4144:56627:96;;;35742:37;;:87;;;;35735:94;35643:193;:::o;35742:87::-;35783:32;;4144:56627;-1:-1:-1;;;;;4144:56627:96;35783:46;;;35643:193;-1:-1:-1;35643:193:96:o;35842:191::-;35972:30;:8;4144:56627;35992:10;4144:56627;35972:30;;:::i;:::-;8573:8;4144:56627;;;;;;;;;;;;;;;35972:54;;35842:191;:::o;4144:56627::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;42297:644::-;;;42763:14;4144:56627;8573:8;;4144:56627;;;42781:3;4144:56627;;42757:36;4144:56627;8631:35;;45688:13;;;;;45684:74;;45816:17;;45843:215;45850:5;;;42813:21;;;;;;:::i;:::-;4144:56627;;;;;;;;;;;;;;;;;;;;;;;42840:38;;;:::i;:::-;4144:56627;;;;;;;;42812:91;42839:63;;;;:::i;:::-;42812:91;;:::i;:::-;-1:-1:-1;;;4144:56627:96;;;;-1:-1:-1;4144:56627:96;;42781:3;4144:56627;42297:644;:::o;45843:215::-;4144:56627;;45875:5;;;45879:1;;45909:10;;;;:::i;:::-;4144:56627;;45871:177;;;45843:215;;;;45871:177;45993:16;;;;;;;:::i;:::-;4144:56627;-1:-1:-1;;4144:56627:96;;;;;;;45871:177;;;;45684:74;4144:56627;;-1:-1:-1;;;45724:23:96;;;;;43522:1006;43759:10;4144:56627;43759:15;;43755:66;;43835:33;;;:::i;:::-;43831:178;;44036:8;4144:56627;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;;;;;44071:41;44035:77;44071:41;44152:56;44071:41;;:::i;:::-;8573:8;4144:56627;;;44035:77;:::i;:::-;44187:13;4144:56627;44154:15;4144:56627;44173:3;4144:56627;;44187:13;;;:::i;:::-;4144:56627;;44152:56;;:::i;:::-;4144:56627;;;;;;;;;;;;;;;;44222:14;4144:56627;;;;;;;;44150:87;;;:::i;:::-;4144:56627;44149:136;46163:20;4144:56627;44149:136;;;:::i;:::-;4144:56627;;44316:33;44312:210;;43522:1006::o;44312:210::-;44393:28;;;:::i;:::-;44448:30;;;;;;:63;44312:210;43522:1006::o;43755:66::-;4144:56627;;-1:-1:-1;;;43797:13:96;;;;;44534:265;44642:27;4144:56627;8573:8;4144:56627;;;;;;;;;;;;;;;;44641:131;4144:56627;44642:80;46163:20;4144:56627;44676:46;;;;:::i;44642:80::-;44641:131;:::i;:::-;4144:56627;44534:265;:::o;45060:306::-;;-1:-1:-1;;;45160:12:96;;;45156:77;;45246:12;;45242:72;;45333:7;;;:::i;45242:72::-;4144:56627;;-1:-1:-1;;;45281:22:96;;;;;45156:77;4144:56627;;-1:-1:-1;;;;;;45195:27:96;;;;;46380:389;;46535:56;46380:389;46535:56;;:::i;:::-;46605:15;;;;:35;;;46380:389;46601:72;;46725:24;46682:19;;;;4144:56627;46725:24;4144:56627;46380:389::o;46601:72::-;46656:7;;;:::o;46605:35::-;46624:16;;;46605:35;;46775:720;46998:12;47027:19;;;;4144:56627;47027:34;;;;4144:56627;;47076:34;;;47072:173;;47430:24;47344:33;47311:177;47344:33;;;:::i;:::-;47430:24;;4144:56627;47311:177;;:::i;:::-;46775:720;:::o;47072:173::-;47192:13;;;;-1:-1:-1;47192:13:96;-1:-1:-1;47192:13:96;:::o;4144:56627::-;;;;-1:-1:-1;4144:56627:96;;;;;-1:-1:-1;4144:56627:96;14222:174;14307:17;4144:56627;;;-1:-1:-1;;;14307:31:96;;-1:-1:-1;;;;;4144:56627:96;14307:31;;4144:56627;;14307:31;;4144:56627;;;;14307:31;;;;;;;-1:-1:-1;14307:31:96;;;14222:174;4144:56627;;14285:10;:54;14281:109;;14222:174::o;14307:31::-;;;;;;;;;;;;;;:::i;:::-;;;;47705:2357;47843:30;;;;4144:56627;;47843:30;;;;-1:-1:-1;;47843:30:96;-1:-1:-1;;;;;4144:56627:96;;;47843:44;;;;;:99;;47705:2357;47843:1027;;;47705:2357;47826:2158;;;47705:2357;4144:56627;;;;;;;-1:-1:-1;;;;;;;;;;;4144:56627:96;;49994:20;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;50029:26;47705:2357::o;47826:2158::-;48934:30;4144:56627;;;48916:17;4144:56627;;;;;;;48916:62;4144:56627;48916:62;;4144:56627;;;;;;;;48916:96;;;;;;:212;;;47826:2158;48895:522;;;;47826:2158;4144:56627;;49566:407;4144:56627;-1:-1:-1;;;;;;;;;;;4144:56627:96;-1:-1:-1;;;;;;;;;;;4144:56627:96;;;;;;;49431:32;48934:30;4144:56627;49431:32;:::i;:::-;4144:56627;48934:30;4144:56627;;;48916:17;4144:56627;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;48934:30;4144:56627;;;49566:407;;;;;:::i;:::-;;;;47826:2158;;;;;;48895:522;4144:56627;;;;49161:73;;;;;;4144:56627;;;;;;;689:66:57;;;;;;;;49161:73:96;;;;;4144:56627;49161:73;;;;;;-1:-1:-1;;;;;;;;;;;49161:73:96;-1:-1:-1;;;;;;;;;;;49161:73:96;;;;4144:56627;49161:73;;;49566:407;49161:73;4144:56627;49161:73;;;48895:522;4144:56627;49257:145;4144:56627;;;;;;;;;;;;;49308:4;;4144:56627;;;;;;;;;49257:145;48895:522;;;;;;;;;;;;;;49161:73;;;;:::i;:::-;;;;;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;48916:212:96;4144:56627;;;;;;;;;49036:92;;48916:212;;;;47843:1027;48036:30;4144:56627;;;48018:17;4144:56627;;;;;;48018:62;;4144:56627;;;47984:96;;;;;;-1:-1:-1;47984:216:96;;47843:1027;47984:394;;;;47843:1027;47984:574;;;;47843:1027;47984:700;;;;47843:1027;47984:868;;;;47843:1027;;;;;47984:868;48712:38;;48782:70;4144:56627;48712:38;;4144:56627;48782:70;;4144:56627;48712:140;;47984:868;;;:700;48586:31;;;4144:56627;48621:63;;;4144:56627;48586:98;;;-1:-1:-1;47984:700:96;;:574;48406:44;;;4144:56627;48482:76;;;4144:56627;48406:152;;;-1:-1:-1;47984:574:96;;:394;4144:56627;48228:43;;4144:56627;48303:75;;;4144:56627;48228:150;;;-1:-1:-1;47984:394:96;;:216;4144:56627;;;;;;;;;;48108:92;;47984:216;;;47843:99;4144:56627;;;;47891:51;;;-1:-1:-1;47843:99:96;;50068:609;4144:56627;-1:-1:-1;4144:56627:96;50193:9;4144:56627;;;-1:-1:-1;4144:56627:96;;;;;50229:33;50225:100;;50608:21;;;;50647:23;50608:21;;4144:56627;50608:21;;:::i;:::-;50647:23;4144:56627;50068:609;:::o;50683:141::-;8573:8;4144:56627;;;;;;;;;;;;;;;50801:14;4144:56627;;;;;;;;50781:35;;;:::i;51595:470::-;;51853:9;51595:470;51853:9;:::i;:::-;4144:56627;;51873:83;;51595:470;4144:56627;;;51965:94;;51595:470;:::o;51965:94::-;52032:15;;;:::i;:::-;51595:470::o;51873:83::-;51932:12;;;:::i;:::-;51873:83;;;4144:56627;;;;;;;;;;;;;-1:-1:-1;4144:56627:96;;;;;;1916:17:95;4144:56627:96;-1:-1:-1;;4144:56627:96;;;;:::o;:::-;;;;-1:-1:-1;;;;;4144:56627:96;;;;;;;;;;;;;;;;;;;;;;;:::o;59382:610::-;59516:6;4144:56627;;;;-1:-1:-1;4144:56627:96;;;;;59486:37;;;;;;-1:-1:-1;;;4144:56627:96;;;;;;;;;;59486:37;;;;;;:::i;:::-;4144:56627;59476:48;;4144:56627;;;;;;59539:17;;4144:56627;;;;;;;;689:66:57;;;;59539:52:96;;;;;;;;;;4144:56627;;;;;;59539:52;;4144:56627;59539:52;;;;;;;;;;;;;59382:610;59535:138;;;59382:610;59687:13;;59722:3;4144:56627;;59702:18;;;;;4144:56627;;;;;;59746:52;4144:56627;;59787:10;4144:56627;;;;;59787:10;;:::i;:::-;4144:56627;;;;59746:52;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;59722:3;59745:53;;59741:181;;59722:3;;;;;:::i;:::-;59687:13;;59741:181;4144:56627;;;;59856:37;;;4144:56627;;;;;;;;59856:37;;;;;;:::i;:::-;4144:56627;59846:48;;59896:10;;;;;;:::i;:::-;4144:56627;;59818:89;;;;;;4144:56627;;;59818:89;4144:56627;;;;;;;689:66:57;;;;;;;;;;59818:89:96;;;;;:::i;:::-;;;;;;;;;;;;;;59741:181;;;;59818:89;;;;:::i;:::-;4144:56627;;59818:89;;;;;4144:56627;;;689:66:57;;;;;;;;59818:89:96;4144:56627;;;59746:52;;;;;;;;;;;;;;:::i;:::-;;;;;4144:56627;;;689:66:57;;;;;;;;59702:18:96;;;;;;;;;;;59947:38;59702:18;;4144:56627;59702:18;;;4144:56627;;;;;;;;;;;;;;;;;:::i;:::-;59947:38;;;59382:610::o;59535:138::-;59607:55;;;;;4144:56627;;;;;;;689:66:57;;;;;;;;59607:55:96;;;;4144:56627;;;;;;59607:55;;;;;;;59535:138;59607:55;;;;;;;:::i;:::-;;;59535:138;;59607:55;4144:56627;;689:66:57;4144:56627:96;;689:66:57;;;;59539:52:96;;;;;;;;;;;;;;:::i;:::-;;;;60141:422;60233:1;60216:285;60256:3;4144:56627;;60236:18;;;;;4144:56627;;;;;;;60279:17;4144:56627;;;;60345:6;4144:56627;;;;;;60315:37;;;;;4144:56627;60279:87;4144:56627;;60355:10;4144:56627;-1:-1:-1;;;4144:56627:96;;;;;;;;;;;60315:37;;;;;;:::i;:::-;4144:56627;60305:48;;60355:10;;:::i;:::-;4144:56627;;;;689:66:57;;;;;;;60279:87:96;;;;;;;;:::i;:::-;;;;;;;;;;;60233:1;60279:87;;;60256:3;60275:216;;;60256:3;;;;;;;;;;;;;;:::i;:::-;60221:13;;;;60275:216;4144:56627;;60425:37;;;4144:56627;;;;;;;60425:37;;;;;:::i;:::-;4144:56627;60415:48;;60465:10;;;;;:::i;:::-;4144:56627;;60386:90;;;;;;;4144:56627;60233:1;4144:56627;;;;689:66:57;;;;;;;;;;60386:90:96;;;;;:::i;:::-;;;;;;;;;60256:3;60386:90;;;;;;60275:216;;;;;;;;;;;60386:90;;;;:::i;:::-;;;;;4144:56627;;689:66:57;60233:1:96;689:66:57;;;;;60279:87:96;;;;;;;;;;;;;;:::i;:::-;;;;;4144:56627;;689:66:57;60233:1:96;689:66:57;;;;;60236:18:96;;;60516:40;60236:18;60345:6;4144:56627;;;;;;;;;;60315:37;4144:56627;;;;;;;;:::i;60569:168::-;4144:56627;;;;;;60697:31;4144:56627;60639:11;4144:56627;;60697:31;4144:56627;60697:17;4144:56627;;;;689:66:57;;;;;;;60697:31:96;;;;;;;;;-1:-1:-1;60697:31:96;;;60569:168;60639:91;;;;;;-1:-1:-1;4144:56627:96;;;;;;689:66:57;;;;;;;;60639:91:96;;60671:4;60697:31;60639:91;;4144:56627;;;;;;;;;;60639:91;;;;;;;;60569:168;:::o;60639:91::-;;;;:::i;60697:31::-;;;;;;;;;;;;;;;:::i;:::-;;;;;633:544:102;1534:6:42;4144:56627:96;-1:-1:-1;;;;;4144:56627:96;755:33:102;;1534:6:42;;870:19:102;:::o;751:420::-;4144:56627:96;;-1:-1:-1;;;924:40:102;;;4144:56627:96;924:40:102;4144:56627:96;924:40:102;;;-1:-1:-1;;924:40:102;;;751:420;-1:-1:-1;920:241:102;;1127:19;;:::o;924:40::-;;;;;;;;;;;;;;;;;:::i;:::-;;;4144:56627:96;;;;;;;;:::i;:::-;924:40:102;;;;;;;-1:-1:-1;924:40:102;","linkReferences":{},"immutableReferences":{"54869":[{"start":9306,"length":32},{"start":9540,"length":32},{"start":10695,"length":32}]}},"methodIdentifiers":{"D()":"0f529ba2","DISPUTE_COOLDOWN_SEC()":"f5be3f7c","MAX_STAKED_PROPOSALS()":"406244d8","NATIVE()":"a0cf0aea","RULING_OPTIONS()":"626c47e8","VERSION()":"ffa1ad74","_activatePoints(address)":"db9b5d50","activatePoints()":"814516ad","addToAllowList(address[])":"7263cfe2","allocate(bytes,address)":"ef2920fc","arbitrableConfigs(uint256)":"41bb7605","calculateConviction(uint256,uint256,uint256)":"346db8cb","calculateProposalConviction(uint256)":"60b0645a","calculateThreshold(uint256)":"59a5db8b","calculateThresholdOverride()":"d5cc68a6","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","getMaxConviction(uint256)":"950559d7","getPayouts(address[],bytes[])":"b2b878d0","getPointSystem()":"c3292171","getPoolAmount()":"4ab4ba42","getPoolId()":"38fff2d0","getProposal(uint256)":"c7f758a8","getProposalVoterStake(uint256,address)":"e0dd2c38","getRecipientStatus(address)":"eb11af93","getStrategyId()":"42fda9c7","increasePoolAmount(uint256)":"f5b0dfb7","increasePower(address,uint256)":"782aadff","init(address,address,address)":"184b9559","init(address,string,address)":"60d5dedc","init2(address)":"f4fe2556","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","proxyOwner()":"025313a2","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","setPoolParams((address,address,uint256,uint256,uint256,uint256),(uint256,uint256,uint256,uint256),uint256)":"ad56fd5d","setSybilScorer(address,uint256)":"3864d366","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\":\"AShouldBeUnderOrEqTwo_128\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AShouldBeUnderTwo_128\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AddressCannotBeZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"BShouldBeLessTwo_128\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ConvictionUnderMinimumThreshold\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DefaultRulingNotSet\",\"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\":[{\"internalType\":\"uint256\",\"name\":\"pointsSupport\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"pointsBalance\",\"type\":\"uint256\"}],\"name\":\"NotEnoughPointsToSupport\",\"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\":[],\"name\":\"PoolIsEmpty\",\"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\":\"UNAUTHORIZED\",\"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\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"}],\"indexed\":false,\"internalType\":\"struct CVStrategyInitializeParamsV0_1\",\"name\":\"data\",\"type\":\"tuple\"}],\"name\":\"InitializedCV2\",\"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\":\"sybilScorer\",\"type\":\"address\"}],\"name\":\"SybilScorerUpdated\",\"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\":[{\"internalType\":\"address\",\"name\":\"_sender\",\"type\":\"address\"}],\"name\":\"_activatePoints\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":\"_proposalId\",\"type\":\"uint256\"}],\"name\":\"calculateProposalConviction\",\"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\":[],\"name\":\"calculateThresholdOverride\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"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\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"getMaxConviction\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"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\"},{\"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\":\"getStrategyId\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"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\":\"newSafeArbitrator\",\"type\":\"address\"}],\"name\":\"init2\",\"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\":[],\"name\":\"proxyOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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\":\"contract RegistryCommunityV0_0\",\"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\":[{\"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\":\"uint256\",\"name\":\"sybilScoreThreshold\",\"type\":\"uint256\"}],\"name\":\"setPoolParams\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_sybilScorer\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"}],\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a\",\"dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"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":"AShouldBeUnderOrEqTwo_128"},{"inputs":[],"type":"error","name":"AShouldBeUnderTwo_128"},{"inputs":[],"type":"error","name":"AddressCannotBeZero"},{"inputs":[],"type":"error","name":"BShouldBeLessTwo_128"},{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"ConvictionUnderMinimumThreshold"},{"inputs":[],"type":"error","name":"DefaultRulingNotSet"},{"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":[{"internalType":"uint256","name":"pointsSupport","type":"uint256"},{"internalType":"uint256","name":"pointsBalance","type":"uint256"}],"type":"error","name":"NotEnoughPointsToSupport"},{"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":[],"type":"error","name":"PoolIsEmpty"},{"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":"UNAUTHORIZED"},{"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":"uint256","name":"sybilScorerThreshold","type":"uint256"},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"}],"indexed":false}],"type":"event","name":"InitializedCV2","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":"sybilScorer","type":"address","indexed":false}],"type":"event","name":"SybilScorerUpdated","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":[{"internalType":"address","name":"_sender","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"_activatePoints"},{"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":"_proposalId","type":"uint256"}],"stateMutability":"view","type":"function","name":"calculateProposalConviction","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":[],"stateMutability":"view","type":"function","name":"calculateThresholdOverride","outputs":[{"internalType":"uint256","name":"","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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function","name":"getMaxConviction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"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"},{"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":"getStrategyId","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"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":"newSafeArbitrator","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"init2"},{"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":[],"stateMutability":"view","type":"function","name":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"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":"contract RegistryCommunityV0_0","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":"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":"uint256","name":"sybilScoreThreshold","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setPoolParams"},{"inputs":[{"internalType":"address","name":"_sybilScorer","type":"address"},{"internalType":"uint256","name":"threshold","type":"uint256"}],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{},"viaIR":true},"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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4","urls":["bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a","dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"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":52287,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52290,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":52992,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52079,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52199,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":65565,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"allo","offset":0,"slot":"101","type":"t_contract(IAllo)2610"},{"astId":65567,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"strategyId","offset":0,"slot":"102","type":"t_bytes32"},{"astId":65569,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolActive","offset":0,"slot":"103","type":"t_bool"},{"astId":65571,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolId","offset":0,"slot":"104","type":"t_uint256"},{"astId":65573,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"poolAmount","offset":0,"slot":"105","type":"t_uint256"},{"astId":66596,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":66598,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"surpressStateMutabilityWarning","offset":0,"slot":"107","type":"t_uint256"},{"astId":66600,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"cloneNonce","offset":0,"slot":"108","type":"t_uint256"},{"astId":66602,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeCount","offset":0,"slot":"109","type":"t_uint64"},{"astId":66604,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalCounter","offset":0,"slot":"110","type":"t_uint256"},{"astId":66606,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"currentArbitrableConfigVersion","offset":0,"slot":"111","type":"t_uint256"},{"astId":66608,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalStaked","offset":0,"slot":"112","type":"t_uint256"},{"astId":66610,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalPointsActivated","offset":0,"slot":"113","type":"t_uint256"},{"astId":66613,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"cvParams","offset":0,"slot":"114","type":"t_struct(CVParams)66325_storage"},{"astId":66616,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalType","offset":0,"slot":"118","type":"t_enum(ProposalType)66228"},{"astId":66619,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointSystem","offset":1,"slot":"118","type":"t_enum(PointSystem)66233"},{"astId":66622,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"pointConfig","offset":0,"slot":"119","type":"t_struct(PointSystemConfig)66302_storage"},{"astId":66625,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"registryCommunity","offset":0,"slot":"120","type":"t_contract(RegistryCommunityV0_0)73556"},{"astId":66628,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"collateralVault","offset":0,"slot":"121","type":"t_contract(ICollateralVault)76982"},{"astId":66631,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"sybilScorer","offset":0,"slot":"122","type":"t_contract(ISybilScorer)70608"},{"astId":66636,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposals","offset":0,"slot":"123","type":"t_mapping(t_uint256,t_struct(Proposal)66294_storage)"},{"astId":66640,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"totalVoterStakePct","offset":0,"slot":"124","type":"t_mapping(t_address,t_uint256)"},{"astId":66645,"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":66649,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeIdToProposalId","offset":0,"slot":"126","type":"t_mapping(t_uint256,t_uint256)"},{"astId":66654,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrableConfigs","offset":0,"slot":"127","type":"t_mapping(t_uint256,t_struct(ArbitrableConfig)66316_storage)"},{"astId":70248,"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)76949":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ICollateralVault)76982":{"encoding":"inplace","label":"contract ICollateralVault","numberOfBytes":"20"},"t_contract(ISybilScorer)70608":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_contract(RegistryCommunityV0_0)73556":{"encoding":"inplace","label":"contract RegistryCommunityV0_0","numberOfBytes":"20"},"t_enum(PointSystem)66233":{"encoding":"inplace","label":"enum PointSystem","numberOfBytes":"1"},"t_enum(ProposalStatus)66253":{"encoding":"inplace","label":"enum ProposalStatus","numberOfBytes":"1"},"t_enum(ProposalType)66228":{"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)66316_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct ArbitrableConfig)","numberOfBytes":"32","value":"t_struct(ArbitrableConfig)66316_storage"},"t_mapping(t_uint256,t_struct(Proposal)66294_storage)":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => struct Proposal)","numberOfBytes":"32","value":"t_struct(Proposal)66294_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)66316_storage":{"encoding":"inplace","label":"struct ArbitrableConfig","numberOfBytes":"192","members":[{"astId":66305,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrator","offset":0,"slot":"0","type":"t_contract(IArbitrator)76949"},{"astId":66307,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"tribunalSafe","offset":0,"slot":"1","type":"t_address"},{"astId":66309,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"submitterCollateralAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":66311,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"challengerCollateralAmount","offset":0,"slot":"3","type":"t_uint256"},{"astId":66313,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"defaultRuling","offset":0,"slot":"4","type":"t_uint256"},{"astId":66315,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"defaultRulingTimeout","offset":0,"slot":"5","type":"t_uint256"}]},"t_struct(CVParams)66325_storage":{"encoding":"inplace","label":"struct CVParams","numberOfBytes":"128","members":[{"astId":66318,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"maxRatio","offset":0,"slot":"0","type":"t_uint256"},{"astId":66320,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"weight","offset":0,"slot":"1","type":"t_uint256"},{"astId":66322,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"decay","offset":0,"slot":"2","type":"t_uint256"},{"astId":66324,"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)66302_storage":{"encoding":"inplace","label":"struct PointSystemConfig","numberOfBytes":"32","members":[{"astId":66301,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"maxAmount","offset":0,"slot":"0","type":"t_uint256"}]},"t_struct(Proposal)66294_storage":{"encoding":"inplace","label":"struct Proposal","numberOfBytes":"544","members":[{"astId":66262,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalId","offset":0,"slot":"0","type":"t_uint256"},{"astId":66264,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"requestedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":66266,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"stakedAmount","offset":0,"slot":"2","type":"t_uint256"},{"astId":66268,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"convictionLast","offset":0,"slot":"3","type":"t_uint256"},{"astId":66270,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"beneficiary","offset":0,"slot":"4","type":"t_address"},{"astId":66272,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"submitter","offset":0,"slot":"5","type":"t_address"},{"astId":66274,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"requestedToken","offset":0,"slot":"6","type":"t_address"},{"astId":66276,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"blockLast","offset":0,"slot":"7","type":"t_uint256"},{"astId":66279,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"proposalStatus","offset":0,"slot":"8","type":"t_enum(ProposalStatus)66253"},{"astId":66283,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"voterStakedPoints","offset":0,"slot":"9","type":"t_mapping(t_address,t_uint256)"},{"astId":66286,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"metadata","offset":0,"slot":"10","type":"t_struct(Metadata)3098_storage"},{"astId":66289,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeInfo","offset":0,"slot":"12","type":"t_struct(ProposalDisputeInfo)66260_storage"},{"astId":66291,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"lastDisputeCompletion","offset":0,"slot":"15","type":"t_uint256"},{"astId":66293,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"arbitrableConfigVersion","offset":0,"slot":"16","type":"t_uint256"}]},"t_struct(ProposalDisputeInfo)66260_storage":{"encoding":"inplace","label":"struct ProposalDisputeInfo","numberOfBytes":"96","members":[{"astId":66255,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeId","offset":0,"slot":"0","type":"t_uint256"},{"astId":66257,"contract":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol:CVStrategyV0_0","label":"disputeTimestamp","offset":0,"slot":"1","type":"t_uint256"},{"astId":66259,"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":70250,"exportedSymbols":{"ArbitrableConfig":[66316],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[66158],"CVParams":[66325],"CVStrategyInitializeParamsV0_0":[66345],"CVStrategyInitializeParamsV0_1":[66370],"CVStrategyV0_0":[70249],"Clone":[3002],"CreateProposal":[66245],"ERC165":[57022],"ERC20":[55747],"IAllo":[2610],"IArbitrable":[76845],"IArbitrator":[76949],"ICollateralVault":[76982],"IERC165":[57228],"IPointStrategy":[66224],"ISybilScorer":[70608],"Math":[58094],"Metadata":[3098],"OwnableUpgradeable":[52200],"PassportScorer":[71080],"PointSystem":[66233],"PointSystemConfig":[66302],"Proposal":[66294],"ProposalDisputeInfo":[66260],"ProposalStatus":[66253],"ProposalSupport":[66299],"ProposalType":[66228],"RegistryCommunityV0_0":[73556],"UUPSUpgradeable":[54969],"console":[28807]},"nodeType":"SourceUnit","src":"42:60730:96","nodes":[{"id":66160,"nodeType":"PragmaDirective","src":"42:24:96","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":66162,"nodeType":"ImportDirective","src":"68:71:96","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"allo-v2-contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":66161,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"76:8:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66165,"nodeType":"ImportDirective","src":"140:82:96","nodes":[],"absolutePath":"lib/allo-v2/contracts/strategies/BaseStrategy.sol","file":"allo-v2-contracts/strategies/BaseStrategy.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":3924,"symbolAliases":[{"foreign":{"id":66163,"name":"BaseStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3923,"src":"148:12:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":66164,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"162:5:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66167,"nodeType":"ImportDirective","src":"223:85:96","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":73557,"symbolAliases":[{"foreign":{"id":66166,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"231:21:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66170,"nodeType":"ImportDirective","src":"309:87:96","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":57023,"symbolAliases":[{"foreign":{"id":66168,"name":"ERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57022,"src":"317:6:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":66169,"name":"IERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57228,"src":"325:7:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66172,"nodeType":"ImportDirective","src":"397:68:96","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","file":"@openzeppelin/contracts/token/ERC20/ERC20.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":55748,"symbolAliases":[{"foreign":{"id":66171,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55747,"src":"405:5:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66174,"nodeType":"ImportDirective","src":"466:58:96","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":76950,"symbolAliases":[{"foreign":{"id":66173,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76949,"src":"474:11:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66176,"nodeType":"ImportDirective","src":"525:58:96","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"../interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":76846,"symbolAliases":[{"foreign":{"id":66175,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76845,"src":"533:11:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66178,"nodeType":"ImportDirective","src":"584:65:96","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":66177,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"592:5:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66180,"nodeType":"ImportDirective","src":"650:46:96","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":28808,"symbolAliases":[{"foreign":{"id":66179,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28807,"src":"658:7:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66182,"nodeType":"ImportDirective","src":"697:65:96","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"@openzeppelin/contracts/utils/math/Math.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":58095,"symbolAliases":[{"foreign":{"id":66181,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58094,"src":"705:4:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66184,"nodeType":"ImportDirective","src":"763:49:96","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":70609,"symbolAliases":[{"foreign":{"id":66183,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70608,"src":"771:12:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66186,"nodeType":"ImportDirective","src":"813:88:96","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":54970,"symbolAliases":[{"foreign":{"id":66185,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54969,"src":"821:15:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66188,"nodeType":"ImportDirective","src":"902:71:96","nodes":[],"absolutePath":"pkg/contracts/src/BaseStrategyUpgradeable.sol","file":"../BaseStrategyUpgradeable.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":66159,"symbolAliases":[{"foreign":{"id":66187,"name":"BaseStrategyUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66158,"src":"910:23:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66190,"nodeType":"ImportDirective","src":"974:101:96","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":52201,"symbolAliases":[{"foreign":{"id":66189,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52200,"src":"982:18:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66192,"nodeType":"ImportDirective","src":"1076:68:96","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":76983,"symbolAliases":[{"foreign":{"id":66191,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76982,"src":"1084:16:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66194,"nodeType":"ImportDirective","src":"1145:53:96","nodes":[],"absolutePath":"pkg/contracts/src/PassportScorer.sol","file":"../PassportScorer.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":71081,"symbolAliases":[{"foreign":{"id":66193,"name":"PassportScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71080,"src":"1153:14:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66224,"nodeType":"ContractDefinition","src":"1354:343:96","nodes":[{"id":66199,"nodeType":"FunctionDefinition","src":"1385:52:96","nodes":[],"functionSelector":"6453d9c4","implemented":false,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"1394:16:96","parameters":{"id":66197,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66196,"mutability":"mutable","name":"_member","nameLocation":"1419:7:96","nodeType":"VariableDeclaration","scope":66199,"src":"1411:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66195,"name":"address","nodeType":"ElementaryTypeName","src":"1411:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1410:17:96"},"returnParameters":{"id":66198,"nodeType":"ParameterList","parameters":[],"src":"1436:0:96"},"scope":66224,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":66208,"nodeType":"FunctionDefinition","src":"1443:91:96","nodes":[],"functionSelector":"782aadff","implemented":false,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"1452:13:96","parameters":{"id":66204,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66201,"mutability":"mutable","name":"_member","nameLocation":"1474:7:96","nodeType":"VariableDeclaration","scope":66208,"src":"1466:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66200,"name":"address","nodeType":"ElementaryTypeName","src":"1466:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66203,"mutability":"mutable","name":"_amountToStake","nameLocation":"1491:14:96","nodeType":"VariableDeclaration","scope":66208,"src":"1483:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66202,"name":"uint256","nodeType":"ElementaryTypeName","src":"1483:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1465:41:96"},"returnParameters":{"id":66207,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66206,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66208,"src":"1525:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66205,"name":"uint256","nodeType":"ElementaryTypeName","src":"1525:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1524:9:96"},"scope":66224,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":66217,"nodeType":"FunctionDefinition","src":"1540:92:96","nodes":[],"functionSelector":"2ed04b2b","implemented":false,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"1549:13:96","parameters":{"id":66213,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66210,"mutability":"mutable","name":"_member","nameLocation":"1571:7:96","nodeType":"VariableDeclaration","scope":66217,"src":"1563:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66209,"name":"address","nodeType":"ElementaryTypeName","src":"1563:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66212,"mutability":"mutable","name":"_amountToUntake","nameLocation":"1588:15:96","nodeType":"VariableDeclaration","scope":66217,"src":"1580:23:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66211,"name":"uint256","nodeType":"ElementaryTypeName","src":"1580:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1562:42:96"},"returnParameters":{"id":66216,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66215,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66217,"src":"1623:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66214,"name":"uint256","nodeType":"ElementaryTypeName","src":"1623:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1622:9:96"},"scope":66224,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":66223,"nodeType":"FunctionDefinition","src":"1638:57:96","nodes":[],"functionSelector":"c3292171","implemented":false,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"1647:14:96","parameters":{"id":66218,"nodeType":"ParameterList","parameters":[],"src":"1661:2:96"},"returnParameters":{"id":66222,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66221,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66223,"src":"1682:11:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":66220,"nodeType":"UserDefinedTypeName","pathNode":{"id":66219,"name":"PointSystem","nameLocations":["1682:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"1682:11:96"},"referencedDeclaration":66233,"src":"1682:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"1681:13:96"},"scope":66224,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IPointStrategy","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[66224],"name":"IPointStrategy","nameLocation":"1364:14:96","scope":70250,"usedErrors":[]},{"id":66228,"nodeType":"EnumDefinition","src":"1699:63:96","nodes":[],"canonicalName":"ProposalType","members":[{"id":66225,"name":"Signaling","nameLocation":"1723:9:96","nodeType":"EnumValue","src":"1723:9:96"},{"id":66226,"name":"Funding","nameLocation":"1738:7:96","nodeType":"EnumValue","src":"1738:7:96"},{"id":66227,"name":"Streaming","nameLocation":"1751:9:96","nodeType":"EnumValue","src":"1751:9:96"}],"name":"ProposalType","nameLocation":"1704:12:96"},{"id":66233,"nodeType":"EnumDefinition","src":"1764:72:96","nodes":[],"canonicalName":"PointSystem","members":[{"id":66229,"name":"Fixed","nameLocation":"1787:5:96","nodeType":"EnumValue","src":"1787:5:96"},{"id":66230,"name":"Capped","nameLocation":"1798:6:96","nodeType":"EnumValue","src":"1798:6:96"},{"id":66231,"name":"Unlimited","nameLocation":"1810:9:96","nodeType":"EnumValue","src":"1810:9:96"},{"id":66232,"name":"Quadratic","nameLocation":"1825:9:96","nodeType":"EnumValue","src":"1825:9:96"}],"name":"PointSystem","nameLocation":"1769:11:96"},{"id":66245,"nodeType":"StructDefinition","src":"1838:211:96","nodes":[],"canonicalName":"CreateProposal","members":[{"constant":false,"id":66235,"mutability":"mutable","name":"poolId","nameLocation":"1901:6:96","nodeType":"VariableDeclaration","scope":66245,"src":"1893:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66234,"name":"uint256","nodeType":"ElementaryTypeName","src":"1893:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66237,"mutability":"mutable","name":"beneficiary","nameLocation":"1921:11:96","nodeType":"VariableDeclaration","scope":66245,"src":"1913:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66236,"name":"address","nodeType":"ElementaryTypeName","src":"1913:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66239,"mutability":"mutable","name":"amountRequested","nameLocation":"1980:15:96","nodeType":"VariableDeclaration","scope":66245,"src":"1972:23:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66238,"name":"uint256","nodeType":"ElementaryTypeName","src":"1972:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66241,"mutability":"mutable","name":"requestedToken","nameLocation":"2009:14:96","nodeType":"VariableDeclaration","scope":66245,"src":"2001:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66240,"name":"address","nodeType":"ElementaryTypeName","src":"2001:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66244,"mutability":"mutable","name":"metadata","nameLocation":"2038:8:96","nodeType":"VariableDeclaration","scope":66245,"src":"2029:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":66243,"nodeType":"UserDefinedTypeName","pathNode":{"id":66242,"name":"Metadata","nameLocations":["2029:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2029:8:96"},"referencedDeclaration":3098,"src":"2029:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"name":"CreateProposal","nameLocation":"1845:14:96","scope":70250,"visibility":"public"},{"id":66253,"nodeType":"EnumDefinition","src":"2051:360:96","nodes":[],"canonicalName":"ProposalStatus","members":[{"id":66246,"name":"Inactive","nameLocation":"2077:8:96","nodeType":"EnumValue","src":"2077:8:96"},{"id":66247,"name":"Active","nameLocation":"2103:6:96","nodeType":"EnumValue","src":"2103:6:96"},{"id":66248,"name":"Paused","nameLocation":"2162:6:96","nodeType":"EnumValue","src":"2162:6:96"},{"id":66249,"name":"Cancelled","nameLocation":"2224:9:96","nodeType":"EnumValue","src":"2224:9:96"},{"id":66250,"name":"Executed","nameLocation":"2273:8:96","nodeType":"EnumValue","src":"2273:8:96"},{"id":66251,"name":"Disputed","nameLocation":"2320:8:96","nodeType":"EnumValue","src":"2320:8:96"},{"id":66252,"name":"Rejected","nameLocation":"2367:8:96","nodeType":"EnumValue","src":"2367:8:96"}],"name":"ProposalStatus","nameLocation":"2056:14:96"},{"id":66260,"nodeType":"StructDefinition","src":"2413:107:96","nodes":[],"canonicalName":"ProposalDisputeInfo","members":[{"constant":false,"id":66255,"mutability":"mutable","name":"disputeId","nameLocation":"2454:9:96","nodeType":"VariableDeclaration","scope":66260,"src":"2446:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66254,"name":"uint256","nodeType":"ElementaryTypeName","src":"2446:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66257,"mutability":"mutable","name":"disputeTimestamp","nameLocation":"2477:16:96","nodeType":"VariableDeclaration","scope":66260,"src":"2469:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66256,"name":"uint256","nodeType":"ElementaryTypeName","src":"2469:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66259,"mutability":"mutable","name":"challenger","nameLocation":"2507:10:96","nodeType":"VariableDeclaration","scope":66260,"src":"2499:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66258,"name":"address","nodeType":"ElementaryTypeName","src":"2499:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"ProposalDisputeInfo","nameLocation":"2420:19:96","scope":70250,"visibility":"public"},{"id":66294,"nodeType":"StructDefinition","src":"2522:466:96","nodes":[],"canonicalName":"Proposal","members":[{"constant":false,"id":66262,"mutability":"mutable","name":"proposalId","nameLocation":"2552:10:96","nodeType":"VariableDeclaration","scope":66294,"src":"2544:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66261,"name":"uint256","nodeType":"ElementaryTypeName","src":"2544:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66264,"mutability":"mutable","name":"requestedAmount","nameLocation":"2576:15:96","nodeType":"VariableDeclaration","scope":66294,"src":"2568:23:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66263,"name":"uint256","nodeType":"ElementaryTypeName","src":"2568:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66266,"mutability":"mutable","name":"stakedAmount","nameLocation":"2605:12:96","nodeType":"VariableDeclaration","scope":66294,"src":"2597:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66265,"name":"uint256","nodeType":"ElementaryTypeName","src":"2597:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66268,"mutability":"mutable","name":"convictionLast","nameLocation":"2631:14:96","nodeType":"VariableDeclaration","scope":66294,"src":"2623:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66267,"name":"uint256","nodeType":"ElementaryTypeName","src":"2623:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66270,"mutability":"mutable","name":"beneficiary","nameLocation":"2659:11:96","nodeType":"VariableDeclaration","scope":66294,"src":"2651:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66269,"name":"address","nodeType":"ElementaryTypeName","src":"2651:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66272,"mutability":"mutable","name":"submitter","nameLocation":"2684:9:96","nodeType":"VariableDeclaration","scope":66294,"src":"2676:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66271,"name":"address","nodeType":"ElementaryTypeName","src":"2676:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66274,"mutability":"mutable","name":"requestedToken","nameLocation":"2707:14:96","nodeType":"VariableDeclaration","scope":66294,"src":"2699:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66273,"name":"address","nodeType":"ElementaryTypeName","src":"2699:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66276,"mutability":"mutable","name":"blockLast","nameLocation":"2735:9:96","nodeType":"VariableDeclaration","scope":66294,"src":"2727:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66275,"name":"uint256","nodeType":"ElementaryTypeName","src":"2727:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66279,"mutability":"mutable","name":"proposalStatus","nameLocation":"2765:14:96","nodeType":"VariableDeclaration","scope":66294,"src":"2750:29:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"typeName":{"id":66278,"nodeType":"UserDefinedTypeName","pathNode":{"id":66277,"name":"ProposalStatus","nameLocations":["2750:14:96"],"nodeType":"IdentifierPath","referencedDeclaration":66253,"src":"2750:14:96"},"referencedDeclaration":66253,"src":"2750:14:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":66283,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"2813:17:96","nodeType":"VariableDeclaration","scope":66294,"src":"2785:45:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":66282,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":66280,"name":"address","nodeType":"ElementaryTypeName","src":"2793:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"2785:27:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":66281,"name":"uint256","nodeType":"ElementaryTypeName","src":"2804:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"internal"},{"constant":false,"id":66286,"mutability":"mutable","name":"metadata","nameLocation":"2868:8:96","nodeType":"VariableDeclaration","scope":66294,"src":"2859:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":66285,"nodeType":"UserDefinedTypeName","pathNode":{"id":66284,"name":"Metadata","nameLocations":["2859:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2859:8:96"},"referencedDeclaration":3098,"src":"2859:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":66289,"mutability":"mutable","name":"disputeInfo","nameLocation":"2902:11:96","nodeType":"VariableDeclaration","scope":66294,"src":"2882:31:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage_ptr","typeString":"struct ProposalDisputeInfo"},"typeName":{"id":66288,"nodeType":"UserDefinedTypeName","pathNode":{"id":66287,"name":"ProposalDisputeInfo","nameLocations":["2882:19:96"],"nodeType":"IdentifierPath","referencedDeclaration":66260,"src":"2882:19:96"},"referencedDeclaration":66260,"src":"2882:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage_ptr","typeString":"struct ProposalDisputeInfo"}},"visibility":"internal"},{"constant":false,"id":66291,"mutability":"mutable","name":"lastDisputeCompletion","nameLocation":"2927:21:96","nodeType":"VariableDeclaration","scope":66294,"src":"2919:29:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66290,"name":"uint256","nodeType":"ElementaryTypeName","src":"2919:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66293,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"2962:23:96","nodeType":"VariableDeclaration","scope":66294,"src":"2954:31:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66292,"name":"uint256","nodeType":"ElementaryTypeName","src":"2954:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Proposal","nameLocation":"2529:8:96","scope":70250,"visibility":"public"},{"id":66299,"nodeType":"StructDefinition","src":"2990:114:96","nodes":[],"canonicalName":"ProposalSupport","members":[{"constant":false,"id":66296,"mutability":"mutable","name":"proposalId","nameLocation":"3027:10:96","nodeType":"VariableDeclaration","scope":66299,"src":"3019:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66295,"name":"uint256","nodeType":"ElementaryTypeName","src":"3019:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66298,"mutability":"mutable","name":"deltaSupport","nameLocation":"3050:12:96","nodeType":"VariableDeclaration","scope":66299,"src":"3043:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":66297,"name":"int256","nodeType":"ElementaryTypeName","src":"3043:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"name":"ProposalSupport","nameLocation":"2997:15:96","scope":70250,"visibility":"public"},{"id":66302,"nodeType":"StructDefinition","src":"3106:77:96","nodes":[],"canonicalName":"PointSystemConfig","members":[{"constant":false,"id":66301,"mutability":"mutable","name":"maxAmount","nameLocation":"3171:9:96","nodeType":"VariableDeclaration","scope":66302,"src":"3163:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66300,"name":"uint256","nodeType":"ElementaryTypeName","src":"3163:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"PointSystemConfig","nameLocation":"3113:17:96","scope":70250,"visibility":"public"},{"id":66316,"nodeType":"StructDefinition","src":"3185:221:96","nodes":[],"canonicalName":"ArbitrableConfig","members":[{"constant":false,"id":66305,"mutability":"mutable","name":"arbitrator","nameLocation":"3227:10:96","nodeType":"VariableDeclaration","scope":66316,"src":"3215:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"},"typeName":{"id":66304,"nodeType":"UserDefinedTypeName","pathNode":{"id":66303,"name":"IArbitrator","nameLocations":["3215:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":76949,"src":"3215:11:96"},"referencedDeclaration":76949,"src":"3215:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":66307,"mutability":"mutable","name":"tribunalSafe","nameLocation":"3251:12:96","nodeType":"VariableDeclaration","scope":66316,"src":"3243:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66306,"name":"address","nodeType":"ElementaryTypeName","src":"3243:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66309,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"3277:25:96","nodeType":"VariableDeclaration","scope":66316,"src":"3269:33:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66308,"name":"uint256","nodeType":"ElementaryTypeName","src":"3269:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66311,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"3316:26:96","nodeType":"VariableDeclaration","scope":66316,"src":"3308:34:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66310,"name":"uint256","nodeType":"ElementaryTypeName","src":"3308:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66313,"mutability":"mutable","name":"defaultRuling","nameLocation":"3356:13:96","nodeType":"VariableDeclaration","scope":66316,"src":"3348:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66312,"name":"uint256","nodeType":"ElementaryTypeName","src":"3348:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66315,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"3383:20:96","nodeType":"VariableDeclaration","scope":66316,"src":"3375:28:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66314,"name":"uint256","nodeType":"ElementaryTypeName","src":"3375:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"ArbitrableConfig","nameLocation":"3192:16:96","scope":70250,"visibility":"public"},{"id":66325,"nodeType":"StructDefinition","src":"3408:112:96","nodes":[],"canonicalName":"CVParams","members":[{"constant":false,"id":66318,"mutability":"mutable","name":"maxRatio","nameLocation":"3438:8:96","nodeType":"VariableDeclaration","scope":66325,"src":"3430:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66317,"name":"uint256","nodeType":"ElementaryTypeName","src":"3430:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66320,"mutability":"mutable","name":"weight","nameLocation":"3460:6:96","nodeType":"VariableDeclaration","scope":66325,"src":"3452:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66319,"name":"uint256","nodeType":"ElementaryTypeName","src":"3452:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66322,"mutability":"mutable","name":"decay","nameLocation":"3480:5:96","nodeType":"VariableDeclaration","scope":66325,"src":"3472:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66321,"name":"uint256","nodeType":"ElementaryTypeName","src":"3472:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66324,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"3499:18:96","nodeType":"VariableDeclaration","scope":66325,"src":"3491:26:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66323,"name":"uint256","nodeType":"ElementaryTypeName","src":"3491:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"CVParams","nameLocation":"3415:8:96","scope":70250,"visibility":"public"},{"id":66345,"nodeType":"StructDefinition","src":"3522:254:96","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_0","members":[{"constant":false,"id":66328,"mutability":"mutable","name":"cvParams","nameLocation":"3575:8:96","nodeType":"VariableDeclaration","scope":66345,"src":"3566:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":66327,"nodeType":"UserDefinedTypeName","pathNode":{"id":66326,"name":"CVParams","nameLocations":["3566:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"3566:8:96"},"referencedDeclaration":66325,"src":"3566:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":66331,"mutability":"mutable","name":"proposalType","nameLocation":"3602:12:96","nodeType":"VariableDeclaration","scope":66345,"src":"3589:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"typeName":{"id":66330,"nodeType":"UserDefinedTypeName","pathNode":{"id":66329,"name":"ProposalType","nameLocations":["3589:12:96"],"nodeType":"IdentifierPath","referencedDeclaration":66228,"src":"3589:12:96"},"referencedDeclaration":66228,"src":"3589:12:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":66334,"mutability":"mutable","name":"pointSystem","nameLocation":"3632:11:96","nodeType":"VariableDeclaration","scope":66345,"src":"3620:23:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":66333,"nodeType":"UserDefinedTypeName","pathNode":{"id":66332,"name":"PointSystem","nameLocations":["3620:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"3620:11:96"},"referencedDeclaration":66233,"src":"3620:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":66337,"mutability":"mutable","name":"pointConfig","nameLocation":"3667:11:96","nodeType":"VariableDeclaration","scope":66345,"src":"3649:29:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":66336,"nodeType":"UserDefinedTypeName","pathNode":{"id":66335,"name":"PointSystemConfig","nameLocations":["3649:17:96"],"nodeType":"IdentifierPath","referencedDeclaration":66302,"src":"3649:17:96"},"referencedDeclaration":66302,"src":"3649:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":66340,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3701:16:96","nodeType":"VariableDeclaration","scope":66345,"src":"3684:33:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":66339,"nodeType":"UserDefinedTypeName","pathNode":{"id":66338,"name":"ArbitrableConfig","nameLocations":["3684:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"3684:16:96"},"referencedDeclaration":66316,"src":"3684:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":66342,"mutability":"mutable","name":"registryCommunity","nameLocation":"3731:17:96","nodeType":"VariableDeclaration","scope":66345,"src":"3723:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66341,"name":"address","nodeType":"ElementaryTypeName","src":"3723:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66344,"mutability":"mutable","name":"sybilScorer","nameLocation":"3762:11:96","nodeType":"VariableDeclaration","scope":66345,"src":"3754:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66343,"name":"address","nodeType":"ElementaryTypeName","src":"3754:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_0","nameLocation":"3529:30:96","scope":70250,"visibility":"public"},{"id":66370,"nodeType":"StructDefinition","src":"3778:320:96","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_1","members":[{"constant":false,"id":66348,"mutability":"mutable","name":"cvParams","nameLocation":"3831:8:96","nodeType":"VariableDeclaration","scope":66370,"src":"3822:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":66347,"nodeType":"UserDefinedTypeName","pathNode":{"id":66346,"name":"CVParams","nameLocations":["3822:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"3822:8:96"},"referencedDeclaration":66325,"src":"3822:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":66351,"mutability":"mutable","name":"proposalType","nameLocation":"3858:12:96","nodeType":"VariableDeclaration","scope":66370,"src":"3845:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"typeName":{"id":66350,"nodeType":"UserDefinedTypeName","pathNode":{"id":66349,"name":"ProposalType","nameLocations":["3845:12:96"],"nodeType":"IdentifierPath","referencedDeclaration":66228,"src":"3845:12:96"},"referencedDeclaration":66228,"src":"3845:12:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":66354,"mutability":"mutable","name":"pointSystem","nameLocation":"3888:11:96","nodeType":"VariableDeclaration","scope":66370,"src":"3876:23:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":66353,"nodeType":"UserDefinedTypeName","pathNode":{"id":66352,"name":"PointSystem","nameLocations":["3876:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"3876:11:96"},"referencedDeclaration":66233,"src":"3876:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":66357,"mutability":"mutable","name":"pointConfig","nameLocation":"3923:11:96","nodeType":"VariableDeclaration","scope":66370,"src":"3905:29:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":66356,"nodeType":"UserDefinedTypeName","pathNode":{"id":66355,"name":"PointSystemConfig","nameLocations":["3905:17:96"],"nodeType":"IdentifierPath","referencedDeclaration":66302,"src":"3905:17:96"},"referencedDeclaration":66302,"src":"3905:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":66360,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3957:16:96","nodeType":"VariableDeclaration","scope":66370,"src":"3940:33:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":66359,"nodeType":"UserDefinedTypeName","pathNode":{"id":66358,"name":"ArbitrableConfig","nameLocations":["3940:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"3940:16:96"},"referencedDeclaration":66316,"src":"3940:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":66362,"mutability":"mutable","name":"registryCommunity","nameLocation":"3987:17:96","nodeType":"VariableDeclaration","scope":66370,"src":"3979:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66361,"name":"address","nodeType":"ElementaryTypeName","src":"3979:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66364,"mutability":"mutable","name":"sybilScorer","nameLocation":"4018:11:96","nodeType":"VariableDeclaration","scope":66370,"src":"4010:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66363,"name":"address","nodeType":"ElementaryTypeName","src":"4010:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66366,"mutability":"mutable","name":"sybilScorerThreshold","nameLocation":"4043:20:96","nodeType":"VariableDeclaration","scope":66370,"src":"4035:28:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66365,"name":"uint256","nodeType":"ElementaryTypeName","src":"4035:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66369,"mutability":"mutable","name":"initialAllowlist","nameLocation":"4079:16:96","nodeType":"VariableDeclaration","scope":66370,"src":"4069:26:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":66367,"name":"address","nodeType":"ElementaryTypeName","src":"4069:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66368,"nodeType":"ArrayTypeName","src":"4069:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_1","nameLocation":"3785:30:96","scope":70250,"visibility":"public"},{"id":70249,"nodeType":"ContractDefinition","src":"4144:56627:96","nodes":[{"id":66381,"nodeType":"ErrorDefinition","src":"4451:26:96","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4457:17:96","parameters":{"id":66380,"nodeType":"ParameterList","parameters":[],"src":"4474:2:96"}},{"id":66383,"nodeType":"ErrorDefinition","src":"4495:23:96","nodes":[],"errorSelector":"5fccb67f","name":"UserIsInactive","nameLocation":"4501:14:96","parameters":{"id":66382,"nodeType":"ParameterList","parameters":[],"src":"4515:2:96"}},{"id":66385,"nodeType":"ErrorDefinition","src":"4537:20:96","nodes":[],"errorSelector":"ed4421ad","name":"PoolIsEmpty","nameLocation":"4543:11:96","parameters":{"id":66384,"nodeType":"ParameterList","parameters":[],"src":"4554:2:96"}},{"id":66387,"nodeType":"ErrorDefinition","src":"4762:28:96","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4768:19:96","parameters":{"id":66386,"nodeType":"ParameterList","parameters":[],"src":"4787:2:96"}},{"id":66393,"nodeType":"ErrorDefinition","src":"4953:77:96","nodes":[],"errorSelector":"d64182fe","name":"NotEnoughPointsToSupport","nameLocation":"4959:24:96","parameters":{"id":66392,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66389,"mutability":"mutable","name":"pointsSupport","nameLocation":"4992:13:96","nodeType":"VariableDeclaration","scope":66393,"src":"4984:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66388,"name":"uint256","nodeType":"ElementaryTypeName","src":"4984:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66391,"mutability":"mutable","name":"pointsBalance","nameLocation":"5015:13:96","nodeType":"VariableDeclaration","scope":66393,"src":"5007:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66390,"name":"uint256","nodeType":"ElementaryTypeName","src":"5007:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4983:46:96"}},{"id":66397,"nodeType":"ErrorDefinition","src":"5151:45:96","nodes":[],"errorSelector":"44980d8f","name":"ProposalNotActive","nameLocation":"5157:17:96","parameters":{"id":66396,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66395,"mutability":"mutable","name":"_proposalId","nameLocation":"5183:11:96","nodeType":"VariableDeclaration","scope":66397,"src":"5175:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66394,"name":"uint256","nodeType":"ElementaryTypeName","src":"5175:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5174:21:96"}},{"id":66401,"nodeType":"ErrorDefinition","src":"5215:45:96","nodes":[],"errorSelector":"c1d17bef","name":"ProposalNotInList","nameLocation":"5221:17:96","parameters":{"id":66400,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66399,"mutability":"mutable","name":"_proposalId","nameLocation":"5247:11:96","nodeType":"VariableDeclaration","scope":66401,"src":"5239:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66398,"name":"uint256","nodeType":"ElementaryTypeName","src":"5239:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5238:21:96"}},{"id":66407,"nodeType":"ErrorDefinition","src":"5279:68:96","nodes":[],"errorSelector":"adebb154","name":"ProposalSupportDuplicated","nameLocation":"5285:25:96","parameters":{"id":66406,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66403,"mutability":"mutable","name":"_proposalId","nameLocation":"5319:11:96","nodeType":"VariableDeclaration","scope":66407,"src":"5311:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66402,"name":"uint256","nodeType":"ElementaryTypeName","src":"5311:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66405,"mutability":"mutable","name":"index","nameLocation":"5340:5:96","nodeType":"VariableDeclaration","scope":66407,"src":"5332:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66404,"name":"uint256","nodeType":"ElementaryTypeName","src":"5332:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5310:36:96"}},{"id":66409,"nodeType":"ErrorDefinition","src":"5365:40:96","nodes":[],"errorSelector":"cce79308","name":"ConvictionUnderMinimumThreshold","nameLocation":"5371:31:96","parameters":{"id":66408,"nodeType":"ParameterList","parameters":[],"src":"5402:2:96"}},{"id":66411,"nodeType":"ErrorDefinition","src":"5424:29:96","nodes":[],"errorSelector":"af0916a2","name":"OnlyCommunityAllowed","nameLocation":"5430:20:96","parameters":{"id":66410,"nodeType":"ParameterList","parameters":[],"src":"5450:2:96"}},{"id":66413,"nodeType":"ErrorDefinition","src":"5587:24:96","nodes":[],"errorSelector":"e860ec7e","name":"OnlyCouncilSafe","nameLocation":"5593:15:96","parameters":{"id":66412,"nodeType":"ParameterList","parameters":[],"src":"5608:2:96"}},{"id":66415,"nodeType":"ErrorDefinition","src":"5616:32:96","nodes":[],"errorSelector":"5b96b588","name":"UserCannotExecuteAction","nameLocation":"5622:23:96","parameters":{"id":66414,"nodeType":"ParameterList","parameters":[],"src":"5645:2:96"}},{"id":66417,"nodeType":"ErrorDefinition","src":"5734:23:96","nodes":[],"errorSelector":"2eef310a","name":"OnlyArbitrator","nameLocation":"5740:14:96","parameters":{"id":66416,"nodeType":"ParameterList","parameters":[],"src":"5754:2:96"}},{"id":66421,"nodeType":"ErrorDefinition","src":"5762:47:96","nodes":[],"errorSelector":"96023952","name":"ProposalNotDisputed","nameLocation":"5768:19:96","parameters":{"id":66420,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66419,"mutability":"mutable","name":"_proposalId","nameLocation":"5796:11:96","nodeType":"VariableDeclaration","scope":66421,"src":"5788:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66418,"name":"uint256","nodeType":"ElementaryTypeName","src":"5788:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5787:21:96"}},{"id":66427,"nodeType":"ErrorDefinition","src":"5853:55:96","nodes":[],"errorSelector":"8a89b922","name":"OnlySubmitter","nameLocation":"5859:13:96","parameters":{"id":66426,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66423,"mutability":"mutable","name":"submitter","nameLocation":"5881:9:96","nodeType":"VariableDeclaration","scope":66427,"src":"5873:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66422,"name":"address","nodeType":"ElementaryTypeName","src":"5873:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66425,"mutability":"mutable","name":"sender","nameLocation":"5900:6:96","nodeType":"VariableDeclaration","scope":66427,"src":"5892:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66424,"name":"address","nodeType":"ElementaryTypeName","src":"5892:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5872:35:96"}},{"id":66429,"nodeType":"ErrorDefinition","src":"5994:28:96","nodes":[],"errorSelector":"dd466dd0","name":"DefaultRulingNotSet","nameLocation":"6000:19:96","parameters":{"id":66428,"nodeType":"ParameterList","parameters":[],"src":"6019:2:96"}},{"id":66431,"nodeType":"ErrorDefinition","src":"6206:30:96","nodes":[],"errorSelector":"3e668d03","name":"AShouldBeUnderTwo_128","nameLocation":"6212:21:96","parameters":{"id":66430,"nodeType":"ParameterList","parameters":[],"src":"6233:2:96"}},{"id":66433,"nodeType":"ErrorDefinition","src":"6241:29:96","nodes":[],"errorSelector":"70b7a2d9","name":"BShouldBeLessTwo_128","nameLocation":"6247:20:96","parameters":{"id":66432,"nodeType":"ParameterList","parameters":[],"src":"6267:2:96"}},{"id":66435,"nodeType":"ErrorDefinition","src":"6275:34:96","nodes":[],"errorSelector":"ff5b3cef","name":"AShouldBeUnderOrEqTwo_128","nameLocation":"6281:25:96","parameters":{"id":66434,"nodeType":"ParameterList","parameters":[],"src":"6306:2:96"}},{"id":66442,"nodeType":"EventDefinition","src":"6481:73:96","nodes":[],"anonymous":false,"eventSelector":"e5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b","name":"InitializedCV","nameLocation":"6487:13:96","parameters":{"id":66441,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66437,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6509:6:96","nodeType":"VariableDeclaration","scope":66442,"src":"6501:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66436,"name":"uint256","nodeType":"ElementaryTypeName","src":"6501:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66440,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6548:4:96","nodeType":"VariableDeclaration","scope":66442,"src":"6517:35:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$66345_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":66439,"nodeType":"UserDefinedTypeName","pathNode":{"id":66438,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["6517:30:96"],"nodeType":"IdentifierPath","referencedDeclaration":66345,"src":"6517:30:96"},"referencedDeclaration":66345,"src":"6517:30:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$66345_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"src":"6500:53:96"}},{"id":66449,"nodeType":"EventDefinition","src":"6559:74:96","nodes":[],"anonymous":false,"eventSelector":"b6a062fc5f19aa17637bf61ab001ce3e5ceb67a5bd51d9753281e41df94f3fd3","name":"InitializedCV2","nameLocation":"6565:14:96","parameters":{"id":66448,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66444,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6588:6:96","nodeType":"VariableDeclaration","scope":66449,"src":"6580:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66443,"name":"uint256","nodeType":"ElementaryTypeName","src":"6580:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66447,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6627:4:96","nodeType":"VariableDeclaration","scope":66449,"src":"6596:35:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":66446,"nodeType":"UserDefinedTypeName","pathNode":{"id":66445,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["6596:30:96"],"nodeType":"IdentifierPath","referencedDeclaration":66370,"src":"6596:30:96"},"referencedDeclaration":66370,"src":"6596:30:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"6579:53:96"}},{"id":66457,"nodeType":"EventDefinition","src":"6638:75:96","nodes":[],"anonymous":false,"eventSelector":"a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847","name":"Distributed","nameLocation":"6644:11:96","parameters":{"id":66456,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66451,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6664:10:96","nodeType":"VariableDeclaration","scope":66457,"src":"6656:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66450,"name":"uint256","nodeType":"ElementaryTypeName","src":"6656:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66453,"indexed":false,"mutability":"mutable","name":"beneficiary","nameLocation":"6684:11:96","nodeType":"VariableDeclaration","scope":66457,"src":"6676:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66452,"name":"address","nodeType":"ElementaryTypeName","src":"6676:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66455,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6705:6:96","nodeType":"VariableDeclaration","scope":66457,"src":"6697:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66454,"name":"uint256","nodeType":"ElementaryTypeName","src":"6697:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6655:57:96"}},{"id":66463,"nodeType":"EventDefinition","src":"6718:58:96","nodes":[],"anonymous":false,"eventSelector":"fcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b","name":"ProposalCreated","nameLocation":"6724:15:96","parameters":{"id":66462,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66459,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6748:6:96","nodeType":"VariableDeclaration","scope":66463,"src":"6740:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66458,"name":"uint256","nodeType":"ElementaryTypeName","src":"6740:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66461,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6764:10:96","nodeType":"VariableDeclaration","scope":66463,"src":"6756:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66460,"name":"uint256","nodeType":"ElementaryTypeName","src":"6756:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6739:36:96"}},{"id":66467,"nodeType":"EventDefinition","src":"6781:42:96","nodes":[],"anonymous":false,"eventSelector":"46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339","name":"PoolAmountIncreased","nameLocation":"6787:19:96","parameters":{"id":66466,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66465,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6815:6:96","nodeType":"VariableDeclaration","scope":66467,"src":"6807:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66464,"name":"uint256","nodeType":"ElementaryTypeName","src":"6807:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6806:16:96"}},{"id":66471,"nodeType":"EventDefinition","src":"6828:40:96","nodes":[],"anonymous":false,"eventSelector":"1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b","name":"PointsDeactivated","nameLocation":"6834:17:96","parameters":{"id":66470,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66469,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6860:6:96","nodeType":"VariableDeclaration","scope":66471,"src":"6852:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66468,"name":"address","nodeType":"ElementaryTypeName","src":"6852:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6851:16:96"}},{"id":66479,"nodeType":"EventDefinition","src":"6873:85:96","nodes":[],"anonymous":false,"eventSelector":"0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a","name":"PowerIncreased","nameLocation":"6879:14:96","parameters":{"id":66478,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66473,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6902:6:96","nodeType":"VariableDeclaration","scope":66479,"src":"6894:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66472,"name":"address","nodeType":"ElementaryTypeName","src":"6894:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66475,"indexed":false,"mutability":"mutable","name":"tokensStaked","nameLocation":"6918:12:96","nodeType":"VariableDeclaration","scope":66479,"src":"6910:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66474,"name":"uint256","nodeType":"ElementaryTypeName","src":"6910:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66477,"indexed":false,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"6940:16:96","nodeType":"VariableDeclaration","scope":66479,"src":"6932:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66476,"name":"uint256","nodeType":"ElementaryTypeName","src":"6932:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6893:64:96"}},{"id":66487,"nodeType":"EventDefinition","src":"6963:87:96","nodes":[],"anonymous":false,"eventSelector":"70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1","name":"PowerDecreased","nameLocation":"6969:14:96","parameters":{"id":66486,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66481,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6992:6:96","nodeType":"VariableDeclaration","scope":66487,"src":"6984:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66480,"name":"address","nodeType":"ElementaryTypeName","src":"6984:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66483,"indexed":false,"mutability":"mutable","name":"tokensUnStaked","nameLocation":"7008:14:96","nodeType":"VariableDeclaration","scope":66487,"src":"7000:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66482,"name":"uint256","nodeType":"ElementaryTypeName","src":"7000:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66485,"indexed":false,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"7032:16:96","nodeType":"VariableDeclaration","scope":66487,"src":"7024:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66484,"name":"uint256","nodeType":"ElementaryTypeName","src":"7024:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6983:66:96"}},{"id":66499,"nodeType":"EventDefinition","src":"7055:134:96","nodes":[],"anonymous":false,"eventSelector":"0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f","name":"SupportAdded","nameLocation":"7061:12:96","parameters":{"id":66498,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66489,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"7091:4:96","nodeType":"VariableDeclaration","scope":66499,"src":"7083:12:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66488,"name":"address","nodeType":"ElementaryTypeName","src":"7083:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66491,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7105:10:96","nodeType":"VariableDeclaration","scope":66499,"src":"7097:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66490,"name":"uint256","nodeType":"ElementaryTypeName","src":"7097:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66493,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"7125:6:96","nodeType":"VariableDeclaration","scope":66499,"src":"7117:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66492,"name":"uint256","nodeType":"ElementaryTypeName","src":"7117:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66495,"indexed":false,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"7141:17:96","nodeType":"VariableDeclaration","scope":66499,"src":"7133:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66494,"name":"uint256","nodeType":"ElementaryTypeName","src":"7133:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66497,"indexed":false,"mutability":"mutable","name":"convictionLast","nameLocation":"7168:14:96","nodeType":"VariableDeclaration","scope":66499,"src":"7160:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66496,"name":"uint256","nodeType":"ElementaryTypeName","src":"7160:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7073:115:96"}},{"id":66504,"nodeType":"EventDefinition","src":"7194:41:96","nodes":[],"anonymous":false,"eventSelector":"ec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc","name":"CVParamsUpdated","nameLocation":"7200:15:96","parameters":{"id":66503,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66502,"indexed":false,"mutability":"mutable","name":"cvParams","nameLocation":"7225:8:96","nodeType":"VariableDeclaration","scope":66504,"src":"7216:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":66501,"nodeType":"UserDefinedTypeName","pathNode":{"id":66500,"name":"CVParams","nameLocations":["7216:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"7216:8:96"},"referencedDeclaration":66325,"src":"7216:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"7215:19:96"}},{"id":66508,"nodeType":"EventDefinition","src":"7240:49:96","nodes":[],"anonymous":false,"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"7246:15:96","parameters":{"id":66507,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66506,"indexed":false,"mutability":"mutable","name":"registryCommunity","nameLocation":"7270:17:96","nodeType":"VariableDeclaration","scope":66508,"src":"7262:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66505,"name":"address","nodeType":"ElementaryTypeName","src":"7262:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7261:27:96"}},{"id":66523,"nodeType":"EventDefinition","src":"7294:195:96","nodes":[],"anonymous":false,"eventSelector":"034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d","name":"ProposalDisputed","nameLocation":"7300:16:96","parameters":{"id":66522,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66511,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7338:10:96","nodeType":"VariableDeclaration","scope":66523,"src":"7326:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"},"typeName":{"id":66510,"nodeType":"UserDefinedTypeName","pathNode":{"id":66509,"name":"IArbitrator","nameLocations":["7326:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":76949,"src":"7326:11:96"},"referencedDeclaration":76949,"src":"7326:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":66513,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7366:10:96","nodeType":"VariableDeclaration","scope":66523,"src":"7358:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66512,"name":"uint256","nodeType":"ElementaryTypeName","src":"7358:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66515,"indexed":false,"mutability":"mutable","name":"disputeId","nameLocation":"7394:9:96","nodeType":"VariableDeclaration","scope":66523,"src":"7386:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66514,"name":"uint256","nodeType":"ElementaryTypeName","src":"7386:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66517,"indexed":false,"mutability":"mutable","name":"challenger","nameLocation":"7421:10:96","nodeType":"VariableDeclaration","scope":66523,"src":"7413:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66516,"name":"address","nodeType":"ElementaryTypeName","src":"7413:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66519,"indexed":false,"mutability":"mutable","name":"context","nameLocation":"7448:7:96","nodeType":"VariableDeclaration","scope":66523,"src":"7441:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66518,"name":"string","nodeType":"ElementaryTypeName","src":"7441:6:96","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66521,"indexed":false,"mutability":"mutable","name":"timestamp","nameLocation":"7473:9:96","nodeType":"VariableDeclaration","scope":66523,"src":"7465:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66520,"name":"uint256","nodeType":"ElementaryTypeName","src":"7465:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7316:172:96"}},{"id":66531,"nodeType":"EventDefinition","src":"7494:88:96","nodes":[],"anonymous":false,"eventSelector":"dc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f","name":"TribunaSafeRegistered","nameLocation":"7500:21:96","parameters":{"id":66530,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66525,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7530:8:96","nodeType":"VariableDeclaration","scope":66531,"src":"7522:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66524,"name":"address","nodeType":"ElementaryTypeName","src":"7522:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66527,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7548:10:96","nodeType":"VariableDeclaration","scope":66531,"src":"7540:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66526,"name":"address","nodeType":"ElementaryTypeName","src":"7540:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66529,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7568:12:96","nodeType":"VariableDeclaration","scope":66531,"src":"7560:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66528,"name":"address","nodeType":"ElementaryTypeName","src":"7560:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7521:60:96"}},{"id":66535,"nodeType":"EventDefinition","src":"7587:44:96","nodes":[],"anonymous":false,"eventSelector":"416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c","name":"ProposalCancelled","nameLocation":"7593:17:96","parameters":{"id":66534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66533,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7619:10:96","nodeType":"VariableDeclaration","scope":66535,"src":"7611:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66532,"name":"uint256","nodeType":"ElementaryTypeName","src":"7611:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7610:20:96"}},{"id":66552,"nodeType":"EventDefinition","src":"7636:302:96","nodes":[],"anonymous":false,"eventSelector":"e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53","name":"ArbitrableConfigUpdated","nameLocation":"7642:23:96","parameters":{"id":66551,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66537,"indexed":false,"mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"7683:30:96","nodeType":"VariableDeclaration","scope":66552,"src":"7675:38:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66536,"name":"uint256","nodeType":"ElementaryTypeName","src":"7675:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66540,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7735:10:96","nodeType":"VariableDeclaration","scope":66552,"src":"7723:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"},"typeName":{"id":66539,"nodeType":"UserDefinedTypeName","pathNode":{"id":66538,"name":"IArbitrator","nameLocations":["7723:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":76949,"src":"7723:11:96"},"referencedDeclaration":76949,"src":"7723:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":66542,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7763:12:96","nodeType":"VariableDeclaration","scope":66552,"src":"7755:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66541,"name":"address","nodeType":"ElementaryTypeName","src":"7755:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66544,"indexed":false,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"7793:25:96","nodeType":"VariableDeclaration","scope":66552,"src":"7785:33:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66543,"name":"uint256","nodeType":"ElementaryTypeName","src":"7785:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66546,"indexed":false,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"7836:26:96","nodeType":"VariableDeclaration","scope":66552,"src":"7828:34:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66545,"name":"uint256","nodeType":"ElementaryTypeName","src":"7828:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66548,"indexed":false,"mutability":"mutable","name":"defaultRuling","nameLocation":"7880:13:96","nodeType":"VariableDeclaration","scope":66552,"src":"7872:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66547,"name":"uint256","nodeType":"ElementaryTypeName","src":"7872:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66550,"indexed":false,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"7911:20:96","nodeType":"VariableDeclaration","scope":66552,"src":"7903:28:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66549,"name":"uint256","nodeType":"ElementaryTypeName","src":"7903:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7665:272:96"}},{"id":66559,"nodeType":"EventDefinition","src":"7943:65:96","nodes":[],"anonymous":false,"eventSelector":"d418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e","name":"AllowlistMembersRemoved","nameLocation":"7949:23:96","parameters":{"id":66558,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66554,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"7981:6:96","nodeType":"VariableDeclaration","scope":66559,"src":"7973:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66553,"name":"uint256","nodeType":"ElementaryTypeName","src":"7973:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66557,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"7999:7:96","nodeType":"VariableDeclaration","scope":66559,"src":"7989:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":66555,"name":"address","nodeType":"ElementaryTypeName","src":"7989:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66556,"nodeType":"ArrayTypeName","src":"7989:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"7972:35:96"}},{"id":66566,"nodeType":"EventDefinition","src":"8013:63:96","nodes":[],"anonymous":false,"eventSelector":"7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a","name":"AllowlistMembersAdded","nameLocation":"8019:21:96","parameters":{"id":66565,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66561,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"8049:6:96","nodeType":"VariableDeclaration","scope":66566,"src":"8041:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66560,"name":"uint256","nodeType":"ElementaryTypeName","src":"8041:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66564,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"8067:7:96","nodeType":"VariableDeclaration","scope":66566,"src":"8057:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":66562,"name":"address","nodeType":"ElementaryTypeName","src":"8057:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66563,"nodeType":"ArrayTypeName","src":"8057:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"8040:35:96"}},{"id":66570,"nodeType":"EventDefinition","src":"8081:46:96","nodes":[],"anonymous":false,"eventSelector":"2667a0cd99dbc787d1d2596efe938cf43dfe83e8b8ddeb70e28007c09ff33485","name":"SybilScorerUpdated","nameLocation":"8087:18:96","parameters":{"id":66569,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66568,"indexed":false,"mutability":"mutable","name":"sybilScorer","nameLocation":"8114:11:96","nodeType":"VariableDeclaration","scope":66570,"src":"8106:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66567,"name":"address","nodeType":"ElementaryTypeName","src":"8106:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8105:21:96"}},{"id":66573,"nodeType":"VariableDeclaration","src":"8501:38:96","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"8524:7:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66571,"name":"string","nodeType":"ElementaryTypeName","src":"8501:6:96","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":66572,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8534:5:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":66576,"nodeType":"VariableDeclaration","src":"8545:36:96","nodes":[],"constant":true,"functionSelector":"0f529ba2","mutability":"constant","name":"D","nameLocation":"8569:1:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66574,"name":"uint256","nodeType":"ElementaryTypeName","src":"8545:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030303030","id":66575,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8573:8:96","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"value":"10000000"},"visibility":"public"},{"id":66579,"nodeType":"VariableDeclaration","src":"8595:71:96","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"8621:7:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66577,"name":"uint256","nodeType":"ElementaryTypeName","src":"8595:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313030303030303030303030303030303030303030303030303030303030303030","id":66578,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8631:35:96","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"value":"0x100000000000000000000000000000000"},"visibility":"internal"},{"id":66582,"nodeType":"VariableDeclaration","src":"8682:70:96","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"8708:7:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66580,"name":"uint256","nodeType":"ElementaryTypeName","src":"8682:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830303030303030303030303030303030303030303030303030303030303030","id":66581,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8718:34:96","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"value":"0x80000000000000000000000000000000"},"visibility":"internal"},{"id":66585,"nodeType":"VariableDeclaration","src":"8768:54:96","nodes":[],"constant":true,"mutability":"constant","name":"TWO_64","nameLocation":"8794:6:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66583,"name":"uint256","nodeType":"ElementaryTypeName","src":"8768:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030303030303030303030303030","id":66584,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8803:19:96","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"value":"0x10000000000000000"},"visibility":"internal"},{"id":66588,"nodeType":"VariableDeclaration","src":"8837:49:96","nodes":[],"constant":true,"functionSelector":"406244d8","mutability":"constant","name":"MAX_STAKED_PROPOSALS","nameLocation":"8861:20:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66586,"name":"uint256","nodeType":"ElementaryTypeName","src":"8837:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130","id":66587,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8884:2:96","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"visibility":"public"},{"id":66591,"nodeType":"VariableDeclaration","src":"8972:42:96","nodes":[],"constant":true,"functionSelector":"626c47e8","mutability":"constant","name":"RULING_OPTIONS","nameLocation":"8996:14:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66589,"name":"uint256","nodeType":"ElementaryTypeName","src":"8972:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"33","id":66590,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9013:1:96","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"visibility":"public"},{"id":66594,"nodeType":"VariableDeclaration","src":"9020:54:96","nodes":[],"constant":true,"functionSelector":"f5be3f7c","mutability":"constant","name":"DISPUTE_COOLDOWN_SEC","nameLocation":"9044:20:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66592,"name":"uint256","nodeType":"ElementaryTypeName","src":"9020:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"32","id":66593,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9067:7:96","subdenomination":"hours","typeDescriptions":{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"},"value":"2"},"visibility":"public"},{"id":66596,"nodeType":"VariableDeclaration","src":"9081:40:96","nodes":[],"constant":false,"mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"9098:23:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66595,"name":"address","nodeType":"ElementaryTypeName","src":"9081:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":66598,"nodeType":"VariableDeclaration","src":"9169:47:96","nodes":[],"constant":false,"mutability":"mutable","name":"surpressStateMutabilityWarning","nameLocation":"9186:30:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66597,"name":"uint256","nodeType":"ElementaryTypeName","src":"9169:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":66600,"nodeType":"VariableDeclaration","src":"9260:25:96","nodes":[],"constant":false,"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"9275:10:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66599,"name":"uint256","nodeType":"ElementaryTypeName","src":"9260:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":66602,"nodeType":"VariableDeclaration","src":"9291:26:96","nodes":[],"constant":false,"functionSelector":"a28889e1","mutability":"mutable","name":"disputeCount","nameLocation":"9305:12:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":66601,"name":"uint64","nodeType":"ElementaryTypeName","src":"9291:6:96","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"public"},{"id":66604,"nodeType":"VariableDeclaration","src":"9323:30:96","nodes":[],"constant":false,"functionSelector":"0c0512e9","mutability":"mutable","name":"proposalCounter","nameLocation":"9338:15:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66603,"name":"uint256","nodeType":"ElementaryTypeName","src":"9323:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":66606,"nodeType":"VariableDeclaration","src":"9359:45:96","nodes":[],"constant":false,"functionSelector":"125fd1d9","mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"9374:30:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66605,"name":"uint256","nodeType":"ElementaryTypeName","src":"9359:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":66608,"nodeType":"VariableDeclaration","src":"9411:26:96","nodes":[],"constant":false,"functionSelector":"817b1cd2","mutability":"mutable","name":"totalStaked","nameLocation":"9426:11:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66607,"name":"uint256","nodeType":"ElementaryTypeName","src":"9411:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":66610,"nodeType":"VariableDeclaration","src":"9443:35:96","nodes":[],"constant":false,"functionSelector":"aba9ffee","mutability":"mutable","name":"totalPointsActivated","nameLocation":"9458:20:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66609,"name":"uint256","nodeType":"ElementaryTypeName","src":"9443:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":66613,"nodeType":"VariableDeclaration","src":"9485:24:96","nodes":[],"constant":false,"functionSelector":"2506b870","mutability":"mutable","name":"cvParams","nameLocation":"9501:8:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams"},"typeName":{"id":66612,"nodeType":"UserDefinedTypeName","pathNode":{"id":66611,"name":"CVParams","nameLocations":["9485:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"9485:8:96"},"referencedDeclaration":66325,"src":"9485:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"public"},{"id":66616,"nodeType":"VariableDeclaration","src":"9556:32:96","nodes":[],"constant":false,"functionSelector":"351d9f96","mutability":"mutable","name":"proposalType","nameLocation":"9576:12:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"typeName":{"id":66615,"nodeType":"UserDefinedTypeName","pathNode":{"id":66614,"name":"ProposalType","nameLocations":["9556:12:96"],"nodeType":"IdentifierPath","referencedDeclaration":66228,"src":"9556:12:96"},"referencedDeclaration":66228,"src":"9556:12:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"visibility":"public"},{"id":66619,"nodeType":"VariableDeclaration","src":"9647:30:96","nodes":[],"constant":false,"functionSelector":"2dbd6fdd","mutability":"mutable","name":"pointSystem","nameLocation":"9666:11:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":66618,"nodeType":"UserDefinedTypeName","pathNode":{"id":66617,"name":"PointSystem","nameLocations":["9647:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"9647:11:96"},"referencedDeclaration":66233,"src":"9647:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"public"},{"id":66622,"nodeType":"VariableDeclaration","src":"9683:36:96","nodes":[],"constant":false,"functionSelector":"a47ff7e5","mutability":"mutable","name":"pointConfig","nameLocation":"9708:11:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage","typeString":"struct PointSystemConfig"},"typeName":{"id":66621,"nodeType":"UserDefinedTypeName","pathNode":{"id":66620,"name":"PointSystemConfig","nameLocations":["9683:17:96"],"nodeType":"IdentifierPath","referencedDeclaration":66302,"src":"9683:17:96"},"referencedDeclaration":66302,"src":"9683:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"public"},{"id":66625,"nodeType":"VariableDeclaration","src":"9752:46:96","nodes":[],"constant":false,"functionSelector":"6003e414","mutability":"mutable","name":"registryCommunity","nameLocation":"9781:17:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":66624,"nodeType":"UserDefinedTypeName","pathNode":{"id":66623,"name":"RegistryCommunityV0_0","nameLocations":["9752:21:96"],"nodeType":"IdentifierPath","referencedDeclaration":73556,"src":"9752:21:96"},"referencedDeclaration":73556,"src":"9752:21:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"visibility":"public"},{"id":66628,"nodeType":"VariableDeclaration","src":"9805:39:96","nodes":[],"constant":false,"functionSelector":"0bece79c","mutability":"mutable","name":"collateralVault","nameLocation":"9829:15:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"},"typeName":{"id":66627,"nodeType":"UserDefinedTypeName","pathNode":{"id":66626,"name":"ICollateralVault","nameLocations":["9805:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":76982,"src":"9805:16:96"},"referencedDeclaration":76982,"src":"9805:16:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"visibility":"public"},{"id":66631,"nodeType":"VariableDeclaration","src":"9850:31:96","nodes":[],"constant":false,"functionSelector":"b6c61f31","mutability":"mutable","name":"sybilScorer","nameLocation":"9870:11:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"},"typeName":{"id":66630,"nodeType":"UserDefinedTypeName","pathNode":{"id":66629,"name":"ISybilScorer","nameLocations":["9850:12:96"],"nodeType":"IdentifierPath","referencedDeclaration":70608,"src":"9850:12:96"},"referencedDeclaration":70608,"src":"9850:12:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"visibility":"public"},{"id":66636,"nodeType":"VariableDeclaration","src":"9948:45:96","nodes":[],"constant":false,"functionSelector":"013cf08b","mutability":"mutable","name":"proposals","nameLocation":"9984:9:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"typeName":{"id":66635,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":66632,"name":"uint256","nodeType":"ElementaryTypeName","src":"9956:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9948:28:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":66634,"nodeType":"UserDefinedTypeName","pathNode":{"id":66633,"name":"Proposal","nameLocations":["9967:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"9967:8:96"},"referencedDeclaration":66294,"src":"9967:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}}},"visibility":"public"},{"id":66640,"nodeType":"VariableDeclaration","src":"10049:53:96","nodes":[],"constant":false,"functionSelector":"5db64b99","mutability":"mutable","name":"totalVoterStakePct","nameLocation":"10084:18:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":66639,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":66637,"name":"address","nodeType":"ElementaryTypeName","src":"10057:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"10049:27:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":66638,"name":"uint256","nodeType":"ElementaryTypeName","src":"10068:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":66645,"nodeType":"VariableDeclaration","src":"10140:57:96","nodes":[],"constant":false,"functionSelector":"868c57b8","mutability":"mutable","name":"voterStakedProposals","nameLocation":"10177:20:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"typeName":{"id":66644,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":66641,"name":"address","nodeType":"ElementaryTypeName","src":"10148:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"10140:29:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"baseType":{"id":66642,"name":"uint256","nodeType":"ElementaryTypeName","src":"10159:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66643,"nodeType":"ArrayTypeName","src":"10159:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"visibility":"public"},{"id":66649,"nodeType":"VariableDeclaration","src":"10235:56:96","nodes":[],"constant":false,"functionSelector":"255ffb38","mutability":"mutable","name":"disputeIdToProposalId","nameLocation":"10270:21:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"typeName":{"id":66648,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":66646,"name":"uint256","nodeType":"ElementaryTypeName","src":"10243:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"10235:27:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":66647,"name":"uint256","nodeType":"ElementaryTypeName","src":"10254:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":66654,"nodeType":"VariableDeclaration","src":"10297:61:96","nodes":[],"constant":false,"functionSelector":"41bb7605","mutability":"mutable","name":"arbitrableConfigs","nameLocation":"10341:17:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"typeName":{"id":66653,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":66650,"name":"uint256","nodeType":"ElementaryTypeName","src":"10305:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"10297:36:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":66652,"nodeType":"UserDefinedTypeName","pathNode":{"id":66651,"name":"ArbitrableConfig","nameLocations":["10316:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"10316:16:96"},"referencedDeclaration":66316,"src":"10316:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}}},"visibility":"public"},{"id":66678,"nodeType":"FunctionDefinition","src":"10610:222:96","nodes":[],"body":{"id":66677,"nodeType":"Block","src":"10717:115:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":66668,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66656,"src":"10738:5:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"43565374726174656779","id":66669,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10745:12:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},"value":"CVStrategy"},{"id":66670,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66660,"src":"10759:5:96","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":66665,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10727:5:96","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$70249_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":66667,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10733:4:96","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":65607,"src":"10727:10:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (address,string memory,address)"}},"id":66671,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10727:38:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66672,"nodeType":"ExpressionStatement","src":"10727:38:96"},{"expression":{"id":66675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66673,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66596,"src":"10775:23:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66674,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66658,"src":"10801:24:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10775:50:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66676,"nodeType":"ExpressionStatement","src":"10775:50:96"}]},"functionSelector":"184b9559","implemented":true,"kind":"function","modifiers":[{"id":66663,"kind":"modifierInvocation","modifierName":{"id":66662,"name":"initializer","nameLocations":["10705:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":52351,"src":"10705:11:96"},"nodeType":"ModifierInvocation","src":"10705:11:96"}],"name":"init","nameLocation":"10619:4:96","parameters":{"id":66661,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66656,"mutability":"mutable","name":"_allo","nameLocation":"10632:5:96","nodeType":"VariableDeclaration","scope":66678,"src":"10624:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66655,"name":"address","nodeType":"ElementaryTypeName","src":"10624:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66658,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10647:24:96","nodeType":"VariableDeclaration","scope":66678,"src":"10639:32:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66657,"name":"address","nodeType":"ElementaryTypeName","src":"10639:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66660,"mutability":"mutable","name":"owner","nameLocation":"10681:5:96","nodeType":"VariableDeclaration","scope":66678,"src":"10673:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66659,"name":"address","nodeType":"ElementaryTypeName","src":"10673:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10623:64:96"},"returnParameters":{"id":66664,"nodeType":"ParameterList","parameters":[],"src":"10717:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66724,"nodeType":"FunctionDefinition","src":"10838:826:96","nodes":[],"body":{"id":66723,"nodeType":"Block","src":"10914:750:96","nodes":[],"statements":[{"expression":{"id":66693,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":66686,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"10982:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66688,"indexExpression":{"id":66687,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11000:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10982:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66689,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"11032:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"10982:60:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66691,"name":"newSafeArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66680,"src":"11057:17:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66690,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76949,"src":"11045:11:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IArbitrator_$76949_$","typeString":"type(contract IArbitrator)"}},"id":66692,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11045:30:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"src":"10982:93:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"id":66694,"nodeType":"ExpressionStatement","src":"10982:93:96"},{"eventCall":{"arguments":[{"id":66696,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11127:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66697,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"11171:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66699,"indexExpression":{"id":66698,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11189:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11171:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66700,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11221:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"11171:60:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},{"expression":{"baseExpression":{"id":66701,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"11245:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66703,"indexExpression":{"id":66702,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11263:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11245:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66704,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11295:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"11245:62:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":66705,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"11321:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66707,"indexExpression":{"id":66706,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11339:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11321:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66708,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11371:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"11321:75:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66709,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"11410:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66711,"indexExpression":{"id":66710,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11428:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11410:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66712,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11460:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"11410:76:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66713,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"11500:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66715,"indexExpression":{"id":66714,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11518:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11500:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11550:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"11500:63:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66717,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"11577:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66719,"indexExpression":{"id":66718,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11595:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11577:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66720,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11627:20:96","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":66315,"src":"11577:70:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$76949","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":66695,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66552,"src":"11090:23:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$76949_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":66721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11090:567:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66722,"nodeType":"EmitStatement","src":"11085:572:96"}]},"functionSelector":"f4fe2556","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":66683,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10911:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":66684,"kind":"modifierInvocation","modifierName":{"id":66682,"name":"reinitializer","nameLocations":["10897:13:96"],"nodeType":"IdentifierPath","referencedDeclaration":52384,"src":"10897:13:96"},"nodeType":"ModifierInvocation","src":"10897:16:96"}],"name":"init2","nameLocation":"10847:5:96","parameters":{"id":66681,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66680,"mutability":"mutable","name":"newSafeArbitrator","nameLocation":"10861:17:96","nodeType":"VariableDeclaration","scope":66724,"src":"10853:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66679,"name":"address","nodeType":"ElementaryTypeName","src":"10853:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10852:27:96"},"returnParameters":{"id":66685,"nodeType":"ParameterList","parameters":[],"src":"10914:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66832,"nodeType":"FunctionDefinition","src":"11670:1036:96","nodes":[],"body":{"id":66831,"nodeType":"Block","src":"11754:952:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":66735,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66726,"src":"11784:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66734,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65743,"src":"11764:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":66736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11764:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66737,"nodeType":"ExpressionStatement","src":"11764:28:96"},{"expression":{"id":66747,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66738,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"11803:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":66742,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66596,"src":"11856:23:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66744,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"11881:12:96","subExpression":{"id":66743,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66600,"src":"11881:10:96","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":66740,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"11838:5:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":66741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11844:11:96","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"11838:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":66745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11838:56:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66739,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76982,"src":"11821:16:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$76982_$","typeString":"type(contract ICollateralVault)"}},"id":66746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11821:74:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"src":"11803:92:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":66748,"nodeType":"ExpressionStatement","src":"11803:92:96"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66749,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"11905:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":66751,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11921:10:96","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":76954,"src":"11905:26:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":66752,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11905:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66753,"nodeType":"ExpressionStatement","src":"11905:28:96"},{"assignments":[66756],"declarations":[{"constant":false,"id":66756,"mutability":"mutable","name":"ip","nameLocation":"11982:2:96","nodeType":"VariableDeclaration","scope":66831,"src":"11944:40:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":66755,"nodeType":"UserDefinedTypeName","pathNode":{"id":66754,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["11944:30:96"],"nodeType":"IdentifierPath","referencedDeclaration":66370,"src":"11944:30:96"},"referencedDeclaration":66370,"src":"11944:30:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":66763,"initialValue":{"arguments":[{"id":66759,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66728,"src":"11998:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66760,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66370,"src":"12006:30:96","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$66370_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}}],"id":66761,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"12005:32:96","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$66370_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_$66370_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}],"expression":{"id":66757,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"11987:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66758,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11991:6:96","memberName":"decode","nodeType":"MemberAccess","src":"11987:10:96","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66762,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11987:51:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"11944:94:96"},{"expression":{"id":66769,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66764,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"12206:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":66766,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12248:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66767,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12251:17:96","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":66362,"src":"12248:20:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66765,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"12226:21:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73556_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":66768,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12226:43:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"src":"12206:63:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":66770,"nodeType":"ExpressionStatement","src":"12206:63:96"},{"expression":{"id":66774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66771,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66616,"src":"12280:12:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66772,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12295:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66773,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12298:12:96","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":66351,"src":"12295:15:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"src":"12280:30:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"id":66775,"nodeType":"ExpressionStatement","src":"12280:30:96"},{"expression":{"id":66779,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66776,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"12320:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66777,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12334:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66778,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12337:11:96","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":66354,"src":"12334:14:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"12320:28:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"id":66780,"nodeType":"ExpressionStatement","src":"12320:28:96"},{"expression":{"id":66784,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66781,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66622,"src":"12358:11:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66782,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12372:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66783,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12375:11:96","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":66357,"src":"12372:14:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"12358:28:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66785,"nodeType":"ExpressionStatement","src":"12358:28:96"},{"expression":{"id":66791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66786,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"12396:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":66788,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12423:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66789,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12426:11:96","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":66364,"src":"12423:14:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66787,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70608,"src":"12410:12:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70608_$","typeString":"type(contract ISybilScorer)"}},"id":66790,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12410:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"src":"12396:42:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"id":66792,"nodeType":"ExpressionStatement","src":"12396:42:96"},{"eventCall":{"arguments":[{"id":66794,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66726,"src":"12469:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66795,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12478:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"id":66793,"name":"InitializedCV2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66449,"src":"12454:14:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_1 memory)"}},"id":66796,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12454:27:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66797,"nodeType":"EmitStatement","src":"12449:32:96"},{"expression":{"arguments":[{"expression":{"id":66799,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12507:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66800,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12510:16:96","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":66360,"src":"12507:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":66801,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12528:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66802,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12531:8:96","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":66348,"src":"12528:11:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}},{"arguments":[{"hexValue":"30","id":66806,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12555:1:96","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":66805,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12541:13:96","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":66803,"name":"address","nodeType":"ElementaryTypeName","src":"12545:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66804,"nodeType":"ArrayTypeName","src":"12545:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":66807,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12541:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"arguments":[{"hexValue":"30","id":66811,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12573:1:96","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":66810,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12559:13:96","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":66808,"name":"address","nodeType":"ElementaryTypeName","src":"12563:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66809,"nodeType":"ArrayTypeName","src":"12563:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":66812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12559:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$66325_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":66798,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69355,69496,69534],"referencedDeclaration":69496,"src":"12492:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_struct$_CVParams_$66325_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":66813,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12492:84:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66814,"nodeType":"ExpressionStatement","src":"12492:84:96"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66817,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"12598:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}],"id":66816,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12590:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66815,"name":"address","nodeType":"ElementaryTypeName","src":"12590:7:96","typeDescriptions":{}}},"id":66818,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12590:20:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"307830","id":66821,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12622:3:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0x0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66820,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12614:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66819,"name":"address","nodeType":"ElementaryTypeName","src":"12614:7:96","typeDescriptions":{}}},"id":66822,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12614:12:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12590:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66830,"nodeType":"IfStatement","src":"12586:114:96","trueBody":{"id":66829,"nodeType":"Block","src":"12628:72:96","statements":[{"expression":{"arguments":[{"expression":{"id":66825,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12665:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66826,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12668:20:96","memberName":"sybilScorerThreshold","nodeType":"MemberAccess","referencedDeclaration":66366,"src":"12665:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66824,"name":"_registerToSybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70244,"src":"12642:22:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":66827,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12642:47:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66828,"nodeType":"ExpressionStatement","src":"12642:47:96"}]}}]},"baseFunctions":[2939],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":66732,"kind":"modifierInvocation","modifierName":{"id":66731,"name":"onlyAllo","nameLocations":["11745:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":65615,"src":"11745:8:96"},"nodeType":"ModifierInvocation","src":"11745:8:96"}],"name":"initialize","nameLocation":"11679:10:96","overrides":{"id":66730,"nodeType":"OverrideSpecifier","overrides":[],"src":"11736:8:96"},"parameters":{"id":66729,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66726,"mutability":"mutable","name":"_poolId","nameLocation":"11698:7:96","nodeType":"VariableDeclaration","scope":66832,"src":"11690:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66725,"name":"uint256","nodeType":"ElementaryTypeName","src":"11690:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66728,"mutability":"mutable","name":"_data","nameLocation":"11720:5:96","nodeType":"VariableDeclaration","scope":66832,"src":"11707:18:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66727,"name":"bytes","nodeType":"ElementaryTypeName","src":"11707:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"11689:37:96"},"returnParameters":{"id":66733,"nodeType":"ParameterList","parameters":[],"src":"11754:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":66836,"nodeType":"FunctionDefinition","src":"12877:83:96","nodes":[],"body":{"id":66835,"nodeType":"Block","src":"12905:55:96","nodes":[],"statements":[]},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66833,"nodeType":"ParameterList","parameters":[],"src":"12885:2:96"},"returnParameters":{"id":66834,"nodeType":"ParameterList","parameters":[],"src":"12905:0:96"},"scope":70249,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66840,"nodeType":"FunctionDefinition","src":"12966:135:96","nodes":[],"body":{"id":66839,"nodeType":"Block","src":"12993:108:96","nodes":[],"statements":[]},"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66837,"nodeType":"ParameterList","parameters":[],"src":"12973:2:96"},"returnParameters":{"id":66838,"nodeType":"ParameterList","parameters":[],"src":"12993:0:96"},"scope":70249,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66862,"nodeType":"FunctionDefinition","src":"13107:210:96","nodes":[],"body":{"id":66861,"nodeType":"Block","src":"13206:111:96","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"id":66854,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66849,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66842,"src":"13223:11:96","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":66851,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66224,"src":"13243:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}],"id":66850,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"13238:4:96","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":66852,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13238:20:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$66224","typeString":"type(contract IPointStrategy)"}},"id":66853,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13259:11:96","memberName":"interfaceId","nodeType":"MemberAccess","src":"13238:32:96","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"src":"13223:47:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":66857,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66842,"src":"13298:11:96","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":66855,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"13274:5:96","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$70249_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":66856,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13280:17:96","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57021,"src":"13274:23:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes4_$returns$_t_bool_$","typeString":"function (bytes4) view returns (bool)"}},"id":66858,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13274:36:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"13223:87:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66848,"id":66860,"nodeType":"Return","src":"13216:94:96"}]},"baseFunctions":[57021],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"13116:17:96","overrides":{"id":66845,"nodeType":"OverrideSpecifier","overrides":[{"id":66844,"name":"ERC165","nameLocations":["13183:6:96"],"nodeType":"IdentifierPath","referencedDeclaration":57022,"src":"13183:6:96"}],"src":"13174:16:96"},"parameters":{"id":66843,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66842,"mutability":"mutable","name":"interfaceId","nameLocation":"13141:11:96","nodeType":"VariableDeclaration","scope":66862,"src":"13134:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":66841,"name":"bytes4","nodeType":"ElementaryTypeName","src":"13134:6:96","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"13133:20:96"},"returnParameters":{"id":66848,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66847,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66862,"src":"13200:4:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66846,"name":"bool","nodeType":"ElementaryTypeName","src":"13200:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13199:6:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66878,"nodeType":"FunctionDefinition","src":"13488:404:96","nodes":[],"body":{"id":66877,"nodeType":"Block","src":"13556:336:96","nodes":[],"statements":[{"condition":{"id":66871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"13783:36:96","subExpression":{"arguments":[{"id":66869,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66864,"src":"13811:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66867,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"13784:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":66868,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13802:8:96","memberName":"isMember","nodeType":"MemberAccess","referencedDeclaration":72999,"src":"13784:26:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":66870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13784:35:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66876,"nodeType":"IfStatement","src":"13779:93:96","trueBody":{"id":66875,"nodeType":"Block","src":"13821:51:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66872,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66381,"src":"13842:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66873,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13842:19:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66874,"nodeType":"RevertStatement","src":"13835:26:96"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkSenderIsMember","nameLocation":"13497:19:96","parameters":{"id":66865,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66864,"mutability":"mutable","name":"_sender","nameLocation":"13525:7:96","nodeType":"VariableDeclaration","scope":66878,"src":"13517:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66863,"name":"address","nodeType":"ElementaryTypeName","src":"13517:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13516:17:96"},"returnParameters":{"id":66866,"nodeType":"ParameterList","parameters":[],"src":"13556:0:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66894,"nodeType":"FunctionDefinition","src":"13898:171:96","nodes":[],"body":{"id":66893,"nodeType":"Block","src":"13953:116:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66881,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"13967:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66882,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13971:6:96","memberName":"sender","nodeType":"MemberAccess","src":"13967:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":66885,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"13989:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":66884,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13981:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66883,"name":"address","nodeType":"ElementaryTypeName","src":"13981:7:96","typeDescriptions":{}}},"id":66886,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13981:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13967:40:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66892,"nodeType":"IfStatement","src":"13963:100:96","trueBody":{"id":66891,"nodeType":"Block","src":"14009:54:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66888,"name":"OnlyCommunityAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66411,"src":"14030:20:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66889,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14030:22:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66890,"nodeType":"RevertStatement","src":"14023:29:96"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryCommunity","nameLocation":"13907:21:96","parameters":{"id":66879,"nodeType":"ParameterList","parameters":[],"src":"13928:2:96"},"returnParameters":{"id":66880,"nodeType":"ParameterList","parameters":[],"src":"13953:0:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66910,"nodeType":"FunctionDefinition","src":"14075:141:96","nodes":[],"body":{"id":66909,"nodeType":"Block","src":"14143:73:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66899,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66896,"src":"14157:8:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14177:1:96","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":66901,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14169:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66900,"name":"address","nodeType":"ElementaryTypeName","src":"14169:7:96","typeDescriptions":{}}},"id":66903,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14169:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14157:22:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66908,"nodeType":"IfStatement","src":"14153:56:96","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66905,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66387,"src":"14188:19:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66906,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14188:21:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66907,"nodeType":"RevertStatement","src":"14181:28:96"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"14084:18:96","parameters":{"id":66897,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66896,"mutability":"mutable","name":"_address","nameLocation":"14111:8:96","nodeType":"VariableDeclaration","scope":66910,"src":"14103:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66895,"name":"address","nodeType":"ElementaryTypeName","src":"14103:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14102:18:96"},"returnParameters":{"id":66898,"nodeType":"ParameterList","parameters":[],"src":"14143:0:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66928,"nodeType":"FunctionDefinition","src":"14222:174:96","nodes":[],"body":{"id":66927,"nodeType":"Block","src":"14271:125:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66921,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66913,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"14285:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66914,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14289:6:96","memberName":"sender","nodeType":"MemberAccess","src":"14285:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66917,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"14307:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":66918,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14325:11:96","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71620,"src":"14307:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$77075_$","typeString":"function () view external returns (contract ISafe)"}},"id":66919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14307:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":66916,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14299:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66915,"name":"address","nodeType":"ElementaryTypeName","src":"14299:7:96","typeDescriptions":{}}},"id":66920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14299:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14285:54:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66926,"nodeType":"IfStatement","src":"14281:109:96","trueBody":{"id":66925,"nodeType":"Block","src":"14341:49:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66922,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66413,"src":"14362:15:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66923,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14362:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66924,"nodeType":"RevertStatement","src":"14355:24:96"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"14231:15:96","parameters":{"id":66911,"nodeType":"ParameterList","parameters":[],"src":"14246:2:96"},"returnParameters":{"id":66912,"nodeType":"ParameterList","parameters":[],"src":"14271:0:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66985,"nodeType":"FunctionDefinition","src":"14402:499:96","nodes":[],"body":{"id":66984,"nodeType":"Block","src":"14473:428:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66943,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66937,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"14495:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}],"id":66936,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14487:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66935,"name":"address","nodeType":"ElementaryTypeName","src":"14487:7:96","typeDescriptions":{}}},"id":66938,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14487:20:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66941,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14519:1:96","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":66940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14511:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66939,"name":"address","nodeType":"ElementaryTypeName","src":"14511:7:96","typeDescriptions":{}}},"id":66942,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14511:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14487:34:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66974,"nodeType":"IfStatement","src":"14483:345:96","trueBody":{"id":66973,"nodeType":"Block","src":"14523:305:96","statements":[{"assignments":[66945],"declarations":[{"constant":false,"id":66945,"mutability":"mutable","name":"allowlistRole","nameLocation":"14545:13:96","nodeType":"VariableDeclaration","scope":66973,"src":"14537:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":66944,"name":"bytes32","nodeType":"ElementaryTypeName","src":"14537:7:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":66953,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":66949,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14588:11:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":66950,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"14601:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66947,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14571:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66948,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14575:12:96","memberName":"encodePacked","nodeType":"MemberAccess","src":"14571:16:96","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":66951,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14571:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":66946,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14561:9:96","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":66952,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14561:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"14537:72:96"},{"condition":{"arguments":[{"id":66956,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66945,"src":"14653:13:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":66959,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14676:1:96","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":66958,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14668:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66957,"name":"address","nodeType":"ElementaryTypeName","src":"14668:7:96","typeDescriptions":{}}},"id":66960,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14668:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66954,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"14627:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":66955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14645:7:96","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":51753,"src":"14627:25:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":66961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14627:52:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":66971,"nodeType":"Block","src":"14731:87:96","statements":[{"expression":{"arguments":[{"id":66967,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66945,"src":"14782:13:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":66968,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66930,"src":"14797:5:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66965,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"14756:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":66966,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14774:7:96","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":51753,"src":"14756:25:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":66969,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14756:47:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66934,"id":66970,"nodeType":"Return","src":"14749:54:96"}]},"id":66972,"nodeType":"IfStatement","src":"14623:195:96","trueBody":{"id":66964,"nodeType":"Block","src":"14681:44:96","statements":[{"expression":{"hexValue":"74727565","id":66962,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"14706:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":66934,"id":66963,"nodeType":"Return","src":"14699:11:96"}]}}]}},{"expression":{"arguments":[{"id":66977,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66930,"src":"14873:5:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66980,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"14888:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":66979,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14880:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66978,"name":"address","nodeType":"ElementaryTypeName","src":"14880:7:96","typeDescriptions":{}}},"id":66981,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14880:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66975,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"14844:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"id":66976,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14856:16:96","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70581,"src":"14844:28:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66982,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14844:50:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66934,"id":66983,"nodeType":"Return","src":"14837:57:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"14411:17:96","parameters":{"id":66931,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66930,"mutability":"mutable","name":"_user","nameLocation":"14437:5:96","nodeType":"VariableDeclaration","scope":66985,"src":"14429:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66929,"name":"address","nodeType":"ElementaryTypeName","src":"14429:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14428:15:96"},"returnParameters":{"id":66934,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66933,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66985,"src":"14467:4:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66932,"name":"bool","nodeType":"ElementaryTypeName","src":"14467:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"14466:6:96"},"scope":70249,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":67033,"nodeType":"FunctionDefinition","src":"14907:666:96","nodes":[],"body":{"id":67032,"nodeType":"Block","src":"15013:560:96","nodes":[],"statements":[{"assignments":[66994],"declarations":[{"constant":false,"id":66994,"mutability":"mutable","name":"p","nameLocation":"15040:1:96","nodeType":"VariableDeclaration","scope":67032,"src":"15023:18:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":66993,"nodeType":"UserDefinedTypeName","pathNode":{"id":66992,"name":"Proposal","nameLocations":["15023:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"15023:8:96"},"referencedDeclaration":66294,"src":"15023:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":66998,"initialValue":{"baseExpression":{"id":66995,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"15044:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":66997,"indexExpression":{"id":66996,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66987,"src":"15054:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15044:22:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15023:43:96"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67026,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":67001,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66999,"name":"deltaSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66989,"src":"15093:12:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67000,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15108:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15093:16:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67012,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":67006,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67002,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66994,"src":"15151:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67003,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15153:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"15151:16:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67004,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"15171:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67005,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15186:8:96","memberName":"Inactive","nodeType":"MemberAccess","referencedDeclaration":66246,"src":"15171:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"15151:43:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":67011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67007,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66994,"src":"15198:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67008,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15200:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"15198:16:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67009,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"15218:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67010,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15233:9:96","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":66249,"src":"15218:24:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"15198:44:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15151:91:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":67017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67013,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66994,"src":"15270:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67014,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15272:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"15270:16:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67015,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"15290:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67016,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15305:8:96","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":66250,"src":"15290:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"15270:43:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15151:162:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":67023,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67019,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66994,"src":"15317:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67020,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15319:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"15317:16:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67021,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"15337:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67022,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15352:8:96","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":66252,"src":"15337:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"15317:43:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15151:209:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":67025,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"15129:249:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15093:285:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67031,"nodeType":"IfStatement","src":"15076:491:96","trueBody":{"id":67030,"nodeType":"Block","src":"15389:178:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67027,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"15486:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":67028,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15486:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67029,"nodeType":"ExpressionStatement","src":"15486:8:96"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkProposalAllocationValidity","nameLocation":"14916:32:96","parameters":{"id":66990,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66987,"mutability":"mutable","name":"_proposalId","nameLocation":"14957:11:96","nodeType":"VariableDeclaration","scope":67033,"src":"14949:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66986,"name":"uint256","nodeType":"ElementaryTypeName","src":"14949:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66989,"mutability":"mutable","name":"deltaSupport","nameLocation":"14977:12:96","nodeType":"VariableDeclaration","scope":67033,"src":"14970:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":66988,"name":"int256","nodeType":"ElementaryTypeName","src":"14970:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"14948:42:96"},"returnParameters":{"id":66991,"nodeType":"ParameterList","parameters":[],"src":"15013:0:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67045,"nodeType":"FunctionDefinition","src":"15579:132:96","nodes":[],"body":{"id":67044,"nodeType":"Block","src":"15660:51:96","nodes":[],"statements":[{"expression":{"id":67042,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67040,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66596,"src":"15670:23:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67041,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67035,"src":"15696:8:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15670:34:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67043,"nodeType":"ExpressionStatement","src":"15670:34:96"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":67038,"kind":"modifierInvocation","modifierName":{"id":67037,"name":"onlyOwner","nameLocations":["15650:9:96"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"15650:9:96"},"nodeType":"ModifierInvocation","src":"15650:9:96"}],"name":"setCollateralVaultTemplate","nameLocation":"15588:26:96","parameters":{"id":67036,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67035,"mutability":"mutable","name":"template","nameLocation":"15623:8:96","nodeType":"VariableDeclaration","scope":67045,"src":"15615:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67034,"name":"address","nodeType":"ElementaryTypeName","src":"15615:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15614:18:96"},"returnParameters":{"id":67039,"nodeType":"ParameterList","parameters":[],"src":"15660:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":67249,"nodeType":"FunctionDefinition","src":"16037:2679:96","nodes":[],"body":{"id":67248,"nodeType":"Block","src":"16146:2570:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":67056,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67049,"src":"16176:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67055,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66878,"src":"16156:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":67057,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16156:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67058,"nodeType":"ExpressionStatement","src":"16156:28:96"},{"expression":{"arguments":[{"arguments":[{"id":67064,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16240:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67063,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16232:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67062,"name":"address","nodeType":"ElementaryTypeName","src":"16232:7:96","typeDescriptions":{}}},"id":67065,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16232:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67059,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"16194:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16212:19:96","memberName":"onlyStrategyEnabled","nodeType":"MemberAccess","referencedDeclaration":71735,"src":"16194:37:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$__$","typeString":"function (address) view external"}},"id":67066,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16194:52:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67067,"nodeType":"ExpressionStatement","src":"16194:52:96"},{"expression":{"id":67068,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67047,"src":"16301:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":67069,"nodeType":"ExpressionStatement","src":"16301:5:96"},{"assignments":[67072],"declarations":[{"constant":false,"id":67072,"mutability":"mutable","name":"proposal","nameLocation":"16338:8:96","nodeType":"VariableDeclaration","scope":67248,"src":"16316:30:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal"},"typeName":{"id":67071,"nodeType":"UserDefinedTypeName","pathNode":{"id":67070,"name":"CreateProposal","nameLocations":["16316:14:96"],"nodeType":"IdentifierPath","referencedDeclaration":66245,"src":"16316:14:96"},"referencedDeclaration":66245,"src":"16316:14:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_storage_ptr","typeString":"struct CreateProposal"}},"visibility":"internal"}],"id":67079,"initialValue":{"arguments":[{"id":67075,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67047,"src":"16360:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":67076,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66245,"src":"16368:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$66245_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"id":67077,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"16367:16:96","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$66245_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$66245_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}],"expression":{"id":67073,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"16349:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67074,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"16353:6:96","memberName":"decode","nodeType":"MemberAccess","src":"16349:10:96","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67078,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16349:35:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"nodeType":"VariableDeclarationStatement","src":"16316:68:96"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"id":67083,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67080,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66616,"src":"16462:12:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67081,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66228,"src":"16478:12:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$66228_$","typeString":"type(enum ProposalType)"}},"id":67082,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"16491:7:96","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":66226,"src":"16478:20:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"src":"16462:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67120,"nodeType":"IfStatement","src":"16458:897:96","trueBody":{"id":67119,"nodeType":"Block","src":"16500:855:96","statements":[{"expression":{"arguments":[{"expression":{"id":67085,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"16533:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67086,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16542:11:96","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":66237,"src":"16533:20:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67084,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66910,"src":"16514:18:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":67087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16514:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67088,"nodeType":"ExpressionStatement","src":"16514:40:96"},{"assignments":[67091],"declarations":[{"constant":false,"id":67091,"mutability":"mutable","name":"_allo","nameLocation":"16746:5:96","nodeType":"VariableDeclaration","scope":67119,"src":"16740:11:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"},"typeName":{"id":67090,"nodeType":"UserDefinedTypeName","pathNode":{"id":67089,"name":"IAllo","nameLocations":["16740:5:96"],"nodeType":"IdentifierPath","referencedDeclaration":2610,"src":"16740:5:96"},"referencedDeclaration":2610,"src":"16740:5:96","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"visibility":"internal"}],"id":67095,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":67092,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16754:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}},"id":67093,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16759:7:96","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":65661,"src":"16754:12:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$2610_$","typeString":"function () view external returns (contract IAllo)"}},"id":67094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16754:14:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"nodeType":"VariableDeclarationStatement","src":"16740:28:96"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":67104,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67096,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"16786:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67097,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16795:14:96","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":66241,"src":"16786:23:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"arguments":[{"expression":{"id":67100,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"16827:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67101,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16836:6:96","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":66235,"src":"16827:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67098,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67091,"src":"16813:5:96","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":67099,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16819:7:96","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"16813:13:96","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":67102,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16813:30:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":67103,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16844:5:96","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"16813:36:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"16786:63:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67109,"nodeType":"IfStatement","src":"16782:352:96","trueBody":{"id":67108,"nodeType":"Block","src":"16851:283:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67105,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"17049:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":67106,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17049:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67107,"nodeType":"ExpressionStatement","src":"17049:8:96"}]}},{"condition":{"arguments":[{"expression":{"id":67111,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"17167:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67112,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17176:15:96","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":66239,"src":"17167:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67110,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68340,"src":"17151:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67113,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17151:41:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67118,"nodeType":"IfStatement","src":"17147:198:96","trueBody":{"id":67117,"nodeType":"Block","src":"17194:151:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67114,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"17260:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":67115,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17260:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67116,"nodeType":"ExpressionStatement","src":"17260:8:96"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67140,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":67132,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":67123,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"17390:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67125,"indexExpression":{"id":67124,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"17408:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17390:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67126,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17440:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"17390:60:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}],"id":67122,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17382:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67121,"name":"address","nodeType":"ElementaryTypeName","src":"17382:7:96","typeDescriptions":{}}},"id":67127,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17382:69:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":67130,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17463:1:96","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":67129,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17455:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67128,"name":"address","nodeType":"ElementaryTypeName","src":"17455:7:96","typeDescriptions":{}}},"id":67131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17455:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17382:83:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67139,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67133,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17485:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17489:5:96","memberName":"value","nodeType":"MemberAccess","src":"17485:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":67135,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"17497:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67137,"indexExpression":{"id":67136,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"17515:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17497:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67138,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17547:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"17497:75:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17485:87:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"17382:190:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67145,"nodeType":"IfStatement","src":"17365:483:96","trueBody":{"id":67144,"nodeType":"Block","src":"17583:265:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67141,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"17767:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":67142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17767:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67143,"nodeType":"ExpressionStatement","src":"17767:8:96"}]}},{"assignments":[67147],"declarations":[{"constant":false,"id":67147,"mutability":"mutable","name":"proposalId","nameLocation":"17866:10:96","nodeType":"VariableDeclaration","scope":67248,"src":"17858:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67146,"name":"uint256","nodeType":"ElementaryTypeName","src":"17858:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67150,"initialValue":{"id":67149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"17879:17:96","subExpression":{"id":67148,"name":"proposalCounter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66604,"src":"17881:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"17858:38:96"},{"assignments":[67153],"declarations":[{"constant":false,"id":67153,"mutability":"mutable","name":"p","nameLocation":"17923:1:96","nodeType":"VariableDeclaration","scope":67248,"src":"17906:18:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67152,"nodeType":"UserDefinedTypeName","pathNode":{"id":67151,"name":"Proposal","nameLocations":["17906:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"17906:8:96"},"referencedDeclaration":66294,"src":"17906:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67157,"initialValue":{"baseExpression":{"id":67154,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"17927:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67156,"indexExpression":{"id":67155,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"17937:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17927:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"17906:42:96"},{"expression":{"id":67162,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67158,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"17959:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67160,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"17961:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"17959:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67161,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"17974:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17959:25:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67163,"nodeType":"ExpressionStatement","src":"17959:25:96"},{"expression":{"id":67168,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67164,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"17994:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67166,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"17996:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"17994:11:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67167,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67049,"src":"18008:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17994:21:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67169,"nodeType":"ExpressionStatement","src":"17994:21:96"},{"expression":{"id":67175,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67170,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18025:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67172,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18027:11:96","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":66270,"src":"18025:13:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67173,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"18041:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67174,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18050:11:96","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":66237,"src":"18041:20:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18025:36:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67176,"nodeType":"ExpressionStatement","src":"18025:36:96"},{"expression":{"id":67182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67177,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18071:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67179,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18073:14:96","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":66274,"src":"18071:16:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67180,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"18090:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67181,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18099:14:96","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":66241,"src":"18090:23:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18071:42:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67183,"nodeType":"ExpressionStatement","src":"18071:42:96"},{"expression":{"id":67189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67184,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18123:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67186,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18125:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"18123:17:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67187,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"18143:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67188,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18152:15:96","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":66239,"src":"18143:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18123:44:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67190,"nodeType":"ExpressionStatement","src":"18123:44:96"},{"expression":{"id":67196,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67191,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18228:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67193,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18230:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"18228:16:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67194,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"18247:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67195,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18262:6:96","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":66247,"src":"18247:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"18228:40:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":67197,"nodeType":"ExpressionStatement","src":"18228:40:96"},{"expression":{"id":67203,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67198,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18278:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67200,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18280:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"18278:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67201,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"18292:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":67202,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18298:6:96","memberName":"number","nodeType":"MemberAccess","src":"18292:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18278:26:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67204,"nodeType":"ExpressionStatement","src":"18278:26:96"},{"expression":{"id":67209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67205,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18314:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67207,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18316:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"18314:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":67208,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18333:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"18314:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67210,"nodeType":"ExpressionStatement","src":"18314:20:96"},{"expression":{"id":67216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67211,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18380:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67213,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18382:8:96","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":66286,"src":"18380:10:96","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67214,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"18393:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67215,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18402:8:96","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":66244,"src":"18393:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"18380:30:96","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":67217,"nodeType":"ExpressionStatement","src":"18380:30:96"},{"expression":{"id":67222,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67218,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18420:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67220,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18422:23:96","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":66293,"src":"18420:25:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67221,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"18448:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18420:58:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67223,"nodeType":"ExpressionStatement","src":"18420:58:96"},{"expression":{"arguments":[{"id":67230,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"18540:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67231,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18552:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67232,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18554:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"18552:11:96","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":67224,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"18488:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":67226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18504:17:96","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":76961,"src":"18488:33:96","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":67229,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":67227,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"18529:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67228,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18533:5:96","memberName":"value","nodeType":"MemberAccess","src":"18529:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"18488:51:96","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":67233,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18488:76:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67234,"nodeType":"ExpressionStatement","src":"18488:76:96"},{"eventCall":{"arguments":[{"id":67236,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"18596:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67237,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"18604:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67235,"name":"ProposalCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66463,"src":"18580:15:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":67238,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18580:35:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67239,"nodeType":"EmitStatement","src":"18575:40:96"},{"expression":{"arguments":[{"arguments":[{"id":67244,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"18697:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67243,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18689:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":67242,"name":"uint160","nodeType":"ElementaryTypeName","src":"18689:7:96","typeDescriptions":{}}},"id":67245,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18689:19:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":67241,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18681:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67240,"name":"address","nodeType":"ElementaryTypeName","src":"18681:7:96","typeDescriptions":{}}},"id":67246,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18681:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":67054,"id":67247,"nodeType":"Return","src":"18674:35:96"}]},"baseFunctions":[66044],"implemented":true,"kind":"function","modifiers":[],"name":"_registerRecipient","nameLocation":"16046:18:96","overrides":{"id":67051,"nodeType":"OverrideSpecifier","overrides":[],"src":"16119:8:96"},"parameters":{"id":67050,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67047,"mutability":"mutable","name":"_data","nameLocation":"16078:5:96","nodeType":"VariableDeclaration","scope":67249,"src":"16065:18:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67046,"name":"bytes","nodeType":"ElementaryTypeName","src":"16065:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67049,"mutability":"mutable","name":"_sender","nameLocation":"16093:7:96","nodeType":"VariableDeclaration","scope":67249,"src":"16085:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67048,"name":"address","nodeType":"ElementaryTypeName","src":"16085:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16064:37:96"},"returnParameters":{"id":67054,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67053,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67249,"src":"16137:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67052,"name":"address","nodeType":"ElementaryTypeName","src":"16137:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16136:9:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67285,"nodeType":"FunctionDefinition","src":"18835:339:96","nodes":[],"body":{"id":67284,"nodeType":"Block","src":"18892:282:96","nodes":[],"statements":[{"condition":{"id":67257,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"18906:27:96","subExpression":{"arguments":[{"id":67255,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67251,"src":"18925:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67254,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66985,"src":"18907:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67256,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18907:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67262,"nodeType":"IfStatement","src":"18902:90:96","trueBody":{"id":67261,"nodeType":"Block","src":"18935:57:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67258,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66415,"src":"18956:23:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67259,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18956:25:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67260,"nodeType":"RevertStatement","src":"18949:32:96"}]}},{"expression":{"arguments":[{"id":67266,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67251,"src":"19044:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67269,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19061:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67268,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19053:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67267,"name":"address","nodeType":"ElementaryTypeName","src":"19053:7:96","typeDescriptions":{}}},"id":67270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19053:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67263,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"19001:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67265,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19019:24:96","memberName":"activateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":72374,"src":"19001:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":67271,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19001:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67272,"nodeType":"ExpressionStatement","src":"19001:66:96"},{"expression":{"id":67282,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67273,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66610,"src":"19077:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"id":67276,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67251,"src":"19144:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67279,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19161:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67278,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19153:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67277,"name":"address","nodeType":"ElementaryTypeName","src":"19153:7:96","typeDescriptions":{}}},"id":67280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19153:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67274,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"19101:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67275,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19119:24:96","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72736,"src":"19101:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67281,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19101:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19077:90:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67283,"nodeType":"ExpressionStatement","src":"19077:90:96"}]},"functionSelector":"db9b5d50","implemented":true,"kind":"function","modifiers":[],"name":"_activatePoints","nameLocation":"18844:15:96","parameters":{"id":67252,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67251,"mutability":"mutable","name":"_sender","nameLocation":"18868:7:96","nodeType":"VariableDeclaration","scope":67285,"src":"18860:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67250,"name":"address","nodeType":"ElementaryTypeName","src":"18860:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"18859:17:96"},"returnParameters":{"id":67253,"nodeType":"ParameterList","parameters":[],"src":"18892:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":67294,"nodeType":"FunctionDefinition","src":"19180:87:96","nodes":[],"body":{"id":67293,"nodeType":"Block","src":"19223:44:96","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":67289,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"19249:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67290,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19253:6:96","memberName":"sender","nodeType":"MemberAccess","src":"19249:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67288,"name":"_activatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67285,"src":"19233:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":67291,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19233:27:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67292,"nodeType":"ExpressionStatement","src":"19233:27:96"}]},"functionSelector":"814516ad","implemented":true,"kind":"function","modifiers":[],"name":"activatePoints","nameLocation":"19189:14:96","parameters":{"id":67286,"nodeType":"ParameterList","parameters":[],"src":"19203:2:96"},"returnParameters":{"id":67287,"nodeType":"ParameterList","parameters":[],"src":"19223:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":67303,"nodeType":"FunctionDefinition","src":"19273:89:96","nodes":[],"body":{"id":67302,"nodeType":"Block","src":"19316:46:96","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":67298,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"19344:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67299,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19348:6:96","memberName":"sender","nodeType":"MemberAccess","src":"19344:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67297,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67351,"src":"19326:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":67300,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19326:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67301,"nodeType":"ExpressionStatement","src":"19326:29:96"}]},"functionSelector":"1ddf1e23","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"19282:16:96","parameters":{"id":67295,"nodeType":"ParameterList","parameters":[],"src":"19298:2:96"},"returnParameters":{"id":67296,"nodeType":"ParameterList","parameters":[],"src":"19316:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":67316,"nodeType":"FunctionDefinition","src":"19368:136:96","nodes":[],"body":{"id":67315,"nodeType":"Block","src":"19428:76:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67308,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66894,"src":"19438:21:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":67309,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19438:23:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67310,"nodeType":"ExpressionStatement","src":"19438:23:96"},{"expression":{"arguments":[{"id":67312,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67305,"src":"19489:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67311,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67351,"src":"19471:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":67313,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19471:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67314,"nodeType":"ExpressionStatement","src":"19471:26:96"}]},"baseFunctions":[66199],"functionSelector":"6453d9c4","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"19377:16:96","parameters":{"id":67306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67305,"mutability":"mutable","name":"_member","nameLocation":"19402:7:96","nodeType":"VariableDeclaration","scope":67316,"src":"19394:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67304,"name":"address","nodeType":"ElementaryTypeName","src":"19394:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19393:17:96"},"returnParameters":{"id":67307,"nodeType":"ParameterList","parameters":[],"src":"19428:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":67351,"nodeType":"FunctionDefinition","src":"19510:359:96","nodes":[],"body":{"id":67350,"nodeType":"Block","src":"19571:298:96","nodes":[],"statements":[{"expression":{"id":67330,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67321,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66610,"src":"19581:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"arguments":[{"id":67324,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67318,"src":"19648:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67327,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19665:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67326,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19657:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67325,"name":"address","nodeType":"ElementaryTypeName","src":"19657:7:96","typeDescriptions":{}}},"id":67328,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19657:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67322,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"19605:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19623:24:96","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72736,"src":"19605:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67329,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19605:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19581:90:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67331,"nodeType":"ExpressionStatement","src":"19581:90:96"},{"expression":{"arguments":[{"id":67335,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67318,"src":"19726:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67338,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19743:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67337,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19735:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67336,"name":"address","nodeType":"ElementaryTypeName","src":"19735:7:96","typeDescriptions":{}}},"id":67339,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19735:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67332,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"19681:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67334,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19699:26:96","memberName":"deactivateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":72429,"src":"19681:44:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":67340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19681:68:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67341,"nodeType":"ExpressionStatement","src":"19681:68:96"},{"expression":{"arguments":[{"id":67343,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67318,"src":"19813:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67342,"name":"withdraw","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68177,"src":"19804:8:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":67344,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19804:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67345,"nodeType":"ExpressionStatement","src":"19804:17:96"},{"eventCall":{"arguments":[{"id":67347,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67318,"src":"19854:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67346,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66471,"src":"19836:17:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":67348,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19836:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67349,"nodeType":"EmitStatement","src":"19831:31:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_deactivatePoints","nameLocation":"19519:17:96","parameters":{"id":67319,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67318,"mutability":"mutable","name":"_member","nameLocation":"19545:7:96","nodeType":"VariableDeclaration","scope":67351,"src":"19537:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67317,"name":"address","nodeType":"ElementaryTypeName","src":"19537:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19536:17:96"},"returnParameters":{"id":67320,"nodeType":"ParameterList","parameters":[],"src":"19571:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67439,"nodeType":"FunctionDefinition","src":"19875:1045:96","nodes":[],"body":{"id":67438,"nodeType":"Block","src":"19974:946:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67360,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66894,"src":"20029:21:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":67361,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20029:23:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67362,"nodeType":"ExpressionStatement","src":"20029:23:96"},{"condition":{"id":67366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"20066:27:96","subExpression":{"arguments":[{"id":67364,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67353,"src":"20085:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67363,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66985,"src":"20067:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67365,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20067:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67371,"nodeType":"IfStatement","src":"20062:90:96","trueBody":{"id":67370,"nodeType":"Block","src":"20095:57:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67367,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66415,"src":"20116:23:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67368,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20116:25:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67369,"nodeType":"RevertStatement","src":"20109:32:96"}]}},{"assignments":[67373],"declarations":[{"constant":false,"id":67373,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"20169:16:96","nodeType":"VariableDeclaration","scope":67438,"src":"20161:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67372,"name":"uint256","nodeType":"ElementaryTypeName","src":"20161:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67375,"initialValue":{"hexValue":"30","id":67374,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20188:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"20161:28:96"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"id":67379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67376,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"20203:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67377,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"20218:11:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$66233_$","typeString":"type(enum PointSystem)"}},"id":67378,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"20230:9:96","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":66231,"src":"20218:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"20203:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"id":67388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67385,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"20358:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67386,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"20373:11:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$66233_$","typeString":"type(enum PointSystem)"}},"id":67387,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"20385:6:96","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":66230,"src":"20373:18:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"20358:33:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"id":67400,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67397,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"20491:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67398,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"20506:11:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$66233_$","typeString":"type(enum PointSystem)"}},"id":67399,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"20518:9:96","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":66232,"src":"20506:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"20491:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67409,"nodeType":"IfStatement","src":"20487:133:96","trueBody":{"id":67408,"nodeType":"Block","src":"20529:91:96","statements":[{"expression":{"id":67406,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67401,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67373,"src":"20543:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":67403,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67353,"src":"20585:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67404,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67355,"src":"20594:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67402,"name":"increasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67607,"src":"20562:22:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":67405,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20562:47:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20543:66:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67407,"nodeType":"ExpressionStatement","src":"20543:66:96"}]}},"id":67410,"nodeType":"IfStatement","src":"20354:266:96","trueBody":{"id":67396,"nodeType":"Block","src":"20393:88:96","statements":[{"expression":{"id":67394,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67389,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67373,"src":"20407:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":67391,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67353,"src":"20446:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67392,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67355,"src":"20455:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67390,"name":"increasePowerCapped","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67529,"src":"20426:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":67393,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20426:44:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20407:63:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67395,"nodeType":"ExpressionStatement","src":"20407:63:96"}]}},"id":67411,"nodeType":"IfStatement","src":"20199:421:96","trueBody":{"id":67384,"nodeType":"Block","src":"20241:107:96","statements":[{"expression":{"id":67382,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67380,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67373,"src":"20255:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67381,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67355,"src":"20274:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20255:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67383,"nodeType":"ExpressionStatement","src":"20255:33:96"}]}},{"assignments":[67413],"declarations":[{"constant":false,"id":67413,"mutability":"mutable","name":"isActivated","nameLocation":"20634:11:96","nodeType":"VariableDeclaration","scope":67438,"src":"20629:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67412,"name":"bool","nodeType":"ElementaryTypeName","src":"20629:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67422,"initialValue":{"arguments":[{"id":67416,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67353,"src":"20694:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67419,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"20711:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67418,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20703:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67417,"name":"address","nodeType":"ElementaryTypeName","src":"20703:7:96","typeDescriptions":{}}},"id":67420,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20703:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67414,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"20648:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20666:27:96","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":71661,"src":"20648:45:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":67421,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20648:69:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"20629:88:96"},{"condition":{"id":67423,"name":"isActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67413,"src":"20731:11:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67429,"nodeType":"IfStatement","src":"20727:82:96","trueBody":{"id":67428,"nodeType":"Block","src":"20744:65:96","statements":[{"expression":{"id":67426,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67424,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66610,"src":"20758:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":67425,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67373,"src":"20782:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20758:40:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67427,"nodeType":"ExpressionStatement","src":"20758:40:96"}]}},{"eventCall":{"arguments":[{"id":67431,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67353,"src":"20838:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67432,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67355,"src":"20847:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67433,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67373,"src":"20863:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67430,"name":"PowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66479,"src":"20823:14:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":67434,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20823:57:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67435,"nodeType":"EmitStatement","src":"20818:62:96"},{"expression":{"id":67436,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67373,"src":"20897:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67359,"id":67437,"nodeType":"Return","src":"20890:23:96"}]},"baseFunctions":[66208],"functionSelector":"782aadff","implemented":true,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"19884:13:96","parameters":{"id":67356,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67353,"mutability":"mutable","name":"_member","nameLocation":"19906:7:96","nodeType":"VariableDeclaration","scope":67439,"src":"19898:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67352,"name":"address","nodeType":"ElementaryTypeName","src":"19898:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67355,"mutability":"mutable","name":"_amountToStake","nameLocation":"19923:14:96","nodeType":"VariableDeclaration","scope":67439,"src":"19915:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67354,"name":"uint256","nodeType":"ElementaryTypeName","src":"19915:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19897:41:96"},"returnParameters":{"id":67359,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67358,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67439,"src":"19965:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67357,"name":"uint256","nodeType":"ElementaryTypeName","src":"19965:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19964:9:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":67491,"nodeType":"FunctionDefinition","src":"20926:684:96","nodes":[],"body":{"id":67490,"nodeType":"Block","src":"21027:583:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67448,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66894,"src":"21037:21:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":67449,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21037:23:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67450,"nodeType":"ExpressionStatement","src":"21037:23:96"},{"assignments":[67452],"declarations":[{"constant":false,"id":67452,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"21124:16:96","nodeType":"VariableDeclaration","scope":67490,"src":"21116:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67451,"name":"uint256","nodeType":"ElementaryTypeName","src":"21116:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67454,"initialValue":{"hexValue":"30","id":67453,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21143:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"21116:28:96"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67463,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"id":67458,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67455,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"21158:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67456,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"21173:11:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$66233_$","typeString":"type(enum PointSystem)"}},"id":67457,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"21185:9:96","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":66231,"src":"21173:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"21158:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"id":67462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67459,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"21198:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67460,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"21213:11:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$66233_$","typeString":"type(enum PointSystem)"}},"id":67461,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"21225:6:96","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":66230,"src":"21213:18:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"21198:33:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"21158:73:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":67476,"nodeType":"Block","src":"21354:93:96","statements":[{"expression":{"id":67474,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67469,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"21368:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":67471,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67441,"src":"21410:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67472,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67443,"src":"21419:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67470,"name":"decreasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67681,"src":"21387:22:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":67473,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21387:49:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21368:68:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67475,"nodeType":"ExpressionStatement","src":"21368:68:96"}]},"id":67477,"nodeType":"IfStatement","src":"21154:293:96","trueBody":{"id":67468,"nodeType":"Block","src":"21233:115:96","statements":[{"expression":{"id":67466,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67464,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"21247:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67465,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67443,"src":"21266:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21247:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67467,"nodeType":"ExpressionStatement","src":"21247:35:96"}]}},{"expression":{"id":67480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67478,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66610,"src":"21456:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67479,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"21480:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21456:40:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67481,"nodeType":"ExpressionStatement","src":"21456:40:96"},{"eventCall":{"arguments":[{"id":67483,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67441,"src":"21526:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67484,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67443,"src":"21535:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67485,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"21553:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67482,"name":"PowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66487,"src":"21511:14:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":67486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21511:59:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67487,"nodeType":"EmitStatement","src":"21506:64:96"},{"expression":{"id":67488,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"21587:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67447,"id":67489,"nodeType":"Return","src":"21580:23:96"}]},"baseFunctions":[66217],"functionSelector":"2ed04b2b","implemented":true,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"20935:13:96","parameters":{"id":67444,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67441,"mutability":"mutable","name":"_member","nameLocation":"20957:7:96","nodeType":"VariableDeclaration","scope":67491,"src":"20949:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67440,"name":"address","nodeType":"ElementaryTypeName","src":"20949:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67443,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20974:16:96","nodeType":"VariableDeclaration","scope":67491,"src":"20966:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67442,"name":"uint256","nodeType":"ElementaryTypeName","src":"20966:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20948:43:96"},"returnParameters":{"id":67447,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67446,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67491,"src":"21018:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67445,"name":"uint256","nodeType":"ElementaryTypeName","src":"21018:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21017:9:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":67529,"nodeType":"FunctionDefinition","src":"21616:571:96","nodes":[],"body":{"id":67528,"nodeType":"Block","src":"21726:461:96","nodes":[],"statements":[{"assignments":[67501],"declarations":[{"constant":false,"id":67501,"mutability":"mutable","name":"memberPower","nameLocation":"21806:11:96","nodeType":"VariableDeclaration","scope":67528,"src":"21798:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67500,"name":"uint256","nodeType":"ElementaryTypeName","src":"21798:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67510,"initialValue":{"arguments":[{"id":67504,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67493,"src":"21863:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67507,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21880:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67506,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21872:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67505,"name":"address","nodeType":"ElementaryTypeName","src":"21872:7:96","typeDescriptions":{}}},"id":67508,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21872:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67502,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"21820:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67503,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21838:24:96","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72736,"src":"21820:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67509,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21820:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21798:88:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67516,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67513,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67511,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67501,"src":"21952:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":67512,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67495,"src":"21966:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21952:28:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":67514,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66622,"src":"21983:11:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage","typeString":"struct PointSystemConfig storage ref"}},"id":67515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21995:9:96","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":66301,"src":"21983:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21952:52:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67525,"nodeType":"IfStatement","src":"21948:135:96","trueBody":{"id":67524,"nodeType":"Block","src":"22006:77:96","statements":[{"expression":{"id":67522,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67517,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67495,"src":"22020:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67521,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67518,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66622,"src":"22037:11:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage","typeString":"struct PointSystemConfig storage ref"}},"id":67519,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"22049:9:96","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":66301,"src":"22037:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":67520,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67501,"src":"22061:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22037:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22020:52:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67523,"nodeType":"ExpressionStatement","src":"22020:52:96"}]}},{"expression":{"id":67526,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67495,"src":"22166:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67499,"id":67527,"nodeType":"Return","src":"22159:21:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerCapped","nameLocation":"21625:19:96","parameters":{"id":67496,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67493,"mutability":"mutable","name":"_member","nameLocation":"21653:7:96","nodeType":"VariableDeclaration","scope":67529,"src":"21645:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67492,"name":"address","nodeType":"ElementaryTypeName","src":"21645:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67495,"mutability":"mutable","name":"_amountToStake","nameLocation":"21670:14:96","nodeType":"VariableDeclaration","scope":67529,"src":"21662:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67494,"name":"uint256","nodeType":"ElementaryTypeName","src":"21662:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21644:41:96"},"returnParameters":{"id":67499,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67498,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67529,"src":"21717:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67497,"name":"uint256","nodeType":"ElementaryTypeName","src":"21717:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21716:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67607,"nodeType":"FunctionDefinition","src":"22193:741:96","nodes":[],"body":{"id":67606,"nodeType":"Block","src":"22306:628:96","nodes":[],"statements":[{"assignments":[67539],"declarations":[{"constant":false,"id":67539,"mutability":"mutable","name":"totalStake","nameLocation":"22324:10:96","nodeType":"VariableDeclaration","scope":67606,"src":"22316:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67538,"name":"uint256","nodeType":"ElementaryTypeName","src":"22316:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67546,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67545,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":67542,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67531,"src":"22377:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67540,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"22337:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67541,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22355:21:96","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":72749,"src":"22337:39:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":67543,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22337:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":67544,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67533,"src":"22388:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22337:65:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22316:86:96"},{"assignments":[67548],"declarations":[{"constant":false,"id":67548,"mutability":"mutable","name":"decimal","nameLocation":"22421:7:96","nodeType":"VariableDeclaration","scope":67606,"src":"22413:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67547,"name":"uint256","nodeType":"ElementaryTypeName","src":"22413:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67550,"initialValue":{"hexValue":"3138","id":67549,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22431:2:96","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"22413:20:96"},{"clauses":[{"block":{"id":67571,"nodeType":"Block","src":"22531:52:96","statements":[{"expression":{"id":67569,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67564,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67548,"src":"22545:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":67567,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67562,"src":"22563:8:96","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":67566,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22555:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67565,"name":"uint256","nodeType":"ElementaryTypeName","src":"22555:7:96","typeDescriptions":{}}},"id":67568,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22555:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22545:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67570,"nodeType":"ExpressionStatement","src":"22545:27:96"}]},"errorName":"","id":67572,"nodeType":"TryCatchClause","parameters":{"id":67563,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67562,"mutability":"mutable","name":"_decimal","nameLocation":"22521:8:96","nodeType":"VariableDeclaration","scope":67572,"src":"22515:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":67561,"name":"uint8","nodeType":"ElementaryTypeName","src":"22515:5:96","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"22514:16:96"},"src":"22506:77:96"},{"block":{"id":67573,"nodeType":"Block","src":"22590:64:96","statements":[]},"errorName":"","id":67574,"nodeType":"TryCatchClause","src":"22584:70:96"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":67554,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"22461:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67555,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22479:11:96","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":71616,"src":"22461:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$55825_$","typeString":"function () view external returns (contract IERC20)"}},"id":67556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22461:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}],"id":67553,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22453:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67552,"name":"address","nodeType":"ElementaryTypeName","src":"22453:7:96","typeDescriptions":{}}},"id":67557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22453:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67551,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55747,"src":"22447:5:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$55747_$","typeString":"type(contract ERC20)"}},"id":67558,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22447:47:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$55747","typeString":"contract ERC20"}},"id":67559,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22495:8:96","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55235,"src":"22447:56:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":67560,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22447:58:96","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":67575,"nodeType":"TryStatement","src":"22443:211:96"},{"assignments":[67577],"declarations":[{"constant":false,"id":67577,"mutability":"mutable","name":"newTotalPoints","nameLocation":"22671:14:96","nodeType":"VariableDeclaration","scope":67606,"src":"22663:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67576,"name":"uint256","nodeType":"ElementaryTypeName","src":"22663:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67586,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67584,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67580,"name":"totalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67539,"src":"22698:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67583,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":67581,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22711:2:96","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":67582,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67548,"src":"22717:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22711:13:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22698:26:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67578,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58094,"src":"22688:4:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58094_$","typeString":"type(library Math)"}},"id":67579,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22693:4:96","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":57598,"src":"22688:9:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":67585,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22688:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22663:62:96"},{"assignments":[67588],"declarations":[{"constant":false,"id":67588,"mutability":"mutable","name":"currentPoints","nameLocation":"22743:13:96","nodeType":"VariableDeclaration","scope":67606,"src":"22735:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67587,"name":"uint256","nodeType":"ElementaryTypeName","src":"22735:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67597,"initialValue":{"arguments":[{"id":67591,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67531,"src":"22802:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67594,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22819:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67593,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22811:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67592,"name":"address","nodeType":"ElementaryTypeName","src":"22811:7:96","typeDescriptions":{}}},"id":67595,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22811:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67589,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"22759:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67590,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22777:24:96","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72736,"src":"22759:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67596,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22759:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22735:90:96"},{"assignments":[67599],"declarations":[{"constant":false,"id":67599,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"22844:16:96","nodeType":"VariableDeclaration","scope":67606,"src":"22836:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67598,"name":"uint256","nodeType":"ElementaryTypeName","src":"22836:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67603,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67602,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67600,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67577,"src":"22863:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":67601,"name":"currentPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67588,"src":"22880:13:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22863:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22836:57:96"},{"expression":{"id":67604,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67599,"src":"22911:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67537,"id":67605,"nodeType":"Return","src":"22904:23:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerQuadratic","nameLocation":"22202:22:96","parameters":{"id":67534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67531,"mutability":"mutable","name":"_member","nameLocation":"22233:7:96","nodeType":"VariableDeclaration","scope":67607,"src":"22225:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67530,"name":"address","nodeType":"ElementaryTypeName","src":"22225:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67533,"mutability":"mutable","name":"_amountToStake","nameLocation":"22250:14:96","nodeType":"VariableDeclaration","scope":67607,"src":"22242:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67532,"name":"uint256","nodeType":"ElementaryTypeName","src":"22242:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22224:41:96"},"returnParameters":{"id":67537,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67536,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67607,"src":"22297:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67535,"name":"uint256","nodeType":"ElementaryTypeName","src":"22297:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22296:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67681,"nodeType":"FunctionDefinition","src":"22940:855:96","nodes":[],"body":{"id":67680,"nodeType":"Block","src":"23091:704:96","nodes":[],"statements":[{"assignments":[67617],"declarations":[{"constant":false,"id":67617,"mutability":"mutable","name":"decimal","nameLocation":"23109:7:96","nodeType":"VariableDeclaration","scope":67680,"src":"23101:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67616,"name":"uint256","nodeType":"ElementaryTypeName","src":"23101:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67619,"initialValue":{"hexValue":"3138","id":67618,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23119:2:96","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"23101:20:96"},{"clauses":[{"block":{"id":67640,"nodeType":"Block","src":"23219:52:96","statements":[{"expression":{"id":67638,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67633,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67617,"src":"23233:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":67636,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67631,"src":"23251:8:96","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":67635,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23243:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67634,"name":"uint256","nodeType":"ElementaryTypeName","src":"23243:7:96","typeDescriptions":{}}},"id":67637,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23243:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23233:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67639,"nodeType":"ExpressionStatement","src":"23233:27:96"}]},"errorName":"","id":67641,"nodeType":"TryCatchClause","parameters":{"id":67632,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67631,"mutability":"mutable","name":"_decimal","nameLocation":"23209:8:96","nodeType":"VariableDeclaration","scope":67641,"src":"23203:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":67630,"name":"uint8","nodeType":"ElementaryTypeName","src":"23203:5:96","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"23202:16:96"},"src":"23194:77:96"},{"block":{"id":67642,"nodeType":"Block","src":"23278:64:96","statements":[]},"errorName":"","id":67643,"nodeType":"TryCatchClause","src":"23272:70:96"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":67623,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"23149:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23167:11:96","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":71616,"src":"23149:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$55825_$","typeString":"function () view external returns (contract IERC20)"}},"id":67625,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23149:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}],"id":67622,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23141:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67621,"name":"address","nodeType":"ElementaryTypeName","src":"23141:7:96","typeDescriptions":{}}},"id":67626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23141:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67620,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55747,"src":"23135:5:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$55747_$","typeString":"type(contract ERC20)"}},"id":67627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23135:47:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$55747","typeString":"contract ERC20"}},"id":67628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23183:8:96","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55235,"src":"23135:56:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":67629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23135:58:96","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":67644,"nodeType":"TryStatement","src":"23131:211:96"},{"assignments":[67646],"declarations":[{"constant":false,"id":67646,"mutability":"mutable","name":"newTotalStake","nameLocation":"23421:13:96","nodeType":"VariableDeclaration","scope":67680,"src":"23413:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67645,"name":"uint256","nodeType":"ElementaryTypeName","src":"23413:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67653,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67652,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":67649,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67609,"src":"23477:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67647,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"23437:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23455:21:96","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":72749,"src":"23437:39:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":67650,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23437:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":67651,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67611,"src":"23488:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23437:67:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23413:91:96"},{"assignments":[67655],"declarations":[{"constant":false,"id":67655,"mutability":"mutable","name":"newTotalPoints","nameLocation":"23578:14:96","nodeType":"VariableDeclaration","scope":67680,"src":"23570:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67654,"name":"uint256","nodeType":"ElementaryTypeName","src":"23570:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67664,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67662,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67658,"name":"newTotalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67646,"src":"23605:13:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67661,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":67659,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23621:2:96","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":67660,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67617,"src":"23627:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23621:13:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23605:29:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67656,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58094,"src":"23595:4:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58094_$","typeString":"type(library Math)"}},"id":67657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23600:4:96","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":57598,"src":"23595:9:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":67663,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23595:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23570:65:96"},{"assignments":[67666],"declarations":[{"constant":false,"id":67666,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"23653:16:96","nodeType":"VariableDeclaration","scope":67680,"src":"23645:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67665,"name":"uint256","nodeType":"ElementaryTypeName","src":"23645:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67677,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":67669,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67609,"src":"23715:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67672,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"23732:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67671,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23724:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67670,"name":"address","nodeType":"ElementaryTypeName","src":"23724:7:96","typeDescriptions":{}}},"id":67673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23724:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67667,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"23672:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67668,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23690:24:96","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72736,"src":"23672:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67674,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23672:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":67675,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67655,"src":"23741:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23672:83:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23645:110:96"},{"expression":{"id":67678,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67666,"src":"23772:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67615,"id":67679,"nodeType":"Return","src":"23765:23:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerQuadratic","nameLocation":"22949:22:96","parameters":{"id":67612,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67609,"mutability":"mutable","name":"_member","nameLocation":"22980:7:96","nodeType":"VariableDeclaration","scope":67681,"src":"22972:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67608,"name":"address","nodeType":"ElementaryTypeName","src":"22972:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67611,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"22997:16:96","nodeType":"VariableDeclaration","scope":67681,"src":"22989:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67610,"name":"uint256","nodeType":"ElementaryTypeName","src":"22989:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22971:43:96"},"returnParameters":{"id":67615,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67614,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67681,"src":"23078:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67613,"name":"uint256","nodeType":"ElementaryTypeName","src":"23078:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23077:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67690,"nodeType":"FunctionDefinition","src":"23990:103:96","nodes":[],"body":{"id":67689,"nodeType":"Block","src":"24058:35:96","nodes":[],"statements":[{"expression":{"id":67687,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"24075:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"functionReturnParameters":67686,"id":67688,"nodeType":"Return","src":"24068:18:96"}]},"baseFunctions":[66223],"functionSelector":"c3292171","implemented":true,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"23999:14:96","parameters":{"id":67682,"nodeType":"ParameterList","parameters":[],"src":"24013:2:96"},"returnParameters":{"id":67686,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67685,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67690,"src":"24045:11:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":67684,"nodeType":"UserDefinedTypeName","pathNode":{"id":67683,"name":"PointSystem","nameLocations":["24045:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"24045:11:96"},"referencedDeclaration":66233,"src":"24045:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"24044:13:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67736,"nodeType":"FunctionDefinition","src":"24444:322:96","nodes":[],"body":{"id":67735,"nodeType":"Block","src":"24537:229:96","nodes":[],"statements":[{"assignments":[67702],"declarations":[{"constant":false,"id":67702,"mutability":"mutable","name":"pv","nameLocation":"24572:2:96","nodeType":"VariableDeclaration","scope":67735,"src":"24547:27:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67700,"nodeType":"UserDefinedTypeName","pathNode":{"id":67699,"name":"ProposalSupport","nameLocations":["24547:15:96"],"nodeType":"IdentifierPath","referencedDeclaration":66299,"src":"24547:15:96"},"referencedDeclaration":66299,"src":"24547:15:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_storage_ptr","typeString":"struct ProposalSupport"}},"id":67701,"nodeType":"ArrayTypeName","src":"24547:17:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":67710,"initialValue":{"arguments":[{"id":67705,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67692,"src":"24588:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":67706,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66299,"src":"24596:15:96","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$66299_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":67707,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"24596:17:96","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":67708,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"24595:19:96","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$66299_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_$66299_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":67703,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"24577:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67704,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"24581:6:96","memberName":"decode","nodeType":"MemberAccess","src":"24577:10:96","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67709,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24577:38:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"24547:68:96"},{"body":{"id":67733,"nodeType":"Block","src":"24665:95:96","statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":67723,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67702,"src":"24712:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67725,"indexExpression":{"id":67724,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67712,"src":"24715:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24712:5:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67726,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24718:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66296,"src":"24712:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67727,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67702,"src":"24730:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67729,"indexExpression":{"id":67728,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67712,"src":"24733:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24730:5:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67730,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24736:12:96","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":66298,"src":"24730:18:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67722,"name":"_checkProposalAllocationValidity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67033,"src":"24679:32:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_int256_$returns$__$","typeString":"function (uint256,int256) view"}},"id":67731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24679:70:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67732,"nodeType":"ExpressionStatement","src":"24679:70:96"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67715,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67712,"src":"24645:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67716,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67702,"src":"24649:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67717,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24652:6:96","memberName":"length","nodeType":"MemberAccess","src":"24649:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24645:13:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67734,"initializationExpression":{"assignments":[67712],"declarations":[{"constant":false,"id":67712,"mutability":"mutable","name":"i","nameLocation":"24638:1:96","nodeType":"VariableDeclaration","scope":67734,"src":"24630:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67711,"name":"uint256","nodeType":"ElementaryTypeName","src":"24630:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67714,"initialValue":{"hexValue":"30","id":67713,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24642:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"24630:13:96"},"loopExpression":{"expression":{"id":67720,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"24660:3:96","subExpression":{"id":67719,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67712,"src":"24660:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67721,"nodeType":"ExpressionStatement","src":"24660:3:96"},"nodeType":"ForStatement","src":"24625:135:96"}]},"baseFunctions":[66124],"implemented":true,"kind":"function","modifiers":[],"name":"_beforeAllocate","nameLocation":"24453:15:96","overrides":{"id":67696,"nodeType":"OverrideSpecifier","overrides":[],"src":"24528:8:96"},"parameters":{"id":67695,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67692,"mutability":"mutable","name":"_data","nameLocation":"24482:5:96","nodeType":"VariableDeclaration","scope":67736,"src":"24469:18:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67691,"name":"bytes","nodeType":"ElementaryTypeName","src":"24469:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67694,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67736,"src":"24489:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67693,"name":"address","nodeType":"ElementaryTypeName","src":"24489:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24468:42:96"},"returnParameters":{"id":67697,"nodeType":"ParameterList","parameters":[],"src":"24537:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67816,"nodeType":"FunctionDefinition","src":"24912:739:96","nodes":[],"body":{"id":67815,"nodeType":"Block","src":"24994:657:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":67745,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"25024:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67744,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66878,"src":"25004:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":67746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25004:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67747,"nodeType":"ExpressionStatement","src":"25004:28:96"},{"assignments":[67752],"declarations":[{"constant":false,"id":67752,"mutability":"mutable","name":"pv","nameLocation":"25067:2:96","nodeType":"VariableDeclaration","scope":67815,"src":"25042:27:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67750,"nodeType":"UserDefinedTypeName","pathNode":{"id":67749,"name":"ProposalSupport","nameLocations":["25042:15:96"],"nodeType":"IdentifierPath","referencedDeclaration":66299,"src":"25042:15:96"},"referencedDeclaration":66299,"src":"25042:15:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_storage_ptr","typeString":"struct ProposalSupport"}},"id":67751,"nodeType":"ArrayTypeName","src":"25042:17:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":67760,"initialValue":{"arguments":[{"id":67755,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67738,"src":"25083:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":67756,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66299,"src":"25091:15:96","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$66299_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":67757,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"25091:17:96","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":67758,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"25090:19:96","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$66299_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_$66299_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":67753,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"25072:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67754,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"25076:6:96","memberName":"decode","nodeType":"MemberAccess","src":"25072:10:96","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25072:38:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"25042:68:96"},{"condition":{"id":67764,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25124:27:96","subExpression":{"arguments":[{"id":67762,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"25143:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67761,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66985,"src":"25125:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67763,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25125:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67790,"nodeType":"IfStatement","src":"25120:230:96","trueBody":{"id":67789,"nodeType":"Block","src":"25153:197:96","statements":[{"body":{"id":67787,"nodeType":"Block","src":"25207:133:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":67781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67776,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67752,"src":"25229:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67778,"indexExpression":{"id":67777,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67766,"src":"25232:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25229:5:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67779,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25235:12:96","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":66298,"src":"25229:18:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67780,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25250:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25229:22:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67786,"nodeType":"IfStatement","src":"25225:101:96","trueBody":{"id":67785,"nodeType":"Block","src":"25253:73:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67782,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66415,"src":"25282:23:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67783,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25282:25:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67784,"nodeType":"RevertStatement","src":"25275:32:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67772,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67769,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67766,"src":"25187:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67770,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67752,"src":"25191:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67771,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25194:6:96","memberName":"length","nodeType":"MemberAccess","src":"25191:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25187:13:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67788,"initializationExpression":{"assignments":[67766],"declarations":[{"constant":false,"id":67766,"mutability":"mutable","name":"i","nameLocation":"25180:1:96","nodeType":"VariableDeclaration","scope":67788,"src":"25172:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67765,"name":"uint256","nodeType":"ElementaryTypeName","src":"25172:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67768,"initialValue":{"hexValue":"30","id":67767,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25184:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"25172:13:96"},"loopExpression":{"expression":{"id":67774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"25202:3:96","subExpression":{"id":67773,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67766,"src":"25202:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67775,"nodeType":"ExpressionStatement","src":"25202:3:96"},"nodeType":"ForStatement","src":"25167:173:96"}]}},{"condition":{"id":67799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25363:70:96","subExpression":{"arguments":[{"id":67793,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"25410:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67796,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"25427:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67795,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"25419:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67794,"name":"address","nodeType":"ElementaryTypeName","src":"25419:7:96","typeDescriptions":{}}},"id":67797,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25419:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67791,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"25364:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67792,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25382:27:96","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":71661,"src":"25364:45:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":67798,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25364:69:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67804,"nodeType":"IfStatement","src":"25359:124:96","trueBody":{"id":67803,"nodeType":"Block","src":"25435:48:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67800,"name":"UserIsInactive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66383,"src":"25456:14:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67801,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25456:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67802,"nodeType":"RevertStatement","src":"25449:23:96"}]}},{"expression":{"arguments":[{"id":67806,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"25598:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67807,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67752,"src":"25607:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67805,"name":"_check_before_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68456,"src":"25573:24:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67808,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25573:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67809,"nodeType":"ExpressionStatement","src":"25573:37:96"},{"expression":{"arguments":[{"id":67811,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"25632:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67812,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67752,"src":"25641:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67810,"name":"_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68741,"src":"25620:11:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67813,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25620:24:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67814,"nodeType":"ExpressionStatement","src":"25620:24:96"}]},"baseFunctions":[66052],"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"24921:9:96","overrides":{"id":67742,"nodeType":"OverrideSpecifier","overrides":[],"src":"24985:8:96"},"parameters":{"id":67741,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67738,"mutability":"mutable","name":"_data","nameLocation":"24944:5:96","nodeType":"VariableDeclaration","scope":67816,"src":"24931:18:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67737,"name":"bytes","nodeType":"ElementaryTypeName","src":"24931:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67740,"mutability":"mutable","name":"_sender","nameLocation":"24959:7:96","nodeType":"VariableDeclaration","scope":67816,"src":"24951:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67739,"name":"address","nodeType":"ElementaryTypeName","src":"24951:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24930:37:96"},"returnParameters":{"id":67743,"nodeType":"ParameterList","parameters":[],"src":"24994:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67967,"nodeType":"FunctionDefinition","src":"25907:2078:96","nodes":[],"body":{"id":67966,"nodeType":"Block","src":"26001:1984:96","nodes":[],"statements":[{"assignments":[67828],"declarations":[{"constant":false,"id":67828,"mutability":"mutable","name":"proposalId","nameLocation":"26159:10:96","nodeType":"VariableDeclaration","scope":67966,"src":"26151:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67827,"name":"uint256","nodeType":"ElementaryTypeName","src":"26151:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67836,"initialValue":{"arguments":[{"id":67831,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67821,"src":"26183:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":67833,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"26191:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67832,"name":"uint256","nodeType":"ElementaryTypeName","src":"26191:7:96","typeDescriptions":{}}}],"id":67834,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"26190:9:96","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":67829,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"26172:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67830,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"26176:6:96","memberName":"decode","nodeType":"MemberAccess","src":"26172:10:96","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26172:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"26151:49:96"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"id":67840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67837,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66616,"src":"26311:12:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67838,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66228,"src":"26327:12:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$66228_$","typeString":"type(enum ProposalType)"}},"id":67839,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"26340:7:96","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":66226,"src":"26327:20:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"src":"26311:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67965,"nodeType":"IfStatement","src":"26307:1612:96","trueBody":{"id":67964,"nodeType":"Block","src":"26349:1570:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67841,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"26367:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67843,"indexExpression":{"id":67842,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26377:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26367:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67844,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26389:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"26367:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":67845,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26403:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26367:46:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67852,"nodeType":"IfStatement","src":"26363:121:96","trueBody":{"id":67851,"nodeType":"Block","src":"26415:69:96","statements":[{"errorCall":{"arguments":[{"id":67848,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26458:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67847,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66401,"src":"26440:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67849,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26440:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67850,"nodeType":"RevertStatement","src":"26433:36:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67853,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"26502:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67855,"indexExpression":{"id":67854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26512:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26502:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67856,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26524:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"26502:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67857,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65573,"src":"26542:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26502:50:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67863,"nodeType":"IfStatement","src":"26498:269:96","trueBody":{"id":67862,"nodeType":"Block","src":"26554:213:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67859,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"26682:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":67860,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26682:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67861,"nodeType":"ExpressionStatement","src":"26682:8:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":67870,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67864,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"26785:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67866,"indexExpression":{"id":67865,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26795:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26785:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67867,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26807:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"26785:36:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":67868,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"26825:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67869,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"26840:6:96","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":66247,"src":"26825:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"26785:61:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67876,"nodeType":"IfStatement","src":"26781:136:96","trueBody":{"id":67875,"nodeType":"Block","src":"26848:69:96","statements":[{"errorCall":{"arguments":[{"id":67872,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26891:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67871,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66397,"src":"26873:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67873,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26873:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67874,"nodeType":"RevertStatement","src":"26866:36:96"}]}},{"assignments":[67878],"declarations":[{"constant":false,"id":67878,"mutability":"mutable","name":"convictionLast","nameLocation":"26939:14:96","nodeType":"VariableDeclaration","scope":67964,"src":"26931:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67877,"name":"uint256","nodeType":"ElementaryTypeName","src":"26931:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67882,"initialValue":{"arguments":[{"id":67880,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26981:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67879,"name":"updateProposalConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69389,"src":"26956:24:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":67881,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26956:36:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"26931:61:96"},{"assignments":[67884],"declarations":[{"constant":false,"id":67884,"mutability":"mutable","name":"threshold","nameLocation":"27014:9:96","nodeType":"VariableDeclaration","scope":67964,"src":"27006:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67883,"name":"uint256","nodeType":"ElementaryTypeName","src":"27006:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67891,"initialValue":{"arguments":[{"expression":{"baseExpression":{"id":67886,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27045:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67888,"indexExpression":{"id":67887,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27055:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27045:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67889,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27067:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"27045:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67885,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68960,"src":"27026:18:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67890,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27026:57:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27006:77:96"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67894,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67892,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67878,"src":"27102:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":67893,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67884,"src":"27119:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27102:26:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67900,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67895,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27132:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67897,"indexExpression":{"id":67896,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27142:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27132:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67898,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27154:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"27132:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67899,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27172:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"27132:41:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"27102:71:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67906,"nodeType":"IfStatement","src":"27098:150:96","trueBody":{"id":67905,"nodeType":"Block","src":"27175:73:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67902,"name":"ConvictionUnderMinimumThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66409,"src":"27200:31:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67903,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27200:33:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67904,"nodeType":"RevertStatement","src":"27193:40:96"}]}},{"expression":{"id":67912,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67907,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65573,"src":"27262:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"expression":{"baseExpression":{"id":67908,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27276:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67910,"indexExpression":{"id":67909,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27286:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27276:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67911,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27298:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"27276:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27262:51:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67913,"nodeType":"ExpressionStatement","src":"27262:51:96"},{"expression":{"arguments":[{"expression":{"arguments":[{"id":67917,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"27381:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67915,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"27368:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":67916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27373:7:96","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"27368:12:96","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":67918,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27368:20:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":67919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27389:5:96","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"27368:26:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67920,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27396:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67922,"indexExpression":{"id":67921,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27406:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27396:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67923,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27418:11:96","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":66270,"src":"27396:33:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67924,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27431:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67926,"indexExpression":{"id":67925,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27441:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27431:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67927,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27453:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"27431:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67914,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"27335:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":67928,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27335:147:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67929,"nodeType":"ExpressionStatement","src":"27335:147:96"},{"expression":{"id":67936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":67930,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27497:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67932,"indexExpression":{"id":67931,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27507:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27497:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67933,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"27519:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"27497:36:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67934,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"27536:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67935,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"27551:8:96","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":66250,"src":"27536:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"27497:62:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":67937,"nodeType":"ExpressionStatement","src":"27497:62:96"},{"expression":{"arguments":[{"id":67941,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27625:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67942,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27653:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67944,"indexExpression":{"id":67943,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27663:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27653:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67945,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27675:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"27653:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67946,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"27702:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67948,"indexExpression":{"id":67947,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"27720:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27702:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67949,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27752:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"27702:75:96","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":67938,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"27573:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":67940,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27589:18:96","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76970,"src":"27573:34:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":67950,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27573:218:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67951,"nodeType":"ExpressionStatement","src":"27573:218:96"},{"eventCall":{"arguments":[{"id":67953,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27823:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67954,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27835:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67956,"indexExpression":{"id":67955,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27845:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27835:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67957,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27857:11:96","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":66270,"src":"27835:33:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67958,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27870:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67960,"indexExpression":{"id":67959,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27880:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27870:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67961,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27892:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"27870:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67952,"name":"Distributed","nodeType":"Identifier","overloadedDeclarations":[66457,2858],"referencedDeclaration":66457,"src":"27811:11:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":67962,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27811:97:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67963,"nodeType":"EmitStatement","src":"27806:102:96"}]}}]},"baseFunctions":[66063],"implemented":true,"kind":"function","modifiers":[],"name":"_distribute","nameLocation":"25916:11:96","overrides":{"id":67825,"nodeType":"OverrideSpecifier","overrides":[],"src":"25992:8:96"},"parameters":{"id":67824,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67819,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67967,"src":"25928:16:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67817,"name":"address","nodeType":"ElementaryTypeName","src":"25928:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67818,"nodeType":"ArrayTypeName","src":"25928:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67821,"mutability":"mutable","name":"_data","nameLocation":"25959:5:96","nodeType":"VariableDeclaration","scope":67967,"src":"25946:18:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67820,"name":"bytes","nodeType":"ElementaryTypeName","src":"25946:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67823,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67967,"src":"25966:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67822,"name":"address","nodeType":"ElementaryTypeName","src":"25966:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"25927:47:96"},"returnParameters":{"id":67826,"nodeType":"ParameterList","parameters":[],"src":"26001:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68019,"nodeType":"FunctionDefinition","src":"27991:728:96","nodes":[],"body":{"id":68018,"nodeType":"Block","src":"28088:631:96","nodes":[],"statements":[{"assignments":[67976],"declarations":[{"constant":false,"id":67976,"mutability":"mutable","name":"proposal","nameLocation":"28115:8:96","nodeType":"VariableDeclaration","scope":68018,"src":"28098:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67975,"nodeType":"UserDefinedTypeName","pathNode":{"id":67974,"name":"Proposal","nameLocations":["28098:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"28098:8:96"},"referencedDeclaration":66294,"src":"28098:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67980,"initialValue":{"baseExpression":{"id":67977,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"28126:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67979,"indexExpression":{"id":67978,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67969,"src":"28136:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"28126:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"28098:49:96"},{"assignments":[67982,67984],"declarations":[{"constant":false,"id":67982,"mutability":"mutable","name":"convictionLast","nameLocation":"28241:14:96","nodeType":"VariableDeclaration","scope":68018,"src":"28233:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67981,"name":"uint256","nodeType":"ElementaryTypeName","src":"28233:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67984,"mutability":"mutable","name":"blockNumber","nameLocation":"28265:11:96","nodeType":"VariableDeclaration","scope":68018,"src":"28257:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67983,"name":"uint256","nodeType":"ElementaryTypeName","src":"28257:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67990,"initialValue":{"arguments":[{"id":67986,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67976,"src":"28326:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":67987,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67976,"src":"28336:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67988,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28345:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"28336:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67985,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69185,"src":"28292:33:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$66294_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":67989,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28292:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"28232:126:96"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67997,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67993,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67991,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67982,"src":"28373:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67992,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28391:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"28373:19:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67996,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67994,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67984,"src":"28396:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67995,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28411:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"28396:16:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"28373:39:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68004,"nodeType":"IfStatement","src":"28369:110:96","trueBody":{"id":68003,"nodeType":"Block","src":"28414:65:96","statements":[{"expression":{"id":68001,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67998,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67982,"src":"28428:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67999,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67976,"src":"28445:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68000,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28454:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"28445:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28428:40:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68002,"nodeType":"ExpressionStatement","src":"28428:40:96"}]}},{"assignments":[68006],"declarations":[{"constant":false,"id":68006,"mutability":"mutable","name":"threshold","nameLocation":"28496:9:96","nodeType":"VariableDeclaration","scope":68018,"src":"28488:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68005,"name":"uint256","nodeType":"ElementaryTypeName","src":"28488:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68011,"initialValue":{"arguments":[{"expression":{"id":68008,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67976,"src":"28527:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68009,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28536:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"28527:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68007,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68960,"src":"28508:18:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":68010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28508:44:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"28488:64:96"},{"expression":{"id":68016,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68012,"name":"canBeExecuted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67972,"src":"28669:13:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68013,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67982,"src":"28685:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":68014,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68006,"src":"28703:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28685:27:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"28669:43:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68017,"nodeType":"ExpressionStatement","src":"28669:43:96"}]},"functionSelector":"824ea8ed","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteProposal","nameLocation":"28000:18:96","parameters":{"id":67970,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67969,"mutability":"mutable","name":"proposalId","nameLocation":"28027:10:96","nodeType":"VariableDeclaration","scope":68019,"src":"28019:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67968,"name":"uint256","nodeType":"ElementaryTypeName","src":"28019:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"28018:20:96"},"returnParameters":{"id":67973,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67972,"mutability":"mutable","name":"canBeExecuted","nameLocation":"28073:13:96","nodeType":"VariableDeclaration","scope":68019,"src":"28068:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67971,"name":"bool","nodeType":"ElementaryTypeName","src":"28068:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"28067:20:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68029,"nodeType":"FunctionDefinition","src":"29009:231:96","nodes":[],"body":{"id":68028,"nodeType":"Block","src":"29108:132:96","nodes":[],"statements":[]},"baseFunctions":[66083],"implemented":true,"kind":"function","modifiers":[],"name":"_getRecipientStatus","nameLocation":"29018:19:96","overrides":{"id":68023,"nodeType":"OverrideSpecifier","overrides":[],"src":"29082:8:96"},"parameters":{"id":68022,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68021,"mutability":"mutable","name":"_recipientId","nameLocation":"29046:12:96","nodeType":"VariableDeclaration","scope":68029,"src":"29038:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68020,"name":"address","nodeType":"ElementaryTypeName","src":"29038:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"29037:22:96"},"returnParameters":{"id":68027,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68026,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68029,"src":"29100:6:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"},"typeName":{"id":68025,"nodeType":"UserDefinedTypeName","pathNode":{"id":68024,"name":"Status","nameLocations":["29100:6:96"],"nodeType":"IdentifierPath","referencedDeclaration":2815,"src":"29100:6:96"},"referencedDeclaration":2815,"src":"29100:6:96","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"}},"visibility":"internal"}],"src":"29099:8:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68048,"nodeType":"FunctionDefinition","src":"29369:308:96","nodes":[],"body":{"id":68047,"nodeType":"Block","src":"29479:198:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68044,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"29662:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":68045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29662:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68046,"nodeType":"ExpressionStatement","src":"29662:8:96"}]},"baseFunctions":[65922],"documentation":{"id":68030,"nodeType":"StructuredDocumentation","src":"29246:118:96","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":"29378:10:96","overrides":{"id":68038,"nodeType":"OverrideSpecifier","overrides":[],"src":"29437:8:96"},"parameters":{"id":68037,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68033,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68048,"src":"29389:16:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":68031,"name":"address","nodeType":"ElementaryTypeName","src":"29389:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":68032,"nodeType":"ArrayTypeName","src":"29389:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":68036,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68048,"src":"29407:14:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":68034,"name":"bytes","nodeType":"ElementaryTypeName","src":"29407:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":68035,"nodeType":"ArrayTypeName","src":"29407:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"29388:34:96"},"returnParameters":{"id":68043,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68042,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68048,"src":"29455:22:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_memory_ptr_$dyn_memory_ptr","typeString":"struct IStrategy.PayoutSummary[]"},"typeName":{"baseType":{"id":68040,"nodeType":"UserDefinedTypeName","pathNode":{"id":68039,"name":"PayoutSummary","nameLocations":["29455:13:96"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"29455:13:96"},"referencedDeclaration":2820,"src":"29455:13:96","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"id":68041,"nodeType":"ArrayTypeName","src":"29455:15:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_storage_$dyn_storage_ptr","typeString":"struct IStrategy.PayoutSummary[]"}},"visibility":"internal"}],"src":"29454:24:96"},"scope":70249,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":68060,"nodeType":"FunctionDefinition","src":"29683:286:96","nodes":[],"body":{"id":68059,"nodeType":"Block","src":"29851:118:96","nodes":[],"statements":[]},"baseFunctions":[66074],"implemented":true,"kind":"function","modifiers":[],"name":"_getPayout","nameLocation":"29692:10:96","overrides":{"id":68054,"nodeType":"OverrideSpecifier","overrides":[],"src":"29799:8:96"},"parameters":{"id":68053,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68050,"mutability":"mutable","name":"_recipientId","nameLocation":"29711:12:96","nodeType":"VariableDeclaration","scope":68060,"src":"29703:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68049,"name":"address","nodeType":"ElementaryTypeName","src":"29703:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68052,"mutability":"mutable","name":"_data","nameLocation":"29738:5:96","nodeType":"VariableDeclaration","scope":68060,"src":"29725:18:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":68051,"name":"bytes","nodeType":"ElementaryTypeName","src":"29725:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"29702:42:96"},"returnParameters":{"id":68058,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68057,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68060,"src":"29825:20:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_memory_ptr","typeString":"struct IStrategy.PayoutSummary"},"typeName":{"id":68056,"nodeType":"UserDefinedTypeName","pathNode":{"id":68055,"name":"PayoutSummary","nameLocations":["29825:13:96"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"29825:13:96"},"referencedDeclaration":2820,"src":"29825:13:96","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"visibility":"internal"}],"src":"29824:22:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68071,"nodeType":"FunctionDefinition","src":"29975:127:96","nodes":[],"body":{"id":68070,"nodeType":"Block","src":"30052:50:96","nodes":[],"statements":[{"eventCall":{"arguments":[{"id":68067,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68062,"src":"30087:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68066,"name":"PoolAmountIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66467,"src":"30067:19:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":68068,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30067:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68069,"nodeType":"EmitStatement","src":"30062:33:96"}]},"baseFunctions":[66097],"implemented":true,"kind":"function","modifiers":[],"name":"_afterIncreasePoolAmount","nameLocation":"29984:24:96","overrides":{"id":68064,"nodeType":"OverrideSpecifier","overrides":[],"src":"30043:8:96"},"parameters":{"id":68063,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68062,"mutability":"mutable","name":"_amount","nameLocation":"30017:7:96","nodeType":"VariableDeclaration","scope":68071,"src":"30009:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68061,"name":"uint256","nodeType":"ElementaryTypeName","src":"30009:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30008:17:96"},"returnParameters":{"id":68065,"nodeType":"ParameterList","parameters":[],"src":"30052:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68080,"nodeType":"FunctionDefinition","src":"30197:143:96","nodes":[],"body":{"id":68079,"nodeType":"Block","src":"30290:50:96","nodes":[],"statements":[]},"baseFunctions":[66034],"implemented":true,"kind":"function","modifiers":[],"name":"_isValidAllocator","nameLocation":"30206:17:96","overrides":{"id":68075,"nodeType":"OverrideSpecifier","overrides":[],"src":"30266:8:96"},"parameters":{"id":68074,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68073,"mutability":"mutable","name":"_allocator","nameLocation":"30232:10:96","nodeType":"VariableDeclaration","scope":68080,"src":"30224:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68072,"name":"address","nodeType":"ElementaryTypeName","src":"30224:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30223:20:96"},"returnParameters":{"id":68078,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68077,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68080,"src":"30284:4:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68076,"name":"bool","nodeType":"ElementaryTypeName","src":"30284:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"30283:6:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68090,"nodeType":"FunctionDefinition","src":"30346:86:96","nodes":[],"body":{"id":68089,"nodeType":"Block","src":"30392:40:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":68086,"name":"_active","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68082,"src":"30417:7:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":68085,"name":"_setPoolActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66017,"src":"30402:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":68087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30402:23:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68088,"nodeType":"ExpressionStatement","src":"30402:23:96"}]},"functionSelector":"b5f620ce","implemented":true,"kind":"function","modifiers":[],"name":"setPoolActive","nameLocation":"30355:13:96","parameters":{"id":68083,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68082,"mutability":"mutable","name":"_active","nameLocation":"30374:7:96","nodeType":"VariableDeclaration","scope":68090,"src":"30369:12:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68081,"name":"bool","nodeType":"ElementaryTypeName","src":"30369:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"30368:14:96"},"returnParameters":{"id":68084,"nodeType":"ParameterList","parameters":[],"src":"30392:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":68177,"nodeType":"FunctionDefinition","src":"30438:833:96","nodes":[],"body":{"id":68176,"nodeType":"Block","src":"30490:781:96","nodes":[],"statements":[{"body":{"id":68168,"nodeType":"Block","src":"30615:609:96","statements":[{"assignments":[68109],"declarations":[{"constant":false,"id":68109,"mutability":"mutable","name":"proposalId","nameLocation":"30637:10:96","nodeType":"VariableDeclaration","scope":68168,"src":"30629:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68108,"name":"uint256","nodeType":"ElementaryTypeName","src":"30629:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68115,"initialValue":{"baseExpression":{"baseExpression":{"id":68110,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66645,"src":"30650:20:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":68112,"indexExpression":{"id":68111,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68092,"src":"30671:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30650:29:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":68114,"indexExpression":{"id":68113,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68096,"src":"30680:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30650:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"30629:53:96"},{"assignments":[68118],"declarations":[{"constant":false,"id":68118,"mutability":"mutable","name":"proposal","nameLocation":"30713:8:96","nodeType":"VariableDeclaration","scope":68168,"src":"30696:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68117,"nodeType":"UserDefinedTypeName","pathNode":{"id":68116,"name":"Proposal","nameLocations":["30696:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"30696:8:96"},"referencedDeclaration":66294,"src":"30696:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68122,"initialValue":{"baseExpression":{"id":68119,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"30724:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68121,"indexExpression":{"id":68120,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68109,"src":"30734:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30724:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30696:49:96"},{"condition":{"arguments":[{"id":68124,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68109,"src":"30778:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68123,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68321,"src":"30763:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30763:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68167,"nodeType":"IfStatement","src":"30759:455:96","trueBody":{"id":68166,"nodeType":"Block","src":"30791:423:96","statements":[{"assignments":[68127],"declarations":[{"constant":false,"id":68127,"mutability":"mutable","name":"stakedPoints","nameLocation":"30817:12:96","nodeType":"VariableDeclaration","scope":68166,"src":"30809:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68126,"name":"uint256","nodeType":"ElementaryTypeName","src":"30809:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68132,"initialValue":{"baseExpression":{"expression":{"id":68128,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68118,"src":"30832:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68129,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30841:17:96","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":66283,"src":"30832:26:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68131,"indexExpression":{"id":68130,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68092,"src":"30859:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30832:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"30809:58:96"},{"expression":{"id":68139,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":68133,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68118,"src":"30885:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68136,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30894:17:96","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":66283,"src":"30885:26:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68137,"indexExpression":{"id":68135,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68092,"src":"30912:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"30885:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":68138,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30923:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"30885:39:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68140,"nodeType":"ExpressionStatement","src":"30885:39:96"},{"expression":{"id":68145,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68141,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68118,"src":"30942:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68143,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"30951:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"30942:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":68144,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68127,"src":"30967:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30942:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68146,"nodeType":"ExpressionStatement","src":"30942:37:96"},{"expression":{"id":68149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68147,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66608,"src":"30997:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":68148,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68127,"src":"31012:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30997:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68150,"nodeType":"ExpressionStatement","src":"30997:27:96"},{"expression":{"arguments":[{"id":68152,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68118,"src":"31069:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68153,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68127,"src":"31079:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68151,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69138,"src":"31042:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$66294_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68154,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31042:50:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68155,"nodeType":"ExpressionStatement","src":"31042:50:96"},{"eventCall":{"arguments":[{"id":68157,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68092,"src":"31128:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68158,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68109,"src":"31137:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":68159,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31149:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":68160,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68118,"src":"31152:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68161,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31161:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"31152:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68162,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68118,"src":"31175:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68163,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31184:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"31175:23:96","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":68156,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66499,"src":"31115:12:96","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":68164,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31115:84:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68165,"nodeType":"EmitStatement","src":"31110:89:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68104,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68099,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68096,"src":"30568:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":68100,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66645,"src":"30572:20:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":68102,"indexExpression":{"id":68101,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68092,"src":"30593:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30572:29:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":68103,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30602:6:96","memberName":"length","nodeType":"MemberAccess","src":"30572:36:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30568:40:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68169,"initializationExpression":{"assignments":[68096],"declarations":[{"constant":false,"id":68096,"mutability":"mutable","name":"i","nameLocation":"30561:1:96","nodeType":"VariableDeclaration","scope":68169,"src":"30553:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68095,"name":"uint256","nodeType":"ElementaryTypeName","src":"30553:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68098,"initialValue":{"hexValue":"30","id":68097,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30565:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"30553:13:96"},"loopExpression":{"expression":{"id":68106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"30610:3:96","subExpression":{"id":68105,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68096,"src":"30610:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68107,"nodeType":"ExpressionStatement","src":"30610:3:96"},"nodeType":"ForStatement","src":"30548:676:96"},{"expression":{"id":68174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68170,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66640,"src":"31233:18:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68172,"indexExpression":{"id":68171,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68092,"src":"31252:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"31233:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":68173,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31263:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"31233:31:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68175,"nodeType":"ExpressionStatement","src":"31233:31:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"withdraw","nameLocation":"30447:8:96","parameters":{"id":68093,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68092,"mutability":"mutable","name":"_member","nameLocation":"30464:7:96","nodeType":"VariableDeclaration","scope":68177,"src":"30456:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68091,"name":"address","nodeType":"ElementaryTypeName","src":"30456:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30455:17:96"},"returnParameters":{"id":68094,"nodeType":"ParameterList","parameters":[],"src":"30490:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68253,"nodeType":"FunctionDefinition","src":"31955:1115:96","nodes":[],"body":{"id":68252,"nodeType":"Block","src":"32470:600:96","nodes":[],"statements":[{"assignments":[68208],"declarations":[{"constant":false,"id":68208,"mutability":"mutable","name":"proposal","nameLocation":"32497:8:96","nodeType":"VariableDeclaration","scope":68252,"src":"32480:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68207,"nodeType":"UserDefinedTypeName","pathNode":{"id":68206,"name":"Proposal","nameLocations":["32480:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"32480:8:96"},"referencedDeclaration":66294,"src":"32480:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68212,"initialValue":{"baseExpression":{"id":68209,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"32508:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68211,"indexExpression":{"id":68210,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"32518:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32508:22:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"32480:50:96"},{"expression":{"id":68224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68213,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68200,"src":"32541:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68217,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68214,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32553:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68215,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32562:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"32553:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68216,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32581:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32553:29:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"expression":{"id":68220,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32608:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68221,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32617:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"32608:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68219,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68960,"src":"32589:18:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":68222,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32589:44:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68223,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"32553:80:96","trueExpression":{"hexValue":"30","id":68218,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32585:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32541:92:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68225,"nodeType":"ExpressionStatement","src":"32541:92:96"},{"expression":{"components":[{"expression":{"id":68226,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32664:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68227,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32673:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"32664:18:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68228,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32696:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68229,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32705:11:96","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":66270,"src":"32696:20:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68230,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32730:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68231,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32739:14:96","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":66274,"src":"32730:23:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68232,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32767:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68233,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32776:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"32767:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68234,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32805:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68235,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32814:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"32805:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68236,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32840:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68237,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32849:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"32840:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},{"expression":{"id":68238,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32877:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68239,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32886:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"32877:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68240,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32909:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68241,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32918:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"32909:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68242,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68200,"src":"32946:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"expression":{"id":68243,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32969:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68244,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32978:17:96","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":66283,"src":"32969:26:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68247,"indexExpression":{"expression":{"id":68245,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"32996:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33000:6:96","memberName":"sender","nodeType":"MemberAccess","src":"32996:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32969:38:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68248,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"33021:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68249,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33030:23:96","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":66293,"src":"33021:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68250,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"32650:413:96","typeDescriptions":{"typeIdentifier":"t_tuple$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_enum$_ProposalStatus_$66253_$_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":68205,"id":68251,"nodeType":"Return","src":"32643:420:96"}]},"documentation":{"id":68178,"nodeType":"StructuredDocumentation","src":"31277:673:96","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":"31964:11:96","parameters":{"id":68181,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68180,"mutability":"mutable","name":"_proposalId","nameLocation":"31984:11:96","nodeType":"VariableDeclaration","scope":68253,"src":"31976:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68179,"name":"uint256","nodeType":"ElementaryTypeName","src":"31976:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31975:21:96"},"returnParameters":{"id":68205,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68183,"mutability":"mutable","name":"submitter","nameLocation":"32081:9:96","nodeType":"VariableDeclaration","scope":68253,"src":"32073:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68182,"name":"address","nodeType":"ElementaryTypeName","src":"32073:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68185,"mutability":"mutable","name":"beneficiary","nameLocation":"32112:11:96","nodeType":"VariableDeclaration","scope":68253,"src":"32104:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68184,"name":"address","nodeType":"ElementaryTypeName","src":"32104:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68187,"mutability":"mutable","name":"requestedToken","nameLocation":"32145:14:96","nodeType":"VariableDeclaration","scope":68253,"src":"32137:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68186,"name":"address","nodeType":"ElementaryTypeName","src":"32137:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68189,"mutability":"mutable","name":"requestedAmount","nameLocation":"32181:15:96","nodeType":"VariableDeclaration","scope":68253,"src":"32173:23:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68188,"name":"uint256","nodeType":"ElementaryTypeName","src":"32173:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68191,"mutability":"mutable","name":"stakedAmount","nameLocation":"32218:12:96","nodeType":"VariableDeclaration","scope":68253,"src":"32210:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68190,"name":"uint256","nodeType":"ElementaryTypeName","src":"32210:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68194,"mutability":"mutable","name":"proposalStatus","nameLocation":"32259:14:96","nodeType":"VariableDeclaration","scope":68253,"src":"32244:29:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"typeName":{"id":68193,"nodeType":"UserDefinedTypeName","pathNode":{"id":68192,"name":"ProposalStatus","nameLocations":["32244:14:96"],"nodeType":"IdentifierPath","referencedDeclaration":66253,"src":"32244:14:96"},"referencedDeclaration":66253,"src":"32244:14:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":68196,"mutability":"mutable","name":"blockLast","nameLocation":"32295:9:96","nodeType":"VariableDeclaration","scope":68253,"src":"32287:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68195,"name":"uint256","nodeType":"ElementaryTypeName","src":"32287:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68198,"mutability":"mutable","name":"convictionLast","nameLocation":"32326:14:96","nodeType":"VariableDeclaration","scope":68253,"src":"32318:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68197,"name":"uint256","nodeType":"ElementaryTypeName","src":"32318:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68200,"mutability":"mutable","name":"threshold","nameLocation":"32362:9:96","nodeType":"VariableDeclaration","scope":68253,"src":"32354:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68199,"name":"uint256","nodeType":"ElementaryTypeName","src":"32354:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68202,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"32393:17:96","nodeType":"VariableDeclaration","scope":68253,"src":"32385:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68201,"name":"uint256","nodeType":"ElementaryTypeName","src":"32385:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68204,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"32432:23:96","nodeType":"VariableDeclaration","scope":68253,"src":"32424:31:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68203,"name":"uint256","nodeType":"ElementaryTypeName","src":"32424:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32059:406:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":68269,"nodeType":"FunctionDefinition","src":"33544:184:96","nodes":[],"body":{"id":68268,"nodeType":"Block","src":"33652:76:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":68264,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68256,"src":"33701:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68265,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68258,"src":"33714:6:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":68263,"name":"_internal_getProposalVoterStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"33669:31:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_uint256_$","typeString":"function (uint256,address) view returns (uint256)"}},"id":68266,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33669:52:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68262,"id":68267,"nodeType":"Return","src":"33662:59:96"}]},"documentation":{"id":68254,"nodeType":"StructuredDocumentation","src":"33349:190:96","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":"33553:21:96","parameters":{"id":68259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68256,"mutability":"mutable","name":"_proposalId","nameLocation":"33583:11:96","nodeType":"VariableDeclaration","scope":68269,"src":"33575:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68255,"name":"uint256","nodeType":"ElementaryTypeName","src":"33575:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68258,"mutability":"mutable","name":"_voter","nameLocation":"33604:6:96","nodeType":"VariableDeclaration","scope":68269,"src":"33596:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68257,"name":"address","nodeType":"ElementaryTypeName","src":"33596:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"33574:37:96"},"returnParameters":{"id":68262,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68261,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68269,"src":"33643:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68260,"name":"uint256","nodeType":"ElementaryTypeName","src":"33643:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"33642:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":68286,"nodeType":"FunctionDefinition","src":"35252:226:96","nodes":[],"body":{"id":68285,"nodeType":"Block","src":"35406:72:96","nodes":[],"statements":[{"expression":{"baseExpression":{"expression":{"baseExpression":{"id":68278,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"35423:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68280,"indexExpression":{"id":68279,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68271,"src":"35433:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35423:22:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":68281,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35446:17:96","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":66283,"src":"35423:40:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68283,"indexExpression":{"id":68282,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68273,"src":"35464:6:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35423:48:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68277,"id":68284,"nodeType":"Return","src":"35416:55:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_internal_getProposalVoterStake","nameLocation":"35261:31:96","parameters":{"id":68274,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68271,"mutability":"mutable","name":"_proposalId","nameLocation":"35301:11:96","nodeType":"VariableDeclaration","scope":68286,"src":"35293:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68270,"name":"uint256","nodeType":"ElementaryTypeName","src":"35293:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68273,"mutability":"mutable","name":"_voter","nameLocation":"35322:6:96","nodeType":"VariableDeclaration","scope":68286,"src":"35314:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68272,"name":"address","nodeType":"ElementaryTypeName","src":"35314:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"35292:37:96"},"returnParameters":{"id":68277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68276,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68286,"src":"35393:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68275,"name":"uint256","nodeType":"ElementaryTypeName","src":"35393:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35392:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68296,"nodeType":"FunctionDefinition","src":"35484:153:96","nodes":[],"body":{"id":68295,"nodeType":"Block","src":"35556:81:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":68291,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"35573:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":68292,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35591:20:96","memberName":"getBasisStakedAmount","nodeType":"MemberAccess","referencedDeclaration":73172,"src":"35573:38:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":68293,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35573:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68290,"id":68294,"nodeType":"Return","src":"35566:47:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"35493:20:96","parameters":{"id":68287,"nodeType":"ParameterList","parameters":[],"src":"35513:2:96"},"returnParameters":{"id":68290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68289,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68296,"src":"35547:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68288,"name":"uint256","nodeType":"ElementaryTypeName","src":"35547:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35546:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68321,"nodeType":"FunctionDefinition","src":"35643:193:96","nodes":[],"body":{"id":68320,"nodeType":"Block","src":"35725:111:96","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68318,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68308,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68303,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"35742:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68305,"indexExpression":{"id":68304,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68298,"src":"35752:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35742:22:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":68306,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35765:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"35742:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":68307,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35778:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"35742:37:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68317,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68309,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"35783:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68311,"indexExpression":{"id":68310,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68298,"src":"35793:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35783:22:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":68312,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35806:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"35783:32:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68315,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35827:1:96","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":68314,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"35819:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68313,"name":"address","nodeType":"ElementaryTypeName","src":"35819:7:96","typeDescriptions":{}}},"id":68316,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35819:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"35783:46:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"35742:87:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":68302,"id":68319,"nodeType":"Return","src":"35735:94:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"proposalExists","nameLocation":"35652:14:96","parameters":{"id":68299,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68298,"mutability":"mutable","name":"_proposalID","nameLocation":"35675:11:96","nodeType":"VariableDeclaration","scope":68321,"src":"35667:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68297,"name":"uint256","nodeType":"ElementaryTypeName","src":"35667:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35666:21:96"},"returnParameters":{"id":68302,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68301,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68321,"src":"35719:4:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68300,"name":"bool","nodeType":"ElementaryTypeName","src":"35719:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"35718:6:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68340,"nodeType":"FunctionDefinition","src":"35842:191:96","nodes":[],"body":{"id":68339,"nodeType":"Block","src":"35945:88:96","nodes":[],"statements":[{"expression":{"id":68337,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68328,"name":"isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68326,"src":"35955:14:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68336,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68332,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68329,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"35972:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68330,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35981:8:96","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":66318,"src":"35972:17:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68331,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65573,"src":"35992:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35972:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68335,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68333,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68323,"src":"36006:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68334,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"36025:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36006:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35972:54:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"35955:71:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68338,"nodeType":"ExpressionStatement","src":"35955:71:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_isOverMaxRatio","nameLocation":"35851:15:96","parameters":{"id":68324,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68323,"mutability":"mutable","name":"_requestedAmount","nameLocation":"35875:16:96","nodeType":"VariableDeclaration","scope":68340,"src":"35867:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68322,"name":"uint256","nodeType":"ElementaryTypeName","src":"35867:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35866:26:96"},"returnParameters":{"id":68327,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68326,"mutability":"mutable","name":"isOverMaxRatio","nameLocation":"35929:14:96","nodeType":"VariableDeclaration","scope":68340,"src":"35924:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68325,"name":"bool","nodeType":"ElementaryTypeName","src":"35924:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"35923:21:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68456,"nodeType":"FunctionDefinition","src":"36039:1713:96","nodes":[],"body":{"id":68455,"nodeType":"Block","src":"36142:1610:96","nodes":[],"statements":[{"assignments":[68350],"declarations":[{"constant":false,"id":68350,"mutability":"mutable","name":"deltaSupportSum","nameLocation":"36159:15:96","nodeType":"VariableDeclaration","scope":68455,"src":"36152:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68349,"name":"int256","nodeType":"ElementaryTypeName","src":"36152:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68352,"initialValue":{"hexValue":"30","id":68351,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36177:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36152:26:96"},{"assignments":[68354],"declarations":[{"constant":false,"id":68354,"mutability":"mutable","name":"canAddSupport","nameLocation":"36193:13:96","nodeType":"VariableDeclaration","scope":68455,"src":"36188:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68353,"name":"bool","nodeType":"ElementaryTypeName","src":"36188:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68358,"initialValue":{"arguments":[{"id":68356,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68342,"src":"36227:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68355,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66985,"src":"36209:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":68357,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36209:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"36188:47:96"},{"body":{"id":68417,"nodeType":"Block","src":"36299:714:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68378,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68371,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36372:14:96","subExpression":{"id":68370,"name":"canAddSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68354,"src":"36373:13:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68377,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68372,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68346,"src":"36390:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68374,"indexExpression":{"id":68373,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"36407:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36390:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":68375,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36410:12:96","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":66298,"src":"36390:32:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":68376,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36425:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"36390:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"36372:54:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68383,"nodeType":"IfStatement","src":"36368:125:96","trueBody":{"id":68382,"nodeType":"Block","src":"36428:65:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68379,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66415,"src":"36453:23:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68380,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36453:25:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68381,"nodeType":"RevertStatement","src":"36446:32:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68389,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68384,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68346,"src":"36510:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68386,"indexExpression":{"id":68385,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"36527:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36510:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":68387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36530:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66296,"src":"36510:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68388,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36544:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"36510:35:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68392,"nodeType":"IfStatement","src":"36506:187:96","trueBody":{"id":68391,"nodeType":"Block","src":"36547:146:96","statements":[{"id":68390,"nodeType":"Continue","src":"36670:8:96"}]}},{"assignments":[68394],"declarations":[{"constant":false,"id":68394,"mutability":"mutable","name":"proposalId","nameLocation":"36714:10:96","nodeType":"VariableDeclaration","scope":68417,"src":"36706:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68393,"name":"uint256","nodeType":"ElementaryTypeName","src":"36706:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68399,"initialValue":{"expression":{"baseExpression":{"id":68395,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68346,"src":"36727:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68397,"indexExpression":{"id":68396,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"36744:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36727:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":68398,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36747:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66296,"src":"36727:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"36706:51:96"},{"condition":{"id":68403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36775:27:96","subExpression":{"arguments":[{"id":68401,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68394,"src":"36791:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68400,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68321,"src":"36776:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68402,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36776:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68409,"nodeType":"IfStatement","src":"36771:167:96","trueBody":{"id":68408,"nodeType":"Block","src":"36804:134:96","statements":[{"errorCall":{"arguments":[{"id":68405,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68394,"src":"36847:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68404,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66401,"src":"36829:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68406,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36829:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68407,"nodeType":"RevertStatement","src":"36822:36:96"}]}},{"expression":{"id":68415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68410,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68350,"src":"36951:15:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"baseExpression":{"id":68411,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68346,"src":"36970:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68413,"indexExpression":{"id":68412,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"36987:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36970:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":68414,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36990:12:96","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":66298,"src":"36970:32:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"36951:51:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":68416,"nodeType":"ExpressionStatement","src":"36951:51:96"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68363,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"36265:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68364,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68346,"src":"36269:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68365,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36286:6:96","memberName":"length","nodeType":"MemberAccess","src":"36269:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36265:27:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68418,"initializationExpression":{"assignments":[68360],"declarations":[{"constant":false,"id":68360,"mutability":"mutable","name":"i","nameLocation":"36258:1:96","nodeType":"VariableDeclaration","scope":68418,"src":"36250:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68359,"name":"uint256","nodeType":"ElementaryTypeName","src":"36250:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68362,"initialValue":{"hexValue":"30","id":68361,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36262:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36250:13:96"},"loopExpression":{"expression":{"id":68368,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"36294:3:96","subExpression":{"id":68367,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"36294:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68369,"nodeType":"ExpressionStatement","src":"36294:3:96"},"nodeType":"ForStatement","src":"36245:768:96"},{"assignments":[68420],"declarations":[{"constant":false,"id":68420,"mutability":"mutable","name":"newTotalVotingSupport","nameLocation":"37117:21:96","nodeType":"VariableDeclaration","scope":68455,"src":"37109:29:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68419,"name":"uint256","nodeType":"ElementaryTypeName","src":"37109:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68427,"initialValue":{"arguments":[{"baseExpression":{"id":68422,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66640,"src":"37153:18:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68424,"indexExpression":{"id":68423,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68342,"src":"37172:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"37153:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68425,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68350,"src":"37182:15:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68421,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68773,"src":"37141:11:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":68426,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37141:57:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"37109:89:96"},{"assignments":[68429],"declarations":[{"constant":false,"id":68429,"mutability":"mutable","name":"participantBalance","nameLocation":"37288:18:96","nodeType":"VariableDeclaration","scope":68455,"src":"37280:26:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68428,"name":"uint256","nodeType":"ElementaryTypeName","src":"37280:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68438,"initialValue":{"arguments":[{"id":68432,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68342,"src":"37352:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":68435,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"37369:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":68434,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37361:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68433,"name":"address","nodeType":"ElementaryTypeName","src":"37361:7:96","typeDescriptions":{}}},"id":68436,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37361:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":68430,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"37309:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":68431,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37327:24:96","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72736,"src":"37309:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":68437,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37309:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"37280:95:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68439,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68420,"src":"37541:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":68440,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68429,"src":"37565:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37541:42:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68448,"nodeType":"IfStatement","src":"37537:147:96","trueBody":{"id":68447,"nodeType":"Block","src":"37585:99:96","statements":[{"errorCall":{"arguments":[{"id":68443,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68420,"src":"37631:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68444,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68429,"src":"37654:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68442,"name":"NotEnoughPointsToSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66393,"src":"37606:24:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68445,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37606:67:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68446,"nodeType":"RevertStatement","src":"37599:74:96"}]}},{"expression":{"id":68453,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68449,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66640,"src":"37694:18:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68451,"indexExpression":{"id":68450,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68342,"src":"37713:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"37694:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68452,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68420,"src":"37724:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37694:51:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68454,"nodeType":"ExpressionStatement","src":"37694:51:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_check_before_addSupport","nameLocation":"36048:24:96","parameters":{"id":68347,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68342,"mutability":"mutable","name":"_sender","nameLocation":"36081:7:96","nodeType":"VariableDeclaration","scope":68456,"src":"36073:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68341,"name":"address","nodeType":"ElementaryTypeName","src":"36073:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68346,"mutability":"mutable","name":"_proposalSupport","nameLocation":"36115:16:96","nodeType":"VariableDeclaration","scope":68456,"src":"36090:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":68344,"nodeType":"UserDefinedTypeName","pathNode":{"id":68343,"name":"ProposalSupport","nameLocations":["36090:15:96"],"nodeType":"IdentifierPath","referencedDeclaration":66299,"src":"36090:15:96"},"referencedDeclaration":66299,"src":"36090:15:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_storage_ptr","typeString":"struct ProposalSupport"}},"id":68345,"nodeType":"ArrayTypeName","src":"36090:17:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"36072:60:96"},"returnParameters":{"id":68348,"nodeType":"ParameterList","parameters":[],"src":"36142:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":68741,"nodeType":"FunctionDefinition","src":"37758:3457:96","nodes":[],"body":{"id":68740,"nodeType":"Block","src":"37856:3359:96","nodes":[],"statements":[{"assignments":[68469],"declarations":[{"constant":false,"id":68469,"mutability":"mutable","name":"proposalsIds","nameLocation":"37883:12:96","nodeType":"VariableDeclaration","scope":68740,"src":"37866:29:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":68467,"name":"uint256","nodeType":"ElementaryTypeName","src":"37866:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68468,"nodeType":"ArrayTypeName","src":"37866:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":68470,"nodeType":"VariableDeclarationStatement","src":"37866:29:96"},{"body":{"id":68738,"nodeType":"Block","src":"37959:3250:96","statements":[{"assignments":[68483],"declarations":[{"constant":false,"id":68483,"mutability":"mutable","name":"proposalId","nameLocation":"37981:10:96","nodeType":"VariableDeclaration","scope":68738,"src":"37973:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68482,"name":"uint256","nodeType":"ElementaryTypeName","src":"37973:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68488,"initialValue":{"expression":{"baseExpression":{"id":68484,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68462,"src":"37994:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68486,"indexExpression":{"id":68485,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68472,"src":"38011:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"37994:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":68487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"38014:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66296,"src":"37994:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"37973:51:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68489,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38097:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68490,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38110:6:96","memberName":"length","nodeType":"MemberAccess","src":"38097:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68491,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38120:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"38097:24:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68591,"nodeType":"Block","src":"38249:764:96","statements":[{"assignments":[68509],"declarations":[{"constant":false,"id":68509,"mutability":"mutable","name":"exist","nameLocation":"38272:5:96","nodeType":"VariableDeclaration","scope":68591,"src":"38267:10:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68508,"name":"bool","nodeType":"ElementaryTypeName","src":"38267:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68511,"initialValue":{"hexValue":"66616c7365","id":68510,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"38280:5:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"38267:18:96"},{"body":{"id":68539,"nodeType":"Block","src":"38353:268:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68527,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":68523,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38404:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68525,"indexExpression":{"id":68524,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68513,"src":"38417:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"38404:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":68526,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68483,"src":"38423:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38404:29:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68538,"nodeType":"IfStatement","src":"38400:203:96","trueBody":{"id":68537,"nodeType":"Block","src":"38435:168:96","statements":[{"expression":{"id":68530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68528,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68509,"src":"38461:5:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":68529,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"38469:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"38461:12:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68531,"nodeType":"ExpressionStatement","src":"38461:12:96"},{"errorCall":{"arguments":[{"id":68533,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68483,"src":"38532:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68534,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68513,"src":"38544:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68532,"name":"ProposalSupportDuplicated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66407,"src":"38506:25:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38506:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68536,"nodeType":"RevertStatement","src":"38499:47:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68516,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68513,"src":"38323:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68517,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38327:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68518,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38340:6:96","memberName":"length","nodeType":"MemberAccess","src":"38327:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38323:23:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68540,"initializationExpression":{"assignments":[68513],"declarations":[{"constant":false,"id":68513,"mutability":"mutable","name":"j","nameLocation":"38316:1:96","nodeType":"VariableDeclaration","scope":68540,"src":"38308:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68512,"name":"uint256","nodeType":"ElementaryTypeName","src":"38308:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68515,"initialValue":{"hexValue":"30","id":68514,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38320:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"38308:13:96"},"loopExpression":{"expression":{"id":68521,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"38348:3:96","subExpression":{"id":68520,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68513,"src":"38348:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68522,"nodeType":"ExpressionStatement","src":"38348:3:96"},"nodeType":"ForStatement","src":"38303:318:96"},{"condition":{"id":68542,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"38642:6:96","subExpression":{"id":68541,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68509,"src":"38643:5:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68590,"nodeType":"IfStatement","src":"38638:361:96","trueBody":{"id":68589,"nodeType":"Block","src":"38650:349:96","statements":[{"assignments":[68547],"declarations":[{"constant":false,"id":68547,"mutability":"mutable","name":"temp","nameLocation":"38689:4:96","nodeType":"VariableDeclaration","scope":68589,"src":"38672:21:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":68545,"name":"uint256","nodeType":"ElementaryTypeName","src":"38672:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68546,"nodeType":"ArrayTypeName","src":"38672:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":68556,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68554,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68551,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38710:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68552,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38723:6:96","memberName":"length","nodeType":"MemberAccess","src":"38710:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":68553,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38732:1:96","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"38710:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"38696:13:96","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":68548,"name":"uint256","nodeType":"ElementaryTypeName","src":"38700:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68549,"nodeType":"ArrayTypeName","src":"38700:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":68555,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38696:38:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"VariableDeclarationStatement","src":"38672:62:96"},{"body":{"id":68576,"nodeType":"Block","src":"38806:74:96","statements":[{"expression":{"id":68574,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68568,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68547,"src":"38832:4:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68570,"indexExpression":{"id":68569,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68558,"src":"38837:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"38832:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":68571,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38842:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68573,"indexExpression":{"id":68572,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68558,"src":"38855:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"38842:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38832:25:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68575,"nodeType":"ExpressionStatement","src":"38832:25:96"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68564,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68561,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68558,"src":"38776:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68562,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38780:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68563,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38793:6:96","memberName":"length","nodeType":"MemberAccess","src":"38780:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38776:23:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68577,"initializationExpression":{"assignments":[68558],"declarations":[{"constant":false,"id":68558,"mutability":"mutable","name":"j","nameLocation":"38769:1:96","nodeType":"VariableDeclaration","scope":68577,"src":"38761:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68557,"name":"uint256","nodeType":"ElementaryTypeName","src":"38761:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68560,"initialValue":{"hexValue":"30","id":68559,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38773:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"38761:13:96"},"loopExpression":{"expression":{"id":68566,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"38801:3:96","subExpression":{"id":68565,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68558,"src":"38801:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68567,"nodeType":"ExpressionStatement","src":"38801:3:96"},"nodeType":"ForStatement","src":"38756:124:96"},{"expression":{"id":68583,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68578,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68547,"src":"38901:4:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68581,"indexExpression":{"expression":{"id":68579,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38906:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68580,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38919:6:96","memberName":"length","nodeType":"MemberAccess","src":"38906:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"38901:25:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68582,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68483,"src":"38929:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38901:38:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68584,"nodeType":"ExpressionStatement","src":"38901:38:96"},{"expression":{"id":68587,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68585,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38961:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68586,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68547,"src":"38976:4:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"38961:19:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68588,"nodeType":"ExpressionStatement","src":"38961:19:96"}]}}]},"id":68592,"nodeType":"IfStatement","src":"38093:920:96","trueBody":{"id":68507,"nodeType":"Block","src":"38123:120:96","statements":[{"expression":{"id":68499,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68493,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38141:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":68497,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38170:1:96","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":68496,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"38156:13:96","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":68494,"name":"uint256","nodeType":"ElementaryTypeName","src":"38160:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68495,"nodeType":"ArrayTypeName","src":"38160:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":68498,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38156:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"38141:31:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68500,"nodeType":"ExpressionStatement","src":"38141:31:96"},{"expression":{"id":68505,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68501,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38190:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68503,"indexExpression":{"hexValue":"30","id":68502,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38203:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"38190:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68504,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68483,"src":"38208:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38190:28:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68506,"nodeType":"ExpressionStatement","src":"38190:28:96"}]}},{"assignments":[68594],"declarations":[{"constant":false,"id":68594,"mutability":"mutable","name":"delta","nameLocation":"39033:5:96","nodeType":"VariableDeclaration","scope":68738,"src":"39026:12:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68593,"name":"int256","nodeType":"ElementaryTypeName","src":"39026:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68599,"initialValue":{"expression":{"baseExpression":{"id":68595,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68462,"src":"39041:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68597,"indexExpression":{"id":68596,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68472,"src":"39058:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"39041:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":68598,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39061:12:96","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":66298,"src":"39041:32:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"39026:47:96"},{"assignments":[68602],"declarations":[{"constant":false,"id":68602,"mutability":"mutable","name":"proposal","nameLocation":"39105:8:96","nodeType":"VariableDeclaration","scope":68738,"src":"39088:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68601,"nodeType":"UserDefinedTypeName","pathNode":{"id":68600,"name":"Proposal","nameLocations":["39088:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"39088:8:96"},"referencedDeclaration":66294,"src":"39088:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68606,"initialValue":{"baseExpression":{"id":68603,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"39116:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68605,"indexExpression":{"id":68604,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68483,"src":"39126:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"39116:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"39088:49:96"},{"assignments":[68608],"declarations":[{"constant":false,"id":68608,"mutability":"mutable","name":"previousStakedPoints","nameLocation":"39247:20:96","nodeType":"VariableDeclaration","scope":68738,"src":"39239:28:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68607,"name":"uint256","nodeType":"ElementaryTypeName","src":"39239:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68613,"initialValue":{"baseExpression":{"expression":{"id":68609,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"39270:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68610,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39279:17:96","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":66283,"src":"39270:26:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68612,"indexExpression":{"id":68611,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68458,"src":"39297:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"39270:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"39239:66:96"},{"assignments":[68615],"declarations":[{"constant":false,"id":68615,"mutability":"mutable","name":"stakedPoints","nameLocation":"39478:12:96","nodeType":"VariableDeclaration","scope":68738,"src":"39470:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68614,"name":"uint256","nodeType":"ElementaryTypeName","src":"39470:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68620,"initialValue":{"arguments":[{"id":68617,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"39505:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68618,"name":"delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68594,"src":"39527:5:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68616,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68773,"src":"39493:11:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":68619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39493:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"39470:63:96"},{"expression":{"id":68627,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":68621,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"39668:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68624,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39677:17:96","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":66283,"src":"39668:26:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68625,"indexExpression":{"id":68623,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68458,"src":"39695:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"39668:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68626,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"39706:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"39668:50:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68628,"nodeType":"ExpressionStatement","src":"39668:50:96"},{"assignments":[68630],"declarations":[{"constant":false,"id":68630,"mutability":"mutable","name":"hasProposal","nameLocation":"39957:11:96","nodeType":"VariableDeclaration","scope":68738,"src":"39952:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68629,"name":"bool","nodeType":"ElementaryTypeName","src":"39952:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68632,"initialValue":{"hexValue":"66616c7365","id":68631,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"39971:5:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"39952:24:96"},{"body":{"id":68661,"nodeType":"Block","src":"40057:179:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68653,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"baseExpression":{"id":68646,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66645,"src":"40079:20:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":68648,"indexExpression":{"id":68647,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68458,"src":"40100:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40079:29:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":68650,"indexExpression":{"id":68649,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68634,"src":"40109:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40079:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":68651,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"40115:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68652,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40124:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"40115:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40079:55:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68660,"nodeType":"IfStatement","src":"40075:147:96","trueBody":{"id":68659,"nodeType":"Block","src":"40136:86:96","statements":[{"expression":{"id":68656,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68654,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68630,"src":"40158:11:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":68655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"40172:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"40158:18:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68657,"nodeType":"ExpressionStatement","src":"40158:18:96"},{"id":68658,"nodeType":"Break","src":"40198:5:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68637,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68634,"src":"40010:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":68638,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66645,"src":"40014:20:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":68640,"indexExpression":{"id":68639,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68458,"src":"40035:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40014:29:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":68641,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40044:6:96","memberName":"length","nodeType":"MemberAccess","src":"40014:36:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40010:40:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68662,"initializationExpression":{"assignments":[68634],"declarations":[{"constant":false,"id":68634,"mutability":"mutable","name":"k","nameLocation":"40003:1:96","nodeType":"VariableDeclaration","scope":68662,"src":"39995:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68633,"name":"uint256","nodeType":"ElementaryTypeName","src":"39995:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68636,"initialValue":{"hexValue":"30","id":68635,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40007:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"39995:13:96"},"loopExpression":{"expression":{"id":68644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"40052:3:96","subExpression":{"id":68643,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68634,"src":"40052:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68645,"nodeType":"ExpressionStatement","src":"40052:3:96"},"nodeType":"ForStatement","src":"39990:246:96"},{"condition":{"id":68664,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"40253:12:96","subExpression":{"id":68663,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68630,"src":"40254:11:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68674,"nodeType":"IfStatement","src":"40249:106:96","trueBody":{"id":68673,"nodeType":"Block","src":"40267:88:96","statements":[{"expression":{"arguments":[{"expression":{"id":68669,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"40320:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40329:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"40320:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"baseExpression":{"id":68665,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66645,"src":"40285:20:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":68667,"indexExpression":{"id":68666,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68458,"src":"40306:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40285:29:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":68668,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40315:4:96","memberName":"push","nodeType":"MemberAccess","src":"40285:34:96","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":68671,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40285:55:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68672,"nodeType":"ExpressionStatement","src":"40285:55:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68675,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"40510:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68676,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"40534:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40510:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68707,"nodeType":"Block","src":"40715:161:96","statements":[{"expression":{"id":68697,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68693,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66608,"src":"40733:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68696,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68694,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"40748:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68695,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"40771:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40748:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40733:50:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68698,"nodeType":"ExpressionStatement","src":"40733:50:96"},{"expression":{"id":68705,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68699,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"40801:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68701,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"40810:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"40801:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68704,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68702,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"40826:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68703,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"40849:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40826:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40801:60:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68706,"nodeType":"ExpressionStatement","src":"40801:60:96"}]},"id":68708,"nodeType":"IfStatement","src":"40506:370:96","trueBody":{"id":68692,"nodeType":"Block","src":"40548:161:96","statements":[{"expression":{"id":68682,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68678,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66608,"src":"40566:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68681,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68679,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"40581:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68680,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"40596:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40581:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40566:50:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68683,"nodeType":"ExpressionStatement","src":"40566:50:96"},{"expression":{"id":68690,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68684,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"40634:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68686,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"40643:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"40634:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68689,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68687,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"40659:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68688,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"40674:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40659:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40634:60:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68691,"nodeType":"ExpressionStatement","src":"40634:60:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68712,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68709,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"40893:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40902:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"40893:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68711,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40915:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"40893:23:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68736,"nodeType":"Block","src":"40990:209:96","statements":[{"expression":{"arguments":[{"id":68722,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"41035:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68723,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"41045:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68721,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69138,"src":"41008:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$66294_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41008:58:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68725,"nodeType":"ExpressionStatement","src":"41008:58:96"},{"eventCall":{"arguments":[{"id":68727,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68458,"src":"41102:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68728,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68483,"src":"41111:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68729,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"41123:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68730,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"41137:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68731,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41146:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"41137:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68732,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"41160:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68733,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41169:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"41160:23:96","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":68726,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66499,"src":"41089:12:96","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":68734,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41089:95:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68735,"nodeType":"EmitStatement","src":"41084:100:96"}]},"id":68737,"nodeType":"IfStatement","src":"40889:310:96","trueBody":{"id":68720,"nodeType":"Block","src":"40918:66:96","statements":[{"expression":{"id":68718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68713,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"40936:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68715,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"40945:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"40936:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68716,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"40957:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68717,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40963:6:96","memberName":"number","nodeType":"MemberAccess","src":"40957:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40936:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68719,"nodeType":"ExpressionStatement","src":"40936:33:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68478,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68475,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68472,"src":"37925:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68476,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68462,"src":"37929:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68477,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37946:6:96","memberName":"length","nodeType":"MemberAccess","src":"37929:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37925:27:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68739,"initializationExpression":{"assignments":[68472],"declarations":[{"constant":false,"id":68472,"mutability":"mutable","name":"i","nameLocation":"37918:1:96","nodeType":"VariableDeclaration","scope":68739,"src":"37910:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68471,"name":"uint256","nodeType":"ElementaryTypeName","src":"37910:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68474,"initialValue":{"hexValue":"30","id":68473,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37922:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"37910:13:96"},"loopExpression":{"expression":{"id":68480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"37954:3:96","subExpression":{"id":68479,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68472,"src":"37954:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68481,"nodeType":"ExpressionStatement","src":"37954:3:96"},"nodeType":"ForStatement","src":"37905:3304:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addSupport","nameLocation":"37767:11:96","parameters":{"id":68463,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68458,"mutability":"mutable","name":"_sender","nameLocation":"37787:7:96","nodeType":"VariableDeclaration","scope":68741,"src":"37779:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68457,"name":"address","nodeType":"ElementaryTypeName","src":"37779:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68462,"mutability":"mutable","name":"_proposalSupport","nameLocation":"37821:16:96","nodeType":"VariableDeclaration","scope":68741,"src":"37796:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":68460,"nodeType":"UserDefinedTypeName","pathNode":{"id":68459,"name":"ProposalSupport","nameLocations":["37796:15:96"],"nodeType":"IdentifierPath","referencedDeclaration":66299,"src":"37796:15:96"},"referencedDeclaration":66299,"src":"37796:15:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_storage_ptr","typeString":"struct ProposalSupport"}},"id":68461,"nodeType":"ArrayTypeName","src":"37796:17:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"37778:60:96"},"returnParameters":{"id":68464,"nodeType":"ParameterList","parameters":[],"src":"37856:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68773,"nodeType":"FunctionDefinition","src":"41221:371:96","nodes":[],"body":{"id":68772,"nodeType":"Block","src":"41315:277:96","nodes":[],"statements":[{"assignments":[68751],"declarations":[{"constant":false,"id":68751,"mutability":"mutable","name":"result","nameLocation":"41332:6:96","nodeType":"VariableDeclaration","scope":68772,"src":"41325:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68750,"name":"int256","nodeType":"ElementaryTypeName","src":"41325:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68758,"initialValue":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68757,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":68754,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68743,"src":"41348:8:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68753,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"41341:6:96","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":68752,"name":"int256","nodeType":"ElementaryTypeName","src":"41341:6:96","typeDescriptions":{}}},"id":68755,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41341:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68756,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68745,"src":"41360:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"41341:25:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"41325:41:96"},{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68759,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68751,"src":"41381:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":68760,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41390:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"41381:10:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68766,"nodeType":"IfStatement","src":"41377:177:96","trueBody":{"id":68765,"nodeType":"Block","src":"41393:161:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68762,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"41473:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":68763,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41473:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68764,"nodeType":"ExpressionStatement","src":"41473:8:96"}]}},{"expression":{"arguments":[{"id":68769,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68751,"src":"41578:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68768,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"41570:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":68767,"name":"uint256","nodeType":"ElementaryTypeName","src":"41570:7:96","typeDescriptions":{}}},"id":68770,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41570:15:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68749,"id":68771,"nodeType":"Return","src":"41563:22:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_applyDelta","nameLocation":"41230:11:96","parameters":{"id":68746,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68743,"mutability":"mutable","name":"_support","nameLocation":"41250:8:96","nodeType":"VariableDeclaration","scope":68773,"src":"41242:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68742,"name":"uint256","nodeType":"ElementaryTypeName","src":"41242:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68745,"mutability":"mutable","name":"_delta","nameLocation":"41267:6:96","nodeType":"VariableDeclaration","scope":68773,"src":"41260:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68744,"name":"int256","nodeType":"ElementaryTypeName","src":"41260:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"41241:33:96"},"returnParameters":{"id":68749,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68748,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68773,"src":"41306:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68747,"name":"uint256","nodeType":"ElementaryTypeName","src":"41306:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41305:9:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68800,"nodeType":"FunctionDefinition","src":"41598:282:96","nodes":[],"body":{"id":68799,"nodeType":"Block","src":"41694:186:96","nodes":[],"statements":[{"assignments":[68782],"declarations":[{"constant":false,"id":68782,"mutability":"mutable","name":"proposal","nameLocation":"41721:8:96","nodeType":"VariableDeclaration","scope":68799,"src":"41704:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68781,"nodeType":"UserDefinedTypeName","pathNode":{"id":68780,"name":"Proposal","nameLocations":["41704:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"41704:8:96"},"referencedDeclaration":66294,"src":"41704:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68786,"initialValue":{"baseExpression":{"id":68783,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"41732:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68785,"indexExpression":{"id":68784,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68775,"src":"41742:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"41732:22:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"41704:50:96"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68792,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68788,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"41791:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68789,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"41797:6:96","memberName":"number","nodeType":"MemberAccess","src":"41791:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68790,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68782,"src":"41806:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68791,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41815:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"41806:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41791:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68793,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68782,"src":"41826:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68794,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41835:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"41826:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68795,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68782,"src":"41851:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68796,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41860:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"41851:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68787,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68858,"src":"41771:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":68797,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41771:102:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68779,"id":68798,"nodeType":"Return","src":"41764:109:96"}]},"functionSelector":"60b0645a","implemented":true,"kind":"function","modifiers":[],"name":"calculateProposalConviction","nameLocation":"41607:27:96","parameters":{"id":68776,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68775,"mutability":"mutable","name":"_proposalId","nameLocation":"41643:11:96","nodeType":"VariableDeclaration","scope":68800,"src":"41635:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68774,"name":"uint256","nodeType":"ElementaryTypeName","src":"41635:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41634:21:96"},"returnParameters":{"id":68779,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68778,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68800,"src":"41685:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68777,"name":"uint256","nodeType":"ElementaryTypeName","src":"41685:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41684:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68858,"nodeType":"FunctionDefinition","src":"42297:644:96","nodes":[],"body":{"id":68857,"nodeType":"Block","src":"42460:481:96","nodes":[],"statements":[{"assignments":[68813],"declarations":[{"constant":false,"id":68813,"mutability":"mutable","name":"t","nameLocation":"42478:1:96","nodeType":"VariableDeclaration","scope":68857,"src":"42470:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68812,"name":"uint256","nodeType":"ElementaryTypeName","src":"42470:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68815,"initialValue":{"id":68814,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68803,"src":"42482:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42470:23:96"},{"assignments":[68817],"declarations":[{"constant":false,"id":68817,"mutability":"mutable","name":"atTWO_128","nameLocation":"42745:9:96","nodeType":"VariableDeclaration","scope":68857,"src":"42737:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68816,"name":"uint256","nodeType":"ElementaryTypeName","src":"42737:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68828,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68825,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68822,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68819,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"42763:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"42772:5:96","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":66322,"src":"42763:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68821,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42781:3:96","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"42763:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68823,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42762:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68824,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"42788:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42762:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68826,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68813,"src":"42791:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68818,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69089,"src":"42757:4:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68827,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42757:36:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42737:56:96"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68855,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68852,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68829,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68817,"src":"42813:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68830,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68805,"src":"42825:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42813:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68832,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42812:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68847,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68835,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68833,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68807,"src":"42840:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68834,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"42853:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42840:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68838,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68836,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66579,"src":"42858:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68837,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68817,"src":"42868:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42858:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68839,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42857:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42840:38:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68841,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42839:40:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68845,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68842,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"42883:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68843,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"42887:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68844,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"42896:5:96","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":66322,"src":"42887:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42883:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68846,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42882:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42839:63:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68848,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42838:65:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42812:91:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68850,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42811:93:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68851,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66582,"src":"42907:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42811:103:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68853,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42810:105:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68854,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42931:3:96","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"42810:124:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68811,"id":68856,"nodeType":"Return","src":"42803:131:96"}]},"documentation":{"id":68801,"nodeType":"StructuredDocumentation","src":"41886:406:96","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":"42306:19:96","parameters":{"id":68808,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68803,"mutability":"mutable","name":"_timePassed","nameLocation":"42334:11:96","nodeType":"VariableDeclaration","scope":68858,"src":"42326:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68802,"name":"uint256","nodeType":"ElementaryTypeName","src":"42326:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68805,"mutability":"mutable","name":"_lastConv","nameLocation":"42355:9:96","nodeType":"VariableDeclaration","scope":68858,"src":"42347:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68804,"name":"uint256","nodeType":"ElementaryTypeName","src":"42347:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68807,"mutability":"mutable","name":"_oldAmount","nameLocation":"42374:10:96","nodeType":"VariableDeclaration","scope":68858,"src":"42366:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68806,"name":"uint256","nodeType":"ElementaryTypeName","src":"42366:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42325:60:96"},"returnParameters":{"id":68811,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68810,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68858,"src":"42447:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68809,"name":"uint256","nodeType":"ElementaryTypeName","src":"42447:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42446:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68960,"nodeType":"FunctionDefinition","src":"43522:1006:96","nodes":[],"body":{"id":68959,"nodeType":"Block","src":"43625:903:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68868,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68866,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65573,"src":"43759:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":68867,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43773:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"43759:15:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68873,"nodeType":"IfStatement","src":"43755:66:96","trueBody":{"id":68872,"nodeType":"Block","src":"43776:45:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68869,"name":"PoolIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66385,"src":"43797:11:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43797:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68871,"nodeType":"RevertStatement","src":"43790:20:96"}]}},{"condition":{"arguments":[{"id":68875,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68861,"src":"43851:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68874,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68340,"src":"43835:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43835:33:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68881,"nodeType":"IfStatement","src":"43831:178:96","trueBody":{"id":68880,"nodeType":"Block","src":"43870:139:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68877,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"43928:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":68878,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43928:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68879,"nodeType":"ExpressionStatement","src":"43928:8:96"}]}},{"assignments":[68883],"declarations":[{"constant":false,"id":68883,"mutability":"mutable","name":"denom","nameLocation":"44027:5:96","nodeType":"VariableDeclaration","scope":68959,"src":"44019:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68882,"name":"uint256","nodeType":"ElementaryTypeName","src":"44019:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68902,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68892,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68889,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68884,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"44036:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68885,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44045:8:96","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":66318,"src":"44036:17:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68888,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44056:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68887,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44061:2:96","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44056:7:96","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"44036:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68890,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44035:29:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68891,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"44067:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44035:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68900,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68897,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68893,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68861,"src":"44072:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68896,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68894,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44091:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44096:2:96","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44091:7:96","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"44072:26:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68898,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44071:28:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68899,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65573,"src":"44102:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44071:41:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44035:77:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"44019:93:96"},{"expression":{"id":68937,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68903,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68864,"src":"44122:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68929,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68922,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68919,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68910,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68907,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68904,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"44154:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68905,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44163:6:96","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":66320,"src":"44154:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68906,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44173:3:96","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"44154:22:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68908,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44153:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68909,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"44180:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44153:28:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68911,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44152:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68917,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68914,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68912,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"44187:5:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68913,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"44195:5:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44187:13:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68915,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44186:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68916,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44205:2:96","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44186:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68918,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44185:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44152:56:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68920,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44151:58:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68921,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"44212:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44151:62:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68923,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44150:64:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68927,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68924,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"44218:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68925,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"44222:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68926,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44231:5:96","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":66322,"src":"44222:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44218:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68928,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44217:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44150:87:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68930,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44149:89:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":68931,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69097,"src":"44257:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68932,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44257:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44149:136:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68934,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44135:160:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68935,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44299:2:96","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44135:166:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44122:179:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68938,"nodeType":"ExpressionStatement","src":"44122:179:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68942,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":68939,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69097,"src":"44316:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44316:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":68941,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44348:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"44316:33:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68958,"nodeType":"IfStatement","src":"44312:210:96","trueBody":{"id":68957,"nodeType":"Block","src":"44351:171:96","statements":[{"assignments":[68944],"declarations":[{"constant":false,"id":68944,"mutability":"mutable","name":"thresholdOverride","nameLocation":"44373:17:96","nodeType":"VariableDeclaration","scope":68957,"src":"44365:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68943,"name":"uint256","nodeType":"ElementaryTypeName","src":"44365:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68947,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":68945,"name":"calculateThresholdOverride","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68986,"src":"44393:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68946,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44393:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"44365:56:96"},{"expression":{"id":68955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68948,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68864,"src":"44435:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68951,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68949,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68864,"src":"44448:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":68950,"name":"thresholdOverride","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68944,"src":"44461:17:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44448:30:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"id":68953,"name":"thresholdOverride","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68944,"src":"44494:17:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"44448:63:96","trueExpression":{"id":68952,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68864,"src":"44481:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44435:76:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68956,"nodeType":"ExpressionStatement","src":"44435:76:96"}]}}]},"documentation":{"id":68859,"nodeType":"StructuredDocumentation","src":"42947:570:96","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":"43531:18:96","parameters":{"id":68862,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68861,"mutability":"mutable","name":"_requestedAmount","nameLocation":"43558:16:96","nodeType":"VariableDeclaration","scope":68960,"src":"43550:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68860,"name":"uint256","nodeType":"ElementaryTypeName","src":"43550:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43549:26:96"},"returnParameters":{"id":68865,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68864,"mutability":"mutable","name":"_threshold","nameLocation":"43613:10:96","nodeType":"VariableDeclaration","scope":68960,"src":"43605:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68863,"name":"uint256","nodeType":"ElementaryTypeName","src":"43605:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43604:20:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68986,"nodeType":"FunctionDefinition","src":"44534:265:96","nodes":[],"body":{"id":68985,"nodeType":"Block","src":"44610:189:96","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68983,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68978,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68973,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68965,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"44642:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44651:18:96","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":66324,"src":"44642:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68967,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"44672:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44642:31:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":68970,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69097,"src":"44693:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68971,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44693:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68969,"name":"getMaxConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69409,"src":"44676:16:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":68972,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44676:46:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44642:80:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68974,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44641:82:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"arguments":[],"expression":{"argumentTypes":[],"id":68975,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69097,"src":"44743:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68976,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44743:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68977,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44742:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44641:131:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68979,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44627:155:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"commonType":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"id":68982,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":68980,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44785:2:96","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"37","id":68981,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44791:1:96","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"44785:7:96","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"}},"src":"44627:165:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68964,"id":68984,"nodeType":"Return","src":"44620:172:96"}]},"functionSelector":"d5cc68a6","implemented":true,"kind":"function","modifiers":[],"name":"calculateThresholdOverride","nameLocation":"44543:26:96","parameters":{"id":68961,"nodeType":"ParameterList","parameters":[],"src":"44569:2:96"},"returnParameters":{"id":68964,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68963,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68986,"src":"44601:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68962,"name":"uint256","nodeType":"ElementaryTypeName","src":"44601:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"44600:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":69023,"nodeType":"FunctionDefinition","src":"45060:306:96","nodes":[],"body":{"id":69022,"nodeType":"Block","src":"45146:220:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68996,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68989,"src":"45160:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":68997,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66579,"src":"45165:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45160:12:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69003,"nodeType":"IfStatement","src":"45156:77:96","trueBody":{"id":69002,"nodeType":"Block","src":"45174:59:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68999,"name":"AShouldBeUnderOrEqTwo_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66435,"src":"45195:25:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69000,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45195:27:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69001,"nodeType":"RevertStatement","src":"45188:34:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69006,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69004,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68991,"src":"45246:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":69005,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66579,"src":"45251:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45246:12:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69011,"nodeType":"IfStatement","src":"45242:72:96","trueBody":{"id":69010,"nodeType":"Block","src":"45260:54:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69007,"name":"BShouldBeLessTwo_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66433,"src":"45281:20:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69008,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45281:22:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69009,"nodeType":"RevertStatement","src":"45274:29:96"}]}},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69020,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69014,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69012,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68989,"src":"45333:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":69013,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68991,"src":"45338:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45333:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":69015,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"45332:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":69016,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66582,"src":"45344:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45332:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":69018,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"45331:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":69019,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45356:3:96","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"45331:28:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68995,"id":69021,"nodeType":"Return","src":"45324:35:96"}]},"documentation":{"id":68987,"nodeType":"StructuredDocumentation","src":"44805:250:96","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":"45069:4:96","parameters":{"id":68992,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68989,"mutability":"mutable","name":"_a","nameLocation":"45082:2:96","nodeType":"VariableDeclaration","scope":69023,"src":"45074:10:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68988,"name":"uint256","nodeType":"ElementaryTypeName","src":"45074:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68991,"mutability":"mutable","name":"_b","nameLocation":"45094:2:96","nodeType":"VariableDeclaration","scope":69023,"src":"45086:10:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68990,"name":"uint256","nodeType":"ElementaryTypeName","src":"45086:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45073:24:96"},"returnParameters":{"id":68995,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68994,"mutability":"mutable","name":"_result","nameLocation":"45137:7:96","nodeType":"VariableDeclaration","scope":69023,"src":"45129:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68993,"name":"uint256","nodeType":"ElementaryTypeName","src":"45129:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45128:17:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":69089,"nodeType":"FunctionDefinition","src":"45588:476:96","nodes":[],"body":{"id":69088,"nodeType":"Block","src":"45674:390:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69035,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69033,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69026,"src":"45688:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":69034,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66579,"src":"45694:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45688:13:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69040,"nodeType":"IfStatement","src":"45684:74:96","trueBody":{"id":69039,"nodeType":"Block","src":"45703:55:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69036,"name":"AShouldBeUnderTwo_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66431,"src":"45724:21:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69037,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45724:23:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69038,"nodeType":"RevertStatement","src":"45717:30:96"}]}},{"assignments":[69042],"declarations":[{"constant":false,"id":69042,"mutability":"mutable","name":"a","nameLocation":"45776:1:96","nodeType":"VariableDeclaration","scope":69088,"src":"45768:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69041,"name":"uint256","nodeType":"ElementaryTypeName","src":"45768:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69044,"initialValue":{"id":69043,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69026,"src":"45780:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"45768:14:96"},{"assignments":[69046],"declarations":[{"constant":false,"id":69046,"mutability":"mutable","name":"b","nameLocation":"45800:1:96","nodeType":"VariableDeclaration","scope":69088,"src":"45792:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69045,"name":"uint256","nodeType":"ElementaryTypeName","src":"45792:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69048,"initialValue":{"id":69047,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69028,"src":"45804:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"45792:14:96"},{"expression":{"id":69051,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69049,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69031,"src":"45816:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69050,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66579,"src":"45826:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45816:17:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69052,"nodeType":"ExpressionStatement","src":"45816:17:96"},{"body":{"id":69086,"nodeType":"Block","src":"45857:201:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69060,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69058,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69056,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69046,"src":"45875:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":69057,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45879:1:96","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"45875:5:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":69059,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45884:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"45875:10:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":69084,"nodeType":"Block","src":"45965:83:96","statements":[{"expression":{"id":69078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69073,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69031,"src":"45983:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":69075,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69031,"src":"45998:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69076,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69042,"src":"46007:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69074,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69023,"src":"45993:4:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":69077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45993:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45983:26:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69079,"nodeType":"ExpressionStatement","src":"45983:26:96"},{"expression":{"id":69082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69080,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69046,"src":"46027:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":69081,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"46032:1:96","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"46027:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69083,"nodeType":"ExpressionStatement","src":"46027:6:96"}]},"id":69085,"nodeType":"IfStatement","src":"45871:177:96","trueBody":{"id":69072,"nodeType":"Block","src":"45887:72:96","statements":[{"expression":{"id":69066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69061,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69042,"src":"45905:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":69063,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69042,"src":"45914:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69064,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69042,"src":"45917:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69062,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69023,"src":"45909:4:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":69065,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45909:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45905:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69067,"nodeType":"ExpressionStatement","src":"45905:14:96"},{"expression":{"id":69070,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69068,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69046,"src":"45937:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":69069,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45943:1:96","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"45937:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69071,"nodeType":"ExpressionStatement","src":"45937:7:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69055,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69053,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69046,"src":"45850:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":69054,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45854:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"45850:5:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69087,"nodeType":"WhileStatement","src":"45843:215:96"}]},"documentation":{"id":69024,"nodeType":"StructuredDocumentation","src":"45372:211:96","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":"45597:4:96","parameters":{"id":69029,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69026,"mutability":"mutable","name":"_a","nameLocation":"45610:2:96","nodeType":"VariableDeclaration","scope":69089,"src":"45602:10:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69025,"name":"uint256","nodeType":"ElementaryTypeName","src":"45602:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69028,"mutability":"mutable","name":"_b","nameLocation":"45622:2:96","nodeType":"VariableDeclaration","scope":69089,"src":"45614:10:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69027,"name":"uint256","nodeType":"ElementaryTypeName","src":"45614:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45601:24:96"},"returnParameters":{"id":69032,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69031,"mutability":"mutable","name":"_result","nameLocation":"45665:7:96","nodeType":"VariableDeclaration","scope":69089,"src":"45657:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69030,"name":"uint256","nodeType":"ElementaryTypeName","src":"45657:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45656:17:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":69097,"nodeType":"FunctionDefinition","src":"46070:120:96","nodes":[],"body":{"id":69096,"nodeType":"Block","src":"46146:44:96","nodes":[],"statements":[{"expression":{"id":69094,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66610,"src":"46163:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":69093,"id":69095,"nodeType":"Return","src":"46156:27:96"}]},"functionSelector":"d1e36232","implemented":true,"kind":"function","modifiers":[],"name":"totalEffectiveActivePoints","nameLocation":"46079:26:96","parameters":{"id":69090,"nodeType":"ParameterList","parameters":[],"src":"46105:2:96"},"returnParameters":{"id":69093,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69092,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69097,"src":"46137:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69091,"name":"uint256","nodeType":"ElementaryTypeName","src":"46137:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46136:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":69138,"nodeType":"FunctionDefinition","src":"46380:389:96","nodes":[],"body":{"id":69137,"nodeType":"Block","src":"46481:288:96","nodes":[],"statements":[{"assignments":[69107,69109],"declarations":[{"constant":false,"id":69107,"mutability":"mutable","name":"conviction","nameLocation":"46500:10:96","nodeType":"VariableDeclaration","scope":69137,"src":"46492:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69106,"name":"uint256","nodeType":"ElementaryTypeName","src":"46492:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69109,"mutability":"mutable","name":"blockNumber","nameLocation":"46520:11:96","nodeType":"VariableDeclaration","scope":69137,"src":"46512:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69108,"name":"uint256","nodeType":"ElementaryTypeName","src":"46512:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69114,"initialValue":{"arguments":[{"id":69111,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69101,"src":"46569:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":69112,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69103,"src":"46580:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69110,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69185,"src":"46535:33:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$66294_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":69113,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46535:56:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"46491:100:96"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69121,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69115,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69107,"src":"46605:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":69116,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"46619:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"46605:15:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69118,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69109,"src":"46624:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":69119,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"46639:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"46624:16:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"46605:35:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69124,"nodeType":"IfStatement","src":"46601:72:96","trueBody":{"id":69123,"nodeType":"Block","src":"46642:31:96","statements":[{"functionReturnParameters":69105,"id":69122,"nodeType":"Return","src":"46656:7:96"}]}},{"expression":{"id":69129,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69125,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69101,"src":"46682:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69127,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"46692:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"46682:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69128,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69109,"src":"46704:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46682:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69130,"nodeType":"ExpressionStatement","src":"46682:33:96"},{"expression":{"id":69135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69131,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69101,"src":"46725:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69133,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"46735:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"46725:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69134,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69107,"src":"46752:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46725:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69136,"nodeType":"ExpressionStatement","src":"46725:37:96"}]},"documentation":{"id":69098,"nodeType":"StructuredDocumentation","src":"46196:179:96","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":"46389:26:96","parameters":{"id":69104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69101,"mutability":"mutable","name":"_proposal","nameLocation":"46433:9:96","nodeType":"VariableDeclaration","scope":69138,"src":"46416:26:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69100,"nodeType":"UserDefinedTypeName","pathNode":{"id":69099,"name":"Proposal","nameLocations":["46416:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"46416:8:96"},"referencedDeclaration":66294,"src":"46416:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":69103,"mutability":"mutable","name":"_oldStaked","nameLocation":"46452:10:96","nodeType":"VariableDeclaration","scope":69138,"src":"46444:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69102,"name":"uint256","nodeType":"ElementaryTypeName","src":"46444:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46415:48:96"},"returnParameters":{"id":69105,"nodeType":"ParameterList","parameters":[],"src":"46481:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69185,"nodeType":"FunctionDefinition","src":"46775:720:96","nodes":[],"body":{"id":69184,"nodeType":"Block","src":"46974:521:96","nodes":[],"statements":[{"expression":{"id":69153,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69150,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69148,"src":"46984:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69151,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"46998:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69152,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"47004:6:96","memberName":"number","nodeType":"MemberAccess","src":"46998:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46984:26:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69154,"nodeType":"ExpressionStatement","src":"46984:26:96"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69156,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69141,"src":"47027:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69157,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47037:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"47027:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":69158,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69148,"src":"47050:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47027:34:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":69155,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"47020:6:96","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":69160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47020:42:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69161,"nodeType":"ExpressionStatement","src":"47020:42:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69162,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69141,"src":"47076:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69163,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47086:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"47076:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":69164,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69148,"src":"47099:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47076:34:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69171,"nodeType":"IfStatement","src":"47072:173:96","trueBody":{"id":69170,"nodeType":"Block","src":"47112:133:96","statements":[{"expression":{"components":[{"hexValue":"30","id":69166,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47200:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"30","id":69167,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47203:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"id":69168,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"47199:6:96","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$","typeString":"tuple(int_const 0,int_const 0)"}},"functionReturnParameters":69149,"id":69169,"nodeType":"Return","src":"47192:13:96"}]}},{"expression":{"id":69182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69172,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69146,"src":"47298:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69177,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69174,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69148,"src":"47344:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":69175,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69141,"src":"47358:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69176,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47368:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"47358:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47344:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69178,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69141,"src":"47430:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69179,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47440:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"47430:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69180,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69143,"src":"47468:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69173,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68858,"src":"47311:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":69181,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47311:177:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47298:190:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69183,"nodeType":"ExpressionStatement","src":"47298:190:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkBlockAndCalculateConviction","nameLocation":"46784:33:96","parameters":{"id":69144,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69141,"mutability":"mutable","name":"_proposal","nameLocation":"46835:9:96","nodeType":"VariableDeclaration","scope":69185,"src":"46818:26:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69140,"nodeType":"UserDefinedTypeName","pathNode":{"id":69139,"name":"Proposal","nameLocations":["46818:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"46818:8:96"},"referencedDeclaration":66294,"src":"46818:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":69143,"mutability":"mutable","name":"_oldStaked","nameLocation":"46854:10:96","nodeType":"VariableDeclaration","scope":69185,"src":"46846:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69142,"name":"uint256","nodeType":"ElementaryTypeName","src":"46846:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46817:48:96"},"returnParameters":{"id":69149,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69146,"mutability":"mutable","name":"conviction","nameLocation":"46937:10:96","nodeType":"VariableDeclaration","scope":69185,"src":"46929:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69145,"name":"uint256","nodeType":"ElementaryTypeName","src":"46929:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69148,"mutability":"mutable","name":"blockNumber","nameLocation":"46957:11:96","nodeType":"VariableDeclaration","scope":69185,"src":"46949:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69147,"name":"uint256","nodeType":"ElementaryTypeName","src":"46949:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46928:41:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":69203,"nodeType":"FunctionDefinition","src":"47501:198:96","nodes":[],"body":{"id":69202,"nodeType":"Block","src":"47611:88:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69194,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66928,"src":"47621:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69195,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47621:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69196,"nodeType":"ExpressionStatement","src":"47621:17:96"},{"expression":{"arguments":[{"id":69198,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69188,"src":"47663:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69199,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69191,"src":"47682:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}],"id":69197,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69355,69496,69534],"referencedDeclaration":69355,"src":"47648:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_struct$_CVParams_$66325_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":69200,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47648:44:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69201,"nodeType":"ExpressionStatement","src":"47648:44:96"}]},"functionSelector":"062f9ece","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"47510:13:96","parameters":{"id":69192,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69188,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47548:17:96","nodeType":"VariableDeclaration","scope":69203,"src":"47524:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69187,"nodeType":"UserDefinedTypeName","pathNode":{"id":69186,"name":"ArbitrableConfig","nameLocations":["47524:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"47524:16:96"},"referencedDeclaration":66316,"src":"47524:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69191,"mutability":"mutable","name":"_cvParams","nameLocation":"47583:9:96","nodeType":"VariableDeclaration","scope":69203,"src":"47567:25:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69190,"nodeType":"UserDefinedTypeName","pathNode":{"id":69189,"name":"CVParams","nameLocations":["47567:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"47567:8:96"},"referencedDeclaration":66325,"src":"47567:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47523:70:96"},"returnParameters":{"id":69193,"nodeType":"ParameterList","parameters":[],"src":"47611:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69355,"nodeType":"FunctionDefinition","src":"47705:2357:96","nodes":[],"body":{"id":69354,"nodeType":"Block","src":"47816:2246:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69278,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69229,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69218,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69212,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"47843:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69213,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47861:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"47843:30:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":69216,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47885:1:96","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":69215,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"47877:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69214,"name":"address","nodeType":"ElementaryTypeName","src":"47877:7:96","typeDescriptions":{}}},"id":69217,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47877:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"47843:44:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69228,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":69221,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"47899:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69222,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47917:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"47899:28:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}],"id":69220,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"47891:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69219,"name":"address","nodeType":"ElementaryTypeName","src":"47891:7:96","typeDescriptions":{}}},"id":69223,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47891:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":69226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47940:1:96","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":69225,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"47932:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69224,"name":"address","nodeType":"ElementaryTypeName","src":"47932:7:96","typeDescriptions":{}}},"id":69227,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47932:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"47891:51:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47843:99:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69276,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69260,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69252,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69236,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69230,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"47984:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69231,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48002:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"47984:30:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":69232,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48018:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69234,"indexExpression":{"id":69233,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48036:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48018:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69235,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48068:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"48018:62:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"47984:96:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"},"id":69243,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69237,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"48108:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69238,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48126:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"48108:28:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":69239,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48140:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69241,"indexExpression":{"id":69240,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48158:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48140:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69242,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48190:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"48140:60:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"src":"48108:92:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47984:216:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69251,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69245,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"48228:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69246,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48246:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"48228:43:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":69247,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48303:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69249,"indexExpression":{"id":69248,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48321:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48303:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69250,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48353:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"48303:75:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48228:150:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47984:394:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69259,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69253,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"48406:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69254,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48424:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"48406:44:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":69255,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48482:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69257,"indexExpression":{"id":69256,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48500:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48482:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69258,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48532:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"48482:76:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48406:152:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47984:574:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69267,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69261,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"48586:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69262,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48604:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"48586:31:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":69263,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48621:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69265,"indexExpression":{"id":69264,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48639:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48621:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69266,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48671:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"48621:63:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48586:98:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47984:700:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69275,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69269,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"48712:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69270,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48730:20:96","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":66315,"src":"48712:38:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":69271,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48782:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69273,"indexExpression":{"id":69272,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48800:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48782:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69274,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48832:20:96","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":66315,"src":"48782:70:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48712:140:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47984:868:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":69277,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47962:908:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47843:1027:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69345,"nodeType":"IfStatement","src":"47826:2158:96","trueBody":{"id":69344,"nodeType":"Block","src":"48881:1103:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69293,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69279,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48916:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69281,"indexExpression":{"id":69280,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48934:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48916:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69282,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48966:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"48916:62:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69283,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"48982:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69284,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49000:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"48982:30:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"48916:96:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"},"id":69292,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69286,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"49036:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69288,"indexExpression":{"id":69287,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"49054:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"49036:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69289,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49086:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"49036:60:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69290,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49100:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69291,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49118:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"49100:28:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"src":"49036:92:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"48916:212:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69318,"nodeType":"IfStatement","src":"48895:522:96","trueBody":{"id":69317,"nodeType":"Block","src":"49143:274:96","statements":[{"expression":{"arguments":[{"expression":{"id":69299,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49203:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69300,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49221:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"49203:30:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"id":69294,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49161:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69297,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49179:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"49161:28:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"id":69298,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49190:12:96","memberName":"registerSafe","nodeType":"MemberAccess","referencedDeclaration":76948,"src":"49161:41:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":69301,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49161:73:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69302,"nodeType":"ExpressionStatement","src":"49161:73:96"},{"eventCall":{"arguments":[{"arguments":[{"id":69306,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"49308:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":69305,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"49300:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69304,"name":"address","nodeType":"ElementaryTypeName","src":"49300:7:96","typeDescriptions":{}}},"id":69307,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49300:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":69310,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49323:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69311,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49341:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"49323:28:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}],"id":69309,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"49315:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69308,"name":"address","nodeType":"ElementaryTypeName","src":"49315:7:96","typeDescriptions":{}}},"id":69312,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49315:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69313,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49354:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69314,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49372:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"49354:30:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":69303,"name":"TribunaSafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66531,"src":"49257:21:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (address,address,address)"}},"id":69315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49257:145:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69316,"nodeType":"EmitStatement","src":"49252:150:96"}]}},{"expression":{"id":69320,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"49431:32:96","subExpression":{"id":69319,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"49431:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69321,"nodeType":"ExpressionStatement","src":"49431:32:96"},{"expression":{"id":69326,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":69322,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"49477:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69324,"indexExpression":{"id":69323,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"49495:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"49477:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69325,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49529:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"49477:69:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69327,"nodeType":"ExpressionStatement","src":"49477:69:96"},{"eventCall":{"arguments":[{"id":69329,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"49607:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69330,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49655:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69331,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49673:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"49655:28:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},{"expression":{"id":69332,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49701:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69333,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49719:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"49701:30:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69334,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49749:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69335,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49767:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"49749:43:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69336,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49810:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69337,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49828:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"49810:44:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69338,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49872:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69339,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49890:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"49872:31:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69340,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49921:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69341,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49939:20:96","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":66315,"src":"49921:38:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$76949","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":69328,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66552,"src":"49566:23:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$76949_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":69342,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49566:407:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69343,"nodeType":"EmitStatement","src":"49561:412:96"}]}},{"expression":{"id":69348,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69346,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"49994:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69347,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69209,"src":"50005:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}},"src":"49994:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":69349,"nodeType":"ExpressionStatement","src":"49994:20:96"},{"eventCall":{"arguments":[{"id":69351,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69209,"src":"50045:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}],"id":69350,"name":"CVParamsUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66504,"src":"50029:15:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_struct$_CVParams_$66325_memory_ptr_$returns$__$","typeString":"function (struct CVParams memory)"}},"id":69352,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50029:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69353,"nodeType":"EmitStatement","src":"50024:31:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"47714:14:96","parameters":{"id":69210,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69206,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47753:17:96","nodeType":"VariableDeclaration","scope":69355,"src":"47729:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69205,"nodeType":"UserDefinedTypeName","pathNode":{"id":69204,"name":"ArbitrableConfig","nameLocations":["47729:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"47729:16:96"},"referencedDeclaration":66316,"src":"47729:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69209,"mutability":"mutable","name":"_cvParams","nameLocation":"47788:9:96","nodeType":"VariableDeclaration","scope":69355,"src":"47772:25:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69208,"nodeType":"UserDefinedTypeName","pathNode":{"id":69207,"name":"CVParams","nameLocations":["47772:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"47772:8:96"},"referencedDeclaration":66325,"src":"47772:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47728:70:96"},"returnParameters":{"id":69211,"nodeType":"ParameterList","parameters":[],"src":"47816:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69389,"nodeType":"FunctionDefinition","src":"50068:609:96","nodes":[],"body":{"id":69388,"nodeType":"Block","src":"50155:522:96","nodes":[],"statements":[{"assignments":[69364],"declarations":[{"constant":false,"id":69364,"mutability":"mutable","name":"proposal","nameLocation":"50182:8:96","nodeType":"VariableDeclaration","scope":69388,"src":"50165:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69363,"nodeType":"UserDefinedTypeName","pathNode":{"id":69362,"name":"Proposal","nameLocations":["50165:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"50165:8:96"},"referencedDeclaration":66294,"src":"50165:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":69368,"initialValue":{"baseExpression":{"id":69365,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"50193:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69367,"indexExpression":{"id":69366,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69357,"src":"50203:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50193:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50165:49:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69372,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69369,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69364,"src":"50229:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69370,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50238:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"50229:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":69371,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69357,"src":"50252:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50229:33:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69378,"nodeType":"IfStatement","src":"50225:100:96","trueBody":{"id":69377,"nodeType":"Block","src":"50264:61:96","statements":[{"errorCall":{"arguments":[{"id":69374,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69357,"src":"50303:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69373,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66401,"src":"50285:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69375,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50285:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69376,"nodeType":"RevertStatement","src":"50278:36:96"}]}},{"expression":{"arguments":[{"id":69380,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69364,"src":"50598:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":69381,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69364,"src":"50608:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69382,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50617:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"50608:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69379,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69138,"src":"50571:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$66294_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":69383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50571:59:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69384,"nodeType":"ExpressionStatement","src":"50571:59:96"},{"expression":{"expression":{"id":69385,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69364,"src":"50647:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69386,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50656:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"50647:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":69361,"id":69387,"nodeType":"Return","src":"50640:30:96"}]},"functionSelector":"1aa91a9e","implemented":true,"kind":"function","modifiers":[],"name":"updateProposalConviction","nameLocation":"50077:24:96","parameters":{"id":69358,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69357,"mutability":"mutable","name":"proposalId","nameLocation":"50110:10:96","nodeType":"VariableDeclaration","scope":69389,"src":"50102:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69356,"name":"uint256","nodeType":"ElementaryTypeName","src":"50102:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50101:20:96"},"returnParameters":{"id":69361,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69360,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69389,"src":"50146:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69359,"name":"uint256","nodeType":"ElementaryTypeName","src":"50146:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50145:9:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":69409,"nodeType":"FunctionDefinition","src":"50683:141:96","nodes":[],"body":{"id":69408,"nodeType":"Block","src":"50763:61:96","nodes":[],"statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69405,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69398,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69396,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69391,"src":"50782:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":69397,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"50791:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50782:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":69399,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"50781:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69400,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"50797:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":69401,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"50801:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":69402,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50810:5:96","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":66322,"src":"50801:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50797:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":69404,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"50796:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50781:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":69406,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"50780:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":69395,"id":69407,"nodeType":"Return","src":"50773:44:96"}]},"functionSelector":"950559d7","implemented":true,"kind":"function","modifiers":[],"name":"getMaxConviction","nameLocation":"50692:16:96","parameters":{"id":69392,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69391,"mutability":"mutable","name":"amount","nameLocation":"50717:6:96","nodeType":"VariableDeclaration","scope":69409,"src":"50709:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69390,"name":"uint256","nodeType":"ElementaryTypeName","src":"50709:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50708:16:96"},"returnParameters":{"id":69395,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69394,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69409,"src":"50754:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69393,"name":"uint256","nodeType":"ElementaryTypeName","src":"50754:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50753:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":69455,"nodeType":"FunctionDefinition","src":"51175:414:96","nodes":[],"body":{"id":69454,"nodeType":"Block","src":"51257:332:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69430,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69416,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"51271:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69417,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51275:6:96","memberName":"sender","nodeType":"MemberAccess","src":"51271:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":69420,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"51293:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":69421,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51311:11:96","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71620,"src":"51293:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$77075_$","typeString":"function () view external returns (contract ISafe)"}},"id":69422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51293:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":69419,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"51285:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69418,"name":"address","nodeType":"ElementaryTypeName","src":"51285:7:96","typeDescriptions":{}}},"id":69423,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51285:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"51271:54:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69429,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69425,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"51329:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69426,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51333:6:96","memberName":"sender","nodeType":"MemberAccess","src":"51329:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":69427,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[71159],"referencedDeclaration":71159,"src":"51343:5:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":69428,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51343:7:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"51329:21:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"51271:79:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69435,"nodeType":"IfStatement","src":"51267:134:96","trueBody":{"id":69434,"nodeType":"Block","src":"51352:49:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69431,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66413,"src":"51373:15:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69432,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51373:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69433,"nodeType":"RevertStatement","src":"51366:24:96"}]}},{"expression":{"arguments":[{"id":69437,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69411,"src":"51429:12:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69436,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66910,"src":"51410:18:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":69438,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51410:32:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69439,"nodeType":"ExpressionStatement","src":"51410:32:96"},{"expression":{"id":69444,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69440,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"51452:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":69442,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69411,"src":"51479:12:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69441,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70608,"src":"51466:12:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70608_$","typeString":"type(contract ISybilScorer)"}},"id":69443,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51466:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"src":"51452:40:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"id":69445,"nodeType":"ExpressionStatement","src":"51452:40:96"},{"expression":{"arguments":[{"id":69447,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69413,"src":"51525:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69446,"name":"_registerToSybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70244,"src":"51502:22:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69448,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51502:33:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69449,"nodeType":"ExpressionStatement","src":"51502:33:96"},{"eventCall":{"arguments":[{"id":69451,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69411,"src":"51569:12:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69450,"name":"SybilScorerUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66570,"src":"51550:18:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":69452,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51550:32:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69453,"nodeType":"EmitStatement","src":"51545:37:96"}]},"functionSelector":"3864d366","implemented":true,"kind":"function","modifiers":[],"name":"setSybilScorer","nameLocation":"51184:14:96","parameters":{"id":69414,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69411,"mutability":"mutable","name":"_sybilScorer","nameLocation":"51207:12:96","nodeType":"VariableDeclaration","scope":69455,"src":"51199:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69410,"name":"address","nodeType":"ElementaryTypeName","src":"51199:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69413,"mutability":"mutable","name":"threshold","nameLocation":"51229:9:96","nodeType":"VariableDeclaration","scope":69455,"src":"51221:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69412,"name":"uint256","nodeType":"ElementaryTypeName","src":"51221:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"51198:41:96"},"returnParameters":{"id":69415,"nodeType":"ParameterList","parameters":[],"src":"51257:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69496,"nodeType":"FunctionDefinition","src":"51595:470:96","nodes":[],"body":{"id":69495,"nodeType":"Block","src":"51809:256:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":69471,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69458,"src":"51834:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69472,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69461,"src":"51853:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}],"id":69470,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69355,69496,69534],"referencedDeclaration":69355,"src":"51819:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_struct$_CVParams_$66325_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":69473,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51819:44:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69474,"nodeType":"ExpressionStatement","src":"51819:44:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69478,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69475,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69464,"src":"51877:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51890:6:96","memberName":"length","nodeType":"MemberAccess","src":"51877:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":69477,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51899:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51877:23:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69484,"nodeType":"IfStatement","src":"51873:83:96","trueBody":{"id":69483,"nodeType":"Block","src":"51902:54:96","statements":[{"expression":{"arguments":[{"id":69480,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69464,"src":"51932:12:96","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":69479,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70153,"src":"51916:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69481,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51916:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69482,"nodeType":"ExpressionStatement","src":"51916:29:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69488,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69485,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69467,"src":"51969:15:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69486,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51985:6:96","memberName":"length","nodeType":"MemberAccess","src":"51969:22:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":69487,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51994:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51969:26:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69494,"nodeType":"IfStatement","src":"51965:94:96","trueBody":{"id":69493,"nodeType":"Block","src":"51997:62:96","statements":[{"expression":{"arguments":[{"id":69490,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69467,"src":"52032:15:96","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":69489,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70222,"src":"52011:20:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69491,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52011:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69492,"nodeType":"ExpressionStatement","src":"52011:37:96"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"51604:14:96","parameters":{"id":69468,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69458,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"51652:17:96","nodeType":"VariableDeclaration","scope":69496,"src":"51628:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69457,"nodeType":"UserDefinedTypeName","pathNode":{"id":69456,"name":"ArbitrableConfig","nameLocations":["51628:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"51628:16:96"},"referencedDeclaration":66316,"src":"51628:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69461,"mutability":"mutable","name":"_cvParams","nameLocation":"51695:9:96","nodeType":"VariableDeclaration","scope":69496,"src":"51679:25:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69460,"nodeType":"UserDefinedTypeName","pathNode":{"id":69459,"name":"CVParams","nameLocations":["51679:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"51679:8:96"},"referencedDeclaration":66325,"src":"51679:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69464,"mutability":"mutable","name":"membersToAdd","nameLocation":"51731:12:96","nodeType":"VariableDeclaration","scope":69496,"src":"51714:29:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69462,"name":"address","nodeType":"ElementaryTypeName","src":"51714:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69463,"nodeType":"ArrayTypeName","src":"51714:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":69467,"mutability":"mutable","name":"membersToRemove","nameLocation":"51770:15:96","nodeType":"VariableDeclaration","scope":69496,"src":"51753:32:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69465,"name":"address","nodeType":"ElementaryTypeName","src":"51753:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69466,"nodeType":"ArrayTypeName","src":"51753:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"51618:173:96"},"returnParameters":{"id":69469,"nodeType":"ParameterList","parameters":[],"src":"51809:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69534,"nodeType":"FunctionDefinition","src":"52071:368:96","nodes":[],"body":{"id":69533,"nodeType":"Block","src":"52241:198:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":69508,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69499,"src":"52266:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69509,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69502,"src":"52285:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}],"id":69507,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69355,69496,69534],"referencedDeclaration":69355,"src":"52251:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_struct$_CVParams_$66325_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":69510,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52251:44:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69511,"nodeType":"ExpressionStatement","src":"52251:44:96"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69520,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":69514,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"52317:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}],"id":69513,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52309:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69512,"name":"address","nodeType":"ElementaryTypeName","src":"52309:7:96","typeDescriptions":{}}},"id":69515,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52309:20:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":69518,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52341:1:96","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":69517,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52333:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69516,"name":"address","nodeType":"ElementaryTypeName","src":"52333:7:96","typeDescriptions":{}}},"id":69519,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52333:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"52309:34:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69532,"nodeType":"IfStatement","src":"52305:128:96","trueBody":{"id":69531,"nodeType":"Block","src":"52345:88:96","statements":[{"expression":{"arguments":[{"arguments":[{"id":69526,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"52395:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":69525,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52387:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69524,"name":"address","nodeType":"ElementaryTypeName","src":"52387:7:96","typeDescriptions":{}}},"id":69527,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52387:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":69528,"name":"sybilScoreThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69504,"src":"52402:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69521,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"52359:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"id":69523,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52371:15:96","memberName":"modifyThreshold","nodeType":"MemberAccess","referencedDeclaration":70588,"src":"52359:27:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256) external"}},"id":69529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52359:63:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69530,"nodeType":"ExpressionStatement","src":"52359:63:96"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"52080:14:96","parameters":{"id":69505,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69499,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"52128:17:96","nodeType":"VariableDeclaration","scope":69534,"src":"52104:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69498,"nodeType":"UserDefinedTypeName","pathNode":{"id":69497,"name":"ArbitrableConfig","nameLocations":["52104:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"52104:16:96"},"referencedDeclaration":66316,"src":"52104:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69502,"mutability":"mutable","name":"_cvParams","nameLocation":"52171:9:96","nodeType":"VariableDeclaration","scope":69534,"src":"52155:25:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69501,"nodeType":"UserDefinedTypeName","pathNode":{"id":69500,"name":"CVParams","nameLocations":["52155:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"52155:8:96"},"referencedDeclaration":66325,"src":"52155:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69504,"mutability":"mutable","name":"sybilScoreThreshold","nameLocation":"52198:19:96","nodeType":"VariableDeclaration","scope":69534,"src":"52190:27:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69503,"name":"uint256","nodeType":"ElementaryTypeName","src":"52190:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"52094:129:96"},"returnParameters":{"id":69506,"nodeType":"ParameterList","parameters":[],"src":"52241:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69560,"nodeType":"FunctionDefinition","src":"52445:332:96","nodes":[],"body":{"id":69559,"nodeType":"Block","src":"52658:119:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69549,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66928,"src":"52668:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69550,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52668:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69551,"nodeType":"ExpressionStatement","src":"52668:17:96"},{"expression":{"arguments":[{"id":69553,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69537,"src":"52710:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69554,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69540,"src":"52729:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}},{"id":69555,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69543,"src":"52740:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"id":69556,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69546,"src":"52754:15:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$66325_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":69552,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69355,69496,69534],"referencedDeclaration":69496,"src":"52695:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_struct$_CVParams_$66325_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":69557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52695:75:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69558,"nodeType":"ExpressionStatement","src":"52695:75:96"}]},"functionSelector":"948e7a59","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"52454:13:96","parameters":{"id":69547,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69537,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"52501:17:96","nodeType":"VariableDeclaration","scope":69560,"src":"52477:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69536,"nodeType":"UserDefinedTypeName","pathNode":{"id":69535,"name":"ArbitrableConfig","nameLocations":["52477:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"52477:16:96"},"referencedDeclaration":66316,"src":"52477:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69540,"mutability":"mutable","name":"_cvParams","nameLocation":"52544:9:96","nodeType":"VariableDeclaration","scope":69560,"src":"52528:25:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69539,"nodeType":"UserDefinedTypeName","pathNode":{"id":69538,"name":"CVParams","nameLocations":["52528:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"52528:8:96"},"referencedDeclaration":66325,"src":"52528:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69543,"mutability":"mutable","name":"membersToAdd","nameLocation":"52580:12:96","nodeType":"VariableDeclaration","scope":69560,"src":"52563:29:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69541,"name":"address","nodeType":"ElementaryTypeName","src":"52563:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69542,"nodeType":"ArrayTypeName","src":"52563:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":69546,"mutability":"mutable","name":"membersToRemove","nameLocation":"52619:15:96","nodeType":"VariableDeclaration","scope":69560,"src":"52602:32:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69544,"name":"address","nodeType":"ElementaryTypeName","src":"52602:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69545,"nodeType":"ArrayTypeName","src":"52602:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"52467:173:96"},"returnParameters":{"id":69548,"nodeType":"ParameterList","parameters":[],"src":"52658:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69581,"nodeType":"FunctionDefinition","src":"52783:278:96","nodes":[],"body":{"id":69580,"nodeType":"Block","src":"52952:109:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69571,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66928,"src":"52962:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69572,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52962:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69573,"nodeType":"ExpressionStatement","src":"52962:17:96"},{"expression":{"arguments":[{"id":69575,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69563,"src":"53004:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69576,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69566,"src":"53023:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}},{"id":69577,"name":"sybilScoreThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69568,"src":"53034:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69574,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69355,69496,69534],"referencedDeclaration":69534,"src":"52989:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_struct$_CVParams_$66325_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory,uint256)"}},"id":69578,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52989:65:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69579,"nodeType":"ExpressionStatement","src":"52989:65:96"}]},"functionSelector":"ad56fd5d","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"52792:13:96","parameters":{"id":69569,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69563,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"52839:17:96","nodeType":"VariableDeclaration","scope":69581,"src":"52815:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69562,"nodeType":"UserDefinedTypeName","pathNode":{"id":69561,"name":"ArbitrableConfig","nameLocations":["52815:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"52815:16:96"},"referencedDeclaration":66316,"src":"52815:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69566,"mutability":"mutable","name":"_cvParams","nameLocation":"52882:9:96","nodeType":"VariableDeclaration","scope":69581,"src":"52866:25:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69565,"nodeType":"UserDefinedTypeName","pathNode":{"id":69564,"name":"CVParams","nameLocations":["52866:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"52866:8:96"},"referencedDeclaration":66325,"src":"52866:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69568,"mutability":"mutable","name":"sybilScoreThreshold","nameLocation":"52909:19:96","nodeType":"VariableDeclaration","scope":69581,"src":"52901:27:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69567,"name":"uint256","nodeType":"ElementaryTypeName","src":"52901:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"52805:129:96"},"returnParameters":{"id":69570,"nodeType":"ParameterList","parameters":[],"src":"52952:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69746,"nodeType":"FunctionDefinition","src":"53067:2575:96","nodes":[],"body":{"id":69745,"nodeType":"Block","src":"53253:2389:96","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":69593,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53283:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69594,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53287:6:96","memberName":"sender","nodeType":"MemberAccess","src":"53283:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69592,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66878,"src":"53263:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":69595,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53263:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69596,"nodeType":"ExpressionStatement","src":"53263:31:96"},{"assignments":[69599],"declarations":[{"constant":false,"id":69599,"mutability":"mutable","name":"proposal","nameLocation":"53321:8:96","nodeType":"VariableDeclaration","scope":69745,"src":"53304:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69598,"nodeType":"UserDefinedTypeName","pathNode":{"id":69597,"name":"Proposal","nameLocations":["53304:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"53304:8:96"},"referencedDeclaration":66294,"src":"53304:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":69603,"initialValue":{"baseExpression":{"id":69600,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"53332:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69602,"indexExpression":{"id":69601,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"53342:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53332:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"53304:49:96"},{"assignments":[69606],"declarations":[{"constant":false,"id":69606,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"53387:16:96","nodeType":"VariableDeclaration","scope":69745,"src":"53363:40:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69605,"nodeType":"UserDefinedTypeName","pathNode":{"id":69604,"name":"ArbitrableConfig","nameLocations":["53363:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"53363:16:96"},"referencedDeclaration":66316,"src":"53363:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":69611,"initialValue":{"baseExpression":{"id":69607,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"53406:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69610,"indexExpression":{"expression":{"id":69608,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"53424:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69609,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53433:23:96","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":66293,"src":"53424:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53406:51:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"53363:94:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69615,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69612,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"53766:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69613,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53775:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"53766:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":69614,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"53789:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"53766:33:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69621,"nodeType":"IfStatement","src":"53762:100:96","trueBody":{"id":69620,"nodeType":"Block","src":"53801:61:96","statements":[{"errorCall":{"arguments":[{"id":69617,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"53840:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69616,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66401,"src":"53822:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69618,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53822:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69619,"nodeType":"RevertStatement","src":"53815:36:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":69626,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69622,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"53875:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69623,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53884:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"53875:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69624,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"53902:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69625,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53917:6:96","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":66247,"src":"53902:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"53875:48:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69632,"nodeType":"IfStatement","src":"53871:115:96","trueBody":{"id":69631,"nodeType":"Block","src":"53925:61:96","statements":[{"errorCall":{"arguments":[{"id":69628,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"53964:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69627,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66397,"src":"53946:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53946:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69630,"nodeType":"RevertStatement","src":"53939:36:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69633,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53999:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69634,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54003:5:96","memberName":"value","nodeType":"MemberAccess","src":"53999:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69635,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"54011:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69636,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54028:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"54011:43:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"53999:55:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69642,"nodeType":"IfStatement","src":"53995:258:96","trueBody":{"id":69641,"nodeType":"Block","src":"54056:197:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69638,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"54172:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":69639,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54172:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69640,"nodeType":"ExpressionStatement","src":"54172:8:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69643,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"54372:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69644,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54381:21:96","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":66291,"src":"54372:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":69645,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"54406:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"54372:35:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69653,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69650,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69647,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"54427:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69648,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54436:21:96","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":66291,"src":"54427:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":69649,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66594,"src":"54460:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54427:53:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":69651,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"54483:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69652,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54489:9:96","memberName":"timestamp","nodeType":"MemberAccess","src":"54483:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54427:71:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"54372:126:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69659,"nodeType":"IfStatement","src":"54355:418:96","trueBody":{"id":69658,"nodeType":"Block","src":"54509:264:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69655,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"54692:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":69656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54692:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69657,"nodeType":"ExpressionStatement","src":"54692:8:96"}]}},{"assignments":[69661],"declarations":[{"constant":false,"id":69661,"mutability":"mutable","name":"arbitrationFee","nameLocation":"54791:14:96","nodeType":"VariableDeclaration","scope":69745,"src":"54783:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69660,"name":"uint256","nodeType":"ElementaryTypeName","src":"54783:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69667,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69662,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"54808:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69663,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54812:5:96","memberName":"value","nodeType":"MemberAccess","src":"54808:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":69664,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"54820:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69665,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54837:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"54820:43:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54808:55:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"54783:80:96"},{"expression":{"arguments":[{"id":69674,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"54960:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69675,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"54972:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54976:6:96","memberName":"sender","nodeType":"MemberAccess","src":"54972:10:96","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":69668,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"54874:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69670,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54890:17:96","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":76961,"src":"54874:33:96","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":69673,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":69671,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"54915:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69672,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54932:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"54915:43:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"54874:85:96","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":69677,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54874:109:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69678,"nodeType":"ExpressionStatement","src":"54874:109:96"},{"expression":{"id":69688,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69679,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69590,"src":"54994:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":69685,"name":"RULING_OPTIONS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66591,"src":"55071:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69686,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69587,"src":"55087:10:96","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":69680,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"55006:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69681,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55023:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"55006:27:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"id":69682,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55034:13:96","memberName":"createDispute","nodeType":"MemberAccess","referencedDeclaration":76896,"src":"55006:41:96","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":69684,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":69683,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69661,"src":"55055:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"55006:64:96","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":69687,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"55006:92:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54994:104:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69689,"nodeType":"ExpressionStatement","src":"54994:104:96"},{"expression":{"id":69695,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69690,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"55109:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69692,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55118:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"55109:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69693,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"55135:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69694,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"55150:8:96","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":66251,"src":"55135:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"55109:49:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":69696,"nodeType":"ExpressionStatement","src":"55109:49:96"},{"expression":{"id":69703,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":69697,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"55168:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69700,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55177:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"55168:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69701,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55189:9:96","memberName":"disputeId","nodeType":"MemberAccess","referencedDeclaration":66255,"src":"55168:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69702,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69590,"src":"55201:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"55168:42:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69704,"nodeType":"ExpressionStatement","src":"55168:42:96"},{"expression":{"id":69712,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":69705,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"55220:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69708,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55229:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"55220:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69709,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55241:16:96","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":66257,"src":"55220:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69710,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"55260:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69711,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55266:9:96","memberName":"timestamp","nodeType":"MemberAccess","src":"55260:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"55220:55:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69713,"nodeType":"ExpressionStatement","src":"55220:55:96"},{"expression":{"id":69721,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":69714,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"55285:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69717,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55294:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"55285:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55306:10:96","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":66259,"src":"55285:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69719,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"55319:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69720,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55323:6:96","memberName":"sender","nodeType":"MemberAccess","src":"55319:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"55285:44:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69722,"nodeType":"ExpressionStatement","src":"55285:44:96"},{"expression":{"id":69727,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":69723,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66649,"src":"55339:21:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":69725,"indexExpression":{"id":69724,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69590,"src":"55361:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"55339:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69726,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"55374:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"55339:45:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69728,"nodeType":"ExpressionStatement","src":"55339:45:96"},{"expression":{"id":69730,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"55395:14:96","subExpression":{"id":69729,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66602,"src":"55395:12:96","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":69731,"nodeType":"ExpressionStatement","src":"55395:14:96"},{"eventCall":{"arguments":[{"expression":{"id":69733,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"55455:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69734,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55472:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"55455:27:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},{"id":69735,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"55496:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69736,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69590,"src":"55520:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69737,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"55543:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69738,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55547:6:96","memberName":"sender","nodeType":"MemberAccess","src":"55543:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":69739,"name":"context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69585,"src":"55567:7:96","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"expression":{"expression":{"id":69740,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"55588:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69741,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55597:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"55588:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69742,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55609:16:96","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":66257,"src":"55588:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76949","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":69732,"name":"ProposalDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66523,"src":"55425:16:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$76949_$_t_uint256_$_t_uint256_$_t_address_$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256,address,string memory,uint256)"}},"id":69743,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"55425:210:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69744,"nodeType":"EmitStatement","src":"55420:215:96"}]},"functionSelector":"b41596ec","implemented":true,"kind":"function","modifiers":[],"name":"disputeProposal","nameLocation":"53076:15:96","parameters":{"id":69588,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69583,"mutability":"mutable","name":"proposalId","nameLocation":"53100:10:96","nodeType":"VariableDeclaration","scope":69746,"src":"53092:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69582,"name":"uint256","nodeType":"ElementaryTypeName","src":"53092:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69585,"mutability":"mutable","name":"context","nameLocation":"53128:7:96","nodeType":"VariableDeclaration","scope":69746,"src":"53112:23:96","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":69584,"name":"string","nodeType":"ElementaryTypeName","src":"53112:6:96","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":69587,"mutability":"mutable","name":"_extraData","nameLocation":"53152:10:96","nodeType":"VariableDeclaration","scope":69746,"src":"53137:25:96","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":69586,"name":"bytes","nodeType":"ElementaryTypeName","src":"53137:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"53091:72:96"},"returnParameters":{"id":69591,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69590,"mutability":"mutable","name":"disputeId","nameLocation":"53238:9:96","nodeType":"VariableDeclaration","scope":69746,"src":"53230:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69589,"name":"uint256","nodeType":"ElementaryTypeName","src":"53230:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"53229:19:96"},"scope":70249,"stateMutability":"payable","virtual":true,"visibility":"external"},{"id":69993,"nodeType":"FunctionDefinition","src":"55648:2889:96","nodes":[],"body":{"id":69992,"nodeType":"Block","src":"55725:2812:96","nodes":[],"statements":[{"assignments":[69755],"declarations":[{"constant":false,"id":69755,"mutability":"mutable","name":"proposalId","nameLocation":"55743:10:96","nodeType":"VariableDeclaration","scope":69992,"src":"55735:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69754,"name":"uint256","nodeType":"ElementaryTypeName","src":"55735:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69759,"initialValue":{"baseExpression":{"id":69756,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66649,"src":"55756:21:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":69758,"indexExpression":{"id":69757,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69748,"src":"55778:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"55756:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"55735:54:96"},{"assignments":[69762],"declarations":[{"constant":false,"id":69762,"mutability":"mutable","name":"proposal","nameLocation":"55816:8:96","nodeType":"VariableDeclaration","scope":69992,"src":"55799:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69761,"nodeType":"UserDefinedTypeName","pathNode":{"id":69760,"name":"Proposal","nameLocations":["55799:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"55799:8:96"},"referencedDeclaration":66294,"src":"55799:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":69766,"initialValue":{"baseExpression":{"id":69763,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"55827:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69765,"indexExpression":{"id":69764,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"55837:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"55827:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"55799:49:96"},{"assignments":[69769],"declarations":[{"constant":false,"id":69769,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"55882:16:96","nodeType":"VariableDeclaration","scope":69992,"src":"55858:40:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69768,"nodeType":"UserDefinedTypeName","pathNode":{"id":69767,"name":"ArbitrableConfig","nameLocations":["55858:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"55858:16:96"},"referencedDeclaration":66316,"src":"55858:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":69774,"initialValue":{"baseExpression":{"id":69770,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"55901:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69773,"indexExpression":{"expression":{"id":69771,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"55919:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69772,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55928:23:96","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":66293,"src":"55919:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"55901:51:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"55858:94:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69777,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69775,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"55967:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":69776,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"55981:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"55967:15:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69783,"nodeType":"IfStatement","src":"55963:82:96","trueBody":{"id":69782,"nodeType":"Block","src":"55984:61:96","statements":[{"errorCall":{"arguments":[{"id":69779,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"56023:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69778,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66401,"src":"56005:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56005:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69781,"nodeType":"RevertStatement","src":"55998:36:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":69788,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69784,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"56058:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69785,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56067:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"56058:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69786,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"56085:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69787,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"56100:8:96","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":66251,"src":"56085:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"56058:50:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69794,"nodeType":"IfStatement","src":"56054:119:96","trueBody":{"id":69793,"nodeType":"Block","src":"56110:63:96","statements":[{"errorCall":{"arguments":[{"id":69790,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"56151:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69789,"name":"ProposalNotDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66421,"src":"56131:19:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69791,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56131:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69792,"nodeType":"RevertStatement","src":"56124:38:96"}]}},{"assignments":[69796],"declarations":[{"constant":false,"id":69796,"mutability":"mutable","name":"isTimeOut","nameLocation":"56188:9:96","nodeType":"VariableDeclaration","scope":69992,"src":"56183:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69795,"name":"bool","nodeType":"ElementaryTypeName","src":"56183:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":69806,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69805,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69797,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"56200:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56206:9:96","memberName":"timestamp","nodeType":"MemberAccess","src":"56200:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":69799,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"56218:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69800,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56227:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"56218:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69801,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56239:16:96","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":66257,"src":"56218:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":69802,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"56258:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69803,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56275:20:96","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":66315,"src":"56258:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"56218:77:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"56200:95:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"56183:112:96"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69817,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69808,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"56310:10:96","subExpression":{"id":69807,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69796,"src":"56311:9:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69809,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"56324:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56328:6:96","memberName":"sender","nodeType":"MemberAccess","src":"56324:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"expression":{"id":69813,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"56346:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69814,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56363:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"56346:27:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}],"id":69812,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"56338:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69811,"name":"address","nodeType":"ElementaryTypeName","src":"56338:7:96","typeDescriptions":{}}},"id":69815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56338:36:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"56324:50:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"56310:64:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69822,"nodeType":"IfStatement","src":"56306:118:96","trueBody":{"id":69821,"nodeType":"Block","src":"56376:48:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69818,"name":"OnlyArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66417,"src":"56397:14:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69819,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56397:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69820,"nodeType":"RevertStatement","src":"56390:23:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69827,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69823,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69796,"src":"56438:9:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69824,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69750,"src":"56451:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":69825,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56462:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"56451:12:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"56438:25:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69885,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69750,"src":"57205:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":69886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"57216:1:96","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"57205:12:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69915,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69913,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69750,"src":"57562:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":69914,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"57573:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"57562:12:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69972,"nodeType":"IfStatement","src":"57558:819:96","trueBody":{"id":69971,"nodeType":"Block","src":"57576:801:96","statements":[{"expression":{"id":69921,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69916,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"57590:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69918,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"57599:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"57590:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69919,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"57616:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69920,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"57631:8:96","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":66252,"src":"57616:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"57590:49:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":69922,"nodeType":"ExpressionStatement","src":"57590:49:96"},{"expression":{"arguments":[{"id":69926,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"57705:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69927,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"57717:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69928,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57726:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"57717:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69929,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57738:10:96","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":66259,"src":"57717:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69930,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"57750:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57767:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"57750:43:96","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":69923,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"57653:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69925,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57669:18:96","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76970,"src":"57653:34:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69932,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57653:154:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69933,"nodeType":"ExpressionStatement","src":"57653:154:96"},{"expression":{"arguments":[{"id":69937,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"57876:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69938,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"57904:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69939,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57913:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"57904:18:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":69942,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"57948:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":69943,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57966:11:96","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71620,"src":"57948:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$77075_$","typeString":"function () view external returns (contract ISafe)"}},"id":69944,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57948:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":69941,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"57940:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69940,"name":"address","nodeType":"ElementaryTypeName","src":"57940:7:96","typeDescriptions":{}}},"id":69945,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57940:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69951,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69946,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"57998:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69948,"indexExpression":{"id":69947,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"58016:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"57998:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69949,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58048:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"57998:75:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69950,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"58076:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"57998:79:96","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":69934,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"57821:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57837:21:96","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":76981,"src":"57821:37:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69952,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57821:270:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69953,"nodeType":"ExpressionStatement","src":"57821:270:96"},{"expression":{"arguments":[{"id":69957,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"58160:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69958,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"58188:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69959,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58197:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"58188:18:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"expression":{"id":69960,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"58224:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69961,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58233:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"58224:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69962,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58245:10:96","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":66259,"src":"58224:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69963,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"58273:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69965,"indexExpression":{"id":69964,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"58291:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58273:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58323:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"58273:75:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69967,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"58351:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"58273:79:96","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":69954,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"58105:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69956,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58121:21:96","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":76981,"src":"58105:37:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69969,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58105:261:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69970,"nodeType":"ExpressionStatement","src":"58105:261:96"}]}},"id":69973,"nodeType":"IfStatement","src":"57201:1176:96","trueBody":{"id":69912,"nodeType":"Block","src":"57219:333:96","statements":[{"expression":{"id":69893,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69888,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"57233:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69890,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"57242:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"57233:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69891,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"57259:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69892,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"57274:6:96","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":66247,"src":"57259:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"57233:47:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":69894,"nodeType":"ExpressionStatement","src":"57233:47:96"},{"expression":{"arguments":[{"id":69898,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"57349:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69899,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"57377:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69900,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57386:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"57377:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69901,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57398:10:96","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":66259,"src":"57377:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":69904,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"57434:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":69905,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57452:11:96","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71620,"src":"57434:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$77075_$","typeString":"function () view external returns (contract ISafe)"}},"id":69906,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57434:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":69903,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"57426:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69902,"name":"address","nodeType":"ElementaryTypeName","src":"57426:7:96","typeDescriptions":{}}},"id":69907,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57426:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69908,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"57484:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69909,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57501:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"57484:43:96","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":69895,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"57294:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69897,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57310:21:96","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":76981,"src":"57294:37:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69910,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57294:247:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69911,"nodeType":"ExpressionStatement","src":"57294:247:96"}]}},"id":69974,"nodeType":"IfStatement","src":"56434:1943:96","trueBody":{"id":69884,"nodeType":"Block","src":"56465:730:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69828,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"56483:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69829,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56500:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"56483:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":69830,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56517:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"56483:35:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69836,"nodeType":"IfStatement","src":"56479:102:96","trueBody":{"id":69835,"nodeType":"Block","src":"56520:61:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69832,"name":"DefaultRulingNotSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66429,"src":"56545:19:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69833,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56545:21:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69834,"nodeType":"RevertStatement","src":"56538:28:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69837,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"56598:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69838,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56615:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"56598:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":69839,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56632:1:96","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"56598:35:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69849,"nodeType":"IfStatement","src":"56594:121:96","trueBody":{"id":69848,"nodeType":"Block","src":"56635:80:96","statements":[{"expression":{"id":69846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69841,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"56653:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69843,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"56662:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"56653:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69844,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"56679:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69845,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"56694:6:96","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":66247,"src":"56679:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"56653:47:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":69847,"nodeType":"ExpressionStatement","src":"56653:47:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69850,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"56732:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69851,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56749:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"56732:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":69852,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56766:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"56732:35:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69872,"nodeType":"IfStatement","src":"56728:289:96","trueBody":{"id":69871,"nodeType":"Block","src":"56769:248:96","statements":[{"expression":{"id":69859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69854,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"56787:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69856,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"56796:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"56787:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69857,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"56813:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69858,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"56828:8:96","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":66252,"src":"56813:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"56787:49:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":69860,"nodeType":"ExpressionStatement","src":"56787:49:96"},{"expression":{"arguments":[{"id":69864,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"56910:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69865,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"56922:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69866,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56931:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"56922:18:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69867,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"56942:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69868,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56959:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"56942:42:96","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":69861,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"56854:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56870:18:96","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76970,"src":"56854:34:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69869,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56854:148:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69870,"nodeType":"ExpressionStatement","src":"56854:148:96"}]}},{"expression":{"arguments":[{"id":69876,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"57082:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69877,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"57094:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69878,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57103:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"57094:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69879,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57115:10:96","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":66259,"src":"57094:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69880,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"57127:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69881,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57144:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"57127:43:96","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":69873,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"57030:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69875,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57046:18:96","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76970,"src":"57030:34:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69882,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57030:154:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69883,"nodeType":"ExpressionStatement","src":"57030:154:96"}]}},{"expression":{"id":69976,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"58387:14:96","subExpression":{"id":69975,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66602,"src":"58387:12:96","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":69977,"nodeType":"ExpressionStatement","src":"58387:14:96"},{"expression":{"id":69983,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69978,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"58411:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69980,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"58420:21:96","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":66291,"src":"58411:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69981,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"58444:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69982,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58450:9:96","memberName":"timestamp","nodeType":"MemberAccess","src":"58444:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"58411:48:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69984,"nodeType":"ExpressionStatement","src":"58411:48:96"},{"eventCall":{"arguments":[{"expression":{"id":69986,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"58481:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69987,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58498:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"58481:27:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},{"id":69988,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69748,"src":"58510:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69989,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69750,"src":"58522:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69985,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76836,"src":"58474:6:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$76949_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256)"}},"id":69990,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58474:56:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69991,"nodeType":"EmitStatement","src":"58469:61:96"}]},"baseFunctions":[76844],"functionSelector":"311a6c56","implemented":true,"kind":"function","modifiers":[],"name":"rule","nameLocation":"55657:4:96","overrides":{"id":69752,"nodeType":"OverrideSpecifier","overrides":[],"src":"55716:8:96"},"parameters":{"id":69751,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69748,"mutability":"mutable","name":"_disputeID","nameLocation":"55670:10:96","nodeType":"VariableDeclaration","scope":69993,"src":"55662:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69747,"name":"uint256","nodeType":"ElementaryTypeName","src":"55662:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69750,"mutability":"mutable","name":"_ruling","nameLocation":"55690:7:96","nodeType":"VariableDeclaration","scope":69993,"src":"55682:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69749,"name":"uint256","nodeType":"ElementaryTypeName","src":"55682:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"55661:37:96"},"returnParameters":{"id":69753,"nodeType":"ParameterList","parameters":[],"src":"55725:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":70059,"nodeType":"FunctionDefinition","src":"58543:702:96","nodes":[],"body":{"id":70058,"nodeType":"Block","src":"58604:641:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":70004,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69998,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"58618:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":70000,"indexExpression":{"id":69999,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"58628:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58618:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":70001,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58640:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"58618:36:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":70002,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"58658:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":70003,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"58673:6:96","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":66247,"src":"58658:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"58618:61:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70010,"nodeType":"IfStatement","src":"58614:128:96","trueBody":{"id":70009,"nodeType":"Block","src":"58681:61:96","statements":[{"errorCall":{"arguments":[{"id":70006,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"58720:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":70005,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66397,"src":"58702:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":70007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58702:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70008,"nodeType":"RevertStatement","src":"58695:36:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":70011,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"58756:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":70013,"indexExpression":{"id":70012,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"58766:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58756:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":70014,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58778:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"58756:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":70015,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"58791:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70016,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58795:6:96","memberName":"sender","nodeType":"MemberAccess","src":"58791:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"58756:45:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70028,"nodeType":"IfStatement","src":"58752:141:96","trueBody":{"id":70027,"nodeType":"Block","src":"58803:90:96","statements":[{"errorCall":{"arguments":[{"expression":{"baseExpression":{"id":70019,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"58838:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":70021,"indexExpression":{"id":70020,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"58848:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58838:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":70022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58860:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"58838:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":70023,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"58871:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58875:6:96","memberName":"sender","nodeType":"MemberAccess","src":"58871:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":70018,"name":"OnlySubmitter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66427,"src":"58824:13:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":70025,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58824:58:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70026,"nodeType":"RevertStatement","src":"58817:65:96"}]}},{"expression":{"arguments":[{"id":70032,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"58951:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":70033,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"58975:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":70035,"indexExpression":{"id":70034,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"58985:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58975:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":70036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58997:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"58975:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":70037,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"59020:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":70042,"indexExpression":{"expression":{"baseExpression":{"id":70038,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"59038:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":70040,"indexExpression":{"id":70039,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"59048:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59038:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":70041,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"59060:23:96","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":66293,"src":"59038:45:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59020:64:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":70043,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"59085:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"59020:90:96","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":70029,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"58903:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":70031,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58919:18:96","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76970,"src":"58903:34:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":70044,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58903:217:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70045,"nodeType":"ExpressionStatement","src":"58903:217:96"},{"expression":{"id":70052,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":70046,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"59131:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":70048,"indexExpression":{"id":70047,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"59141:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59131:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":70049,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"59153:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"59131:36:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70050,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"59170:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":70051,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"59185:9:96","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":66249,"src":"59170:24:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"59131:63:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":70053,"nodeType":"ExpressionStatement","src":"59131:63:96"},{"eventCall":{"arguments":[{"id":70055,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"59227:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":70054,"name":"ProposalCancelled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66535,"src":"59209:17:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":70056,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59209:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70057,"nodeType":"EmitStatement","src":"59204:34:96"}]},"functionSelector":"e0a8f6f5","implemented":true,"kind":"function","modifiers":[],"name":"cancelProposal","nameLocation":"58552:14:96","parameters":{"id":69996,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69995,"mutability":"mutable","name":"proposalId","nameLocation":"58575:10:96","nodeType":"VariableDeclaration","scope":70059,"src":"58567:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69994,"name":"uint256","nodeType":"ElementaryTypeName","src":"58567:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"58566:20:96"},"returnParameters":{"id":69997,"nodeType":"ParameterList","parameters":[],"src":"58604:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":70073,"nodeType":"FunctionDefinition","src":"59251:125:96","nodes":[],"body":{"id":70072,"nodeType":"Block","src":"59308:68:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":70065,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66928,"src":"59318:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":70066,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59318:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70067,"nodeType":"ExpressionStatement","src":"59318:17:96"},{"expression":{"arguments":[{"id":70069,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70062,"src":"59361:7:96","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":70068,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70153,"src":"59345:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":70070,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59345:24:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70071,"nodeType":"ExpressionStatement","src":"59345:24:96"}]},"functionSelector":"7263cfe2","implemented":true,"kind":"function","modifiers":[],"name":"addToAllowList","nameLocation":"59260:14:96","parameters":{"id":70063,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70062,"mutability":"mutable","name":"members","nameLocation":"59292:7:96","nodeType":"VariableDeclaration","scope":70073,"src":"59275:24:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70060,"name":"address","nodeType":"ElementaryTypeName","src":"59275:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70061,"nodeType":"ArrayTypeName","src":"59275:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"59274:26:96"},"returnParameters":{"id":70064,"nodeType":"ParameterList","parameters":[],"src":"59308:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":70153,"nodeType":"FunctionDefinition","src":"59382:610:96","nodes":[],"body":{"id":70152,"nodeType":"Block","src":"59442:550:96","nodes":[],"statements":[{"assignments":[70080],"declarations":[{"constant":false,"id":70080,"mutability":"mutable","name":"allowlistRole","nameLocation":"59460:13:96","nodeType":"VariableDeclaration","scope":70152,"src":"59452:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70079,"name":"bytes32","nodeType":"ElementaryTypeName","src":"59452:7:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":70088,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":70084,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"59503:11:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":70085,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"59516:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":70082,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"59486:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":70083,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"59490:12:96","memberName":"encodePacked","nodeType":"MemberAccess","src":"59486:16:96","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":70086,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59486:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":70081,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"59476:9:96","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":70087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59476:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"59452:72:96"},{"condition":{"arguments":[{"id":70091,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70080,"src":"59565:13:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":70094,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"59588:1:96","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":70093,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"59580:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70092,"name":"address","nodeType":"ElementaryTypeName","src":"59580:7:96","typeDescriptions":{}}},"id":70095,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59580:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70089,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"59539:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70090,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59557:7:96","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":51753,"src":"59539:25:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":70096,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59539:52:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70108,"nodeType":"IfStatement","src":"59535:138:96","trueBody":{"id":70107,"nodeType":"Block","src":"59593:80:96","statements":[{"expression":{"arguments":[{"id":70100,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70080,"src":"59636:13:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":70103,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"59659:1:96","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":70102,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"59651:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70101,"name":"address","nodeType":"ElementaryTypeName","src":"59651:7:96","typeDescriptions":{}}},"id":70104,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59651:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70097,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"59607:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70099,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59625:10:96","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":51860,"src":"59607:28:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":70105,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59607:55:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70106,"nodeType":"ExpressionStatement","src":"59607:55:96"}]}},{"body":{"id":70145,"nodeType":"Block","src":"59727:205:96","statements":[{"condition":{"id":70127,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"59745:53:96","subExpression":{"arguments":[{"id":70122,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70080,"src":"59772:13:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":70123,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70076,"src":"59787:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70125,"indexExpression":{"id":70124,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70110,"src":"59795:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59787:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70120,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"59746:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70121,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59764:7:96","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":51753,"src":"59746:25:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":70126,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59746:52:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70144,"nodeType":"IfStatement","src":"59741:181:96","trueBody":{"id":70143,"nodeType":"Block","src":"59800:122:96","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":70134,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"59873:11:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":70135,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"59886:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":70132,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"59856:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":70133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"59860:12:96","memberName":"encodePacked","nodeType":"MemberAccess","src":"59856:16:96","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":70136,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59856:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":70131,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"59846:9:96","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":70137,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59846:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":70138,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70076,"src":"59896:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70140,"indexExpression":{"id":70139,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70110,"src":"59904:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59896:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70128,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"59818:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70130,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59836:9:96","memberName":"grantRole","nodeType":"MemberAccess","referencedDeclaration":51840,"src":"59818:27:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":70141,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59818:89:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70142,"nodeType":"ExpressionStatement","src":"59818:89:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70113,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70110,"src":"59702:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":70114,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70076,"src":"59706:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59714:6:96","memberName":"length","nodeType":"MemberAccess","src":"59706:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"59702:18:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70146,"initializationExpression":{"assignments":[70110],"declarations":[{"constant":false,"id":70110,"mutability":"mutable","name":"i","nameLocation":"59695:1:96","nodeType":"VariableDeclaration","scope":70146,"src":"59687:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70109,"name":"uint256","nodeType":"ElementaryTypeName","src":"59687:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":70112,"initialValue":{"hexValue":"30","id":70111,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"59699:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"59687:13:96"},"loopExpression":{"expression":{"id":70118,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"59722:3:96","subExpression":{"id":70117,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70110,"src":"59722:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70119,"nodeType":"ExpressionStatement","src":"59722:3:96"},"nodeType":"ForStatement","src":"59682:250:96"},{"eventCall":{"arguments":[{"id":70148,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"59969:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":70149,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70076,"src":"59977:7:96","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":70147,"name":"AllowlistMembersAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66566,"src":"59947:21:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":70150,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59947:38:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70151,"nodeType":"EmitStatement","src":"59942:43:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addToAllowList","nameLocation":"59391:15:96","parameters":{"id":70077,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70076,"mutability":"mutable","name":"members","nameLocation":"59424:7:96","nodeType":"VariableDeclaration","scope":70153,"src":"59407:24:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70074,"name":"address","nodeType":"ElementaryTypeName","src":"59407:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70075,"nodeType":"ArrayTypeName","src":"59407:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"59406:26:96"},"returnParameters":{"id":70078,"nodeType":"ParameterList","parameters":[],"src":"59442:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":70167,"nodeType":"FunctionDefinition","src":"59998:137:96","nodes":[],"body":{"id":70166,"nodeType":"Block","src":"60062:73:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":70159,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66928,"src":"60072:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":70160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60072:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70161,"nodeType":"ExpressionStatement","src":"60072:17:96"},{"expression":{"arguments":[{"id":70163,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70156,"src":"60120:7:96","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":70162,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70222,"src":"60099:20:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":70164,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60099:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70165,"nodeType":"ExpressionStatement","src":"60099:29:96"}]},"functionSelector":"a51312c8","implemented":true,"kind":"function","modifiers":[],"name":"removeFromAllowList","nameLocation":"60007:19:96","parameters":{"id":70157,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70156,"mutability":"mutable","name":"members","nameLocation":"60044:7:96","nodeType":"VariableDeclaration","scope":70167,"src":"60027:24:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70154,"name":"address","nodeType":"ElementaryTypeName","src":"60027:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70155,"nodeType":"ArrayTypeName","src":"60027:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"60026:26:96"},"returnParameters":{"id":70158,"nodeType":"ParameterList","parameters":[],"src":"60062:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70222,"nodeType":"FunctionDefinition","src":"60141:422:96","nodes":[],"body":{"id":70221,"nodeType":"Block","src":"60206:357:96","nodes":[],"statements":[{"body":{"id":70214,"nodeType":"Block","src":"60261:240:96","statements":[{"condition":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":70189,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"60332:11:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":70190,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"60345:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":70187,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"60315:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":70188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"60319:12:96","memberName":"encodePacked","nodeType":"MemberAccess","src":"60315:16:96","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":70191,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60315:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":70186,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"60305:9:96","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":70192,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60305:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":70193,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70170,"src":"60355:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70195,"indexExpression":{"id":70194,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70174,"src":"60363:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"60355:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70184,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"60279:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70185,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60297:7:96","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":51753,"src":"60279:25:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":70196,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60279:87:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70213,"nodeType":"IfStatement","src":"60275:216:96","trueBody":{"id":70212,"nodeType":"Block","src":"60368:123:96","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":70203,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"60442:11:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":70204,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"60455:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":70201,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"60425:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":70202,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"60429:12:96","memberName":"encodePacked","nodeType":"MemberAccess","src":"60425:16:96","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":70205,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60425:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":70200,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"60415:9:96","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":70206,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60415:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":70207,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70170,"src":"60465:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70209,"indexExpression":{"id":70208,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70174,"src":"60473:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"60465:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70197,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"60386:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70199,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60404:10:96","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":51860,"src":"60386:28:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":70210,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60386:90:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70211,"nodeType":"ExpressionStatement","src":"60386:90:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70180,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70177,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70174,"src":"60236:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":70178,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70170,"src":"60240:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60248:6:96","memberName":"length","nodeType":"MemberAccess","src":"60240:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"60236:18:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70215,"initializationExpression":{"assignments":[70174],"declarations":[{"constant":false,"id":70174,"mutability":"mutable","name":"i","nameLocation":"60229:1:96","nodeType":"VariableDeclaration","scope":70215,"src":"60221:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70173,"name":"uint256","nodeType":"ElementaryTypeName","src":"60221:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":70176,"initialValue":{"hexValue":"30","id":70175,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"60233:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"60221:13:96"},"loopExpression":{"expression":{"id":70182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"60256:3:96","subExpression":{"id":70181,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70174,"src":"60256:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70183,"nodeType":"ExpressionStatement","src":"60256:3:96"},"nodeType":"ForStatement","src":"60216:285:96"},{"eventCall":{"arguments":[{"id":70217,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"60540:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":70218,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70170,"src":"60548:7:96","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":70216,"name":"AllowlistMembersRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66559,"src":"60516:23:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":70219,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60516:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70220,"nodeType":"EmitStatement","src":"60511:45:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeFromAllowList","nameLocation":"60150:20:96","parameters":{"id":70171,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70170,"mutability":"mutable","name":"members","nameLocation":"60188:7:96","nodeType":"VariableDeclaration","scope":70222,"src":"60171:24:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70168,"name":"address","nodeType":"ElementaryTypeName","src":"60171:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70169,"nodeType":"ArrayTypeName","src":"60171:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"60170:26:96"},"returnParameters":{"id":70172,"nodeType":"ParameterList","parameters":[],"src":"60206:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":70244,"nodeType":"FunctionDefinition","src":"60569:168:96","nodes":[],"body":{"id":70243,"nodeType":"Block","src":"60629:108:96","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":70232,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"60671:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":70231,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"60663:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70230,"name":"address","nodeType":"ElementaryTypeName","src":"60663:7:96","typeDescriptions":{}}},"id":70233,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60663:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70234,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70224,"src":"60678:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":70237,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"60697:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70238,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60715:11:96","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71620,"src":"60697:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$77075_$","typeString":"function () view external returns (contract ISafe)"}},"id":70239,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60697:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":70236,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"60689:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70235,"name":"address","nodeType":"ElementaryTypeName","src":"60689:7:96","typeDescriptions":{}}},"id":70240,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60689:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70227,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"60639:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"id":70229,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60651:11:96","memberName":"addStrategy","nodeType":"MemberAccess","referencedDeclaration":70597,"src":"60639:23:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$_t_address_$returns$__$","typeString":"function (address,uint256,address) external"}},"id":70241,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60639:91:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70242,"nodeType":"ExpressionStatement","src":"60639:91:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_registerToSybilScorer","nameLocation":"60578:22:96","parameters":{"id":70225,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70224,"mutability":"mutable","name":"threshold","nameLocation":"60609:9:96","nodeType":"VariableDeclaration","scope":70244,"src":"60601:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70223,"name":"uint256","nodeType":"ElementaryTypeName","src":"60601:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"60600:19:96"},"returnParameters":{"id":70226,"nodeType":"ParameterList","parameters":[],"src":"60629:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":70248,"nodeType":"VariableDeclaration","src":"60743:25:96","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"60763:5:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":70245,"name":"uint256","nodeType":"ElementaryTypeName","src":"60743:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70247,"length":{"hexValue":"3530","id":70246,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"60751:2:96","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"60743:11:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":66372,"name":"BaseStrategyUpgradeable","nameLocations":["4171:23:96"],"nodeType":"IdentifierPath","referencedDeclaration":66158,"src":"4171:23:96"},"id":66373,"nodeType":"InheritanceSpecifier","src":"4171:23:96"},{"baseName":{"id":66374,"name":"IArbitrable","nameLocations":["4196:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":76845,"src":"4196:11:96"},"id":66375,"nodeType":"InheritanceSpecifier","src":"4196:11:96"},{"baseName":{"id":66376,"name":"IPointStrategy","nameLocations":["4209:14:96"],"nodeType":"IdentifierPath","referencedDeclaration":66224,"src":"4209:14:96"},"id":66377,"nodeType":"InheritanceSpecifier","src":"4209:14:96"},{"baseName":{"id":66378,"name":"ERC165","nameLocations":["4225:6:96"],"nodeType":"IdentifierPath","referencedDeclaration":57022,"src":"4225:6:96"},"id":66379,"nodeType":"InheritanceSpecifier","src":"4225:6:96"}],"canonicalName":"CVStrategyV0_0","contractDependencies":[],"contractKind":"contract","documentation":{"id":66371,"nodeType":"StructuredDocumentation","src":"4100:44:96","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[70249,57022,57228,66224,76845,66158,3089,3317,3106,2969,71181,54969,54622,54271,54281,52200,52993,52449],"name":"CVStrategyV0_0","nameLocation":"4153:14:96","scope":70250,"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,66381,66383,66385,66387,66393,66397,66401,66407,66409,66411,66413,66415,66417,66421,66427,66429,66431,66433,66435,71096]}],"license":"AGPL-3.0-only"},"id":96} \ 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 7a046f04b..76dc487b1 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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda\",\"dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f","urls":["bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda","dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"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":30152,"exportedSymbols":{"ArbitrableConfig":[26226],"BaseStrategy":[1627],"BaseStrategyUpgradeable":[26068],"CVParams":[26235],"CVStrategyInitializeParamsV0_0":[26255],"CVStrategyInitializeParamsV0_1":[26280],"CVStrategyV0_0":[30151],"Clone":[706],"CreateProposal":[26155],"ERC165":[18550],"ERC20":[17320],"IAllo":[314],"IArbitrable":[33150],"IArbitrator":[33254],"ICollateralVault":[33287],"IERC165":[18756],"IPointStrategy":[26134],"ISybilScorer":[30228],"Math":[19622],"Metadata":[802],"OwnableUpgradeable":[14042],"PassportScorer":[30700],"PointSystem":[26143],"PointSystemConfig":[26212],"Proposal":[26204],"ProposalDisputeInfo":[26170],"ProposalStatus":[26163],"ProposalSupport":[26209],"ProposalType":[26138],"RegistryCommunityV0_0":[33072],"UUPSUpgradeable":[16733],"console":[13499]},"nodeType":"SourceUnit","src":"42:60609:59","nodes":[{"id":26070,"nodeType":"PragmaDirective","src":"42:24:59","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":26072,"nodeType":"ImportDirective","src":"68:71:59","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"allo-v2-contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":803,"symbolAliases":[{"foreign":{"id":26071,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":802,"src":"76:8:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26075,"nodeType":"ImportDirective","src":"140:82:59","nodes":[],"absolutePath":"lib/allo-v2/contracts/strategies/BaseStrategy.sol","file":"allo-v2-contracts/strategies/BaseStrategy.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":1628,"symbolAliases":[{"foreign":{"id":26073,"name":"BaseStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1627,"src":"148:12:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":26074,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":314,"src":"162:5:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26077,"nodeType":"ImportDirective","src":"223:85:59","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":33073,"symbolAliases":[{"foreign":{"id":26076,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33072,"src":"231:21:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26080,"nodeType":"ImportDirective","src":"309:87:59","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":18551,"symbolAliases":[{"foreign":{"id":26078,"name":"ERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":18550,"src":"317:6:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":26079,"name":"IERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":18756,"src":"325:7:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26082,"nodeType":"ImportDirective","src":"397:68:59","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","file":"@openzeppelin/contracts/token/ERC20/ERC20.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":17321,"symbolAliases":[{"foreign":{"id":26081,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17320,"src":"405:5:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26084,"nodeType":"ImportDirective","src":"466:58:59","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":33255,"symbolAliases":[{"foreign":{"id":26083,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33254,"src":"474:11:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26086,"nodeType":"ImportDirective","src":"525:58:59","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"../interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":33151,"symbolAliases":[{"foreign":{"id":26085,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33150,"src":"533:11:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26088,"nodeType":"ImportDirective","src":"584:65:59","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":707,"symbolAliases":[{"foreign":{"id":26087,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":706,"src":"592:5:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26090,"nodeType":"ImportDirective","src":"650:46:59","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":13500,"symbolAliases":[{"foreign":{"id":26089,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13499,"src":"658:7:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26092,"nodeType":"ImportDirective","src":"697:65:59","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"@openzeppelin/contracts/utils/math/Math.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":19623,"symbolAliases":[{"foreign":{"id":26091,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":19622,"src":"705:4:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26094,"nodeType":"ImportDirective","src":"763:49:59","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":30229,"symbolAliases":[{"foreign":{"id":26093,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30228,"src":"771:12:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26096,"nodeType":"ImportDirective","src":"813:88:59","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":16734,"symbolAliases":[{"foreign":{"id":26095,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16733,"src":"821:15:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26098,"nodeType":"ImportDirective","src":"902:71:59","nodes":[],"absolutePath":"pkg/contracts/src/BaseStrategyUpgradeable.sol","file":"../BaseStrategyUpgradeable.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":26069,"symbolAliases":[{"foreign":{"id":26097,"name":"BaseStrategyUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26068,"src":"910:23:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26100,"nodeType":"ImportDirective","src":"974:101:59","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":14043,"symbolAliases":[{"foreign":{"id":26099,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14042,"src":"982:18:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26102,"nodeType":"ImportDirective","src":"1076:68:59","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":33288,"symbolAliases":[{"foreign":{"id":26101,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33287,"src":"1084:16:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26104,"nodeType":"ImportDirective","src":"1145:53:59","nodes":[],"absolutePath":"pkg/contracts/src/PassportScorer.sol","file":"../PassportScorer.sol","nameLocation":"-1:-1:-1","scope":30152,"sourceUnit":30701,"symbolAliases":[{"foreign":{"id":26103,"name":"PassportScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30700,"src":"1153:14:59","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":26134,"nodeType":"ContractDefinition","src":"1354:343:59","nodes":[{"id":26109,"nodeType":"FunctionDefinition","src":"1385:52:59","nodes":[],"functionSelector":"6453d9c4","implemented":false,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"1394:16:59","parameters":{"id":26107,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26106,"mutability":"mutable","name":"_member","nameLocation":"1419:7:59","nodeType":"VariableDeclaration","scope":26109,"src":"1411:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26105,"name":"address","nodeType":"ElementaryTypeName","src":"1411:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1410:17:59"},"returnParameters":{"id":26108,"nodeType":"ParameterList","parameters":[],"src":"1436:0:59"},"scope":26134,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":26118,"nodeType":"FunctionDefinition","src":"1443:91:59","nodes":[],"functionSelector":"782aadff","implemented":false,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"1452:13:59","parameters":{"id":26114,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26111,"mutability":"mutable","name":"_member","nameLocation":"1474:7:59","nodeType":"VariableDeclaration","scope":26118,"src":"1466:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26110,"name":"address","nodeType":"ElementaryTypeName","src":"1466:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26113,"mutability":"mutable","name":"_amountToStake","nameLocation":"1491:14:59","nodeType":"VariableDeclaration","scope":26118,"src":"1483:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26112,"name":"uint256","nodeType":"ElementaryTypeName","src":"1483:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1465:41:59"},"returnParameters":{"id":26117,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26116,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":26118,"src":"1525:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26115,"name":"uint256","nodeType":"ElementaryTypeName","src":"1525:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1524:9:59"},"scope":26134,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":26127,"nodeType":"FunctionDefinition","src":"1540:92:59","nodes":[],"functionSelector":"2ed04b2b","implemented":false,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"1549:13:59","parameters":{"id":26123,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26120,"mutability":"mutable","name":"_member","nameLocation":"1571:7:59","nodeType":"VariableDeclaration","scope":26127,"src":"1563:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26119,"name":"address","nodeType":"ElementaryTypeName","src":"1563:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26122,"mutability":"mutable","name":"_amountToUntake","nameLocation":"1588:15:59","nodeType":"VariableDeclaration","scope":26127,"src":"1580:23:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26121,"name":"uint256","nodeType":"ElementaryTypeName","src":"1580:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1562:42:59"},"returnParameters":{"id":26126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26125,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":26127,"src":"1623:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26124,"name":"uint256","nodeType":"ElementaryTypeName","src":"1623:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1622:9:59"},"scope":26134,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":26133,"nodeType":"FunctionDefinition","src":"1638:57:59","nodes":[],"functionSelector":"c3292171","implemented":false,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"1647:14:59","parameters":{"id":26128,"nodeType":"ParameterList","parameters":[],"src":"1661:2:59"},"returnParameters":{"id":26132,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26131,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":26133,"src":"1682:11:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"typeName":{"id":26130,"nodeType":"UserDefinedTypeName","pathNode":{"id":26129,"name":"PointSystem","nameLocations":["1682:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":26143,"src":"1682:11:59"},"referencedDeclaration":26143,"src":"1682:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"1681:13:59"},"scope":26134,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IPointStrategy","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[26134],"name":"IPointStrategy","nameLocation":"1364:14:59","scope":30152,"usedErrors":[]},{"id":26138,"nodeType":"EnumDefinition","src":"1699:63:59","nodes":[],"canonicalName":"ProposalType","members":[{"id":26135,"name":"Signaling","nameLocation":"1723:9:59","nodeType":"EnumValue","src":"1723:9:59"},{"id":26136,"name":"Funding","nameLocation":"1738:7:59","nodeType":"EnumValue","src":"1738:7:59"},{"id":26137,"name":"Streaming","nameLocation":"1751:9:59","nodeType":"EnumValue","src":"1751:9:59"}],"name":"ProposalType","nameLocation":"1704:12:59"},{"id":26143,"nodeType":"EnumDefinition","src":"1764:72:59","nodes":[],"canonicalName":"PointSystem","members":[{"id":26139,"name":"Fixed","nameLocation":"1787:5:59","nodeType":"EnumValue","src":"1787:5:59"},{"id":26140,"name":"Capped","nameLocation":"1798:6:59","nodeType":"EnumValue","src":"1798:6:59"},{"id":26141,"name":"Unlimited","nameLocation":"1810:9:59","nodeType":"EnumValue","src":"1810:9:59"},{"id":26142,"name":"Quadratic","nameLocation":"1825:9:59","nodeType":"EnumValue","src":"1825:9:59"}],"name":"PointSystem","nameLocation":"1769:11:59"},{"id":26155,"nodeType":"StructDefinition","src":"1838:211:59","nodes":[],"canonicalName":"CreateProposal","members":[{"constant":false,"id":26145,"mutability":"mutable","name":"poolId","nameLocation":"1901:6:59","nodeType":"VariableDeclaration","scope":26155,"src":"1893:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26144,"name":"uint256","nodeType":"ElementaryTypeName","src":"1893:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26147,"mutability":"mutable","name":"beneficiary","nameLocation":"1921:11:59","nodeType":"VariableDeclaration","scope":26155,"src":"1913:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26146,"name":"address","nodeType":"ElementaryTypeName","src":"1913:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26149,"mutability":"mutable","name":"amountRequested","nameLocation":"1980:15:59","nodeType":"VariableDeclaration","scope":26155,"src":"1972:23:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26148,"name":"uint256","nodeType":"ElementaryTypeName","src":"1972:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26151,"mutability":"mutable","name":"requestedToken","nameLocation":"2009:14:59","nodeType":"VariableDeclaration","scope":26155,"src":"2001:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26150,"name":"address","nodeType":"ElementaryTypeName","src":"2001:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26154,"mutability":"mutable","name":"metadata","nameLocation":"2038:8:59","nodeType":"VariableDeclaration","scope":26155,"src":"2029:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":26153,"nodeType":"UserDefinedTypeName","pathNode":{"id":26152,"name":"Metadata","nameLocations":["2029:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"2029:8:59"},"referencedDeclaration":802,"src":"2029:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"name":"CreateProposal","nameLocation":"1845:14:59","scope":30152,"visibility":"public"},{"id":26163,"nodeType":"EnumDefinition","src":"2051:360:59","nodes":[],"canonicalName":"ProposalStatus","members":[{"id":26156,"name":"Inactive","nameLocation":"2077:8:59","nodeType":"EnumValue","src":"2077:8:59"},{"id":26157,"name":"Active","nameLocation":"2103:6:59","nodeType":"EnumValue","src":"2103:6:59"},{"id":26158,"name":"Paused","nameLocation":"2162:6:59","nodeType":"EnumValue","src":"2162:6:59"},{"id":26159,"name":"Cancelled","nameLocation":"2224:9:59","nodeType":"EnumValue","src":"2224:9:59"},{"id":26160,"name":"Executed","nameLocation":"2273:8:59","nodeType":"EnumValue","src":"2273:8:59"},{"id":26161,"name":"Disputed","nameLocation":"2320:8:59","nodeType":"EnumValue","src":"2320:8:59"},{"id":26162,"name":"Rejected","nameLocation":"2367:8:59","nodeType":"EnumValue","src":"2367:8:59"}],"name":"ProposalStatus","nameLocation":"2056:14:59"},{"id":26170,"nodeType":"StructDefinition","src":"2413:107:59","nodes":[],"canonicalName":"ProposalDisputeInfo","members":[{"constant":false,"id":26165,"mutability":"mutable","name":"disputeId","nameLocation":"2454:9:59","nodeType":"VariableDeclaration","scope":26170,"src":"2446:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26164,"name":"uint256","nodeType":"ElementaryTypeName","src":"2446:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26167,"mutability":"mutable","name":"disputeTimestamp","nameLocation":"2477:16:59","nodeType":"VariableDeclaration","scope":26170,"src":"2469:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26166,"name":"uint256","nodeType":"ElementaryTypeName","src":"2469:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26169,"mutability":"mutable","name":"challenger","nameLocation":"2507:10:59","nodeType":"VariableDeclaration","scope":26170,"src":"2499:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26168,"name":"address","nodeType":"ElementaryTypeName","src":"2499:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"ProposalDisputeInfo","nameLocation":"2420:19:59","scope":30152,"visibility":"public"},{"id":26204,"nodeType":"StructDefinition","src":"2522:466:59","nodes":[],"canonicalName":"Proposal","members":[{"constant":false,"id":26172,"mutability":"mutable","name":"proposalId","nameLocation":"2552:10:59","nodeType":"VariableDeclaration","scope":26204,"src":"2544:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26171,"name":"uint256","nodeType":"ElementaryTypeName","src":"2544:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26174,"mutability":"mutable","name":"requestedAmount","nameLocation":"2576:15:59","nodeType":"VariableDeclaration","scope":26204,"src":"2568:23:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26173,"name":"uint256","nodeType":"ElementaryTypeName","src":"2568:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26176,"mutability":"mutable","name":"stakedAmount","nameLocation":"2605:12:59","nodeType":"VariableDeclaration","scope":26204,"src":"2597:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26175,"name":"uint256","nodeType":"ElementaryTypeName","src":"2597:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26178,"mutability":"mutable","name":"convictionLast","nameLocation":"2631:14:59","nodeType":"VariableDeclaration","scope":26204,"src":"2623:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26177,"name":"uint256","nodeType":"ElementaryTypeName","src":"2623:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26180,"mutability":"mutable","name":"beneficiary","nameLocation":"2659:11:59","nodeType":"VariableDeclaration","scope":26204,"src":"2651:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26179,"name":"address","nodeType":"ElementaryTypeName","src":"2651:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26182,"mutability":"mutable","name":"submitter","nameLocation":"2684:9:59","nodeType":"VariableDeclaration","scope":26204,"src":"2676:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26181,"name":"address","nodeType":"ElementaryTypeName","src":"2676:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26184,"mutability":"mutable","name":"requestedToken","nameLocation":"2707:14:59","nodeType":"VariableDeclaration","scope":26204,"src":"2699:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26183,"name":"address","nodeType":"ElementaryTypeName","src":"2699:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26186,"mutability":"mutable","name":"blockLast","nameLocation":"2735:9:59","nodeType":"VariableDeclaration","scope":26204,"src":"2727:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26185,"name":"uint256","nodeType":"ElementaryTypeName","src":"2727:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26189,"mutability":"mutable","name":"proposalStatus","nameLocation":"2765:14:59","nodeType":"VariableDeclaration","scope":26204,"src":"2750:29:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"typeName":{"id":26188,"nodeType":"UserDefinedTypeName","pathNode":{"id":26187,"name":"ProposalStatus","nameLocations":["2750:14:59"],"nodeType":"IdentifierPath","referencedDeclaration":26163,"src":"2750:14:59"},"referencedDeclaration":26163,"src":"2750:14:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":26193,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"2813:17:59","nodeType":"VariableDeclaration","scope":26204,"src":"2785:45:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":26192,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":26190,"name":"address","nodeType":"ElementaryTypeName","src":"2793:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"2785:27:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":26191,"name":"uint256","nodeType":"ElementaryTypeName","src":"2804:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"internal"},{"constant":false,"id":26196,"mutability":"mutable","name":"metadata","nameLocation":"2868:8:59","nodeType":"VariableDeclaration","scope":26204,"src":"2859:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":26195,"nodeType":"UserDefinedTypeName","pathNode":{"id":26194,"name":"Metadata","nameLocations":["2859:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"2859:8:59"},"referencedDeclaration":802,"src":"2859:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":26199,"mutability":"mutable","name":"disputeInfo","nameLocation":"2902:11:59","nodeType":"VariableDeclaration","scope":26204,"src":"2882:31:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage_ptr","typeString":"struct ProposalDisputeInfo"},"typeName":{"id":26198,"nodeType":"UserDefinedTypeName","pathNode":{"id":26197,"name":"ProposalDisputeInfo","nameLocations":["2882:19:59"],"nodeType":"IdentifierPath","referencedDeclaration":26170,"src":"2882:19:59"},"referencedDeclaration":26170,"src":"2882:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage_ptr","typeString":"struct ProposalDisputeInfo"}},"visibility":"internal"},{"constant":false,"id":26201,"mutability":"mutable","name":"lastDisputeCompletion","nameLocation":"2927:21:59","nodeType":"VariableDeclaration","scope":26204,"src":"2919:29:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26200,"name":"uint256","nodeType":"ElementaryTypeName","src":"2919:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26203,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"2962:23:59","nodeType":"VariableDeclaration","scope":26204,"src":"2954:31:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26202,"name":"uint256","nodeType":"ElementaryTypeName","src":"2954:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Proposal","nameLocation":"2529:8:59","scope":30152,"visibility":"public"},{"id":26209,"nodeType":"StructDefinition","src":"2990:114:59","nodes":[],"canonicalName":"ProposalSupport","members":[{"constant":false,"id":26206,"mutability":"mutable","name":"proposalId","nameLocation":"3027:10:59","nodeType":"VariableDeclaration","scope":26209,"src":"3019:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26205,"name":"uint256","nodeType":"ElementaryTypeName","src":"3019:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26208,"mutability":"mutable","name":"deltaSupport","nameLocation":"3050:12:59","nodeType":"VariableDeclaration","scope":26209,"src":"3043:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":26207,"name":"int256","nodeType":"ElementaryTypeName","src":"3043:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"name":"ProposalSupport","nameLocation":"2997:15:59","scope":30152,"visibility":"public"},{"id":26212,"nodeType":"StructDefinition","src":"3106:77:59","nodes":[],"canonicalName":"PointSystemConfig","members":[{"constant":false,"id":26211,"mutability":"mutable","name":"maxAmount","nameLocation":"3171:9:59","nodeType":"VariableDeclaration","scope":26212,"src":"3163:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26210,"name":"uint256","nodeType":"ElementaryTypeName","src":"3163:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"PointSystemConfig","nameLocation":"3113:17:59","scope":30152,"visibility":"public"},{"id":26226,"nodeType":"StructDefinition","src":"3185:221:59","nodes":[],"canonicalName":"ArbitrableConfig","members":[{"constant":false,"id":26215,"mutability":"mutable","name":"arbitrator","nameLocation":"3227:10:59","nodeType":"VariableDeclaration","scope":26226,"src":"3215:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"},"typeName":{"id":26214,"nodeType":"UserDefinedTypeName","pathNode":{"id":26213,"name":"IArbitrator","nameLocations":["3215:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":33254,"src":"3215:11:59"},"referencedDeclaration":33254,"src":"3215:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":26217,"mutability":"mutable","name":"tribunalSafe","nameLocation":"3251:12:59","nodeType":"VariableDeclaration","scope":26226,"src":"3243:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26216,"name":"address","nodeType":"ElementaryTypeName","src":"3243:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26219,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"3277:25:59","nodeType":"VariableDeclaration","scope":26226,"src":"3269:33:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26218,"name":"uint256","nodeType":"ElementaryTypeName","src":"3269:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26221,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"3316:26:59","nodeType":"VariableDeclaration","scope":26226,"src":"3308:34:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26220,"name":"uint256","nodeType":"ElementaryTypeName","src":"3308:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26223,"mutability":"mutable","name":"defaultRuling","nameLocation":"3356:13:59","nodeType":"VariableDeclaration","scope":26226,"src":"3348:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26222,"name":"uint256","nodeType":"ElementaryTypeName","src":"3348:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26225,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"3383:20:59","nodeType":"VariableDeclaration","scope":26226,"src":"3375:28:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26224,"name":"uint256","nodeType":"ElementaryTypeName","src":"3375:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"ArbitrableConfig","nameLocation":"3192:16:59","scope":30152,"visibility":"public"},{"id":26235,"nodeType":"StructDefinition","src":"3408:112:59","nodes":[],"canonicalName":"CVParams","members":[{"constant":false,"id":26228,"mutability":"mutable","name":"maxRatio","nameLocation":"3438:8:59","nodeType":"VariableDeclaration","scope":26235,"src":"3430:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26227,"name":"uint256","nodeType":"ElementaryTypeName","src":"3430:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26230,"mutability":"mutable","name":"weight","nameLocation":"3460:6:59","nodeType":"VariableDeclaration","scope":26235,"src":"3452:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26229,"name":"uint256","nodeType":"ElementaryTypeName","src":"3452:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26232,"mutability":"mutable","name":"decay","nameLocation":"3480:5:59","nodeType":"VariableDeclaration","scope":26235,"src":"3472:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26231,"name":"uint256","nodeType":"ElementaryTypeName","src":"3472:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26234,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"3499:18:59","nodeType":"VariableDeclaration","scope":26235,"src":"3491:26:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26233,"name":"uint256","nodeType":"ElementaryTypeName","src":"3491:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"CVParams","nameLocation":"3415:8:59","scope":30152,"visibility":"public"},{"id":26255,"nodeType":"StructDefinition","src":"3522:254:59","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_0","members":[{"constant":false,"id":26238,"mutability":"mutable","name":"cvParams","nameLocation":"3575:8:59","nodeType":"VariableDeclaration","scope":26255,"src":"3566:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":26237,"nodeType":"UserDefinedTypeName","pathNode":{"id":26236,"name":"CVParams","nameLocations":["3566:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"3566:8:59"},"referencedDeclaration":26235,"src":"3566:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":26241,"mutability":"mutable","name":"proposalType","nameLocation":"3602:12:59","nodeType":"VariableDeclaration","scope":26255,"src":"3589:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"},"typeName":{"id":26240,"nodeType":"UserDefinedTypeName","pathNode":{"id":26239,"name":"ProposalType","nameLocations":["3589:12:59"],"nodeType":"IdentifierPath","referencedDeclaration":26138,"src":"3589:12:59"},"referencedDeclaration":26138,"src":"3589:12:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":26244,"mutability":"mutable","name":"pointSystem","nameLocation":"3632:11:59","nodeType":"VariableDeclaration","scope":26255,"src":"3620:23:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"typeName":{"id":26243,"nodeType":"UserDefinedTypeName","pathNode":{"id":26242,"name":"PointSystem","nameLocations":["3620:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":26143,"src":"3620:11:59"},"referencedDeclaration":26143,"src":"3620:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":26247,"mutability":"mutable","name":"pointConfig","nameLocation":"3667:11:59","nodeType":"VariableDeclaration","scope":26255,"src":"3649:29:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":26246,"nodeType":"UserDefinedTypeName","pathNode":{"id":26245,"name":"PointSystemConfig","nameLocations":["3649:17:59"],"nodeType":"IdentifierPath","referencedDeclaration":26212,"src":"3649:17:59"},"referencedDeclaration":26212,"src":"3649:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":26250,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3701:16:59","nodeType":"VariableDeclaration","scope":26255,"src":"3684:33:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":26249,"nodeType":"UserDefinedTypeName","pathNode":{"id":26248,"name":"ArbitrableConfig","nameLocations":["3684:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"3684:16:59"},"referencedDeclaration":26226,"src":"3684:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":26252,"mutability":"mutable","name":"registryCommunity","nameLocation":"3731:17:59","nodeType":"VariableDeclaration","scope":26255,"src":"3723:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26251,"name":"address","nodeType":"ElementaryTypeName","src":"3723:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26254,"mutability":"mutable","name":"sybilScorer","nameLocation":"3762:11:59","nodeType":"VariableDeclaration","scope":26255,"src":"3754:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26253,"name":"address","nodeType":"ElementaryTypeName","src":"3754:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_0","nameLocation":"3529:30:59","scope":30152,"visibility":"public"},{"id":26280,"nodeType":"StructDefinition","src":"3778:320:59","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_1","members":[{"constant":false,"id":26258,"mutability":"mutable","name":"cvParams","nameLocation":"3831:8:59","nodeType":"VariableDeclaration","scope":26280,"src":"3822:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":26257,"nodeType":"UserDefinedTypeName","pathNode":{"id":26256,"name":"CVParams","nameLocations":["3822:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"3822:8:59"},"referencedDeclaration":26235,"src":"3822:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":26261,"mutability":"mutable","name":"proposalType","nameLocation":"3858:12:59","nodeType":"VariableDeclaration","scope":26280,"src":"3845:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"},"typeName":{"id":26260,"nodeType":"UserDefinedTypeName","pathNode":{"id":26259,"name":"ProposalType","nameLocations":["3845:12:59"],"nodeType":"IdentifierPath","referencedDeclaration":26138,"src":"3845:12:59"},"referencedDeclaration":26138,"src":"3845:12:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":26264,"mutability":"mutable","name":"pointSystem","nameLocation":"3888:11:59","nodeType":"VariableDeclaration","scope":26280,"src":"3876:23:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"typeName":{"id":26263,"nodeType":"UserDefinedTypeName","pathNode":{"id":26262,"name":"PointSystem","nameLocations":["3876:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":26143,"src":"3876:11:59"},"referencedDeclaration":26143,"src":"3876:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":26267,"mutability":"mutable","name":"pointConfig","nameLocation":"3923:11:59","nodeType":"VariableDeclaration","scope":26280,"src":"3905:29:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":26266,"nodeType":"UserDefinedTypeName","pathNode":{"id":26265,"name":"PointSystemConfig","nameLocations":["3905:17:59"],"nodeType":"IdentifierPath","referencedDeclaration":26212,"src":"3905:17:59"},"referencedDeclaration":26212,"src":"3905:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":26270,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3957:16:59","nodeType":"VariableDeclaration","scope":26280,"src":"3940:33:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":26269,"nodeType":"UserDefinedTypeName","pathNode":{"id":26268,"name":"ArbitrableConfig","nameLocations":["3940:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"3940:16:59"},"referencedDeclaration":26226,"src":"3940:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":26272,"mutability":"mutable","name":"registryCommunity","nameLocation":"3987:17:59","nodeType":"VariableDeclaration","scope":26280,"src":"3979:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26271,"name":"address","nodeType":"ElementaryTypeName","src":"3979:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26274,"mutability":"mutable","name":"sybilScorer","nameLocation":"4018:11:59","nodeType":"VariableDeclaration","scope":26280,"src":"4010:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26273,"name":"address","nodeType":"ElementaryTypeName","src":"4010:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26276,"mutability":"mutable","name":"sybilScorerThreshold","nameLocation":"4043:20:59","nodeType":"VariableDeclaration","scope":26280,"src":"4035:28:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26275,"name":"uint256","nodeType":"ElementaryTypeName","src":"4035:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26279,"mutability":"mutable","name":"initialAllowlist","nameLocation":"4079:16:59","nodeType":"VariableDeclaration","scope":26280,"src":"4069:26:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":26277,"name":"address","nodeType":"ElementaryTypeName","src":"4069:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26278,"nodeType":"ArrayTypeName","src":"4069:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_1","nameLocation":"3785:30:59","scope":30152,"visibility":"public"},{"id":30151,"nodeType":"ContractDefinition","src":"4144:56506:59","nodes":[{"id":26291,"nodeType":"ErrorDefinition","src":"4451:26:59","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4457:17:59","parameters":{"id":26290,"nodeType":"ParameterList","parameters":[],"src":"4474:2:59"}},{"id":26293,"nodeType":"ErrorDefinition","src":"4495:23:59","nodes":[],"errorSelector":"5fccb67f","name":"UserIsInactive","nameLocation":"4501:14:59","parameters":{"id":26292,"nodeType":"ParameterList","parameters":[],"src":"4515:2:59"}},{"id":26295,"nodeType":"ErrorDefinition","src":"4537:20:59","nodes":[],"errorSelector":"ed4421ad","name":"PoolIsEmpty","nameLocation":"4543:11:59","parameters":{"id":26294,"nodeType":"ParameterList","parameters":[],"src":"4554:2:59"}},{"id":26297,"nodeType":"ErrorDefinition","src":"4762:28:59","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4768:19:59","parameters":{"id":26296,"nodeType":"ParameterList","parameters":[],"src":"4787:2:59"}},{"id":26303,"nodeType":"ErrorDefinition","src":"4953:77:59","nodes":[],"errorSelector":"d64182fe","name":"NotEnoughPointsToSupport","nameLocation":"4959:24:59","parameters":{"id":26302,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26299,"mutability":"mutable","name":"pointsSupport","nameLocation":"4992:13:59","nodeType":"VariableDeclaration","scope":26303,"src":"4984:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26298,"name":"uint256","nodeType":"ElementaryTypeName","src":"4984:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26301,"mutability":"mutable","name":"pointsBalance","nameLocation":"5015:13:59","nodeType":"VariableDeclaration","scope":26303,"src":"5007:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26300,"name":"uint256","nodeType":"ElementaryTypeName","src":"5007:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4983:46:59"}},{"id":26307,"nodeType":"ErrorDefinition","src":"5151:45:59","nodes":[],"errorSelector":"44980d8f","name":"ProposalNotActive","nameLocation":"5157:17:59","parameters":{"id":26306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26305,"mutability":"mutable","name":"_proposalId","nameLocation":"5183:11:59","nodeType":"VariableDeclaration","scope":26307,"src":"5175:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26304,"name":"uint256","nodeType":"ElementaryTypeName","src":"5175:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5174:21:59"}},{"id":26311,"nodeType":"ErrorDefinition","src":"5215:45:59","nodes":[],"errorSelector":"c1d17bef","name":"ProposalNotInList","nameLocation":"5221:17:59","parameters":{"id":26310,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26309,"mutability":"mutable","name":"_proposalId","nameLocation":"5247:11:59","nodeType":"VariableDeclaration","scope":26311,"src":"5239:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26308,"name":"uint256","nodeType":"ElementaryTypeName","src":"5239:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5238:21:59"}},{"id":26317,"nodeType":"ErrorDefinition","src":"5279:68:59","nodes":[],"errorSelector":"adebb154","name":"ProposalSupportDuplicated","nameLocation":"5285:25:59","parameters":{"id":26316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26313,"mutability":"mutable","name":"_proposalId","nameLocation":"5319:11:59","nodeType":"VariableDeclaration","scope":26317,"src":"5311:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26312,"name":"uint256","nodeType":"ElementaryTypeName","src":"5311:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26315,"mutability":"mutable","name":"index","nameLocation":"5340:5:59","nodeType":"VariableDeclaration","scope":26317,"src":"5332:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26314,"name":"uint256","nodeType":"ElementaryTypeName","src":"5332:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5310:36:59"}},{"id":26319,"nodeType":"ErrorDefinition","src":"5365:40:59","nodes":[],"errorSelector":"cce79308","name":"ConvictionUnderMinimumThreshold","nameLocation":"5371:31:59","parameters":{"id":26318,"nodeType":"ParameterList","parameters":[],"src":"5402:2:59"}},{"id":26321,"nodeType":"ErrorDefinition","src":"5424:29:59","nodes":[],"errorSelector":"af0916a2","name":"OnlyCommunityAllowed","nameLocation":"5430:20:59","parameters":{"id":26320,"nodeType":"ParameterList","parameters":[],"src":"5450:2:59"}},{"id":26323,"nodeType":"ErrorDefinition","src":"5587:24:59","nodes":[],"errorSelector":"e860ec7e","name":"OnlyCouncilSafe","nameLocation":"5593:15:59","parameters":{"id":26322,"nodeType":"ParameterList","parameters":[],"src":"5608:2:59"}},{"id":26325,"nodeType":"ErrorDefinition","src":"5616:32:59","nodes":[],"errorSelector":"5b96b588","name":"UserCannotExecuteAction","nameLocation":"5622:23:59","parameters":{"id":26324,"nodeType":"ParameterList","parameters":[],"src":"5645:2:59"}},{"id":26327,"nodeType":"ErrorDefinition","src":"5734:23:59","nodes":[],"errorSelector":"2eef310a","name":"OnlyArbitrator","nameLocation":"5740:14:59","parameters":{"id":26326,"nodeType":"ParameterList","parameters":[],"src":"5754:2:59"}},{"id":26331,"nodeType":"ErrorDefinition","src":"5762:47:59","nodes":[],"errorSelector":"96023952","name":"ProposalNotDisputed","nameLocation":"5768:19:59","parameters":{"id":26330,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26329,"mutability":"mutable","name":"_proposalId","nameLocation":"5796:11:59","nodeType":"VariableDeclaration","scope":26331,"src":"5788:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26328,"name":"uint256","nodeType":"ElementaryTypeName","src":"5788:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5787:21:59"}},{"id":26337,"nodeType":"ErrorDefinition","src":"5853:55:59","nodes":[],"errorSelector":"8a89b922","name":"OnlySubmitter","nameLocation":"5859:13:59","parameters":{"id":26336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26333,"mutability":"mutable","name":"submitter","nameLocation":"5881:9:59","nodeType":"VariableDeclaration","scope":26337,"src":"5873:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26332,"name":"address","nodeType":"ElementaryTypeName","src":"5873:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26335,"mutability":"mutable","name":"sender","nameLocation":"5900:6:59","nodeType":"VariableDeclaration","scope":26337,"src":"5892:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26334,"name":"address","nodeType":"ElementaryTypeName","src":"5892:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5872:35:59"}},{"id":26339,"nodeType":"ErrorDefinition","src":"5994:28:59","nodes":[],"errorSelector":"dd466dd0","name":"DefaultRulingNotSet","nameLocation":"6000:19:59","parameters":{"id":26338,"nodeType":"ParameterList","parameters":[],"src":"6019:2:59"}},{"id":26341,"nodeType":"ErrorDefinition","src":"6206:30:59","nodes":[],"errorSelector":"3e668d03","name":"AShouldBeUnderTwo_128","nameLocation":"6212:21:59","parameters":{"id":26340,"nodeType":"ParameterList","parameters":[],"src":"6233:2:59"}},{"id":26343,"nodeType":"ErrorDefinition","src":"6241:29:59","nodes":[],"errorSelector":"70b7a2d9","name":"BShouldBeLessTwo_128","nameLocation":"6247:20:59","parameters":{"id":26342,"nodeType":"ParameterList","parameters":[],"src":"6267:2:59"}},{"id":26345,"nodeType":"ErrorDefinition","src":"6275:34:59","nodes":[],"errorSelector":"ff5b3cef","name":"AShouldBeUnderOrEqTwo_128","nameLocation":"6281:25:59","parameters":{"id":26344,"nodeType":"ParameterList","parameters":[],"src":"6306:2:59"}},{"id":26352,"nodeType":"EventDefinition","src":"6481:73:59","nodes":[],"anonymous":false,"eventSelector":"e5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b","name":"InitializedCV","nameLocation":"6487:13:59","parameters":{"id":26351,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26347,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6509:6:59","nodeType":"VariableDeclaration","scope":26352,"src":"6501:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26346,"name":"uint256","nodeType":"ElementaryTypeName","src":"6501:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26350,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6548:4:59","nodeType":"VariableDeclaration","scope":26352,"src":"6517:35:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$26255_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":26349,"nodeType":"UserDefinedTypeName","pathNode":{"id":26348,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["6517:30:59"],"nodeType":"IdentifierPath","referencedDeclaration":26255,"src":"6517:30:59"},"referencedDeclaration":26255,"src":"6517:30:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$26255_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"src":"6500:53:59"}},{"id":26359,"nodeType":"EventDefinition","src":"6559:74:59","nodes":[],"anonymous":false,"eventSelector":"b6a062fc5f19aa17637bf61ab001ce3e5ceb67a5bd51d9753281e41df94f3fd3","name":"InitializedCV2","nameLocation":"6565:14:59","parameters":{"id":26358,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26354,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6588:6:59","nodeType":"VariableDeclaration","scope":26359,"src":"6580:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26353,"name":"uint256","nodeType":"ElementaryTypeName","src":"6580:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26357,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6627:4:59","nodeType":"VariableDeclaration","scope":26359,"src":"6596:35:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":26356,"nodeType":"UserDefinedTypeName","pathNode":{"id":26355,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["6596:30:59"],"nodeType":"IdentifierPath","referencedDeclaration":26280,"src":"6596:30:59"},"referencedDeclaration":26280,"src":"6596:30:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"6579:53:59"}},{"id":26367,"nodeType":"EventDefinition","src":"6638:75:59","nodes":[],"anonymous":false,"eventSelector":"a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847","name":"Distributed","nameLocation":"6644:11:59","parameters":{"id":26366,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26361,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6664:10:59","nodeType":"VariableDeclaration","scope":26367,"src":"6656:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26360,"name":"uint256","nodeType":"ElementaryTypeName","src":"6656:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26363,"indexed":false,"mutability":"mutable","name":"beneficiary","nameLocation":"6684:11:59","nodeType":"VariableDeclaration","scope":26367,"src":"6676:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26362,"name":"address","nodeType":"ElementaryTypeName","src":"6676:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26365,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6705:6:59","nodeType":"VariableDeclaration","scope":26367,"src":"6697:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26364,"name":"uint256","nodeType":"ElementaryTypeName","src":"6697:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6655:57:59"}},{"id":26373,"nodeType":"EventDefinition","src":"6718:58:59","nodes":[],"anonymous":false,"eventSelector":"fcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b","name":"ProposalCreated","nameLocation":"6724:15:59","parameters":{"id":26372,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26369,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6748:6:59","nodeType":"VariableDeclaration","scope":26373,"src":"6740:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26368,"name":"uint256","nodeType":"ElementaryTypeName","src":"6740:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26371,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6764:10:59","nodeType":"VariableDeclaration","scope":26373,"src":"6756:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26370,"name":"uint256","nodeType":"ElementaryTypeName","src":"6756:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6739:36:59"}},{"id":26377,"nodeType":"EventDefinition","src":"6781:42:59","nodes":[],"anonymous":false,"eventSelector":"46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339","name":"PoolAmountIncreased","nameLocation":"6787:19:59","parameters":{"id":26376,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26375,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6815:6:59","nodeType":"VariableDeclaration","scope":26377,"src":"6807:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26374,"name":"uint256","nodeType":"ElementaryTypeName","src":"6807:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6806:16:59"}},{"id":26381,"nodeType":"EventDefinition","src":"6828:40:59","nodes":[],"anonymous":false,"eventSelector":"1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b","name":"PointsDeactivated","nameLocation":"6834:17:59","parameters":{"id":26380,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26379,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6860:6:59","nodeType":"VariableDeclaration","scope":26381,"src":"6852:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26378,"name":"address","nodeType":"ElementaryTypeName","src":"6852:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6851:16:59"}},{"id":26389,"nodeType":"EventDefinition","src":"6873:85:59","nodes":[],"anonymous":false,"eventSelector":"0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a","name":"PowerIncreased","nameLocation":"6879:14:59","parameters":{"id":26388,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26383,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6902:6:59","nodeType":"VariableDeclaration","scope":26389,"src":"6894:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26382,"name":"address","nodeType":"ElementaryTypeName","src":"6894:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26385,"indexed":false,"mutability":"mutable","name":"tokensStaked","nameLocation":"6918:12:59","nodeType":"VariableDeclaration","scope":26389,"src":"6910:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26384,"name":"uint256","nodeType":"ElementaryTypeName","src":"6910:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26387,"indexed":false,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"6940:16:59","nodeType":"VariableDeclaration","scope":26389,"src":"6932:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26386,"name":"uint256","nodeType":"ElementaryTypeName","src":"6932:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6893:64:59"}},{"id":26397,"nodeType":"EventDefinition","src":"6963:87:59","nodes":[],"anonymous":false,"eventSelector":"70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1","name":"PowerDecreased","nameLocation":"6969:14:59","parameters":{"id":26396,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26391,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6992:6:59","nodeType":"VariableDeclaration","scope":26397,"src":"6984:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26390,"name":"address","nodeType":"ElementaryTypeName","src":"6984:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26393,"indexed":false,"mutability":"mutable","name":"tokensUnStaked","nameLocation":"7008:14:59","nodeType":"VariableDeclaration","scope":26397,"src":"7000:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26392,"name":"uint256","nodeType":"ElementaryTypeName","src":"7000:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26395,"indexed":false,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"7032:16:59","nodeType":"VariableDeclaration","scope":26397,"src":"7024:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26394,"name":"uint256","nodeType":"ElementaryTypeName","src":"7024:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6983:66:59"}},{"id":26409,"nodeType":"EventDefinition","src":"7055:134:59","nodes":[],"anonymous":false,"eventSelector":"0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f","name":"SupportAdded","nameLocation":"7061:12:59","parameters":{"id":26408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26399,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"7091:4:59","nodeType":"VariableDeclaration","scope":26409,"src":"7083:12:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26398,"name":"address","nodeType":"ElementaryTypeName","src":"7083:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26401,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7105:10:59","nodeType":"VariableDeclaration","scope":26409,"src":"7097:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26400,"name":"uint256","nodeType":"ElementaryTypeName","src":"7097:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26403,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"7125:6:59","nodeType":"VariableDeclaration","scope":26409,"src":"7117:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26402,"name":"uint256","nodeType":"ElementaryTypeName","src":"7117:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26405,"indexed":false,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"7141:17:59","nodeType":"VariableDeclaration","scope":26409,"src":"7133:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26404,"name":"uint256","nodeType":"ElementaryTypeName","src":"7133:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26407,"indexed":false,"mutability":"mutable","name":"convictionLast","nameLocation":"7168:14:59","nodeType":"VariableDeclaration","scope":26409,"src":"7160:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26406,"name":"uint256","nodeType":"ElementaryTypeName","src":"7160:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7073:115:59"}},{"id":26414,"nodeType":"EventDefinition","src":"7194:41:59","nodes":[],"anonymous":false,"eventSelector":"ec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc","name":"CVParamsUpdated","nameLocation":"7200:15:59","parameters":{"id":26413,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26412,"indexed":false,"mutability":"mutable","name":"cvParams","nameLocation":"7225:8:59","nodeType":"VariableDeclaration","scope":26414,"src":"7216:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":26411,"nodeType":"UserDefinedTypeName","pathNode":{"id":26410,"name":"CVParams","nameLocations":["7216:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"7216:8:59"},"referencedDeclaration":26235,"src":"7216:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"7215:19:59"}},{"id":26418,"nodeType":"EventDefinition","src":"7240:49:59","nodes":[],"anonymous":false,"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"7246:15:59","parameters":{"id":26417,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26416,"indexed":false,"mutability":"mutable","name":"registryCommunity","nameLocation":"7270:17:59","nodeType":"VariableDeclaration","scope":26418,"src":"7262:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26415,"name":"address","nodeType":"ElementaryTypeName","src":"7262:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7261:27:59"}},{"id":26433,"nodeType":"EventDefinition","src":"7294:195:59","nodes":[],"anonymous":false,"eventSelector":"034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d","name":"ProposalDisputed","nameLocation":"7300:16:59","parameters":{"id":26432,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26421,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7338:10:59","nodeType":"VariableDeclaration","scope":26433,"src":"7326:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"},"typeName":{"id":26420,"nodeType":"UserDefinedTypeName","pathNode":{"id":26419,"name":"IArbitrator","nameLocations":["7326:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":33254,"src":"7326:11:59"},"referencedDeclaration":33254,"src":"7326:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":26423,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7366:10:59","nodeType":"VariableDeclaration","scope":26433,"src":"7358:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26422,"name":"uint256","nodeType":"ElementaryTypeName","src":"7358:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26425,"indexed":false,"mutability":"mutable","name":"disputeId","nameLocation":"7394:9:59","nodeType":"VariableDeclaration","scope":26433,"src":"7386:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26424,"name":"uint256","nodeType":"ElementaryTypeName","src":"7386:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26427,"indexed":false,"mutability":"mutable","name":"challenger","nameLocation":"7421:10:59","nodeType":"VariableDeclaration","scope":26433,"src":"7413:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26426,"name":"address","nodeType":"ElementaryTypeName","src":"7413:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26429,"indexed":false,"mutability":"mutable","name":"context","nameLocation":"7448:7:59","nodeType":"VariableDeclaration","scope":26433,"src":"7441:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":26428,"name":"string","nodeType":"ElementaryTypeName","src":"7441:6:59","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":26431,"indexed":false,"mutability":"mutable","name":"timestamp","nameLocation":"7473:9:59","nodeType":"VariableDeclaration","scope":26433,"src":"7465:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26430,"name":"uint256","nodeType":"ElementaryTypeName","src":"7465:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7316:172:59"}},{"id":26441,"nodeType":"EventDefinition","src":"7494:88:59","nodes":[],"anonymous":false,"eventSelector":"dc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f","name":"TribunaSafeRegistered","nameLocation":"7500:21:59","parameters":{"id":26440,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26435,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7530:8:59","nodeType":"VariableDeclaration","scope":26441,"src":"7522:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26434,"name":"address","nodeType":"ElementaryTypeName","src":"7522:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26437,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7548:10:59","nodeType":"VariableDeclaration","scope":26441,"src":"7540:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26436,"name":"address","nodeType":"ElementaryTypeName","src":"7540:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26439,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7568:12:59","nodeType":"VariableDeclaration","scope":26441,"src":"7560:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26438,"name":"address","nodeType":"ElementaryTypeName","src":"7560:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7521:60:59"}},{"id":26445,"nodeType":"EventDefinition","src":"7587:44:59","nodes":[],"anonymous":false,"eventSelector":"416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c","name":"ProposalCancelled","nameLocation":"7593:17:59","parameters":{"id":26444,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26443,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7619:10:59","nodeType":"VariableDeclaration","scope":26445,"src":"7611:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26442,"name":"uint256","nodeType":"ElementaryTypeName","src":"7611:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7610:20:59"}},{"id":26462,"nodeType":"EventDefinition","src":"7636:302:59","nodes":[],"anonymous":false,"eventSelector":"e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53","name":"ArbitrableConfigUpdated","nameLocation":"7642:23:59","parameters":{"id":26461,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26447,"indexed":false,"mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"7683:30:59","nodeType":"VariableDeclaration","scope":26462,"src":"7675:38:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26446,"name":"uint256","nodeType":"ElementaryTypeName","src":"7675:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26450,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7735:10:59","nodeType":"VariableDeclaration","scope":26462,"src":"7723:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"},"typeName":{"id":26449,"nodeType":"UserDefinedTypeName","pathNode":{"id":26448,"name":"IArbitrator","nameLocations":["7723:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":33254,"src":"7723:11:59"},"referencedDeclaration":33254,"src":"7723:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":26452,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7763:12:59","nodeType":"VariableDeclaration","scope":26462,"src":"7755:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26451,"name":"address","nodeType":"ElementaryTypeName","src":"7755:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26454,"indexed":false,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"7793:25:59","nodeType":"VariableDeclaration","scope":26462,"src":"7785:33:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26453,"name":"uint256","nodeType":"ElementaryTypeName","src":"7785:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26456,"indexed":false,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"7836:26:59","nodeType":"VariableDeclaration","scope":26462,"src":"7828:34:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26455,"name":"uint256","nodeType":"ElementaryTypeName","src":"7828:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26458,"indexed":false,"mutability":"mutable","name":"defaultRuling","nameLocation":"7880:13:59","nodeType":"VariableDeclaration","scope":26462,"src":"7872:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26457,"name":"uint256","nodeType":"ElementaryTypeName","src":"7872:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26460,"indexed":false,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"7911:20:59","nodeType":"VariableDeclaration","scope":26462,"src":"7903:28:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26459,"name":"uint256","nodeType":"ElementaryTypeName","src":"7903:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7665:272:59"}},{"id":26469,"nodeType":"EventDefinition","src":"7943:65:59","nodes":[],"anonymous":false,"eventSelector":"d418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e","name":"AllowlistMembersRemoved","nameLocation":"7949:23:59","parameters":{"id":26468,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26464,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"7981:6:59","nodeType":"VariableDeclaration","scope":26469,"src":"7973:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26463,"name":"uint256","nodeType":"ElementaryTypeName","src":"7973:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26467,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"7999:7:59","nodeType":"VariableDeclaration","scope":26469,"src":"7989:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":26465,"name":"address","nodeType":"ElementaryTypeName","src":"7989:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26466,"nodeType":"ArrayTypeName","src":"7989:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"7972:35:59"}},{"id":26476,"nodeType":"EventDefinition","src":"8013:63:59","nodes":[],"anonymous":false,"eventSelector":"7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a","name":"AllowlistMembersAdded","nameLocation":"8019:21:59","parameters":{"id":26475,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26471,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"8049:6:59","nodeType":"VariableDeclaration","scope":26476,"src":"8041:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26470,"name":"uint256","nodeType":"ElementaryTypeName","src":"8041:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26474,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"8067:7:59","nodeType":"VariableDeclaration","scope":26476,"src":"8057:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":26472,"name":"address","nodeType":"ElementaryTypeName","src":"8057:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26473,"nodeType":"ArrayTypeName","src":"8057:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"8040:35:59"}},{"id":26480,"nodeType":"EventDefinition","src":"8081:46:59","nodes":[],"anonymous":false,"eventSelector":"2667a0cd99dbc787d1d2596efe938cf43dfe83e8b8ddeb70e28007c09ff33485","name":"SybilScorerUpdated","nameLocation":"8087:18:59","parameters":{"id":26479,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26478,"indexed":false,"mutability":"mutable","name":"sybilScorer","nameLocation":"8114:11:59","nodeType":"VariableDeclaration","scope":26480,"src":"8106:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26477,"name":"address","nodeType":"ElementaryTypeName","src":"8106:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8105:21:59"}},{"id":26483,"nodeType":"VariableDeclaration","src":"8501:38:59","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"8524:7:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":26481,"name":"string","nodeType":"ElementaryTypeName","src":"8501:6:59","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":26482,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8534:5:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":26486,"nodeType":"VariableDeclaration","src":"8545:36:59","nodes":[],"constant":true,"functionSelector":"0f529ba2","mutability":"constant","name":"D","nameLocation":"8569:1:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26484,"name":"uint256","nodeType":"ElementaryTypeName","src":"8545:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030303030","id":26485,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8573:8:59","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"value":"10000000"},"visibility":"public"},{"id":26489,"nodeType":"VariableDeclaration","src":"8595:71:59","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"8621:7:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26487,"name":"uint256","nodeType":"ElementaryTypeName","src":"8595:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313030303030303030303030303030303030303030303030303030303030303030","id":26488,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8631:35:59","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"value":"0x100000000000000000000000000000000"},"visibility":"internal"},{"id":26492,"nodeType":"VariableDeclaration","src":"8682:70:59","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"8708:7:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26490,"name":"uint256","nodeType":"ElementaryTypeName","src":"8682:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830303030303030303030303030303030303030303030303030303030303030","id":26491,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8718:34:59","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"value":"0x80000000000000000000000000000000"},"visibility":"internal"},{"id":26495,"nodeType":"VariableDeclaration","src":"8768:54:59","nodes":[],"constant":true,"mutability":"constant","name":"TWO_64","nameLocation":"8794:6:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26493,"name":"uint256","nodeType":"ElementaryTypeName","src":"8768:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030303030303030303030303030","id":26494,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8803:19:59","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"value":"0x10000000000000000"},"visibility":"internal"},{"id":26498,"nodeType":"VariableDeclaration","src":"8837:49:59","nodes":[],"constant":true,"functionSelector":"406244d8","mutability":"constant","name":"MAX_STAKED_PROPOSALS","nameLocation":"8861:20:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26496,"name":"uint256","nodeType":"ElementaryTypeName","src":"8837:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130","id":26497,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8884:2:59","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"visibility":"public"},{"id":26501,"nodeType":"VariableDeclaration","src":"8972:42:59","nodes":[],"constant":true,"functionSelector":"626c47e8","mutability":"constant","name":"RULING_OPTIONS","nameLocation":"8996:14:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26499,"name":"uint256","nodeType":"ElementaryTypeName","src":"8972:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"33","id":26500,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9013:1:59","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"visibility":"public"},{"id":26504,"nodeType":"VariableDeclaration","src":"9020:54:59","nodes":[],"constant":true,"functionSelector":"f5be3f7c","mutability":"constant","name":"DISPUTE_COOLDOWN_SEC","nameLocation":"9044:20:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26502,"name":"uint256","nodeType":"ElementaryTypeName","src":"9020:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"32","id":26503,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9067:7:59","subdenomination":"hours","typeDescriptions":{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"},"value":"2"},"visibility":"public"},{"id":26506,"nodeType":"VariableDeclaration","src":"9081:40:59","nodes":[],"constant":false,"mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"9098:23:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26505,"name":"address","nodeType":"ElementaryTypeName","src":"9081:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":26508,"nodeType":"VariableDeclaration","src":"9169:47:59","nodes":[],"constant":false,"mutability":"mutable","name":"surpressStateMutabilityWarning","nameLocation":"9186:30:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26507,"name":"uint256","nodeType":"ElementaryTypeName","src":"9169:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":26510,"nodeType":"VariableDeclaration","src":"9260:25:59","nodes":[],"constant":false,"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"9275:10:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26509,"name":"uint256","nodeType":"ElementaryTypeName","src":"9260:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":26512,"nodeType":"VariableDeclaration","src":"9291:26:59","nodes":[],"constant":false,"functionSelector":"a28889e1","mutability":"mutable","name":"disputeCount","nameLocation":"9305:12:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":26511,"name":"uint64","nodeType":"ElementaryTypeName","src":"9291:6:59","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"public"},{"id":26514,"nodeType":"VariableDeclaration","src":"9323:30:59","nodes":[],"constant":false,"functionSelector":"0c0512e9","mutability":"mutable","name":"proposalCounter","nameLocation":"9338:15:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26513,"name":"uint256","nodeType":"ElementaryTypeName","src":"9323:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":26516,"nodeType":"VariableDeclaration","src":"9359:45:59","nodes":[],"constant":false,"functionSelector":"125fd1d9","mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"9374:30:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26515,"name":"uint256","nodeType":"ElementaryTypeName","src":"9359:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":26518,"nodeType":"VariableDeclaration","src":"9411:26:59","nodes":[],"constant":false,"functionSelector":"817b1cd2","mutability":"mutable","name":"totalStaked","nameLocation":"9426:11:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26517,"name":"uint256","nodeType":"ElementaryTypeName","src":"9411:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":26520,"nodeType":"VariableDeclaration","src":"9443:35:59","nodes":[],"constant":false,"functionSelector":"aba9ffee","mutability":"mutable","name":"totalPointsActivated","nameLocation":"9458:20:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26519,"name":"uint256","nodeType":"ElementaryTypeName","src":"9443:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":26523,"nodeType":"VariableDeclaration","src":"9485:24:59","nodes":[],"constant":false,"functionSelector":"2506b870","mutability":"mutable","name":"cvParams","nameLocation":"9501:8:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams"},"typeName":{"id":26522,"nodeType":"UserDefinedTypeName","pathNode":{"id":26521,"name":"CVParams","nameLocations":["9485:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"9485:8:59"},"referencedDeclaration":26235,"src":"9485:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"public"},{"id":26526,"nodeType":"VariableDeclaration","src":"9556:32:59","nodes":[],"constant":false,"functionSelector":"351d9f96","mutability":"mutable","name":"proposalType","nameLocation":"9576:12:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"},"typeName":{"id":26525,"nodeType":"UserDefinedTypeName","pathNode":{"id":26524,"name":"ProposalType","nameLocations":["9556:12:59"],"nodeType":"IdentifierPath","referencedDeclaration":26138,"src":"9556:12:59"},"referencedDeclaration":26138,"src":"9556:12:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"visibility":"public"},{"id":26529,"nodeType":"VariableDeclaration","src":"9647:30:59","nodes":[],"constant":false,"functionSelector":"2dbd6fdd","mutability":"mutable","name":"pointSystem","nameLocation":"9666:11:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"typeName":{"id":26528,"nodeType":"UserDefinedTypeName","pathNode":{"id":26527,"name":"PointSystem","nameLocations":["9647:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":26143,"src":"9647:11:59"},"referencedDeclaration":26143,"src":"9647:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"visibility":"public"},{"id":26532,"nodeType":"VariableDeclaration","src":"9683:36:59","nodes":[],"constant":false,"functionSelector":"a47ff7e5","mutability":"mutable","name":"pointConfig","nameLocation":"9708:11:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage","typeString":"struct PointSystemConfig"},"typeName":{"id":26531,"nodeType":"UserDefinedTypeName","pathNode":{"id":26530,"name":"PointSystemConfig","nameLocations":["9683:17:59"],"nodeType":"IdentifierPath","referencedDeclaration":26212,"src":"9683:17:59"},"referencedDeclaration":26212,"src":"9683:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"public"},{"id":26535,"nodeType":"VariableDeclaration","src":"9752:46:59","nodes":[],"constant":false,"functionSelector":"6003e414","mutability":"mutable","name":"registryCommunity","nameLocation":"9781:17:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":26534,"nodeType":"UserDefinedTypeName","pathNode":{"id":26533,"name":"RegistryCommunityV0_0","nameLocations":["9752:21:59"],"nodeType":"IdentifierPath","referencedDeclaration":33072,"src":"9752:21:59"},"referencedDeclaration":33072,"src":"9752:21:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"visibility":"public"},{"id":26538,"nodeType":"VariableDeclaration","src":"9805:39:59","nodes":[],"constant":false,"functionSelector":"0bece79c","mutability":"mutable","name":"collateralVault","nameLocation":"9829:15:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"},"typeName":{"id":26537,"nodeType":"UserDefinedTypeName","pathNode":{"id":26536,"name":"ICollateralVault","nameLocations":["9805:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":33287,"src":"9805:16:59"},"referencedDeclaration":33287,"src":"9805:16:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"visibility":"public"},{"id":26541,"nodeType":"VariableDeclaration","src":"9850:31:59","nodes":[],"constant":false,"functionSelector":"b6c61f31","mutability":"mutable","name":"sybilScorer","nameLocation":"9870:11:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"},"typeName":{"id":26540,"nodeType":"UserDefinedTypeName","pathNode":{"id":26539,"name":"ISybilScorer","nameLocations":["9850:12:59"],"nodeType":"IdentifierPath","referencedDeclaration":30228,"src":"9850:12:59"},"referencedDeclaration":30228,"src":"9850:12:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"visibility":"public"},{"id":26546,"nodeType":"VariableDeclaration","src":"9948:45:59","nodes":[],"constant":false,"functionSelector":"013cf08b","mutability":"mutable","name":"proposals","nameLocation":"9984:9:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"typeName":{"id":26545,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":26542,"name":"uint256","nodeType":"ElementaryTypeName","src":"9956:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9948:28:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":26544,"nodeType":"UserDefinedTypeName","pathNode":{"id":26543,"name":"Proposal","nameLocations":["9967:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"9967:8:59"},"referencedDeclaration":26204,"src":"9967:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}}},"visibility":"public"},{"id":26550,"nodeType":"VariableDeclaration","src":"10049:53:59","nodes":[],"constant":false,"functionSelector":"5db64b99","mutability":"mutable","name":"totalVoterStakePct","nameLocation":"10084:18:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":26549,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":26547,"name":"address","nodeType":"ElementaryTypeName","src":"10057:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"10049:27:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":26548,"name":"uint256","nodeType":"ElementaryTypeName","src":"10068:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":26555,"nodeType":"VariableDeclaration","src":"10140:57:59","nodes":[],"constant":false,"functionSelector":"868c57b8","mutability":"mutable","name":"voterStakedProposals","nameLocation":"10177:20:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"typeName":{"id":26554,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":26551,"name":"address","nodeType":"ElementaryTypeName","src":"10148:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"10140:29:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"baseType":{"id":26552,"name":"uint256","nodeType":"ElementaryTypeName","src":"10159:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":26553,"nodeType":"ArrayTypeName","src":"10159:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"visibility":"public"},{"id":26559,"nodeType":"VariableDeclaration","src":"10235:56:59","nodes":[],"constant":false,"functionSelector":"255ffb38","mutability":"mutable","name":"disputeIdToProposalId","nameLocation":"10270:21:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"typeName":{"id":26558,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":26556,"name":"uint256","nodeType":"ElementaryTypeName","src":"10243:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"10235:27:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":26557,"name":"uint256","nodeType":"ElementaryTypeName","src":"10254:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":26564,"nodeType":"VariableDeclaration","src":"10297:61:59","nodes":[],"constant":false,"functionSelector":"41bb7605","mutability":"mutable","name":"arbitrableConfigs","nameLocation":"10341:17:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"typeName":{"id":26563,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":26560,"name":"uint256","nodeType":"ElementaryTypeName","src":"10305:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"10297:36:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":26562,"nodeType":"UserDefinedTypeName","pathNode":{"id":26561,"name":"ArbitrableConfig","nameLocations":["10316:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"10316:16:59"},"referencedDeclaration":26226,"src":"10316:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}}},"visibility":"public"},{"id":26588,"nodeType":"FunctionDefinition","src":"10610:222:59","nodes":[],"body":{"id":26587,"nodeType":"Block","src":"10717:115:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":26578,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26566,"src":"10738:5:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"43565374726174656779","id":26579,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10745:12:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},"value":"CVStrategy"},{"id":26580,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26570,"src":"10759:5:59","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":26575,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10727:5:59","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$30151_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":26577,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10733:4:59","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":25517,"src":"10727:10:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (address,string memory,address)"}},"id":26581,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10727:38:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26582,"nodeType":"ExpressionStatement","src":"10727:38:59"},{"expression":{"id":26585,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26583,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26506,"src":"10775:23:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":26584,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26568,"src":"10801:24:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10775:50:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26586,"nodeType":"ExpressionStatement","src":"10775:50:59"}]},"functionSelector":"184b9559","implemented":true,"kind":"function","modifiers":[{"id":26573,"kind":"modifierInvocation","modifierName":{"id":26572,"name":"initializer","nameLocations":["10705:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":14193,"src":"10705:11:59"},"nodeType":"ModifierInvocation","src":"10705:11:59"}],"name":"init","nameLocation":"10619:4:59","parameters":{"id":26571,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26566,"mutability":"mutable","name":"_allo","nameLocation":"10632:5:59","nodeType":"VariableDeclaration","scope":26588,"src":"10624:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26565,"name":"address","nodeType":"ElementaryTypeName","src":"10624:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26568,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10647:24:59","nodeType":"VariableDeclaration","scope":26588,"src":"10639:32:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26567,"name":"address","nodeType":"ElementaryTypeName","src":"10639:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":26570,"mutability":"mutable","name":"owner","nameLocation":"10681:5:59","nodeType":"VariableDeclaration","scope":26588,"src":"10673:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26569,"name":"address","nodeType":"ElementaryTypeName","src":"10673:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10623:64:59"},"returnParameters":{"id":26574,"nodeType":"ParameterList","parameters":[],"src":"10717:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":26634,"nodeType":"FunctionDefinition","src":"10838:826:59","nodes":[],"body":{"id":26633,"nodeType":"Block","src":"10914:750:59","nodes":[],"statements":[{"expression":{"id":26603,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":26596,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"10982:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26598,"indexExpression":{"id":26597,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11000:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10982:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26599,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"11032:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"10982:60:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":26601,"name":"newSafeArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26590,"src":"11057:17:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":26600,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33254,"src":"11045:11:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IArbitrator_$33254_$","typeString":"type(contract IArbitrator)"}},"id":26602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11045:30:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"src":"10982:93:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"id":26604,"nodeType":"ExpressionStatement","src":"10982:93:59"},{"eventCall":{"arguments":[{"id":26606,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11127:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":26607,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"11171:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26609,"indexExpression":{"id":26608,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11189:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11171:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26610,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11221:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"11171:60:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},{"expression":{"baseExpression":{"id":26611,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"11245:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26613,"indexExpression":{"id":26612,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11263:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11245:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26614,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11295:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"11245:62:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":26615,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"11321:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26617,"indexExpression":{"id":26616,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11339:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11321:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26618,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11371:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"11321:75:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":26619,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"11410:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26621,"indexExpression":{"id":26620,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11428:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11410:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26622,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11460:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"11410:76:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":26623,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"11500:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26625,"indexExpression":{"id":26624,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11518:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11500:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26626,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11550:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"11500:63:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":26627,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"11577:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":26629,"indexExpression":{"id":26628,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"11595:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11577:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":26630,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11627:20:59","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":26225,"src":"11577:70:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$33254","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":26605,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26462,"src":"11090:23:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$33254_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":26631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11090:567:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26632,"nodeType":"EmitStatement","src":"11085:572:59"}]},"functionSelector":"f4fe2556","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":26593,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10911:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":26594,"kind":"modifierInvocation","modifierName":{"id":26592,"name":"reinitializer","nameLocations":["10897:13:59"],"nodeType":"IdentifierPath","referencedDeclaration":14226,"src":"10897:13:59"},"nodeType":"ModifierInvocation","src":"10897:16:59"}],"name":"init2","nameLocation":"10847:5:59","parameters":{"id":26591,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26590,"mutability":"mutable","name":"newSafeArbitrator","nameLocation":"10861:17:59","nodeType":"VariableDeclaration","scope":26634,"src":"10853:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26589,"name":"address","nodeType":"ElementaryTypeName","src":"10853:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10852:27:59"},"returnParameters":{"id":26595,"nodeType":"ParameterList","parameters":[],"src":"10914:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":26742,"nodeType":"FunctionDefinition","src":"11670:1036:59","nodes":[],"body":{"id":26741,"nodeType":"Block","src":"11754:952:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":26645,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26636,"src":"11784:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":26644,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25653,"src":"11764:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":26646,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11764:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26647,"nodeType":"ExpressionStatement","src":"11764:28:59"},{"expression":{"id":26657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26648,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"11803:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":26652,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26506,"src":"11856:23:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":26654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"11881:12:59","subExpression":{"id":26653,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26510,"src":"11881:10:59","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":26650,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":706,"src":"11838:5:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$706_$","typeString":"type(library Clone)"}},"id":26651,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11844:11:59","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":705,"src":"11838:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":26655,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11838:56:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":26649,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33287,"src":"11821:16:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$33287_$","typeString":"type(contract ICollateralVault)"}},"id":26656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11821:74:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"src":"11803:92:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":26658,"nodeType":"ExpressionStatement","src":"11803:92:59"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":26659,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"11905:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":26661,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11921:10:59","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":33259,"src":"11905:26:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":26662,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11905:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26663,"nodeType":"ExpressionStatement","src":"11905:28:59"},{"assignments":[26666],"declarations":[{"constant":false,"id":26666,"mutability":"mutable","name":"ip","nameLocation":"11982:2:59","nodeType":"VariableDeclaration","scope":26741,"src":"11944:40:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":26665,"nodeType":"UserDefinedTypeName","pathNode":{"id":26664,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["11944:30:59"],"nodeType":"IdentifierPath","referencedDeclaration":26280,"src":"11944:30:59"},"referencedDeclaration":26280,"src":"11944:30:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":26673,"initialValue":{"arguments":[{"id":26669,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26638,"src":"11998:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":26670,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26280,"src":"12006:30:59","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$26280_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}}],"id":26671,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"12005:32:59","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$26280_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_$26280_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}],"expression":{"id":26667,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"11987:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":26668,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11991:6:59","memberName":"decode","nodeType":"MemberAccess","src":"11987:10:59","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":26672,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11987:51:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"11944:94:59"},{"expression":{"id":26679,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26674,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"12206:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":26676,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12248:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26677,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12251:17:59","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":26272,"src":"12248:20:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":26675,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33072,"src":"12226:21:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$33072_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":26678,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12226:43:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"src":"12206:63:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":26680,"nodeType":"ExpressionStatement","src":"12206:63:59"},{"expression":{"id":26684,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26681,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26526,"src":"12280:12:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":26682,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12295:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26683,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12298:12:59","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":26261,"src":"12295:15:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"src":"12280:30:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"id":26685,"nodeType":"ExpressionStatement","src":"12280:30:59"},{"expression":{"id":26689,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26686,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"12320:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":26687,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12334:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26688,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12337:11:59","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":26264,"src":"12334:14:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"12320:28:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"id":26690,"nodeType":"ExpressionStatement","src":"12320:28:59"},{"expression":{"id":26694,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26691,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26532,"src":"12358:11:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":26692,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12372:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26693,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12375:11:59","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":26267,"src":"12372:14:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"12358:28:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage","typeString":"struct PointSystemConfig storage ref"}},"id":26695,"nodeType":"ExpressionStatement","src":"12358:28:59"},{"expression":{"id":26701,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26696,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"12396:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":26698,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12423:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26699,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12426:11:59","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":26274,"src":"12423:14:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":26697,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30228,"src":"12410:12:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$30228_$","typeString":"type(contract ISybilScorer)"}},"id":26700,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12410:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"src":"12396:42:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"id":26702,"nodeType":"ExpressionStatement","src":"12396:42:59"},{"eventCall":{"arguments":[{"id":26704,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26636,"src":"12469:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":26705,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12478:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"id":26703,"name":"InitializedCV2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26359,"src":"12454:14:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_1 memory)"}},"id":26706,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12454:27:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26707,"nodeType":"EmitStatement","src":"12449:32:59"},{"expression":{"arguments":[{"expression":{"id":26709,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12507:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12510:16:59","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":26270,"src":"12507:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":26711,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12528:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26712,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12531:8:59","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":26258,"src":"12528:11:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}},{"arguments":[{"hexValue":"30","id":26716,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12555:1:59","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":26715,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12541:13:59","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":26713,"name":"address","nodeType":"ElementaryTypeName","src":"12545:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26714,"nodeType":"ArrayTypeName","src":"12545:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":26717,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12541:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"arguments":[{"hexValue":"30","id":26721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12573:1:59","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":26720,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12559:13:59","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":26718,"name":"address","nodeType":"ElementaryTypeName","src":"12563:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26719,"nodeType":"ArrayTypeName","src":"12563:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":26722,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12559:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$26235_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":26708,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[29257,29398,29436],"referencedDeclaration":29398,"src":"12492:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$26226_memory_ptr_$_t_struct$_CVParams_$26235_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":26723,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12492:84:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26724,"nodeType":"ExpressionStatement","src":"12492:84:59"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":26733,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":26727,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"12598:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}],"id":26726,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12590:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26725,"name":"address","nodeType":"ElementaryTypeName","src":"12590:7:59","typeDescriptions":{}}},"id":26728,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12590:20:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"307830","id":26731,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12622:3:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0x0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":26730,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12614:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26729,"name":"address","nodeType":"ElementaryTypeName","src":"12614:7:59","typeDescriptions":{}}},"id":26732,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12614:12:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12590:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26740,"nodeType":"IfStatement","src":"12586:114:59","trueBody":{"id":26739,"nodeType":"Block","src":"12628:72:59","statements":[{"expression":{"arguments":[{"expression":{"id":26735,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26666,"src":"12665:2:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":26736,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12668:20:59","memberName":"sybilScorerThreshold","nodeType":"MemberAccess","referencedDeclaration":26276,"src":"12665:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":26734,"name":"_registerToSybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30146,"src":"12642:22:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":26737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12642:47:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26738,"nodeType":"ExpressionStatement","src":"12642:47:59"}]}}]},"baseFunctions":[643],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":26642,"kind":"modifierInvocation","modifierName":{"id":26641,"name":"onlyAllo","nameLocations":["11745:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":25525,"src":"11745:8:59"},"nodeType":"ModifierInvocation","src":"11745:8:59"}],"name":"initialize","nameLocation":"11679:10:59","overrides":{"id":26640,"nodeType":"OverrideSpecifier","overrides":[],"src":"11736:8:59"},"parameters":{"id":26639,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26636,"mutability":"mutable","name":"_poolId","nameLocation":"11698:7:59","nodeType":"VariableDeclaration","scope":26742,"src":"11690:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26635,"name":"uint256","nodeType":"ElementaryTypeName","src":"11690:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26638,"mutability":"mutable","name":"_data","nameLocation":"11720:5:59","nodeType":"VariableDeclaration","scope":26742,"src":"11707:18:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":26637,"name":"bytes","nodeType":"ElementaryTypeName","src":"11707:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"11689:37:59"},"returnParameters":{"id":26643,"nodeType":"ParameterList","parameters":[],"src":"11754:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":26746,"nodeType":"FunctionDefinition","src":"12877:83:59","nodes":[],"body":{"id":26745,"nodeType":"Block","src":"12905:55:59","nodes":[],"statements":[]},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":26743,"nodeType":"ParameterList","parameters":[],"src":"12885:2:59"},"returnParameters":{"id":26744,"nodeType":"ParameterList","parameters":[],"src":"12905:0:59"},"scope":30151,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":26750,"nodeType":"FunctionDefinition","src":"12966:135:59","nodes":[],"body":{"id":26749,"nodeType":"Block","src":"12993:108:59","nodes":[],"statements":[]},"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":26747,"nodeType":"ParameterList","parameters":[],"src":"12973:2:59"},"returnParameters":{"id":26748,"nodeType":"ParameterList","parameters":[],"src":"12993:0:59"},"scope":30151,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":26772,"nodeType":"FunctionDefinition","src":"13107:210:59","nodes":[],"body":{"id":26771,"nodeType":"Block","src":"13206:111:59","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":26769,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"id":26764,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":26759,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26752,"src":"13223:11:59","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":26761,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26134,"src":"13243:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}],"id":26760,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"13238:4:59","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":26762,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13238:20:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$26134","typeString":"type(contract IPointStrategy)"}},"id":26763,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13259:11:59","memberName":"interfaceId","nodeType":"MemberAccess","src":"13238:32:59","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"src":"13223:47:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":26767,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26752,"src":"13298:11:59","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":26765,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"13274:5:59","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$30151_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":26766,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13280:17:59","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":18549,"src":"13274:23:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes4_$returns$_t_bool_$","typeString":"function (bytes4) view returns (bool)"}},"id":26768,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13274:36:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"13223:87:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":26758,"id":26770,"nodeType":"Return","src":"13216:94:59"}]},"baseFunctions":[18549],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"13116:17:59","overrides":{"id":26755,"nodeType":"OverrideSpecifier","overrides":[{"id":26754,"name":"ERC165","nameLocations":["13183:6:59"],"nodeType":"IdentifierPath","referencedDeclaration":18550,"src":"13183:6:59"}],"src":"13174:16:59"},"parameters":{"id":26753,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26752,"mutability":"mutable","name":"interfaceId","nameLocation":"13141:11:59","nodeType":"VariableDeclaration","scope":26772,"src":"13134:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":26751,"name":"bytes4","nodeType":"ElementaryTypeName","src":"13134:6:59","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"13133:20:59"},"returnParameters":{"id":26758,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26757,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":26772,"src":"13200:4:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":26756,"name":"bool","nodeType":"ElementaryTypeName","src":"13200:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13199:6:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":26788,"nodeType":"FunctionDefinition","src":"13488:404:59","nodes":[],"body":{"id":26787,"nodeType":"Block","src":"13556:336:59","nodes":[],"statements":[{"condition":{"id":26781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"13783:36:59","subExpression":{"arguments":[{"id":26779,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26774,"src":"13811:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":26777,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"13784:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":26778,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13802:8:59","memberName":"isMember","nodeType":"MemberAccess","referencedDeclaration":32515,"src":"13784:26:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":26780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13784:35:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26786,"nodeType":"IfStatement","src":"13779:93:59","trueBody":{"id":26785,"nodeType":"Block","src":"13821:51:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":26782,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26291,"src":"13842:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":26783,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13842:19:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26784,"nodeType":"RevertStatement","src":"13835:26:59"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkSenderIsMember","nameLocation":"13497:19:59","parameters":{"id":26775,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26774,"mutability":"mutable","name":"_sender","nameLocation":"13525:7:59","nodeType":"VariableDeclaration","scope":26788,"src":"13517:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26773,"name":"address","nodeType":"ElementaryTypeName","src":"13517:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13516:17:59"},"returnParameters":{"id":26776,"nodeType":"ParameterList","parameters":[],"src":"13556:0:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":26804,"nodeType":"FunctionDefinition","src":"13898:171:59","nodes":[],"body":{"id":26803,"nodeType":"Block","src":"13953:116:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":26797,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":26791,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"13967:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":26792,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13971:6:59","memberName":"sender","nodeType":"MemberAccess","src":"13967:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":26795,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"13989:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}],"id":26794,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13981:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26793,"name":"address","nodeType":"ElementaryTypeName","src":"13981:7:59","typeDescriptions":{}}},"id":26796,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13981:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13967:40:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26802,"nodeType":"IfStatement","src":"13963:100:59","trueBody":{"id":26801,"nodeType":"Block","src":"14009:54:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":26798,"name":"OnlyCommunityAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26321,"src":"14030:20:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":26799,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14030:22:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26800,"nodeType":"RevertStatement","src":"14023:29:59"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryCommunity","nameLocation":"13907:21:59","parameters":{"id":26789,"nodeType":"ParameterList","parameters":[],"src":"13928:2:59"},"returnParameters":{"id":26790,"nodeType":"ParameterList","parameters":[],"src":"13953:0:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":26820,"nodeType":"FunctionDefinition","src":"14075:141:59","nodes":[],"body":{"id":26819,"nodeType":"Block","src":"14143:73:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":26814,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":26809,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26806,"src":"14157:8:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":26812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14177:1:59","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":26811,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14169:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26810,"name":"address","nodeType":"ElementaryTypeName","src":"14169:7:59","typeDescriptions":{}}},"id":26813,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14169:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14157:22:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26818,"nodeType":"IfStatement","src":"14153:56:59","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":26815,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26297,"src":"14188:19:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":26816,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14188:21:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26817,"nodeType":"RevertStatement","src":"14181:28:59"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"14084:18:59","parameters":{"id":26807,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26806,"mutability":"mutable","name":"_address","nameLocation":"14111:8:59","nodeType":"VariableDeclaration","scope":26820,"src":"14103:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26805,"name":"address","nodeType":"ElementaryTypeName","src":"14103:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14102:18:59"},"returnParameters":{"id":26808,"nodeType":"ParameterList","parameters":[],"src":"14143:0:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":26838,"nodeType":"FunctionDefinition","src":"14222:174:59","nodes":[],"body":{"id":26837,"nodeType":"Block","src":"14271:125:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":26831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":26823,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"14285:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":26824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14289:6:59","memberName":"sender","nodeType":"MemberAccess","src":"14285:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":26827,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"14307:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":26828,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14325:11:59","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":31136,"src":"14307:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$33380_$","typeString":"function () view external returns (contract ISafe)"}},"id":26829,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14307:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":26826,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14299:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26825,"name":"address","nodeType":"ElementaryTypeName","src":"14299:7:59","typeDescriptions":{}}},"id":26830,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14299:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14285:54:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26836,"nodeType":"IfStatement","src":"14281:109:59","trueBody":{"id":26835,"nodeType":"Block","src":"14341:49:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":26832,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26323,"src":"14362:15:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":26833,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14362:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26834,"nodeType":"RevertStatement","src":"14355:24:59"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"14231:15:59","parameters":{"id":26821,"nodeType":"ParameterList","parameters":[],"src":"14246:2:59"},"returnParameters":{"id":26822,"nodeType":"ParameterList","parameters":[],"src":"14271:0:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":26895,"nodeType":"FunctionDefinition","src":"14402:499:59","nodes":[],"body":{"id":26894,"nodeType":"Block","src":"14473:428:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":26853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":26847,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"14495:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}],"id":26846,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14487:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26845,"name":"address","nodeType":"ElementaryTypeName","src":"14487:7:59","typeDescriptions":{}}},"id":26848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14487:20:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":26851,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14519:1:59","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":26850,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14511:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26849,"name":"address","nodeType":"ElementaryTypeName","src":"14511:7:59","typeDescriptions":{}}},"id":26852,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14511:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14487:34:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26884,"nodeType":"IfStatement","src":"14483:345:59","trueBody":{"id":26883,"nodeType":"Block","src":"14523:305:59","statements":[{"assignments":[26855],"declarations":[{"constant":false,"id":26855,"mutability":"mutable","name":"allowlistRole","nameLocation":"14545:13:59","nodeType":"VariableDeclaration","scope":26883,"src":"14537:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":26854,"name":"bytes32","nodeType":"ElementaryTypeName","src":"14537:7:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":26863,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":26859,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14588:11:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":26860,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"14601:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":26857,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14571:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":26858,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14575:12:59","memberName":"encodePacked","nodeType":"MemberAccess","src":"14571:16:59","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":26861,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14571:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":26856,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14561:9:59","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":26862,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14561:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"14537:72:59"},{"condition":{"arguments":[{"id":26866,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26855,"src":"14653:13:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":26869,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14676:1:59","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":26868,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14668:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26867,"name":"address","nodeType":"ElementaryTypeName","src":"14668:7:59","typeDescriptions":{}}},"id":26870,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14668:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":26864,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"14627:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":26865,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14645:7:59","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":13595,"src":"14627:25:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":26871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14627:52:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":26881,"nodeType":"Block","src":"14731:87:59","statements":[{"expression":{"arguments":[{"id":26877,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26855,"src":"14782:13:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":26878,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26840,"src":"14797:5:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":26875,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"14756:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":26876,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14774:7:59","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":13595,"src":"14756:25:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":26879,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14756:47:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":26844,"id":26880,"nodeType":"Return","src":"14749:54:59"}]},"id":26882,"nodeType":"IfStatement","src":"14623:195:59","trueBody":{"id":26874,"nodeType":"Block","src":"14681:44:59","statements":[{"expression":{"hexValue":"74727565","id":26872,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"14706:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":26844,"id":26873,"nodeType":"Return","src":"14699:11:59"}]}}]}},{"expression":{"arguments":[{"id":26887,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26840,"src":"14873:5:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":26890,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"14888:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":26889,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14880:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26888,"name":"address","nodeType":"ElementaryTypeName","src":"14880:7:59","typeDescriptions":{}}},"id":26891,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14880:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":26885,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"14844:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"id":26886,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14856:16:59","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":30201,"src":"14844:28:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":26892,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14844:50:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":26844,"id":26893,"nodeType":"Return","src":"14837:57:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"14411:17:59","parameters":{"id":26841,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26840,"mutability":"mutable","name":"_user","nameLocation":"14437:5:59","nodeType":"VariableDeclaration","scope":26895,"src":"14429:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26839,"name":"address","nodeType":"ElementaryTypeName","src":"14429:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14428:15:59"},"returnParameters":{"id":26844,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26843,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":26895,"src":"14467:4:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":26842,"name":"bool","nodeType":"ElementaryTypeName","src":"14467:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"14466:6:59"},"scope":30151,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":26943,"nodeType":"FunctionDefinition","src":"14907:666:59","nodes":[],"body":{"id":26942,"nodeType":"Block","src":"15013:560:59","nodes":[],"statements":[{"assignments":[26904],"declarations":[{"constant":false,"id":26904,"mutability":"mutable","name":"p","nameLocation":"15040:1:59","nodeType":"VariableDeclaration","scope":26942,"src":"15023:18:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":26903,"nodeType":"UserDefinedTypeName","pathNode":{"id":26902,"name":"Proposal","nameLocations":["15023:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"15023:8:59"},"referencedDeclaration":26204,"src":"15023:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":26908,"initialValue":{"baseExpression":{"id":26905,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"15044:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":26907,"indexExpression":{"id":26906,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26897,"src":"15054:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15044:22:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15023:43:59"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":26936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":26911,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":26909,"name":"deltaSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26899,"src":"15093:12:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":26910,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15108:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15093:16:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":26934,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":26928,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":26922,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":26916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":26912,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26904,"src":"15151:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":26913,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15153:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"15151:16:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":26914,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"15171:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":26915,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15186:8:59","memberName":"Inactive","nodeType":"MemberAccess","referencedDeclaration":26156,"src":"15171:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"15151:43:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":26921,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":26917,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26904,"src":"15198:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":26918,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15200:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"15198:16:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":26919,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"15218:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":26920,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15233:9:59","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":26159,"src":"15218:24:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"15198:44:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15151:91:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":26927,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":26923,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26904,"src":"15270:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":26924,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15272:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"15270:16:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":26925,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"15290:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":26926,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15305:8:59","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":26160,"src":"15290:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"15270:43:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15151:162:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":26933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":26929,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26904,"src":"15317:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":26930,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15319:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"15317:16:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":26931,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"15337:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":26932,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15352:8:59","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":26162,"src":"15337:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"15317:43:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15151:209:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":26935,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"15129:249:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15093:285:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":26941,"nodeType":"IfStatement","src":"15076:491:59","trueBody":{"id":26940,"nodeType":"Block","src":"15389:178:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":26937,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"15486:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":26938,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15486:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26939,"nodeType":"ExpressionStatement","src":"15486:8:59"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkProposalAllocationValidity","nameLocation":"14916:32:59","parameters":{"id":26900,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26897,"mutability":"mutable","name":"_proposalId","nameLocation":"14957:11:59","nodeType":"VariableDeclaration","scope":26943,"src":"14949:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":26896,"name":"uint256","nodeType":"ElementaryTypeName","src":"14949:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":26899,"mutability":"mutable","name":"deltaSupport","nameLocation":"14977:12:59","nodeType":"VariableDeclaration","scope":26943,"src":"14970:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":26898,"name":"int256","nodeType":"ElementaryTypeName","src":"14970:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"14948:42:59"},"returnParameters":{"id":26901,"nodeType":"ParameterList","parameters":[],"src":"15013:0:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":26955,"nodeType":"FunctionDefinition","src":"15579:132:59","nodes":[],"body":{"id":26954,"nodeType":"Block","src":"15660:51:59","nodes":[],"statements":[{"expression":{"id":26952,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":26950,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26506,"src":"15670:23:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":26951,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26945,"src":"15696:8:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15670:34:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":26953,"nodeType":"ExpressionStatement","src":"15670:34:59"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":26948,"kind":"modifierInvocation","modifierName":{"id":26947,"name":"onlyOwner","nameLocations":["15650:9:59"],"nodeType":"IdentifierPath","referencedDeclaration":13956,"src":"15650:9:59"},"nodeType":"ModifierInvocation","src":"15650:9:59"}],"name":"setCollateralVaultTemplate","nameLocation":"15588:26:59","parameters":{"id":26946,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26945,"mutability":"mutable","name":"template","nameLocation":"15623:8:59","nodeType":"VariableDeclaration","scope":26955,"src":"15615:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26944,"name":"address","nodeType":"ElementaryTypeName","src":"15615:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15614:18:59"},"returnParameters":{"id":26949,"nodeType":"ParameterList","parameters":[],"src":"15660:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":27159,"nodeType":"FunctionDefinition","src":"16037:2679:59","nodes":[],"body":{"id":27158,"nodeType":"Block","src":"16146:2570:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":26966,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26959,"src":"16176:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":26965,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26788,"src":"16156:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":26967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16156:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26968,"nodeType":"ExpressionStatement","src":"16156:28:59"},{"expression":{"arguments":[{"arguments":[{"id":26974,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16240:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":26973,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16232:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":26972,"name":"address","nodeType":"ElementaryTypeName","src":"16232:7:59","typeDescriptions":{}}},"id":26975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16232:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":26969,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"16194:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":26971,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16212:19:59","memberName":"onlyStrategyEnabled","nodeType":"MemberAccess","referencedDeclaration":31251,"src":"16194:37:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$__$","typeString":"function (address) view external"}},"id":26976,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16194:52:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26977,"nodeType":"ExpressionStatement","src":"16194:52:59"},{"expression":{"id":26978,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26957,"src":"16301:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":26979,"nodeType":"ExpressionStatement","src":"16301:5:59"},{"assignments":[26982],"declarations":[{"constant":false,"id":26982,"mutability":"mutable","name":"proposal","nameLocation":"16338:8:59","nodeType":"VariableDeclaration","scope":27158,"src":"16316:30:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal"},"typeName":{"id":26981,"nodeType":"UserDefinedTypeName","pathNode":{"id":26980,"name":"CreateProposal","nameLocations":["16316:14:59"],"nodeType":"IdentifierPath","referencedDeclaration":26155,"src":"16316:14:59"},"referencedDeclaration":26155,"src":"16316:14:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_storage_ptr","typeString":"struct CreateProposal"}},"visibility":"internal"}],"id":26989,"initialValue":{"arguments":[{"id":26985,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26957,"src":"16360:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":26986,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26155,"src":"16368:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$26155_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"id":26987,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"16367:16:59","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$26155_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$26155_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}],"expression":{"id":26983,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"16349:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":26984,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"16353:6:59","memberName":"decode","nodeType":"MemberAccess","src":"16349:10:59","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":26988,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16349:35:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"nodeType":"VariableDeclarationStatement","src":"16316:68:59"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"},"id":26993,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":26990,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26526,"src":"16462:12:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":26991,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26138,"src":"16478:12:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$26138_$","typeString":"type(enum ProposalType)"}},"id":26992,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"16491:7:59","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":26136,"src":"16478:20:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"src":"16462:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27030,"nodeType":"IfStatement","src":"16458:897:59","trueBody":{"id":27029,"nodeType":"Block","src":"16500:855:59","statements":[{"expression":{"arguments":[{"expression":{"id":26995,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"16533:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":26996,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16542:11:59","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":26147,"src":"16533:20:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":26994,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26820,"src":"16514:18:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":26997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16514:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":26998,"nodeType":"ExpressionStatement","src":"16514:40:59"},{"assignments":[27001],"declarations":[{"constant":false,"id":27001,"mutability":"mutable","name":"_allo","nameLocation":"16746:5:59","nodeType":"VariableDeclaration","scope":27029,"src":"16740:11:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$314","typeString":"contract IAllo"},"typeName":{"id":27000,"nodeType":"UserDefinedTypeName","pathNode":{"id":26999,"name":"IAllo","nameLocations":["16740:5:59"],"nodeType":"IdentifierPath","referencedDeclaration":314,"src":"16740:5:59"},"referencedDeclaration":314,"src":"16740:5:59","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$314","typeString":"contract IAllo"}},"visibility":"internal"}],"id":27005,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":27002,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16754:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}},"id":27003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16759:7:59","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":25571,"src":"16754:12:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$314_$","typeString":"function () view external returns (contract IAllo)"}},"id":27004,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16754:14:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$314","typeString":"contract IAllo"}},"nodeType":"VariableDeclarationStatement","src":"16740:28:59"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":27014,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":27006,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"16786:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27007,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16795:14:59","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":26151,"src":"16786:23:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"arguments":[{"expression":{"id":27010,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"16827:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27011,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16836:6:59","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":26145,"src":"16827:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":27008,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27001,"src":"16813:5:59","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$314","typeString":"contract IAllo"}},"id":27009,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16819:7:59","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":307,"src":"16813:13:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$23_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":27012,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16813:30:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$23_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":27013,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16844:5:59","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":15,"src":"16813:36:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"16786:63:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27019,"nodeType":"IfStatement","src":"16782:352:59","trueBody":{"id":27018,"nodeType":"Block","src":"16851:283:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27015,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"17049:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":27016,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17049:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27017,"nodeType":"ExpressionStatement","src":"17049:8:59"}]}},{"condition":{"arguments":[{"expression":{"id":27021,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"17167:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17176:15:59","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":26149,"src":"17167:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27020,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28250,"src":"17151:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":27023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17151:41:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27028,"nodeType":"IfStatement","src":"17147:198:59","trueBody":{"id":27027,"nodeType":"Block","src":"17194:151:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27024,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"17260:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":27025,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17260:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27026,"nodeType":"ExpressionStatement","src":"17260:8:59"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":27050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":27042,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":27033,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"17390:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":27035,"indexExpression":{"id":27034,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"17408:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17390:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":27036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17440:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"17390:60:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}],"id":27032,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17382:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27031,"name":"address","nodeType":"ElementaryTypeName","src":"17382:7:59","typeDescriptions":{}}},"id":27037,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17382:69:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":27040,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17463:1:59","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":27039,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17455:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27038,"name":"address","nodeType":"ElementaryTypeName","src":"17455:7:59","typeDescriptions":{}}},"id":27041,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17455:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17382:83:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27049,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":27043,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17485:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":27044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17489:5:59","memberName":"value","nodeType":"MemberAccess","src":"17485:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":27045,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"17497:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":27047,"indexExpression":{"id":27046,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"17515:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17497:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":27048,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17547:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"17497:75:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17485:87:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"17382:190:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27055,"nodeType":"IfStatement","src":"17365:483:59","trueBody":{"id":27054,"nodeType":"Block","src":"17583:265:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27051,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"17767:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":27052,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17767:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27053,"nodeType":"ExpressionStatement","src":"17767:8:59"}]}},{"assignments":[27057],"declarations":[{"constant":false,"id":27057,"mutability":"mutable","name":"proposalId","nameLocation":"17866:10:59","nodeType":"VariableDeclaration","scope":27158,"src":"17858:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27056,"name":"uint256","nodeType":"ElementaryTypeName","src":"17858:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27060,"initialValue":{"id":27059,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"17879:17:59","subExpression":{"id":27058,"name":"proposalCounter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26514,"src":"17881:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"17858:38:59"},{"assignments":[27063],"declarations":[{"constant":false,"id":27063,"mutability":"mutable","name":"p","nameLocation":"17923:1:59","nodeType":"VariableDeclaration","scope":27158,"src":"17906:18:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":27062,"nodeType":"UserDefinedTypeName","pathNode":{"id":27061,"name":"Proposal","nameLocations":["17906:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"17906:8:59"},"referencedDeclaration":26204,"src":"17906:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":27067,"initialValue":{"baseExpression":{"id":27064,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"17927:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27066,"indexExpression":{"id":27065,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27057,"src":"17937:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17927:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"17906:42:59"},{"expression":{"id":27072,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27068,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"17959:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27070,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"17961:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"17959:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":27071,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27057,"src":"17974:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17959:25:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27073,"nodeType":"ExpressionStatement","src":"17959:25:59"},{"expression":{"id":27078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27074,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"17994:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27076,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"17996:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"17994:11:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":27077,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26959,"src":"18008:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17994:21:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":27079,"nodeType":"ExpressionStatement","src":"17994:21:59"},{"expression":{"id":27085,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27080,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18025:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27082,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18027:11:59","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":26180,"src":"18025:13:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27083,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"18041:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27084,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18050:11:59","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":26147,"src":"18041:20:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18025:36:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":27086,"nodeType":"ExpressionStatement","src":"18025:36:59"},{"expression":{"id":27092,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27087,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18071:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27089,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18073:14:59","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":26184,"src":"18071:16:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27090,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"18090:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27091,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18099:14:59","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":26151,"src":"18090:23:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18071:42:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":27093,"nodeType":"ExpressionStatement","src":"18071:42:59"},{"expression":{"id":27099,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27094,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18123:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27096,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18125:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"18123:17:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27097,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"18143:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27098,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18152:15:59","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":26149,"src":"18143:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18123:44:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27100,"nodeType":"ExpressionStatement","src":"18123:44:59"},{"expression":{"id":27106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27101,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18228:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27103,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18230:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"18228:16:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27104,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"18247:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":27105,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18262:6:59","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":26157,"src":"18247:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"18228:40:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":27107,"nodeType":"ExpressionStatement","src":"18228:40:59"},{"expression":{"id":27113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27108,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18278:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27110,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18280:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"18278:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27111,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"18292:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":27112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18298:6:59","memberName":"number","nodeType":"MemberAccess","src":"18292:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18278:26:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27114,"nodeType":"ExpressionStatement","src":"18278:26:59"},{"expression":{"id":27119,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27115,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18314:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27117,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18316:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"18314:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":27118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18333:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"18314:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27120,"nodeType":"ExpressionStatement","src":"18314:20:59"},{"expression":{"id":27126,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27121,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18380:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27123,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18382:8:59","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":26196,"src":"18380:10:59","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27124,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26982,"src":"18393:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$26155_memory_ptr","typeString":"struct CreateProposal memory"}},"id":27125,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18402:8:59","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":26154,"src":"18393:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata memory"}},"src":"18380:30:59","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage","typeString":"struct Metadata storage ref"}},"id":27127,"nodeType":"ExpressionStatement","src":"18380:30:59"},{"expression":{"id":27132,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":27128,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18420:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27130,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18422:23:59","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":26203,"src":"18420:25:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":27131,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"18448:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18420:58:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27133,"nodeType":"ExpressionStatement","src":"18420:58:59"},{"expression":{"arguments":[{"id":27140,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27057,"src":"18540:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":27141,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27063,"src":"18552:1:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27142,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18554:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"18552:11:59","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":27134,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"18488:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":27136,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18504:17:59","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":33266,"src":"18488:33:59","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":27139,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":27137,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"18529:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":27138,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18533:5:59","memberName":"value","nodeType":"MemberAccess","src":"18529:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"18488:51:59","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":27143,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18488:76:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27144,"nodeType":"ExpressionStatement","src":"18488:76:59"},{"eventCall":{"arguments":[{"id":27146,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"18596:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":27147,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27057,"src":"18604:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27145,"name":"ProposalCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26373,"src":"18580:15:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":27148,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18580:35:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27149,"nodeType":"EmitStatement","src":"18575:40:59"},{"expression":{"arguments":[{"arguments":[{"id":27154,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27057,"src":"18697:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27153,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18689:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":27152,"name":"uint160","nodeType":"ElementaryTypeName","src":"18689:7:59","typeDescriptions":{}}},"id":27155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18689:19:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":27151,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18681:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27150,"name":"address","nodeType":"ElementaryTypeName","src":"18681:7:59","typeDescriptions":{}}},"id":27156,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18681:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":26964,"id":27157,"nodeType":"Return","src":"18674:35:59"}]},"baseFunctions":[25954],"implemented":true,"kind":"function","modifiers":[],"name":"_registerRecipient","nameLocation":"16046:18:59","overrides":{"id":26961,"nodeType":"OverrideSpecifier","overrides":[],"src":"16119:8:59"},"parameters":{"id":26960,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26957,"mutability":"mutable","name":"_data","nameLocation":"16078:5:59","nodeType":"VariableDeclaration","scope":27159,"src":"16065:18:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":26956,"name":"bytes","nodeType":"ElementaryTypeName","src":"16065:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":26959,"mutability":"mutable","name":"_sender","nameLocation":"16093:7:59","nodeType":"VariableDeclaration","scope":27159,"src":"16085:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26958,"name":"address","nodeType":"ElementaryTypeName","src":"16085:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16064:37:59"},"returnParameters":{"id":26964,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26963,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27159,"src":"16137:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":26962,"name":"address","nodeType":"ElementaryTypeName","src":"16137:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16136:9:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":27195,"nodeType":"FunctionDefinition","src":"18835:339:59","nodes":[],"body":{"id":27194,"nodeType":"Block","src":"18892:282:59","nodes":[],"statements":[{"condition":{"id":27167,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"18906:27:59","subExpression":{"arguments":[{"id":27165,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27161,"src":"18925:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27164,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26895,"src":"18907:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":27166,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18907:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27172,"nodeType":"IfStatement","src":"18902:90:59","trueBody":{"id":27171,"nodeType":"Block","src":"18935:57:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":27168,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26325,"src":"18956:23:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":27169,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18956:25:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27170,"nodeType":"RevertStatement","src":"18949:32:59"}]}},{"expression":{"arguments":[{"id":27176,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27161,"src":"19044:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27179,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19061:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27178,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19053:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27177,"name":"address","nodeType":"ElementaryTypeName","src":"19053:7:59","typeDescriptions":{}}},"id":27180,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19053:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27173,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"19001:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27175,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19019:24:59","memberName":"activateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":31890,"src":"19001:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":27181,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19001:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27182,"nodeType":"ExpressionStatement","src":"19001:66:59"},{"expression":{"id":27192,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27183,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26520,"src":"19077:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"id":27186,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27161,"src":"19144:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27189,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19161:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19153:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27187,"name":"address","nodeType":"ElementaryTypeName","src":"19153:7:59","typeDescriptions":{}}},"id":27190,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19153:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27184,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"19101:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27185,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19119:24:59","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":32252,"src":"19101:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":27191,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19101:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19077:90:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27193,"nodeType":"ExpressionStatement","src":"19077:90:59"}]},"functionSelector":"db9b5d50","implemented":true,"kind":"function","modifiers":[],"name":"_activatePoints","nameLocation":"18844:15:59","parameters":{"id":27162,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27161,"mutability":"mutable","name":"_sender","nameLocation":"18868:7:59","nodeType":"VariableDeclaration","scope":27195,"src":"18860:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27160,"name":"address","nodeType":"ElementaryTypeName","src":"18860:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"18859:17:59"},"returnParameters":{"id":27163,"nodeType":"ParameterList","parameters":[],"src":"18892:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":27204,"nodeType":"FunctionDefinition","src":"19180:87:59","nodes":[],"body":{"id":27203,"nodeType":"Block","src":"19223:44:59","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":27199,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"19249:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":27200,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19253:6:59","memberName":"sender","nodeType":"MemberAccess","src":"19249:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27198,"name":"_activatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27195,"src":"19233:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":27201,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19233:27:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27202,"nodeType":"ExpressionStatement","src":"19233:27:59"}]},"functionSelector":"814516ad","implemented":true,"kind":"function","modifiers":[],"name":"activatePoints","nameLocation":"19189:14:59","parameters":{"id":27196,"nodeType":"ParameterList","parameters":[],"src":"19203:2:59"},"returnParameters":{"id":27197,"nodeType":"ParameterList","parameters":[],"src":"19223:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":27213,"nodeType":"FunctionDefinition","src":"19273:89:59","nodes":[],"body":{"id":27212,"nodeType":"Block","src":"19316:46:59","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":27208,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"19344:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":27209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19348:6:59","memberName":"sender","nodeType":"MemberAccess","src":"19344:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27207,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27261,"src":"19326:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":27210,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19326:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27211,"nodeType":"ExpressionStatement","src":"19326:29:59"}]},"functionSelector":"1ddf1e23","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"19282:16:59","parameters":{"id":27205,"nodeType":"ParameterList","parameters":[],"src":"19298:2:59"},"returnParameters":{"id":27206,"nodeType":"ParameterList","parameters":[],"src":"19316:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":27226,"nodeType":"FunctionDefinition","src":"19368:136:59","nodes":[],"body":{"id":27225,"nodeType":"Block","src":"19428:76:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27218,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26804,"src":"19438:21:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":27219,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19438:23:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27220,"nodeType":"ExpressionStatement","src":"19438:23:59"},{"expression":{"arguments":[{"id":27222,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27215,"src":"19489:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27221,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27261,"src":"19471:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":27223,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19471:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27224,"nodeType":"ExpressionStatement","src":"19471:26:59"}]},"baseFunctions":[26109],"functionSelector":"6453d9c4","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"19377:16:59","parameters":{"id":27216,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27215,"mutability":"mutable","name":"_member","nameLocation":"19402:7:59","nodeType":"VariableDeclaration","scope":27226,"src":"19394:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27214,"name":"address","nodeType":"ElementaryTypeName","src":"19394:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19393:17:59"},"returnParameters":{"id":27217,"nodeType":"ParameterList","parameters":[],"src":"19428:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":27261,"nodeType":"FunctionDefinition","src":"19510:359:59","nodes":[],"body":{"id":27260,"nodeType":"Block","src":"19571:298:59","nodes":[],"statements":[{"expression":{"id":27240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27231,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26520,"src":"19581:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"arguments":[{"id":27234,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27228,"src":"19648:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27237,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19665:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27236,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19657:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27235,"name":"address","nodeType":"ElementaryTypeName","src":"19657:7:59","typeDescriptions":{}}},"id":27238,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19657:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27232,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"19605:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27233,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19623:24:59","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":32252,"src":"19605:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":27239,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19605:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19581:90:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27241,"nodeType":"ExpressionStatement","src":"19581:90:59"},{"expression":{"arguments":[{"id":27245,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27228,"src":"19726:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27248,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19743:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27247,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19735:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27246,"name":"address","nodeType":"ElementaryTypeName","src":"19735:7:59","typeDescriptions":{}}},"id":27249,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19735:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27242,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"19681:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19699:26:59","memberName":"deactivateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":31945,"src":"19681:44:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":27250,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19681:68:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27251,"nodeType":"ExpressionStatement","src":"19681:68:59"},{"expression":{"arguments":[{"id":27253,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27228,"src":"19813:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27252,"name":"withdraw","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28087,"src":"19804:8:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":27254,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19804:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27255,"nodeType":"ExpressionStatement","src":"19804:17:59"},{"eventCall":{"arguments":[{"id":27257,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27228,"src":"19854:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27256,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26381,"src":"19836:17:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":27258,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19836:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27259,"nodeType":"EmitStatement","src":"19831:31:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_deactivatePoints","nameLocation":"19519:17:59","parameters":{"id":27229,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27228,"mutability":"mutable","name":"_member","nameLocation":"19545:7:59","nodeType":"VariableDeclaration","scope":27261,"src":"19537:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27227,"name":"address","nodeType":"ElementaryTypeName","src":"19537:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19536:17:59"},"returnParameters":{"id":27230,"nodeType":"ParameterList","parameters":[],"src":"19571:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":27349,"nodeType":"FunctionDefinition","src":"19875:1045:59","nodes":[],"body":{"id":27348,"nodeType":"Block","src":"19974:946:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27270,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26804,"src":"20029:21:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":27271,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20029:23:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27272,"nodeType":"ExpressionStatement","src":"20029:23:59"},{"condition":{"id":27276,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"20066:27:59","subExpression":{"arguments":[{"id":27274,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27263,"src":"20085:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27273,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26895,"src":"20067:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":27275,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20067:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27281,"nodeType":"IfStatement","src":"20062:90:59","trueBody":{"id":27280,"nodeType":"Block","src":"20095:57:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":27277,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26325,"src":"20116:23:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":27278,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20116:25:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27279,"nodeType":"RevertStatement","src":"20109:32:59"}]}},{"assignments":[27283],"declarations":[{"constant":false,"id":27283,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"20169:16:59","nodeType":"VariableDeclaration","scope":27348,"src":"20161:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27282,"name":"uint256","nodeType":"ElementaryTypeName","src":"20161:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27285,"initialValue":{"hexValue":"30","id":27284,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20188:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"20161:28:59"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"id":27289,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27286,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"20203:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":27287,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"20218:11:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$26143_$","typeString":"type(enum PointSystem)"}},"id":27288,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"20230:9:59","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":26141,"src":"20218:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"20203:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"id":27298,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27295,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"20358:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":27296,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"20373:11:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$26143_$","typeString":"type(enum PointSystem)"}},"id":27297,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"20385:6:59","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":26140,"src":"20373:18:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"20358:33:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"id":27310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27307,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"20491:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":27308,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"20506:11:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$26143_$","typeString":"type(enum PointSystem)"}},"id":27309,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"20518:9:59","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":26142,"src":"20506:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"20491:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27319,"nodeType":"IfStatement","src":"20487:133:59","trueBody":{"id":27318,"nodeType":"Block","src":"20529:91:59","statements":[{"expression":{"id":27316,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27311,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27283,"src":"20543:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":27313,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27263,"src":"20585:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27314,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27265,"src":"20594:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27312,"name":"increasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27517,"src":"20562:22:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":27315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20562:47:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20543:66:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27317,"nodeType":"ExpressionStatement","src":"20543:66:59"}]}},"id":27320,"nodeType":"IfStatement","src":"20354:266:59","trueBody":{"id":27306,"nodeType":"Block","src":"20393:88:59","statements":[{"expression":{"id":27304,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27299,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27283,"src":"20407:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":27301,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27263,"src":"20446:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27302,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27265,"src":"20455:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27300,"name":"increasePowerCapped","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27439,"src":"20426:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":27303,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20426:44:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20407:63:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27305,"nodeType":"ExpressionStatement","src":"20407:63:59"}]}},"id":27321,"nodeType":"IfStatement","src":"20199:421:59","trueBody":{"id":27294,"nodeType":"Block","src":"20241:107:59","statements":[{"expression":{"id":27292,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27290,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27283,"src":"20255:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":27291,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27265,"src":"20274:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20255:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27293,"nodeType":"ExpressionStatement","src":"20255:33:59"}]}},{"assignments":[27323],"declarations":[{"constant":false,"id":27323,"mutability":"mutable","name":"isActivated","nameLocation":"20634:11:59","nodeType":"VariableDeclaration","scope":27348,"src":"20629:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":27322,"name":"bool","nodeType":"ElementaryTypeName","src":"20629:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":27332,"initialValue":{"arguments":[{"id":27326,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27263,"src":"20694:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27329,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"20711:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27328,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20703:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27327,"name":"address","nodeType":"ElementaryTypeName","src":"20703:7:59","typeDescriptions":{}}},"id":27330,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20703:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27324,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"20648:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20666:27:59","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":31177,"src":"20648:45:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":27331,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20648:69:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"20629:88:59"},{"condition":{"id":27333,"name":"isActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27323,"src":"20731:11:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27339,"nodeType":"IfStatement","src":"20727:82:59","trueBody":{"id":27338,"nodeType":"Block","src":"20744:65:59","statements":[{"expression":{"id":27336,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27334,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26520,"src":"20758:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":27335,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27283,"src":"20782:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20758:40:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27337,"nodeType":"ExpressionStatement","src":"20758:40:59"}]}},{"eventCall":{"arguments":[{"id":27341,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27263,"src":"20838:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27342,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27265,"src":"20847:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":27343,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27283,"src":"20863:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27340,"name":"PowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26389,"src":"20823:14:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":27344,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20823:57:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27345,"nodeType":"EmitStatement","src":"20818:62:59"},{"expression":{"id":27346,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27283,"src":"20897:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":27269,"id":27347,"nodeType":"Return","src":"20890:23:59"}]},"baseFunctions":[26118],"functionSelector":"782aadff","implemented":true,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"19884:13:59","parameters":{"id":27266,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27263,"mutability":"mutable","name":"_member","nameLocation":"19906:7:59","nodeType":"VariableDeclaration","scope":27349,"src":"19898:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27262,"name":"address","nodeType":"ElementaryTypeName","src":"19898:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":27265,"mutability":"mutable","name":"_amountToStake","nameLocation":"19923:14:59","nodeType":"VariableDeclaration","scope":27349,"src":"19915:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27264,"name":"uint256","nodeType":"ElementaryTypeName","src":"19915:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19897:41:59"},"returnParameters":{"id":27269,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27268,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27349,"src":"19965:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27267,"name":"uint256","nodeType":"ElementaryTypeName","src":"19965:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19964:9:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":27401,"nodeType":"FunctionDefinition","src":"20926:684:59","nodes":[],"body":{"id":27400,"nodeType":"Block","src":"21027:583:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27358,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26804,"src":"21037:21:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":27359,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21037:23:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27360,"nodeType":"ExpressionStatement","src":"21037:23:59"},{"assignments":[27362],"declarations":[{"constant":false,"id":27362,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"21124:16:59","nodeType":"VariableDeclaration","scope":27400,"src":"21116:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27361,"name":"uint256","nodeType":"ElementaryTypeName","src":"21116:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27364,"initialValue":{"hexValue":"30","id":27363,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21143:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"21116:28:59"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":27373,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"id":27368,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27365,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"21158:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":27366,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"21173:11:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$26143_$","typeString":"type(enum PointSystem)"}},"id":27367,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"21185:9:59","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":26141,"src":"21173:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"21158:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"id":27372,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27369,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"21198:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":27370,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"21213:11:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$26143_$","typeString":"type(enum PointSystem)"}},"id":27371,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"21225:6:59","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":26140,"src":"21213:18:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"21198:33:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"21158:73:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":27386,"nodeType":"Block","src":"21354:93:59","statements":[{"expression":{"id":27384,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27379,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27362,"src":"21368:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":27381,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27351,"src":"21410:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27382,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27353,"src":"21419:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27380,"name":"decreasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27591,"src":"21387:22:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":27383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21387:49:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21368:68:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27385,"nodeType":"ExpressionStatement","src":"21368:68:59"}]},"id":27387,"nodeType":"IfStatement","src":"21154:293:59","trueBody":{"id":27378,"nodeType":"Block","src":"21233:115:59","statements":[{"expression":{"id":27376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27374,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27362,"src":"21247:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":27375,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27353,"src":"21266:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21247:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27377,"nodeType":"ExpressionStatement","src":"21247:35:59"}]}},{"expression":{"id":27390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27388,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26520,"src":"21456:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":27389,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27362,"src":"21480:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21456:40:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27391,"nodeType":"ExpressionStatement","src":"21456:40:59"},{"eventCall":{"arguments":[{"id":27393,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27351,"src":"21526:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27394,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27353,"src":"21535:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":27395,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27362,"src":"21553:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27392,"name":"PowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26397,"src":"21511:14:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":27396,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21511:59:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27397,"nodeType":"EmitStatement","src":"21506:64:59"},{"expression":{"id":27398,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27362,"src":"21587:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":27357,"id":27399,"nodeType":"Return","src":"21580:23:59"}]},"baseFunctions":[26127],"functionSelector":"2ed04b2b","implemented":true,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"20935:13:59","parameters":{"id":27354,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27351,"mutability":"mutable","name":"_member","nameLocation":"20957:7:59","nodeType":"VariableDeclaration","scope":27401,"src":"20949:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27350,"name":"address","nodeType":"ElementaryTypeName","src":"20949:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":27353,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20974:16:59","nodeType":"VariableDeclaration","scope":27401,"src":"20966:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27352,"name":"uint256","nodeType":"ElementaryTypeName","src":"20966:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20948:43:59"},"returnParameters":{"id":27357,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27356,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27401,"src":"21018:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27355,"name":"uint256","nodeType":"ElementaryTypeName","src":"21018:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21017:9:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":27439,"nodeType":"FunctionDefinition","src":"21616:571:59","nodes":[],"body":{"id":27438,"nodeType":"Block","src":"21726:461:59","nodes":[],"statements":[{"assignments":[27411],"declarations":[{"constant":false,"id":27411,"mutability":"mutable","name":"memberPower","nameLocation":"21806:11:59","nodeType":"VariableDeclaration","scope":27438,"src":"21798:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27410,"name":"uint256","nodeType":"ElementaryTypeName","src":"21798:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27420,"initialValue":{"arguments":[{"id":27414,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27403,"src":"21863:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27417,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21880:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27416,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21872:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27415,"name":"address","nodeType":"ElementaryTypeName","src":"21872:7:59","typeDescriptions":{}}},"id":27418,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21872:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27412,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"21820:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27413,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21838:24:59","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":32252,"src":"21820:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":27419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21820:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21798:88:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27426,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27423,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27421,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27411,"src":"21952:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":27422,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27405,"src":"21966:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21952:28:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":27424,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26532,"src":"21983:11:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage","typeString":"struct PointSystemConfig storage ref"}},"id":27425,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21995:9:59","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":26211,"src":"21983:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21952:52:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27435,"nodeType":"IfStatement","src":"21948:135:59","trueBody":{"id":27434,"nodeType":"Block","src":"22006:77:59","statements":[{"expression":{"id":27432,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27427,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27405,"src":"22020:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27431,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":27428,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26532,"src":"22037:11:59","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$26212_storage","typeString":"struct PointSystemConfig storage ref"}},"id":27429,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"22049:9:59","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":26211,"src":"22037:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":27430,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27411,"src":"22061:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22037:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22020:52:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27433,"nodeType":"ExpressionStatement","src":"22020:52:59"}]}},{"expression":{"id":27436,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27405,"src":"22166:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":27409,"id":27437,"nodeType":"Return","src":"22159:21:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerCapped","nameLocation":"21625:19:59","parameters":{"id":27406,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27403,"mutability":"mutable","name":"_member","nameLocation":"21653:7:59","nodeType":"VariableDeclaration","scope":27439,"src":"21645:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27402,"name":"address","nodeType":"ElementaryTypeName","src":"21645:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":27405,"mutability":"mutable","name":"_amountToStake","nameLocation":"21670:14:59","nodeType":"VariableDeclaration","scope":27439,"src":"21662:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27404,"name":"uint256","nodeType":"ElementaryTypeName","src":"21662:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21644:41:59"},"returnParameters":{"id":27409,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27408,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27439,"src":"21717:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27407,"name":"uint256","nodeType":"ElementaryTypeName","src":"21717:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21716:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":27517,"nodeType":"FunctionDefinition","src":"22193:741:59","nodes":[],"body":{"id":27516,"nodeType":"Block","src":"22306:628:59","nodes":[],"statements":[{"assignments":[27449],"declarations":[{"constant":false,"id":27449,"mutability":"mutable","name":"totalStake","nameLocation":"22324:10:59","nodeType":"VariableDeclaration","scope":27516,"src":"22316:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27448,"name":"uint256","nodeType":"ElementaryTypeName","src":"22316:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27456,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27455,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":27452,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27441,"src":"22377:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27450,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"22337:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27451,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22355:21:59","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":32265,"src":"22337:39:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":27453,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22337:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":27454,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27443,"src":"22388:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22337:65:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22316:86:59"},{"assignments":[27458],"declarations":[{"constant":false,"id":27458,"mutability":"mutable","name":"decimal","nameLocation":"22421:7:59","nodeType":"VariableDeclaration","scope":27516,"src":"22413:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27457,"name":"uint256","nodeType":"ElementaryTypeName","src":"22413:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27460,"initialValue":{"hexValue":"3138","id":27459,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22431:2:59","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"22413:20:59"},{"clauses":[{"block":{"id":27481,"nodeType":"Block","src":"22531:52:59","statements":[{"expression":{"id":27479,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27474,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27458,"src":"22545:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":27477,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27472,"src":"22563:8:59","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":27476,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22555:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":27475,"name":"uint256","nodeType":"ElementaryTypeName","src":"22555:7:59","typeDescriptions":{}}},"id":27478,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22555:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22545:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27480,"nodeType":"ExpressionStatement","src":"22545:27:59"}]},"errorName":"","id":27482,"nodeType":"TryCatchClause","parameters":{"id":27473,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27472,"mutability":"mutable","name":"_decimal","nameLocation":"22521:8:59","nodeType":"VariableDeclaration","scope":27482,"src":"22515:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":27471,"name":"uint8","nodeType":"ElementaryTypeName","src":"22515:5:59","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"22514:16:59"},"src":"22506:77:59"},{"block":{"id":27483,"nodeType":"Block","src":"22590:64:59","statements":[]},"errorName":"","id":27484,"nodeType":"TryCatchClause","src":"22584:70:59"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":27464,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"22461:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27465,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22479:11:59","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":31132,"src":"22461:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$17398_$","typeString":"function () view external returns (contract IERC20)"}},"id":27466,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22461:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}],"id":27463,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22453:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27462,"name":"address","nodeType":"ElementaryTypeName","src":"22453:7:59","typeDescriptions":{}}},"id":27467,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22453:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27461,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17320,"src":"22447:5:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$17320_$","typeString":"type(contract ERC20)"}},"id":27468,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22447:47:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$17320","typeString":"contract ERC20"}},"id":27469,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22495:8:59","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":16808,"src":"22447:56:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":27470,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22447:58:59","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":27485,"nodeType":"TryStatement","src":"22443:211:59"},{"assignments":[27487],"declarations":[{"constant":false,"id":27487,"mutability":"mutable","name":"newTotalPoints","nameLocation":"22671:14:59","nodeType":"VariableDeclaration","scope":27516,"src":"22663:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27486,"name":"uint256","nodeType":"ElementaryTypeName","src":"22663:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27496,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27494,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27490,"name":"totalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27449,"src":"22698:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":27491,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22711:2:59","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":27492,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27458,"src":"22717:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22711:13:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22698:26:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":27488,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":19622,"src":"22688:4:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$19622_$","typeString":"type(library Math)"}},"id":27489,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22693:4:59","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":19126,"src":"22688:9:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":27495,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22688:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22663:62:59"},{"assignments":[27498],"declarations":[{"constant":false,"id":27498,"mutability":"mutable","name":"currentPoints","nameLocation":"22743:13:59","nodeType":"VariableDeclaration","scope":27516,"src":"22735:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27497,"name":"uint256","nodeType":"ElementaryTypeName","src":"22735:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27507,"initialValue":{"arguments":[{"id":27501,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27441,"src":"22802:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27504,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22819:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27503,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22811:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27502,"name":"address","nodeType":"ElementaryTypeName","src":"22811:7:59","typeDescriptions":{}}},"id":27505,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22811:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27499,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"22759:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22777:24:59","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":32252,"src":"22759:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":27506,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22759:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22735:90:59"},{"assignments":[27509],"declarations":[{"constant":false,"id":27509,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"22844:16:59","nodeType":"VariableDeclaration","scope":27516,"src":"22836:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27508,"name":"uint256","nodeType":"ElementaryTypeName","src":"22836:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27513,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27512,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27510,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27487,"src":"22863:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":27511,"name":"currentPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27498,"src":"22880:13:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22863:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22836:57:59"},{"expression":{"id":27514,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27509,"src":"22911:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":27447,"id":27515,"nodeType":"Return","src":"22904:23:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerQuadratic","nameLocation":"22202:22:59","parameters":{"id":27444,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27441,"mutability":"mutable","name":"_member","nameLocation":"22233:7:59","nodeType":"VariableDeclaration","scope":27517,"src":"22225:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27440,"name":"address","nodeType":"ElementaryTypeName","src":"22225:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":27443,"mutability":"mutable","name":"_amountToStake","nameLocation":"22250:14:59","nodeType":"VariableDeclaration","scope":27517,"src":"22242:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27442,"name":"uint256","nodeType":"ElementaryTypeName","src":"22242:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22224:41:59"},"returnParameters":{"id":27447,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27446,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27517,"src":"22297:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27445,"name":"uint256","nodeType":"ElementaryTypeName","src":"22297:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22296:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":27591,"nodeType":"FunctionDefinition","src":"22940:855:59","nodes":[],"body":{"id":27590,"nodeType":"Block","src":"23091:704:59","nodes":[],"statements":[{"assignments":[27527],"declarations":[{"constant":false,"id":27527,"mutability":"mutable","name":"decimal","nameLocation":"23109:7:59","nodeType":"VariableDeclaration","scope":27590,"src":"23101:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27526,"name":"uint256","nodeType":"ElementaryTypeName","src":"23101:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27529,"initialValue":{"hexValue":"3138","id":27528,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23119:2:59","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"23101:20:59"},{"clauses":[{"block":{"id":27550,"nodeType":"Block","src":"23219:52:59","statements":[{"expression":{"id":27548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27543,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27527,"src":"23233:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":27546,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27541,"src":"23251:8:59","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":27545,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23243:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":27544,"name":"uint256","nodeType":"ElementaryTypeName","src":"23243:7:59","typeDescriptions":{}}},"id":27547,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23243:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23233:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27549,"nodeType":"ExpressionStatement","src":"23233:27:59"}]},"errorName":"","id":27551,"nodeType":"TryCatchClause","parameters":{"id":27542,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27541,"mutability":"mutable","name":"_decimal","nameLocation":"23209:8:59","nodeType":"VariableDeclaration","scope":27551,"src":"23203:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":27540,"name":"uint8","nodeType":"ElementaryTypeName","src":"23203:5:59","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"23202:16:59"},"src":"23194:77:59"},{"block":{"id":27552,"nodeType":"Block","src":"23278:64:59","statements":[]},"errorName":"","id":27553,"nodeType":"TryCatchClause","src":"23272:70:59"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":27533,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"23149:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27534,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23167:11:59","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":31132,"src":"23149:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$17398_$","typeString":"function () view external returns (contract IERC20)"}},"id":27535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23149:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}],"id":27532,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23141:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27531,"name":"address","nodeType":"ElementaryTypeName","src":"23141:7:59","typeDescriptions":{}}},"id":27536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23141:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27530,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17320,"src":"23135:5:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$17320_$","typeString":"type(contract ERC20)"}},"id":27537,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23135:47:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$17320","typeString":"contract ERC20"}},"id":27538,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23183:8:59","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":16808,"src":"23135:56:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":27539,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23135:58:59","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":27554,"nodeType":"TryStatement","src":"23131:211:59"},{"assignments":[27556],"declarations":[{"constant":false,"id":27556,"mutability":"mutable","name":"newTotalStake","nameLocation":"23421:13:59","nodeType":"VariableDeclaration","scope":27590,"src":"23413:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27555,"name":"uint256","nodeType":"ElementaryTypeName","src":"23413:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27563,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27562,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":27559,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27519,"src":"23477:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27557,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"23437:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27558,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23455:21:59","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":32265,"src":"23437:39:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":27560,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23437:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":27561,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27521,"src":"23488:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23437:67:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23413:91:59"},{"assignments":[27565],"declarations":[{"constant":false,"id":27565,"mutability":"mutable","name":"newTotalPoints","nameLocation":"23578:14:59","nodeType":"VariableDeclaration","scope":27590,"src":"23570:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27564,"name":"uint256","nodeType":"ElementaryTypeName","src":"23570:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27574,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27572,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27568,"name":"newTotalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27556,"src":"23605:13:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27571,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":27569,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23621:2:59","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":27570,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27527,"src":"23627:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23621:13:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23605:29:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":27566,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":19622,"src":"23595:4:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$19622_$","typeString":"type(library Math)"}},"id":27567,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23600:4:59","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":19126,"src":"23595:9:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":27573,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23595:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23570:65:59"},{"assignments":[27576],"declarations":[{"constant":false,"id":27576,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"23653:16:59","nodeType":"VariableDeclaration","scope":27590,"src":"23645:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27575,"name":"uint256","nodeType":"ElementaryTypeName","src":"23645:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27587,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27586,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":27579,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27519,"src":"23715:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27582,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"23732:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27581,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23724:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27580,"name":"address","nodeType":"ElementaryTypeName","src":"23724:7:59","typeDescriptions":{}}},"id":27583,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23724:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27577,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"23672:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27578,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23690:24:59","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":32252,"src":"23672:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":27584,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23672:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":27585,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27565,"src":"23741:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23672:83:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23645:110:59"},{"expression":{"id":27588,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27576,"src":"23772:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":27525,"id":27589,"nodeType":"Return","src":"23765:23:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerQuadratic","nameLocation":"22949:22:59","parameters":{"id":27522,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27519,"mutability":"mutable","name":"_member","nameLocation":"22980:7:59","nodeType":"VariableDeclaration","scope":27591,"src":"22972:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27518,"name":"address","nodeType":"ElementaryTypeName","src":"22972:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":27521,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"22997:16:59","nodeType":"VariableDeclaration","scope":27591,"src":"22989:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27520,"name":"uint256","nodeType":"ElementaryTypeName","src":"22989:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22971:43:59"},"returnParameters":{"id":27525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27524,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27591,"src":"23078:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27523,"name":"uint256","nodeType":"ElementaryTypeName","src":"23078:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23077:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":27600,"nodeType":"FunctionDefinition","src":"23990:103:59","nodes":[],"body":{"id":27599,"nodeType":"Block","src":"24058:35:59","nodes":[],"statements":[{"expression":{"id":27597,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26529,"src":"24075:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"functionReturnParameters":27596,"id":27598,"nodeType":"Return","src":"24068:18:59"}]},"baseFunctions":[26133],"functionSelector":"c3292171","implemented":true,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"23999:14:59","parameters":{"id":27592,"nodeType":"ParameterList","parameters":[],"src":"24013:2:59"},"returnParameters":{"id":27596,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27595,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27600,"src":"24045:11:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"typeName":{"id":27594,"nodeType":"UserDefinedTypeName","pathNode":{"id":27593,"name":"PointSystem","nameLocations":["24045:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":26143,"src":"24045:11:59"},"referencedDeclaration":26143,"src":"24045:11:59","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"24044:13:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":27646,"nodeType":"FunctionDefinition","src":"24444:322:59","nodes":[],"body":{"id":27645,"nodeType":"Block","src":"24537:229:59","nodes":[],"statements":[{"assignments":[27612],"declarations":[{"constant":false,"id":27612,"mutability":"mutable","name":"pv","nameLocation":"24572:2:59","nodeType":"VariableDeclaration","scope":27645,"src":"24547:27:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":27610,"nodeType":"UserDefinedTypeName","pathNode":{"id":27609,"name":"ProposalSupport","nameLocations":["24547:15:59"],"nodeType":"IdentifierPath","referencedDeclaration":26209,"src":"24547:15:59"},"referencedDeclaration":26209,"src":"24547:15:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_storage_ptr","typeString":"struct ProposalSupport"}},"id":27611,"nodeType":"ArrayTypeName","src":"24547:17:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":27620,"initialValue":{"arguments":[{"id":27615,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27602,"src":"24588:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":27616,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26209,"src":"24596:15:59","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$26209_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":27617,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"24596:17:59","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":27618,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"24595:19:59","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$26209_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_$26209_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":27613,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"24577:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":27614,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"24581:6:59","memberName":"decode","nodeType":"MemberAccess","src":"24577:10:59","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":27619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24577:38:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"24547:68:59"},{"body":{"id":27643,"nodeType":"Block","src":"24665:95:59","statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":27633,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27612,"src":"24712:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":27635,"indexExpression":{"id":27634,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27622,"src":"24715:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24712:5:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":27636,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24718:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26206,"src":"24712:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":27637,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27612,"src":"24730:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":27639,"indexExpression":{"id":27638,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27622,"src":"24733:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24730:5:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":27640,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24736:12:59","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":26208,"src":"24730:18:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":27632,"name":"_checkProposalAllocationValidity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26943,"src":"24679:32:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_int256_$returns$__$","typeString":"function (uint256,int256) view"}},"id":27641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24679:70:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27642,"nodeType":"ExpressionStatement","src":"24679:70:59"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27625,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27622,"src":"24645:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":27626,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27612,"src":"24649:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":27627,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24652:6:59","memberName":"length","nodeType":"MemberAccess","src":"24649:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24645:13:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27644,"initializationExpression":{"assignments":[27622],"declarations":[{"constant":false,"id":27622,"mutability":"mutable","name":"i","nameLocation":"24638:1:59","nodeType":"VariableDeclaration","scope":27644,"src":"24630:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27621,"name":"uint256","nodeType":"ElementaryTypeName","src":"24630:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27624,"initialValue":{"hexValue":"30","id":27623,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24642:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"24630:13:59"},"loopExpression":{"expression":{"id":27630,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"24660:3:59","subExpression":{"id":27629,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27622,"src":"24660:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27631,"nodeType":"ExpressionStatement","src":"24660:3:59"},"nodeType":"ForStatement","src":"24625:135:59"}]},"baseFunctions":[26034],"implemented":true,"kind":"function","modifiers":[],"name":"_beforeAllocate","nameLocation":"24453:15:59","overrides":{"id":27606,"nodeType":"OverrideSpecifier","overrides":[],"src":"24528:8:59"},"parameters":{"id":27605,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27602,"mutability":"mutable","name":"_data","nameLocation":"24482:5:59","nodeType":"VariableDeclaration","scope":27646,"src":"24469:18:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":27601,"name":"bytes","nodeType":"ElementaryTypeName","src":"24469:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":27604,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27646,"src":"24489:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27603,"name":"address","nodeType":"ElementaryTypeName","src":"24489:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24468:42:59"},"returnParameters":{"id":27607,"nodeType":"ParameterList","parameters":[],"src":"24537:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":27726,"nodeType":"FunctionDefinition","src":"24912:739:59","nodes":[],"body":{"id":27725,"nodeType":"Block","src":"24994:657:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":27655,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27650,"src":"25024:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27654,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26788,"src":"25004:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":27656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25004:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27657,"nodeType":"ExpressionStatement","src":"25004:28:59"},{"assignments":[27662],"declarations":[{"constant":false,"id":27662,"mutability":"mutable","name":"pv","nameLocation":"25067:2:59","nodeType":"VariableDeclaration","scope":27725,"src":"25042:27:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":27660,"nodeType":"UserDefinedTypeName","pathNode":{"id":27659,"name":"ProposalSupport","nameLocations":["25042:15:59"],"nodeType":"IdentifierPath","referencedDeclaration":26209,"src":"25042:15:59"},"referencedDeclaration":26209,"src":"25042:15:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_storage_ptr","typeString":"struct ProposalSupport"}},"id":27661,"nodeType":"ArrayTypeName","src":"25042:17:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":27670,"initialValue":{"arguments":[{"id":27665,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27648,"src":"25083:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":27666,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26209,"src":"25091:15:59","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$26209_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":27667,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"25091:17:59","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":27668,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"25090:19:59","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$26209_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_$26209_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":27663,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"25072:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":27664,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"25076:6:59","memberName":"decode","nodeType":"MemberAccess","src":"25072:10:59","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":27669,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25072:38:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"25042:68:59"},{"condition":{"id":27674,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25124:27:59","subExpression":{"arguments":[{"id":27672,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27650,"src":"25143:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":27671,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26895,"src":"25125:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":27673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25125:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27700,"nodeType":"IfStatement","src":"25120:230:59","trueBody":{"id":27699,"nodeType":"Block","src":"25153:197:59","statements":[{"body":{"id":27697,"nodeType":"Block","src":"25207:133:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":27691,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":27686,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27662,"src":"25229:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":27688,"indexExpression":{"id":27687,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27676,"src":"25232:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25229:5:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":27689,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25235:12:59","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":26208,"src":"25229:18:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":27690,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25250:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25229:22:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27696,"nodeType":"IfStatement","src":"25225:101:59","trueBody":{"id":27695,"nodeType":"Block","src":"25253:73:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":27692,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26325,"src":"25282:23:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":27693,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25282:25:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27694,"nodeType":"RevertStatement","src":"25275:32:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27682,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27679,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27676,"src":"25187:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":27680,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27662,"src":"25191:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":27681,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25194:6:59","memberName":"length","nodeType":"MemberAccess","src":"25191:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25187:13:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27698,"initializationExpression":{"assignments":[27676],"declarations":[{"constant":false,"id":27676,"mutability":"mutable","name":"i","nameLocation":"25180:1:59","nodeType":"VariableDeclaration","scope":27698,"src":"25172:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27675,"name":"uint256","nodeType":"ElementaryTypeName","src":"25172:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27678,"initialValue":{"hexValue":"30","id":27677,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25184:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"25172:13:59"},"loopExpression":{"expression":{"id":27684,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"25202:3:59","subExpression":{"id":27683,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27676,"src":"25202:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27685,"nodeType":"ExpressionStatement","src":"25202:3:59"},"nodeType":"ForStatement","src":"25167:173:59"}]}},{"condition":{"id":27709,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25363:70:59","subExpression":{"arguments":[{"id":27703,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27650,"src":"25410:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":27706,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"25427:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":27705,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"25419:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":27704,"name":"address","nodeType":"ElementaryTypeName","src":"25419:7:59","typeDescriptions":{}}},"id":27707,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25419:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":27701,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"25364:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":27702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25382:27:59","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":31177,"src":"25364:45:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":27708,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25364:69:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27714,"nodeType":"IfStatement","src":"25359:124:59","trueBody":{"id":27713,"nodeType":"Block","src":"25435:48:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":27710,"name":"UserIsInactive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26293,"src":"25456:14:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":27711,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25456:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27712,"nodeType":"RevertStatement","src":"25449:23:59"}]}},{"expression":{"arguments":[{"id":27716,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27650,"src":"25598:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27717,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27662,"src":"25607:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":27715,"name":"_check_before_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28366,"src":"25573:24:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":27718,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25573:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27719,"nodeType":"ExpressionStatement","src":"25573:37:59"},{"expression":{"arguments":[{"id":27721,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27650,"src":"25632:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":27722,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27662,"src":"25641:2:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":27720,"name":"_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28651,"src":"25620:11:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":27723,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25620:24:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27724,"nodeType":"ExpressionStatement","src":"25620:24:59"}]},"baseFunctions":[25962],"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"24921:9:59","overrides":{"id":27652,"nodeType":"OverrideSpecifier","overrides":[],"src":"24985:8:59"},"parameters":{"id":27651,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27648,"mutability":"mutable","name":"_data","nameLocation":"24944:5:59","nodeType":"VariableDeclaration","scope":27726,"src":"24931:18:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":27647,"name":"bytes","nodeType":"ElementaryTypeName","src":"24931:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":27650,"mutability":"mutable","name":"_sender","nameLocation":"24959:7:59","nodeType":"VariableDeclaration","scope":27726,"src":"24951:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27649,"name":"address","nodeType":"ElementaryTypeName","src":"24951:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24930:37:59"},"returnParameters":{"id":27653,"nodeType":"ParameterList","parameters":[],"src":"24994:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":27877,"nodeType":"FunctionDefinition","src":"25907:2078:59","nodes":[],"body":{"id":27876,"nodeType":"Block","src":"26001:1984:59","nodes":[],"statements":[{"assignments":[27738],"declarations":[{"constant":false,"id":27738,"mutability":"mutable","name":"proposalId","nameLocation":"26159:10:59","nodeType":"VariableDeclaration","scope":27876,"src":"26151:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27737,"name":"uint256","nodeType":"ElementaryTypeName","src":"26151:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27746,"initialValue":{"arguments":[{"id":27741,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27731,"src":"26183:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":27743,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"26191:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":27742,"name":"uint256","nodeType":"ElementaryTypeName","src":"26191:7:59","typeDescriptions":{}}}],"id":27744,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"26190:9:59","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":27739,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"26172:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":27740,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"26176:6:59","memberName":"decode","nodeType":"MemberAccess","src":"26172:10:59","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":27745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26172:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"26151:49:59"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"},"id":27750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27747,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26526,"src":"26311:12:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":27748,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26138,"src":"26327:12:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$26138_$","typeString":"type(enum ProposalType)"}},"id":27749,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"26340:7:59","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":26136,"src":"26327:20:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$26138","typeString":"enum ProposalType"}},"src":"26311:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27875,"nodeType":"IfStatement","src":"26307:1612:59","trueBody":{"id":27874,"nodeType":"Block","src":"26349:1570:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27756,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":27751,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"26367:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27753,"indexExpression":{"id":27752,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26377:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26367:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27754,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26389:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"26367:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":27755,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26403:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26367:46:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27762,"nodeType":"IfStatement","src":"26363:121:59","trueBody":{"id":27761,"nodeType":"Block","src":"26415:69:59","statements":[{"errorCall":{"arguments":[{"id":27758,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26458:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27757,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26311,"src":"26440:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":27759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26440:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27760,"nodeType":"RevertStatement","src":"26433:36:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27768,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":27763,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"26502:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27765,"indexExpression":{"id":27764,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26512:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26502:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27766,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26524:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"26502:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":27767,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25483,"src":"26542:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26502:50:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27773,"nodeType":"IfStatement","src":"26498:269:59","trueBody":{"id":27772,"nodeType":"Block","src":"26554:213:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27769,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"26682:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":27770,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26682:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27771,"nodeType":"ExpressionStatement","src":"26682:8:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":27780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":27774,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"26785:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27776,"indexExpression":{"id":27775,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26795:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26785:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27777,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26807:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"26785:36:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":27778,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"26825:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":27779,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"26840:6:59","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":26157,"src":"26825:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"26785:61:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27786,"nodeType":"IfStatement","src":"26781:136:59","trueBody":{"id":27785,"nodeType":"Block","src":"26848:69:59","statements":[{"errorCall":{"arguments":[{"id":27782,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26891:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27781,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26307,"src":"26873:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":27783,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26873:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27784,"nodeType":"RevertStatement","src":"26866:36:59"}]}},{"assignments":[27788],"declarations":[{"constant":false,"id":27788,"mutability":"mutable","name":"convictionLast","nameLocation":"26939:14:59","nodeType":"VariableDeclaration","scope":27874,"src":"26931:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27787,"name":"uint256","nodeType":"ElementaryTypeName","src":"26931:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27792,"initialValue":{"arguments":[{"id":27790,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"26981:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27789,"name":"updateProposalConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29291,"src":"26956:24:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":27791,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26956:36:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"26931:61:59"},{"assignments":[27794],"declarations":[{"constant":false,"id":27794,"mutability":"mutable","name":"threshold","nameLocation":"27014:9:59","nodeType":"VariableDeclaration","scope":27874,"src":"27006:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27793,"name":"uint256","nodeType":"ElementaryTypeName","src":"27006:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27801,"initialValue":{"arguments":[{"expression":{"baseExpression":{"id":27796,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27045:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27798,"indexExpression":{"id":27797,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27055:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27045:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27799,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27067:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"27045:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27795,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28888,"src":"27026:18:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":27800,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27026:57:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27006:77:59"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":27811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27802,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27788,"src":"27102:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":27803,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27794,"src":"27119:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27102:26:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":27805,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27132:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27807,"indexExpression":{"id":27806,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27142:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27132:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27808,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27154:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"27132:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":27809,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27172:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"27132:41:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"27102:71:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27816,"nodeType":"IfStatement","src":"27098:150:59","trueBody":{"id":27815,"nodeType":"Block","src":"27175:73:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":27812,"name":"ConvictionUnderMinimumThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26319,"src":"27200:31:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":27813,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27200:33:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27814,"nodeType":"RevertStatement","src":"27193:40:59"}]}},{"expression":{"id":27822,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27817,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25483,"src":"27262:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"expression":{"baseExpression":{"id":27818,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27276:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27820,"indexExpression":{"id":27819,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27286:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27276:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27821,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27298:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"27276:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27262:51:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27823,"nodeType":"ExpressionStatement","src":"27262:51:59"},{"expression":{"arguments":[{"expression":{"arguments":[{"id":27827,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"27381:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":27825,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25475,"src":"27368:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$314","typeString":"contract IAllo"}},"id":27826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27373:7:59","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":307,"src":"27368:12:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$23_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":27828,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27368:20:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$23_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":27829,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27389:5:59","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":15,"src":"27368:26:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":27830,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27396:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27832,"indexExpression":{"id":27831,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27406:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27396:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27833,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27418:11:59","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":26180,"src":"27396:33:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":27834,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27431:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27836,"indexExpression":{"id":27835,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27441:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27431:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27837,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27453:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"27431:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27824,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":991,"src":"27335:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":27838,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27335:147:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27839,"nodeType":"ExpressionStatement","src":"27335:147:59"},{"expression":{"id":27846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":27840,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27497:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27842,"indexExpression":{"id":27841,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27507:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27497:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27843,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"27519:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"27497:36:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27844,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"27536:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":27845,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"27551:8:59","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":26160,"src":"27536:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"27497:62:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":27847,"nodeType":"ExpressionStatement","src":"27497:62:59"},{"expression":{"arguments":[{"id":27851,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27625:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":27852,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27653:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27854,"indexExpression":{"id":27853,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27663:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27653:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27855,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27675:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"27653:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":27856,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"27702:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":27858,"indexExpression":{"id":27857,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"27720:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27702:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":27859,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27752:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"27702:75:59","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":27848,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"27573:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":27850,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27589:18:59","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":33275,"src":"27573:34:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":27860,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27573:218:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27861,"nodeType":"ExpressionStatement","src":"27573:218:59"},{"eventCall":{"arguments":[{"id":27863,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27823:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":27864,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27835:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27866,"indexExpression":{"id":27865,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27845:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27835:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27867,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27857:11:59","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":26180,"src":"27835:33:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":27868,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"27870:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27870,"indexExpression":{"id":27869,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27738,"src":"27880:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27870:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":27871,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27892:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"27870:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27862,"name":"Distributed","nodeType":"Identifier","overloadedDeclarations":[26367,562],"referencedDeclaration":26367,"src":"27811:11:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":27872,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27811:97:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27873,"nodeType":"EmitStatement","src":"27806:102:59"}]}}]},"baseFunctions":[25973],"implemented":true,"kind":"function","modifiers":[],"name":"_distribute","nameLocation":"25916:11:59","overrides":{"id":27735,"nodeType":"OverrideSpecifier","overrides":[],"src":"25992:8:59"},"parameters":{"id":27734,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27729,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27877,"src":"25928:16:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":27727,"name":"address","nodeType":"ElementaryTypeName","src":"25928:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":27728,"nodeType":"ArrayTypeName","src":"25928:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":27731,"mutability":"mutable","name":"_data","nameLocation":"25959:5:59","nodeType":"VariableDeclaration","scope":27877,"src":"25946:18:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":27730,"name":"bytes","nodeType":"ElementaryTypeName","src":"25946:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":27733,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27877,"src":"25966:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27732,"name":"address","nodeType":"ElementaryTypeName","src":"25966:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"25927:47:59"},"returnParameters":{"id":27736,"nodeType":"ParameterList","parameters":[],"src":"26001:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":27929,"nodeType":"FunctionDefinition","src":"27991:728:59","nodes":[],"body":{"id":27928,"nodeType":"Block","src":"28088:631:59","nodes":[],"statements":[{"assignments":[27886],"declarations":[{"constant":false,"id":27886,"mutability":"mutable","name":"proposal","nameLocation":"28115:8:59","nodeType":"VariableDeclaration","scope":27928,"src":"28098:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":27885,"nodeType":"UserDefinedTypeName","pathNode":{"id":27884,"name":"Proposal","nameLocations":["28098:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"28098:8:59"},"referencedDeclaration":26204,"src":"28098:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":27890,"initialValue":{"baseExpression":{"id":27887,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"28126:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":27889,"indexExpression":{"id":27888,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27879,"src":"28136:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"28126:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"28098:49:59"},{"assignments":[27892,27894],"declarations":[{"constant":false,"id":27892,"mutability":"mutable","name":"convictionLast","nameLocation":"28241:14:59","nodeType":"VariableDeclaration","scope":27928,"src":"28233:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27891,"name":"uint256","nodeType":"ElementaryTypeName","src":"28233:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":27894,"mutability":"mutable","name":"blockNumber","nameLocation":"28265:11:59","nodeType":"VariableDeclaration","scope":27928,"src":"28257:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27893,"name":"uint256","nodeType":"ElementaryTypeName","src":"28257:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27900,"initialValue":{"arguments":[{"id":27896,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27886,"src":"28326:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":27897,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27886,"src":"28336:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27898,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28345:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"28336:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27895,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29087,"src":"28292:33:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$26204_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":27899,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28292:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"28232:126:59"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":27907,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27903,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27901,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27892,"src":"28373:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":27902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28391:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"28373:19:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27906,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27904,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27894,"src":"28396:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":27905,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28411:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"28396:16:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"28373:39:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27914,"nodeType":"IfStatement","src":"28369:110:59","trueBody":{"id":27913,"nodeType":"Block","src":"28414:65:59","statements":[{"expression":{"id":27911,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27908,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27892,"src":"28428:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":27909,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27886,"src":"28445:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27910,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28454:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"28445:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28428:40:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":27912,"nodeType":"ExpressionStatement","src":"28428:40:59"}]}},{"assignments":[27916],"declarations":[{"constant":false,"id":27916,"mutability":"mutable","name":"threshold","nameLocation":"28496:9:59","nodeType":"VariableDeclaration","scope":27928,"src":"28488:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27915,"name":"uint256","nodeType":"ElementaryTypeName","src":"28488:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":27921,"initialValue":{"arguments":[{"expression":{"id":27918,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27886,"src":"28527:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":27919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28536:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"28527:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27917,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28888,"src":"28508:18:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":27920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28508:44:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"28488:64:59"},{"expression":{"id":27926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":27922,"name":"canBeExecuted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27882,"src":"28669:13:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":27925,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":27923,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27892,"src":"28685:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":27924,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27916,"src":"28703:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28685:27:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"28669:43:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":27927,"nodeType":"ExpressionStatement","src":"28669:43:59"}]},"functionSelector":"824ea8ed","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteProposal","nameLocation":"28000:18:59","parameters":{"id":27880,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27879,"mutability":"mutable","name":"proposalId","nameLocation":"28027:10:59","nodeType":"VariableDeclaration","scope":27929,"src":"28019:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27878,"name":"uint256","nodeType":"ElementaryTypeName","src":"28019:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"28018:20:59"},"returnParameters":{"id":27883,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27882,"mutability":"mutable","name":"canBeExecuted","nameLocation":"28073:13:59","nodeType":"VariableDeclaration","scope":27929,"src":"28068:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":27881,"name":"bool","nodeType":"ElementaryTypeName","src":"28068:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"28067:20:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":27939,"nodeType":"FunctionDefinition","src":"29009:231:59","nodes":[],"body":{"id":27938,"nodeType":"Block","src":"29108:132:59","nodes":[],"statements":[]},"baseFunctions":[25993],"implemented":true,"kind":"function","modifiers":[],"name":"_getRecipientStatus","nameLocation":"29018:19:59","overrides":{"id":27933,"nodeType":"OverrideSpecifier","overrides":[],"src":"29082:8:59"},"parameters":{"id":27932,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27931,"mutability":"mutable","name":"_recipientId","nameLocation":"29046:12:59","nodeType":"VariableDeclaration","scope":27939,"src":"29038:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27930,"name":"address","nodeType":"ElementaryTypeName","src":"29038:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"29037:22:59"},"returnParameters":{"id":27937,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27936,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27939,"src":"29100:6:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$519","typeString":"enum IStrategy.Status"},"typeName":{"id":27935,"nodeType":"UserDefinedTypeName","pathNode":{"id":27934,"name":"Status","nameLocations":["29100:6:59"],"nodeType":"IdentifierPath","referencedDeclaration":519,"src":"29100:6:59"},"referencedDeclaration":519,"src":"29100:6:59","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$519","typeString":"enum IStrategy.Status"}},"visibility":"internal"}],"src":"29099:8:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":27958,"nodeType":"FunctionDefinition","src":"29369:308:59","nodes":[],"body":{"id":27957,"nodeType":"Block","src":"29479:198:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":27954,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"29662:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":27955,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29662:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27956,"nodeType":"ExpressionStatement","src":"29662:8:59"}]},"baseFunctions":[25832],"documentation":{"id":27940,"nodeType":"StructuredDocumentation","src":"29246:118:59","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":"29378:10:59","overrides":{"id":27948,"nodeType":"OverrideSpecifier","overrides":[],"src":"29437:8:59"},"parameters":{"id":27947,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27943,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27958,"src":"29389:16:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":27941,"name":"address","nodeType":"ElementaryTypeName","src":"29389:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":27942,"nodeType":"ArrayTypeName","src":"29389:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":27946,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27958,"src":"29407:14:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":27944,"name":"bytes","nodeType":"ElementaryTypeName","src":"29407:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":27945,"nodeType":"ArrayTypeName","src":"29407:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"29388:34:59"},"returnParameters":{"id":27953,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27952,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27958,"src":"29455:22:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$524_memory_ptr_$dyn_memory_ptr","typeString":"struct IStrategy.PayoutSummary[]"},"typeName":{"baseType":{"id":27950,"nodeType":"UserDefinedTypeName","pathNode":{"id":27949,"name":"PayoutSummary","nameLocations":["29455:13:59"],"nodeType":"IdentifierPath","referencedDeclaration":524,"src":"29455:13:59"},"referencedDeclaration":524,"src":"29455:13:59","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$524_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"id":27951,"nodeType":"ArrayTypeName","src":"29455:15:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$524_storage_$dyn_storage_ptr","typeString":"struct IStrategy.PayoutSummary[]"}},"visibility":"internal"}],"src":"29454:24:59"},"scope":30151,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":27970,"nodeType":"FunctionDefinition","src":"29683:286:59","nodes":[],"body":{"id":27969,"nodeType":"Block","src":"29851:118:59","nodes":[],"statements":[]},"baseFunctions":[25984],"implemented":true,"kind":"function","modifiers":[],"name":"_getPayout","nameLocation":"29692:10:59","overrides":{"id":27964,"nodeType":"OverrideSpecifier","overrides":[],"src":"29799:8:59"},"parameters":{"id":27963,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27960,"mutability":"mutable","name":"_recipientId","nameLocation":"29711:12:59","nodeType":"VariableDeclaration","scope":27970,"src":"29703:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27959,"name":"address","nodeType":"ElementaryTypeName","src":"29703:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":27962,"mutability":"mutable","name":"_data","nameLocation":"29738:5:59","nodeType":"VariableDeclaration","scope":27970,"src":"29725:18:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":27961,"name":"bytes","nodeType":"ElementaryTypeName","src":"29725:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"29702:42:59"},"returnParameters":{"id":27968,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27967,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27970,"src":"29825:20:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$524_memory_ptr","typeString":"struct IStrategy.PayoutSummary"},"typeName":{"id":27966,"nodeType":"UserDefinedTypeName","pathNode":{"id":27965,"name":"PayoutSummary","nameLocations":["29825:13:59"],"nodeType":"IdentifierPath","referencedDeclaration":524,"src":"29825:13:59"},"referencedDeclaration":524,"src":"29825:13:59","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$524_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"visibility":"internal"}],"src":"29824:22:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":27981,"nodeType":"FunctionDefinition","src":"29975:127:59","nodes":[],"body":{"id":27980,"nodeType":"Block","src":"30052:50:59","nodes":[],"statements":[{"eventCall":{"arguments":[{"id":27977,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27972,"src":"30087:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":27976,"name":"PoolAmountIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26377,"src":"30067:19:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":27978,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30067:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27979,"nodeType":"EmitStatement","src":"30062:33:59"}]},"baseFunctions":[26007],"implemented":true,"kind":"function","modifiers":[],"name":"_afterIncreasePoolAmount","nameLocation":"29984:24:59","overrides":{"id":27974,"nodeType":"OverrideSpecifier","overrides":[],"src":"30043:8:59"},"parameters":{"id":27973,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27972,"mutability":"mutable","name":"_amount","nameLocation":"30017:7:59","nodeType":"VariableDeclaration","scope":27981,"src":"30009:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":27971,"name":"uint256","nodeType":"ElementaryTypeName","src":"30009:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30008:17:59"},"returnParameters":{"id":27975,"nodeType":"ParameterList","parameters":[],"src":"30052:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":27990,"nodeType":"FunctionDefinition","src":"30197:143:59","nodes":[],"body":{"id":27989,"nodeType":"Block","src":"30290:50:59","nodes":[],"statements":[]},"baseFunctions":[25944],"implemented":true,"kind":"function","modifiers":[],"name":"_isValidAllocator","nameLocation":"30206:17:59","overrides":{"id":27985,"nodeType":"OverrideSpecifier","overrides":[],"src":"30266:8:59"},"parameters":{"id":27984,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27983,"mutability":"mutable","name":"_allocator","nameLocation":"30232:10:59","nodeType":"VariableDeclaration","scope":27990,"src":"30224:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":27982,"name":"address","nodeType":"ElementaryTypeName","src":"30224:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30223:20:59"},"returnParameters":{"id":27988,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27987,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":27990,"src":"30284:4:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":27986,"name":"bool","nodeType":"ElementaryTypeName","src":"30284:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"30283:6:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":28000,"nodeType":"FunctionDefinition","src":"30346:86:59","nodes":[],"body":{"id":27999,"nodeType":"Block","src":"30392:40:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":27996,"name":"_active","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":27992,"src":"30417:7:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":27995,"name":"_setPoolActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25927,"src":"30402:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":27997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30402:23:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":27998,"nodeType":"ExpressionStatement","src":"30402:23:59"}]},"functionSelector":"b5f620ce","implemented":true,"kind":"function","modifiers":[],"name":"setPoolActive","nameLocation":"30355:13:59","parameters":{"id":27993,"nodeType":"ParameterList","parameters":[{"constant":false,"id":27992,"mutability":"mutable","name":"_active","nameLocation":"30374:7:59","nodeType":"VariableDeclaration","scope":28000,"src":"30369:12:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":27991,"name":"bool","nodeType":"ElementaryTypeName","src":"30369:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"30368:14:59"},"returnParameters":{"id":27994,"nodeType":"ParameterList","parameters":[],"src":"30392:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":28087,"nodeType":"FunctionDefinition","src":"30438:833:59","nodes":[],"body":{"id":28086,"nodeType":"Block","src":"30490:781:59","nodes":[],"statements":[{"body":{"id":28078,"nodeType":"Block","src":"30615:609:59","statements":[{"assignments":[28019],"declarations":[{"constant":false,"id":28019,"mutability":"mutable","name":"proposalId","nameLocation":"30637:10:59","nodeType":"VariableDeclaration","scope":28078,"src":"30629:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28018,"name":"uint256","nodeType":"ElementaryTypeName","src":"30629:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28025,"initialValue":{"baseExpression":{"baseExpression":{"id":28020,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26555,"src":"30650:20:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":28022,"indexExpression":{"id":28021,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28002,"src":"30671:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30650:29:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":28024,"indexExpression":{"id":28023,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28006,"src":"30680:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30650:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"30629:53:59"},{"assignments":[28028],"declarations":[{"constant":false,"id":28028,"mutability":"mutable","name":"proposal","nameLocation":"30713:8:59","nodeType":"VariableDeclaration","scope":28078,"src":"30696:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":28027,"nodeType":"UserDefinedTypeName","pathNode":{"id":28026,"name":"Proposal","nameLocations":["30696:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"30696:8:59"},"referencedDeclaration":26204,"src":"30696:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":28032,"initialValue":{"baseExpression":{"id":28029,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"30724:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28031,"indexExpression":{"id":28030,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28019,"src":"30734:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30724:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30696:49:59"},{"condition":{"arguments":[{"id":28034,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28019,"src":"30778:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28033,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28231,"src":"30763:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":28035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30763:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28077,"nodeType":"IfStatement","src":"30759:455:59","trueBody":{"id":28076,"nodeType":"Block","src":"30791:423:59","statements":[{"assignments":[28037],"declarations":[{"constant":false,"id":28037,"mutability":"mutable","name":"stakedPoints","nameLocation":"30817:12:59","nodeType":"VariableDeclaration","scope":28076,"src":"30809:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28036,"name":"uint256","nodeType":"ElementaryTypeName","src":"30809:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28042,"initialValue":{"baseExpression":{"expression":{"id":28038,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28028,"src":"30832:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28039,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30841:17:59","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":26193,"src":"30832:26:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28041,"indexExpression":{"id":28040,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28002,"src":"30859:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30832:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"30809:58:59"},{"expression":{"id":28049,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":28043,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28028,"src":"30885:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28046,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30894:17:59","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":26193,"src":"30885:26:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28047,"indexExpression":{"id":28045,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28002,"src":"30912:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"30885:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":28048,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30923:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"30885:39:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28050,"nodeType":"ExpressionStatement","src":"30885:39:59"},{"expression":{"id":28055,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":28051,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28028,"src":"30942:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28053,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"30951:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"30942:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":28054,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28037,"src":"30967:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30942:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28056,"nodeType":"ExpressionStatement","src":"30942:37:59"},{"expression":{"id":28059,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28057,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26518,"src":"30997:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":28058,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28037,"src":"31012:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30997:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28060,"nodeType":"ExpressionStatement","src":"30997:27:59"},{"expression":{"arguments":[{"id":28062,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28028,"src":"31069:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":28063,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28037,"src":"31079:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28061,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29040,"src":"31042:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$26204_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":28064,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31042:50:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28065,"nodeType":"ExpressionStatement","src":"31042:50:59"},{"eventCall":{"arguments":[{"id":28067,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28002,"src":"31128:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":28068,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28019,"src":"31137:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":28069,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31149:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":28070,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28028,"src":"31152:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28071,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31161:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"31152:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28072,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28028,"src":"31175:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28073,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31184:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"31175:23:59","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":28066,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26409,"src":"31115:12:59","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":28074,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31115:84:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28075,"nodeType":"EmitStatement","src":"31110:89:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28014,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28009,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28006,"src":"30568:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":28010,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26555,"src":"30572:20:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":28012,"indexExpression":{"id":28011,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28002,"src":"30593:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30572:29:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":28013,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30602:6:59","memberName":"length","nodeType":"MemberAccess","src":"30572:36:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30568:40:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28079,"initializationExpression":{"assignments":[28006],"declarations":[{"constant":false,"id":28006,"mutability":"mutable","name":"i","nameLocation":"30561:1:59","nodeType":"VariableDeclaration","scope":28079,"src":"30553:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28005,"name":"uint256","nodeType":"ElementaryTypeName","src":"30553:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28008,"initialValue":{"hexValue":"30","id":28007,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30565:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"30553:13:59"},"loopExpression":{"expression":{"id":28016,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"30610:3:59","subExpression":{"id":28015,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28006,"src":"30610:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28017,"nodeType":"ExpressionStatement","src":"30610:3:59"},"nodeType":"ForStatement","src":"30548:676:59"},{"expression":{"id":28084,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":28080,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26550,"src":"31233:18:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28082,"indexExpression":{"id":28081,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28002,"src":"31252:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"31233:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":28083,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31263:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"31233:31:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28085,"nodeType":"ExpressionStatement","src":"31233:31:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"withdraw","nameLocation":"30447:8:59","parameters":{"id":28003,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28002,"mutability":"mutable","name":"_member","nameLocation":"30464:7:59","nodeType":"VariableDeclaration","scope":28087,"src":"30456:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28001,"name":"address","nodeType":"ElementaryTypeName","src":"30456:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30455:17:59"},"returnParameters":{"id":28004,"nodeType":"ParameterList","parameters":[],"src":"30490:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":28163,"nodeType":"FunctionDefinition","src":"31955:1115:59","nodes":[],"body":{"id":28162,"nodeType":"Block","src":"32470:600:59","nodes":[],"statements":[{"assignments":[28118],"declarations":[{"constant":false,"id":28118,"mutability":"mutable","name":"proposal","nameLocation":"32497:8:59","nodeType":"VariableDeclaration","scope":28162,"src":"32480:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":28117,"nodeType":"UserDefinedTypeName","pathNode":{"id":28116,"name":"Proposal","nameLocations":["32480:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"32480:8:59"},"referencedDeclaration":26204,"src":"32480:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":28122,"initialValue":{"baseExpression":{"id":28119,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"32508:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28121,"indexExpression":{"id":28120,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28090,"src":"32518:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32508:22:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"32480:50:59"},{"expression":{"id":28134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28123,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28110,"src":"32541:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28127,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28124,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32553:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28125,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32562:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"32553:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":28126,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32581:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32553:29:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"expression":{"id":28130,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32608:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28131,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32617:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"32608:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28129,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28888,"src":"32589:18:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":28132,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32589:44:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28133,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"32553:80:59","trueExpression":{"hexValue":"30","id":28128,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32585:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32541:92:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28135,"nodeType":"ExpressionStatement","src":"32541:92:59"},{"expression":{"components":[{"expression":{"id":28136,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32664:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28137,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32673:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"32664:18:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":28138,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32696:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28139,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32705:11:59","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":26180,"src":"32696:20:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":28140,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32730:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28141,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32739:14:59","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":26184,"src":"32730:23:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":28142,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32767:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28143,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32776:15:59","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":26174,"src":"32767:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28144,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32805:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28145,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32814:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"32805:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28146,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32840:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28147,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32849:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"32840:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},{"expression":{"id":28148,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32877:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28149,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32886:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"32877:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28150,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32909:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28151,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32918:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"32909:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28152,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28110,"src":"32946:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"expression":{"id":28153,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"32969:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28154,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32978:17:59","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":26193,"src":"32969:26:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28157,"indexExpression":{"expression":{"id":28155,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"32996:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":28156,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33000:6:59","memberName":"sender","nodeType":"MemberAccess","src":"32996:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32969:38:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28158,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28118,"src":"33021:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28159,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33030:23:59","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":26203,"src":"33021:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28160,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"32650:413:59","typeDescriptions":{"typeIdentifier":"t_tuple$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_enum$_ProposalStatus_$26163_$_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":28115,"id":28161,"nodeType":"Return","src":"32643:420:59"}]},"documentation":{"id":28088,"nodeType":"StructuredDocumentation","src":"31277:673:59","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":"31964:11:59","parameters":{"id":28091,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28090,"mutability":"mutable","name":"_proposalId","nameLocation":"31984:11:59","nodeType":"VariableDeclaration","scope":28163,"src":"31976:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28089,"name":"uint256","nodeType":"ElementaryTypeName","src":"31976:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31975:21:59"},"returnParameters":{"id":28115,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28093,"mutability":"mutable","name":"submitter","nameLocation":"32081:9:59","nodeType":"VariableDeclaration","scope":28163,"src":"32073:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28092,"name":"address","nodeType":"ElementaryTypeName","src":"32073:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":28095,"mutability":"mutable","name":"beneficiary","nameLocation":"32112:11:59","nodeType":"VariableDeclaration","scope":28163,"src":"32104:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28094,"name":"address","nodeType":"ElementaryTypeName","src":"32104:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":28097,"mutability":"mutable","name":"requestedToken","nameLocation":"32145:14:59","nodeType":"VariableDeclaration","scope":28163,"src":"32137:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28096,"name":"address","nodeType":"ElementaryTypeName","src":"32137:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":28099,"mutability":"mutable","name":"requestedAmount","nameLocation":"32181:15:59","nodeType":"VariableDeclaration","scope":28163,"src":"32173:23:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28098,"name":"uint256","nodeType":"ElementaryTypeName","src":"32173:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28101,"mutability":"mutable","name":"stakedAmount","nameLocation":"32218:12:59","nodeType":"VariableDeclaration","scope":28163,"src":"32210:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28100,"name":"uint256","nodeType":"ElementaryTypeName","src":"32210:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28104,"mutability":"mutable","name":"proposalStatus","nameLocation":"32259:14:59","nodeType":"VariableDeclaration","scope":28163,"src":"32244:29:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"typeName":{"id":28103,"nodeType":"UserDefinedTypeName","pathNode":{"id":28102,"name":"ProposalStatus","nameLocations":["32244:14:59"],"nodeType":"IdentifierPath","referencedDeclaration":26163,"src":"32244:14:59"},"referencedDeclaration":26163,"src":"32244:14:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":28106,"mutability":"mutable","name":"blockLast","nameLocation":"32295:9:59","nodeType":"VariableDeclaration","scope":28163,"src":"32287:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28105,"name":"uint256","nodeType":"ElementaryTypeName","src":"32287:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28108,"mutability":"mutable","name":"convictionLast","nameLocation":"32326:14:59","nodeType":"VariableDeclaration","scope":28163,"src":"32318:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28107,"name":"uint256","nodeType":"ElementaryTypeName","src":"32318:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28110,"mutability":"mutable","name":"threshold","nameLocation":"32362:9:59","nodeType":"VariableDeclaration","scope":28163,"src":"32354:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28109,"name":"uint256","nodeType":"ElementaryTypeName","src":"32354:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28112,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"32393:17:59","nodeType":"VariableDeclaration","scope":28163,"src":"32385:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28111,"name":"uint256","nodeType":"ElementaryTypeName","src":"32385:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28114,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"32432:23:59","nodeType":"VariableDeclaration","scope":28163,"src":"32424:31:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28113,"name":"uint256","nodeType":"ElementaryTypeName","src":"32424:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32059:406:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":28179,"nodeType":"FunctionDefinition","src":"33544:184:59","nodes":[],"body":{"id":28178,"nodeType":"Block","src":"33652:76:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":28174,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28166,"src":"33701:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28175,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28168,"src":"33714:6:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":28173,"name":"_internal_getProposalVoterStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28196,"src":"33669:31:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_uint256_$","typeString":"function (uint256,address) view returns (uint256)"}},"id":28176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33669:52:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28172,"id":28177,"nodeType":"Return","src":"33662:59:59"}]},"documentation":{"id":28164,"nodeType":"StructuredDocumentation","src":"33349:190:59","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":"33553:21:59","parameters":{"id":28169,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28166,"mutability":"mutable","name":"_proposalId","nameLocation":"33583:11:59","nodeType":"VariableDeclaration","scope":28179,"src":"33575:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28165,"name":"uint256","nodeType":"ElementaryTypeName","src":"33575:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28168,"mutability":"mutable","name":"_voter","nameLocation":"33604:6:59","nodeType":"VariableDeclaration","scope":28179,"src":"33596:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28167,"name":"address","nodeType":"ElementaryTypeName","src":"33596:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"33574:37:59"},"returnParameters":{"id":28172,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28171,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28179,"src":"33643:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28170,"name":"uint256","nodeType":"ElementaryTypeName","src":"33643:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"33642:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":28196,"nodeType":"FunctionDefinition","src":"35252:226:59","nodes":[],"body":{"id":28195,"nodeType":"Block","src":"35406:72:59","nodes":[],"statements":[{"expression":{"baseExpression":{"expression":{"baseExpression":{"id":28188,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"35423:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28190,"indexExpression":{"id":28189,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28181,"src":"35433:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35423:22:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":28191,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35446:17:59","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":26193,"src":"35423:40:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28193,"indexExpression":{"id":28192,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28183,"src":"35464:6:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35423:48:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28187,"id":28194,"nodeType":"Return","src":"35416:55:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_internal_getProposalVoterStake","nameLocation":"35261:31:59","parameters":{"id":28184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28181,"mutability":"mutable","name":"_proposalId","nameLocation":"35301:11:59","nodeType":"VariableDeclaration","scope":28196,"src":"35293:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28180,"name":"uint256","nodeType":"ElementaryTypeName","src":"35293:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28183,"mutability":"mutable","name":"_voter","nameLocation":"35322:6:59","nodeType":"VariableDeclaration","scope":28196,"src":"35314:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28182,"name":"address","nodeType":"ElementaryTypeName","src":"35314:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"35292:37:59"},"returnParameters":{"id":28187,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28186,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28196,"src":"35393:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28185,"name":"uint256","nodeType":"ElementaryTypeName","src":"35393:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35392:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":28206,"nodeType":"FunctionDefinition","src":"35484:153:59","nodes":[],"body":{"id":28205,"nodeType":"Block","src":"35556:81:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":28201,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"35573:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":28202,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35591:20:59","memberName":"getBasisStakedAmount","nodeType":"MemberAccess","referencedDeclaration":32688,"src":"35573:38:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":28203,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35573:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28200,"id":28204,"nodeType":"Return","src":"35566:47:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"35493:20:59","parameters":{"id":28197,"nodeType":"ParameterList","parameters":[],"src":"35513:2:59"},"returnParameters":{"id":28200,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28199,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28206,"src":"35547:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28198,"name":"uint256","nodeType":"ElementaryTypeName","src":"35547:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35546:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":28231,"nodeType":"FunctionDefinition","src":"35643:193:59","nodes":[],"body":{"id":28230,"nodeType":"Block","src":"35725:111:59","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":28228,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28218,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":28213,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"35742:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28215,"indexExpression":{"id":28214,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28208,"src":"35752:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35742:22:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":28216,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35765:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"35742:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":28217,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35778:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"35742:37:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":28227,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":28219,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"35783:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28221,"indexExpression":{"id":28220,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28208,"src":"35793:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35783:22:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":28222,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35806:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"35783:32:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":28225,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35827:1:59","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":28224,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"35819:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":28223,"name":"address","nodeType":"ElementaryTypeName","src":"35819:7:59","typeDescriptions":{}}},"id":28226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35819:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"35783:46:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"35742:87:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":28212,"id":28229,"nodeType":"Return","src":"35735:94:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"proposalExists","nameLocation":"35652:14:59","parameters":{"id":28209,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28208,"mutability":"mutable","name":"_proposalID","nameLocation":"35675:11:59","nodeType":"VariableDeclaration","scope":28231,"src":"35667:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28207,"name":"uint256","nodeType":"ElementaryTypeName","src":"35667:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35666:21:59"},"returnParameters":{"id":28212,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28211,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28231,"src":"35719:4:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":28210,"name":"bool","nodeType":"ElementaryTypeName","src":"35719:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"35718:6:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":28250,"nodeType":"FunctionDefinition","src":"35842:191:59","nodes":[],"body":{"id":28249,"nodeType":"Block","src":"35945:88:59","nodes":[],"statements":[{"expression":{"id":28247,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28238,"name":"isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28236,"src":"35955:14:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28242,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28239,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"35972:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28240,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35981:8:59","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":26228,"src":"35972:17:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28241,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25483,"src":"35992:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35972:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28243,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28233,"src":"36006:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28244,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"36025:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36006:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35972:54:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"35955:71:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28248,"nodeType":"ExpressionStatement","src":"35955:71:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_isOverMaxRatio","nameLocation":"35851:15:59","parameters":{"id":28234,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28233,"mutability":"mutable","name":"_requestedAmount","nameLocation":"35875:16:59","nodeType":"VariableDeclaration","scope":28250,"src":"35867:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28232,"name":"uint256","nodeType":"ElementaryTypeName","src":"35867:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35866:26:59"},"returnParameters":{"id":28237,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28236,"mutability":"mutable","name":"isOverMaxRatio","nameLocation":"35929:14:59","nodeType":"VariableDeclaration","scope":28250,"src":"35924:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":28235,"name":"bool","nodeType":"ElementaryTypeName","src":"35924:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"35923:21:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":28366,"nodeType":"FunctionDefinition","src":"36039:1713:59","nodes":[],"body":{"id":28365,"nodeType":"Block","src":"36142:1610:59","nodes":[],"statements":[{"assignments":[28260],"declarations":[{"constant":false,"id":28260,"mutability":"mutable","name":"deltaSupportSum","nameLocation":"36159:15:59","nodeType":"VariableDeclaration","scope":28365,"src":"36152:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":28259,"name":"int256","nodeType":"ElementaryTypeName","src":"36152:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":28262,"initialValue":{"hexValue":"30","id":28261,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36177:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36152:26:59"},{"assignments":[28264],"declarations":[{"constant":false,"id":28264,"mutability":"mutable","name":"canAddSupport","nameLocation":"36193:13:59","nodeType":"VariableDeclaration","scope":28365,"src":"36188:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":28263,"name":"bool","nodeType":"ElementaryTypeName","src":"36188:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":28268,"initialValue":{"arguments":[{"id":28266,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28252,"src":"36227:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":28265,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26895,"src":"36209:17:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":28267,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36209:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"36188:47:59"},{"body":{"id":28327,"nodeType":"Block","src":"36299:714:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":28288,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36372:14:59","subExpression":{"id":28280,"name":"canAddSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28264,"src":"36373:13:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":28287,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":28282,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28256,"src":"36390:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28284,"indexExpression":{"id":28283,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28270,"src":"36407:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36390:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":28285,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36410:12:59","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":26208,"src":"36390:32:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":28286,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36425:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"36390:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"36372:54:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28293,"nodeType":"IfStatement","src":"36368:125:59","trueBody":{"id":28292,"nodeType":"Block","src":"36428:65:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":28289,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26325,"src":"36453:23:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":28290,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36453:25:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28291,"nodeType":"RevertStatement","src":"36446:32:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28299,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":28294,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28256,"src":"36510:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28296,"indexExpression":{"id":28295,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28270,"src":"36527:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36510:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":28297,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36530:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26206,"src":"36510:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":28298,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36544:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"36510:35:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28302,"nodeType":"IfStatement","src":"36506:187:59","trueBody":{"id":28301,"nodeType":"Block","src":"36547:146:59","statements":[{"id":28300,"nodeType":"Continue","src":"36670:8:59"}]}},{"assignments":[28304],"declarations":[{"constant":false,"id":28304,"mutability":"mutable","name":"proposalId","nameLocation":"36714:10:59","nodeType":"VariableDeclaration","scope":28327,"src":"36706:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28303,"name":"uint256","nodeType":"ElementaryTypeName","src":"36706:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28309,"initialValue":{"expression":{"baseExpression":{"id":28305,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28256,"src":"36727:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28307,"indexExpression":{"id":28306,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28270,"src":"36744:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36727:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":28308,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36747:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26206,"src":"36727:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"36706:51:59"},{"condition":{"id":28313,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36775:27:59","subExpression":{"arguments":[{"id":28311,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28304,"src":"36791:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28310,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28231,"src":"36776:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":28312,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36776:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28319,"nodeType":"IfStatement","src":"36771:167:59","trueBody":{"id":28318,"nodeType":"Block","src":"36804:134:59","statements":[{"errorCall":{"arguments":[{"id":28315,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28304,"src":"36847:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28314,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26311,"src":"36829:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":28316,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36829:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28317,"nodeType":"RevertStatement","src":"36822:36:59"}]}},{"expression":{"id":28325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28320,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28260,"src":"36951:15:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"baseExpression":{"id":28321,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28256,"src":"36970:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28323,"indexExpression":{"id":28322,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28270,"src":"36987:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36970:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":28324,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36990:12:59","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":26208,"src":"36970:32:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"36951:51:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":28326,"nodeType":"ExpressionStatement","src":"36951:51:59"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28276,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28273,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28270,"src":"36265:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":28274,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28256,"src":"36269:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28275,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36286:6:59","memberName":"length","nodeType":"MemberAccess","src":"36269:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36265:27:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28328,"initializationExpression":{"assignments":[28270],"declarations":[{"constant":false,"id":28270,"mutability":"mutable","name":"i","nameLocation":"36258:1:59","nodeType":"VariableDeclaration","scope":28328,"src":"36250:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28269,"name":"uint256","nodeType":"ElementaryTypeName","src":"36250:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28272,"initialValue":{"hexValue":"30","id":28271,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36262:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36250:13:59"},"loopExpression":{"expression":{"id":28278,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"36294:3:59","subExpression":{"id":28277,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28270,"src":"36294:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28279,"nodeType":"ExpressionStatement","src":"36294:3:59"},"nodeType":"ForStatement","src":"36245:768:59"},{"assignments":[28330],"declarations":[{"constant":false,"id":28330,"mutability":"mutable","name":"newTotalVotingSupport","nameLocation":"37117:21:59","nodeType":"VariableDeclaration","scope":28365,"src":"37109:29:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28329,"name":"uint256","nodeType":"ElementaryTypeName","src":"37109:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28337,"initialValue":{"arguments":[{"baseExpression":{"id":28332,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26550,"src":"37153:18:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28334,"indexExpression":{"id":28333,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28252,"src":"37172:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"37153:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28335,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28260,"src":"37182:15:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":28331,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28683,"src":"37141:11:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":28336,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37141:57:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"37109:89:59"},{"assignments":[28339],"declarations":[{"constant":false,"id":28339,"mutability":"mutable","name":"participantBalance","nameLocation":"37288:18:59","nodeType":"VariableDeclaration","scope":28365,"src":"37280:26:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28338,"name":"uint256","nodeType":"ElementaryTypeName","src":"37280:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28348,"initialValue":{"arguments":[{"id":28342,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28252,"src":"37352:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":28345,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"37369:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":28344,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37361:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":28343,"name":"address","nodeType":"ElementaryTypeName","src":"37361:7:59","typeDescriptions":{}}},"id":28346,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37361:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":28340,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"37309:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":28341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37327:24:59","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":32252,"src":"37309:42:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":28347,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37309:66:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"37280:95:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28349,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28330,"src":"37541:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":28350,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28339,"src":"37565:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37541:42:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28358,"nodeType":"IfStatement","src":"37537:147:59","trueBody":{"id":28357,"nodeType":"Block","src":"37585:99:59","statements":[{"errorCall":{"arguments":[{"id":28353,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28330,"src":"37631:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28354,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28339,"src":"37654:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28352,"name":"NotEnoughPointsToSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26303,"src":"37606:24:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":28355,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37606:67:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28356,"nodeType":"RevertStatement","src":"37599:74:59"}]}},{"expression":{"id":28363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":28359,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26550,"src":"37694:18:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28361,"indexExpression":{"id":28360,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28252,"src":"37713:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"37694:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28362,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28330,"src":"37724:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37694:51:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28364,"nodeType":"ExpressionStatement","src":"37694:51:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_check_before_addSupport","nameLocation":"36048:24:59","parameters":{"id":28257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28252,"mutability":"mutable","name":"_sender","nameLocation":"36081:7:59","nodeType":"VariableDeclaration","scope":28366,"src":"36073:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28251,"name":"address","nodeType":"ElementaryTypeName","src":"36073:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":28256,"mutability":"mutable","name":"_proposalSupport","nameLocation":"36115:16:59","nodeType":"VariableDeclaration","scope":28366,"src":"36090:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":28254,"nodeType":"UserDefinedTypeName","pathNode":{"id":28253,"name":"ProposalSupport","nameLocations":["36090:15:59"],"nodeType":"IdentifierPath","referencedDeclaration":26209,"src":"36090:15:59"},"referencedDeclaration":26209,"src":"36090:15:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_storage_ptr","typeString":"struct ProposalSupport"}},"id":28255,"nodeType":"ArrayTypeName","src":"36090:17:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"36072:60:59"},"returnParameters":{"id":28258,"nodeType":"ParameterList","parameters":[],"src":"36142:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":28651,"nodeType":"FunctionDefinition","src":"37758:3457:59","nodes":[],"body":{"id":28650,"nodeType":"Block","src":"37856:3359:59","nodes":[],"statements":[{"assignments":[28379],"declarations":[{"constant":false,"id":28379,"mutability":"mutable","name":"proposalsIds","nameLocation":"37883:12:59","nodeType":"VariableDeclaration","scope":28650,"src":"37866:29:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":28377,"name":"uint256","nodeType":"ElementaryTypeName","src":"37866:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28378,"nodeType":"ArrayTypeName","src":"37866:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":28380,"nodeType":"VariableDeclarationStatement","src":"37866:29:59"},{"body":{"id":28648,"nodeType":"Block","src":"37959:3250:59","statements":[{"assignments":[28393],"declarations":[{"constant":false,"id":28393,"mutability":"mutable","name":"proposalId","nameLocation":"37981:10:59","nodeType":"VariableDeclaration","scope":28648,"src":"37973:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28392,"name":"uint256","nodeType":"ElementaryTypeName","src":"37973:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28398,"initialValue":{"expression":{"baseExpression":{"id":28394,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28372,"src":"37994:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28396,"indexExpression":{"id":28395,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28382,"src":"38011:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"37994:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":28397,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"38014:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26206,"src":"37994:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"37973:51:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28399,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38097:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28400,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38110:6:59","memberName":"length","nodeType":"MemberAccess","src":"38097:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":28401,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38120:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"38097:24:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":28501,"nodeType":"Block","src":"38249:764:59","statements":[{"assignments":[28419],"declarations":[{"constant":false,"id":28419,"mutability":"mutable","name":"exist","nameLocation":"38272:5:59","nodeType":"VariableDeclaration","scope":28501,"src":"38267:10:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":28418,"name":"bool","nodeType":"ElementaryTypeName","src":"38267:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":28421,"initialValue":{"hexValue":"66616c7365","id":28420,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"38280:5:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"38267:18:59"},{"body":{"id":28449,"nodeType":"Block","src":"38353:268:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28437,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":28433,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38404:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28435,"indexExpression":{"id":28434,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28423,"src":"38417:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"38404:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":28436,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28393,"src":"38423:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38404:29:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28448,"nodeType":"IfStatement","src":"38400:203:59","trueBody":{"id":28447,"nodeType":"Block","src":"38435:168:59","statements":[{"expression":{"id":28440,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28438,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28419,"src":"38461:5:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":28439,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"38469:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"38461:12:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28441,"nodeType":"ExpressionStatement","src":"38461:12:59"},{"errorCall":{"arguments":[{"id":28443,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28393,"src":"38532:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28444,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28423,"src":"38544:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28442,"name":"ProposalSupportDuplicated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26317,"src":"38506:25:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":28445,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38506:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28446,"nodeType":"RevertStatement","src":"38499:47:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28429,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28426,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28423,"src":"38323:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":28427,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38327:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38340:6:59","memberName":"length","nodeType":"MemberAccess","src":"38327:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38323:23:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28450,"initializationExpression":{"assignments":[28423],"declarations":[{"constant":false,"id":28423,"mutability":"mutable","name":"j","nameLocation":"38316:1:59","nodeType":"VariableDeclaration","scope":28450,"src":"38308:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28422,"name":"uint256","nodeType":"ElementaryTypeName","src":"38308:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28425,"initialValue":{"hexValue":"30","id":28424,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38320:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"38308:13:59"},"loopExpression":{"expression":{"id":28431,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"38348:3:59","subExpression":{"id":28430,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28423,"src":"38348:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28432,"nodeType":"ExpressionStatement","src":"38348:3:59"},"nodeType":"ForStatement","src":"38303:318:59"},{"condition":{"id":28452,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"38642:6:59","subExpression":{"id":28451,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28419,"src":"38643:5:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28500,"nodeType":"IfStatement","src":"38638:361:59","trueBody":{"id":28499,"nodeType":"Block","src":"38650:349:59","statements":[{"assignments":[28457],"declarations":[{"constant":false,"id":28457,"mutability":"mutable","name":"temp","nameLocation":"38689:4:59","nodeType":"VariableDeclaration","scope":28499,"src":"38672:21:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":28455,"name":"uint256","nodeType":"ElementaryTypeName","src":"38672:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28456,"nodeType":"ArrayTypeName","src":"38672:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":28466,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28464,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28461,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38710:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38723:6:59","memberName":"length","nodeType":"MemberAccess","src":"38710:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":28463,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38732:1:59","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"38710:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28460,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"38696:13:59","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":28458,"name":"uint256","nodeType":"ElementaryTypeName","src":"38700:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28459,"nodeType":"ArrayTypeName","src":"38700:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":28465,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38696:38:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"VariableDeclarationStatement","src":"38672:62:59"},{"body":{"id":28486,"nodeType":"Block","src":"38806:74:59","statements":[{"expression":{"id":28484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":28478,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28457,"src":"38832:4:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28480,"indexExpression":{"id":28479,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28468,"src":"38837:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"38832:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":28481,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38842:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28483,"indexExpression":{"id":28482,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28468,"src":"38855:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"38842:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38832:25:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28485,"nodeType":"ExpressionStatement","src":"38832:25:59"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28474,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28471,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28468,"src":"38776:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":28472,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38780:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28473,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38793:6:59","memberName":"length","nodeType":"MemberAccess","src":"38780:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38776:23:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28487,"initializationExpression":{"assignments":[28468],"declarations":[{"constant":false,"id":28468,"mutability":"mutable","name":"j","nameLocation":"38769:1:59","nodeType":"VariableDeclaration","scope":28487,"src":"38761:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28467,"name":"uint256","nodeType":"ElementaryTypeName","src":"38761:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28470,"initialValue":{"hexValue":"30","id":28469,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38773:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"38761:13:59"},"loopExpression":{"expression":{"id":28476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"38801:3:59","subExpression":{"id":28475,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28468,"src":"38801:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28477,"nodeType":"ExpressionStatement","src":"38801:3:59"},"nodeType":"ForStatement","src":"38756:124:59"},{"expression":{"id":28493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":28488,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28457,"src":"38901:4:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28491,"indexExpression":{"expression":{"id":28489,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38906:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28490,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38919:6:59","memberName":"length","nodeType":"MemberAccess","src":"38906:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"38901:25:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28492,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28393,"src":"38929:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38901:38:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28494,"nodeType":"ExpressionStatement","src":"38901:38:59"},{"expression":{"id":28497,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28495,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38961:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28496,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28457,"src":"38976:4:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"38961:19:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28498,"nodeType":"ExpressionStatement","src":"38961:19:59"}]}}]},"id":28502,"nodeType":"IfStatement","src":"38093:920:59","trueBody":{"id":28417,"nodeType":"Block","src":"38123:120:59","statements":[{"expression":{"id":28409,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28403,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38141:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":28407,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38170:1:59","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":28406,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"38156:13:59","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":28404,"name":"uint256","nodeType":"ElementaryTypeName","src":"38160:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28405,"nodeType":"ArrayTypeName","src":"38160:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":28408,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38156:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"38141:31:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28410,"nodeType":"ExpressionStatement","src":"38141:31:59"},{"expression":{"id":28415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":28411,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28379,"src":"38190:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":28413,"indexExpression":{"hexValue":"30","id":28412,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38203:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"38190:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28414,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28393,"src":"38208:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38190:28:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28416,"nodeType":"ExpressionStatement","src":"38190:28:59"}]}},{"assignments":[28504],"declarations":[{"constant":false,"id":28504,"mutability":"mutable","name":"delta","nameLocation":"39033:5:59","nodeType":"VariableDeclaration","scope":28648,"src":"39026:12:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":28503,"name":"int256","nodeType":"ElementaryTypeName","src":"39026:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":28509,"initialValue":{"expression":{"baseExpression":{"id":28505,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28372,"src":"39041:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28507,"indexExpression":{"id":28506,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28382,"src":"39058:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"39041:19:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":28508,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39061:12:59","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":26208,"src":"39041:32:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"39026:47:59"},{"assignments":[28512],"declarations":[{"constant":false,"id":28512,"mutability":"mutable","name":"proposal","nameLocation":"39105:8:59","nodeType":"VariableDeclaration","scope":28648,"src":"39088:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":28511,"nodeType":"UserDefinedTypeName","pathNode":{"id":28510,"name":"Proposal","nameLocations":["39088:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"39088:8:59"},"referencedDeclaration":26204,"src":"39088:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":28516,"initialValue":{"baseExpression":{"id":28513,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"39116:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28515,"indexExpression":{"id":28514,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28393,"src":"39126:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"39116:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"39088:49:59"},{"assignments":[28518],"declarations":[{"constant":false,"id":28518,"mutability":"mutable","name":"previousStakedPoints","nameLocation":"39247:20:59","nodeType":"VariableDeclaration","scope":28648,"src":"39239:28:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28517,"name":"uint256","nodeType":"ElementaryTypeName","src":"39239:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28523,"initialValue":{"baseExpression":{"expression":{"id":28519,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"39270:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28520,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39279:17:59","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":26193,"src":"39270:26:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28522,"indexExpression":{"id":28521,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28368,"src":"39297:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"39270:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"39239:66:59"},{"assignments":[28525],"declarations":[{"constant":false,"id":28525,"mutability":"mutable","name":"stakedPoints","nameLocation":"39478:12:59","nodeType":"VariableDeclaration","scope":28648,"src":"39470:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28524,"name":"uint256","nodeType":"ElementaryTypeName","src":"39470:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28530,"initialValue":{"arguments":[{"id":28527,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"39505:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28528,"name":"delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28504,"src":"39527:5:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":28526,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28683,"src":"39493:11:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":28529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39493:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"39470:63:59"},{"expression":{"id":28537,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":28531,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"39668:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28534,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39677:17:59","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":26193,"src":"39668:26:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":28535,"indexExpression":{"id":28533,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28368,"src":"39695:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"39668:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28536,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"39706:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"39668:50:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28538,"nodeType":"ExpressionStatement","src":"39668:50:59"},{"assignments":[28540],"declarations":[{"constant":false,"id":28540,"mutability":"mutable","name":"hasProposal","nameLocation":"39957:11:59","nodeType":"VariableDeclaration","scope":28648,"src":"39952:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":28539,"name":"bool","nodeType":"ElementaryTypeName","src":"39952:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":28542,"initialValue":{"hexValue":"66616c7365","id":28541,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"39971:5:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"39952:24:59"},{"body":{"id":28571,"nodeType":"Block","src":"40057:179:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28563,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"baseExpression":{"id":28556,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26555,"src":"40079:20:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":28558,"indexExpression":{"id":28557,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28368,"src":"40100:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40079:29:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":28560,"indexExpression":{"id":28559,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28544,"src":"40109:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40079:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":28561,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"40115:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28562,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40124:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"40115:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40079:55:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28570,"nodeType":"IfStatement","src":"40075:147:59","trueBody":{"id":28569,"nodeType":"Block","src":"40136:86:59","statements":[{"expression":{"id":28566,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28564,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28540,"src":"40158:11:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":28565,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"40172:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"40158:18:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28567,"nodeType":"ExpressionStatement","src":"40158:18:59"},{"id":28568,"nodeType":"Break","src":"40198:5:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28552,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28547,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28544,"src":"40010:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":28548,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26555,"src":"40014:20:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":28550,"indexExpression":{"id":28549,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28368,"src":"40035:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40014:29:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":28551,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40044:6:59","memberName":"length","nodeType":"MemberAccess","src":"40014:36:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40010:40:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28572,"initializationExpression":{"assignments":[28544],"declarations":[{"constant":false,"id":28544,"mutability":"mutable","name":"k","nameLocation":"40003:1:59","nodeType":"VariableDeclaration","scope":28572,"src":"39995:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28543,"name":"uint256","nodeType":"ElementaryTypeName","src":"39995:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28546,"initialValue":{"hexValue":"30","id":28545,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40007:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"39995:13:59"},"loopExpression":{"expression":{"id":28554,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"40052:3:59","subExpression":{"id":28553,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28544,"src":"40052:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28555,"nodeType":"ExpressionStatement","src":"40052:3:59"},"nodeType":"ForStatement","src":"39990:246:59"},{"condition":{"id":28574,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"40253:12:59","subExpression":{"id":28573,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28540,"src":"40254:11:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28584,"nodeType":"IfStatement","src":"40249:106:59","trueBody":{"id":28583,"nodeType":"Block","src":"40267:88:59","statements":[{"expression":{"arguments":[{"expression":{"id":28579,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"40320:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28580,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40329:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"40320:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"baseExpression":{"id":28575,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26555,"src":"40285:20:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":28577,"indexExpression":{"id":28576,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28368,"src":"40306:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40285:29:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":28578,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40315:4:59","memberName":"push","nodeType":"MemberAccess","src":"40285:34:59","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":28581,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40285:55:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28582,"nodeType":"ExpressionStatement","src":"40285:55:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28587,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28585,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"40510:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":28586,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"40534:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40510:36:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":28617,"nodeType":"Block","src":"40715:161:59","statements":[{"expression":{"id":28607,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28603,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26518,"src":"40733:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28606,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28604,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"40748:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":28605,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"40771:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40748:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40733:50:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28608,"nodeType":"ExpressionStatement","src":"40733:50:59"},{"expression":{"id":28615,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":28609,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"40801:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28611,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"40810:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"40801:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28614,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28612,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"40826:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":28613,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"40849:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40826:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40801:60:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28616,"nodeType":"ExpressionStatement","src":"40801:60:59"}]},"id":28618,"nodeType":"IfStatement","src":"40506:370:59","trueBody":{"id":28602,"nodeType":"Block","src":"40548:161:59","statements":[{"expression":{"id":28592,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28588,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26518,"src":"40566:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28591,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28589,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"40581:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":28590,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"40596:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40581:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40566:50:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28593,"nodeType":"ExpressionStatement","src":"40566:50:59"},{"expression":{"id":28600,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":28594,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"40634:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28596,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"40643:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"40634:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28599,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28597,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"40659:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":28598,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"40674:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40659:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40634:60:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28601,"nodeType":"ExpressionStatement","src":"40634:60:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28622,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28619,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"40893:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28620,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40902:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"40893:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":28621,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40915:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"40893:23:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":28646,"nodeType":"Block","src":"40990:209:59","statements":[{"expression":{"arguments":[{"id":28632,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"41035:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":28633,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28518,"src":"41045:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28631,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29040,"src":"41008:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$26204_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":28634,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41008:58:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28635,"nodeType":"ExpressionStatement","src":"41008:58:59"},{"eventCall":{"arguments":[{"id":28637,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28368,"src":"41102:7:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":28638,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28393,"src":"41111:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28639,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28525,"src":"41123:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28640,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"41137:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28641,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41146:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"41137:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28642,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"41160:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28643,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41169:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"41160:23:59","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":28636,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26409,"src":"41089:12:59","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":28644,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41089:95:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28645,"nodeType":"EmitStatement","src":"41084:100:59"}]},"id":28647,"nodeType":"IfStatement","src":"40889:310:59","trueBody":{"id":28630,"nodeType":"Block","src":"40918:66:59","statements":[{"expression":{"id":28628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":28623,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28512,"src":"40936:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28625,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"40945:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"40936:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":28626,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"40957:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":28627,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40963:6:59","memberName":"number","nodeType":"MemberAccess","src":"40957:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40936:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28629,"nodeType":"ExpressionStatement","src":"40936:33:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28385,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28382,"src":"37925:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":28386,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28372,"src":"37929:16:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":28387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37946:6:59","memberName":"length","nodeType":"MemberAccess","src":"37929:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37925:27:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28649,"initializationExpression":{"assignments":[28382],"declarations":[{"constant":false,"id":28382,"mutability":"mutable","name":"i","nameLocation":"37918:1:59","nodeType":"VariableDeclaration","scope":28649,"src":"37910:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28381,"name":"uint256","nodeType":"ElementaryTypeName","src":"37910:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28384,"initialValue":{"hexValue":"30","id":28383,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37922:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"37910:13:59"},"loopExpression":{"expression":{"id":28390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"37954:3:59","subExpression":{"id":28389,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28382,"src":"37954:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28391,"nodeType":"ExpressionStatement","src":"37954:3:59"},"nodeType":"ForStatement","src":"37905:3304:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addSupport","nameLocation":"37767:11:59","parameters":{"id":28373,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28368,"mutability":"mutable","name":"_sender","nameLocation":"37787:7:59","nodeType":"VariableDeclaration","scope":28651,"src":"37779:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":28367,"name":"address","nodeType":"ElementaryTypeName","src":"37779:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":28372,"mutability":"mutable","name":"_proposalSupport","nameLocation":"37821:16:59","nodeType":"VariableDeclaration","scope":28651,"src":"37796:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":28370,"nodeType":"UserDefinedTypeName","pathNode":{"id":28369,"name":"ProposalSupport","nameLocations":["37796:15:59"],"nodeType":"IdentifierPath","referencedDeclaration":26209,"src":"37796:15:59"},"referencedDeclaration":26209,"src":"37796:15:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$26209_storage_ptr","typeString":"struct ProposalSupport"}},"id":28371,"nodeType":"ArrayTypeName","src":"37796:17:59","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$26209_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"37778:60:59"},"returnParameters":{"id":28374,"nodeType":"ParameterList","parameters":[],"src":"37856:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":28683,"nodeType":"FunctionDefinition","src":"41221:371:59","nodes":[],"body":{"id":28682,"nodeType":"Block","src":"41315:277:59","nodes":[],"statements":[{"assignments":[28661],"declarations":[{"constant":false,"id":28661,"mutability":"mutable","name":"result","nameLocation":"41332:6:59","nodeType":"VariableDeclaration","scope":28682,"src":"41325:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":28660,"name":"int256","nodeType":"ElementaryTypeName","src":"41325:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":28668,"initialValue":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":28667,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":28664,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28653,"src":"41348:8:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28663,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"41341:6:59","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":28662,"name":"int256","nodeType":"ElementaryTypeName","src":"41341:6:59","typeDescriptions":{}}},"id":28665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41341:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":28666,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28655,"src":"41360:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"41341:25:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"41325:41:59"},{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":28671,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28669,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28661,"src":"41381:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":28670,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41390:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"41381:10:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28676,"nodeType":"IfStatement","src":"41377:177:59","trueBody":{"id":28675,"nodeType":"Block","src":"41393:161:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":28672,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"41473:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":28673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41473:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28674,"nodeType":"ExpressionStatement","src":"41473:8:59"}]}},{"expression":{"arguments":[{"id":28679,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28661,"src":"41578:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":28678,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"41570:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":28677,"name":"uint256","nodeType":"ElementaryTypeName","src":"41570:7:59","typeDescriptions":{}}},"id":28680,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41570:15:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28659,"id":28681,"nodeType":"Return","src":"41563:22:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_applyDelta","nameLocation":"41230:11:59","parameters":{"id":28656,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28653,"mutability":"mutable","name":"_support","nameLocation":"41250:8:59","nodeType":"VariableDeclaration","scope":28683,"src":"41242:16:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28652,"name":"uint256","nodeType":"ElementaryTypeName","src":"41242:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28655,"mutability":"mutable","name":"_delta","nameLocation":"41267:6:59","nodeType":"VariableDeclaration","scope":28683,"src":"41260:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":28654,"name":"int256","nodeType":"ElementaryTypeName","src":"41260:6:59","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"41241:33:59"},"returnParameters":{"id":28659,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28658,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28683,"src":"41306:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28657,"name":"uint256","nodeType":"ElementaryTypeName","src":"41306:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41305:9:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":28710,"nodeType":"FunctionDefinition","src":"41598:282:59","nodes":[],"body":{"id":28709,"nodeType":"Block","src":"41694:186:59","nodes":[],"statements":[{"assignments":[28692],"declarations":[{"constant":false,"id":28692,"mutability":"mutable","name":"proposal","nameLocation":"41721:8:59","nodeType":"VariableDeclaration","scope":28709,"src":"41704:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":28691,"nodeType":"UserDefinedTypeName","pathNode":{"id":28690,"name":"Proposal","nameLocations":["41704:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"41704:8:59"},"referencedDeclaration":26204,"src":"41704:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":28696,"initialValue":{"baseExpression":{"id":28693,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"41732:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":28695,"indexExpression":{"id":28694,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28685,"src":"41742:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"41732:22:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"41704:50:59"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28702,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28698,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"41791:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":28699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"41797:6:59","memberName":"number","nodeType":"MemberAccess","src":"41791:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":28700,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28692,"src":"41806:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28701,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41815:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"41806:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41791:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28703,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28692,"src":"41826:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28704,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41835:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"41826:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":28705,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28692,"src":"41851:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":28706,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41860:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"41851:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28697,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28768,"src":"41771:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":28707,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41771:102:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28689,"id":28708,"nodeType":"Return","src":"41764:109:59"}]},"functionSelector":"60b0645a","implemented":true,"kind":"function","modifiers":[],"name":"calculateProposalConviction","nameLocation":"41607:27:59","parameters":{"id":28686,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28685,"mutability":"mutable","name":"_proposalId","nameLocation":"41643:11:59","nodeType":"VariableDeclaration","scope":28710,"src":"41635:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28684,"name":"uint256","nodeType":"ElementaryTypeName","src":"41635:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41634:21:59"},"returnParameters":{"id":28689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28688,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28710,"src":"41685:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28687,"name":"uint256","nodeType":"ElementaryTypeName","src":"41685:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41684:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":28768,"nodeType":"FunctionDefinition","src":"42297:644:59","nodes":[],"body":{"id":28767,"nodeType":"Block","src":"42460:481:59","nodes":[],"statements":[{"assignments":[28723],"declarations":[{"constant":false,"id":28723,"mutability":"mutable","name":"t","nameLocation":"42478:1:59","nodeType":"VariableDeclaration","scope":28767,"src":"42470:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28722,"name":"uint256","nodeType":"ElementaryTypeName","src":"42470:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28725,"initialValue":{"id":28724,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28713,"src":"42482:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42470:23:59"},{"assignments":[28727],"declarations":[{"constant":false,"id":28727,"mutability":"mutable","name":"atTWO_128","nameLocation":"42745:9:59","nodeType":"VariableDeclaration","scope":28767,"src":"42737:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28726,"name":"uint256","nodeType":"ElementaryTypeName","src":"42737:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28738,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28732,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28729,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"42763:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28730,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"42772:5:59","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":26232,"src":"42763:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":28731,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42781:3:59","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"42763:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28733,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42762:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":28734,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"42788:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42762:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28736,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28723,"src":"42791:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28728,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28991,"src":"42757:4:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":28737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42757:36:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42737:56:59"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28765,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28759,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28739,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28727,"src":"42813:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28740,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28715,"src":"42825:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42813:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28742,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42812:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28757,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28750,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28745,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28743,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28717,"src":"42840:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28744,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"42853:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42840:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28748,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28746,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26489,"src":"42858:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":28747,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28727,"src":"42868:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42858:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28749,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42857:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42840:38:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28751,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42839:40:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28755,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28752,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"42883:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":28753,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"42887:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28754,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"42896:5:59","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":26232,"src":"42887:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42883:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28756,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42882:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42839:63:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28758,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42838:65:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42812:91:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28760,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42811:93:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":28761,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26492,"src":"42907:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42811:103:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28763,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42810:105:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":28764,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42931:3:59","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"42810:124:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28721,"id":28766,"nodeType":"Return","src":"42803:131:59"}]},"documentation":{"id":28711,"nodeType":"StructuredDocumentation","src":"41886:406:59","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":"42306:19:59","parameters":{"id":28718,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28713,"mutability":"mutable","name":"_timePassed","nameLocation":"42334:11:59","nodeType":"VariableDeclaration","scope":28768,"src":"42326:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28712,"name":"uint256","nodeType":"ElementaryTypeName","src":"42326:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28715,"mutability":"mutable","name":"_lastConv","nameLocation":"42355:9:59","nodeType":"VariableDeclaration","scope":28768,"src":"42347:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28714,"name":"uint256","nodeType":"ElementaryTypeName","src":"42347:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28717,"mutability":"mutable","name":"_oldAmount","nameLocation":"42374:10:59","nodeType":"VariableDeclaration","scope":28768,"src":"42366:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28716,"name":"uint256","nodeType":"ElementaryTypeName","src":"42366:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42325:60:59"},"returnParameters":{"id":28721,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28720,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28768,"src":"42447:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28719,"name":"uint256","nodeType":"ElementaryTypeName","src":"42447:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42446:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":28888,"nodeType":"FunctionDefinition","src":"43522:1158:59","nodes":[],"body":{"id":28887,"nodeType":"Block","src":"43625:1055:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28778,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28776,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25483,"src":"43759:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":28777,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43773:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"43759:15:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28783,"nodeType":"IfStatement","src":"43755:66:59","trueBody":{"id":28782,"nodeType":"Block","src":"43776:45:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":28779,"name":"PoolIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26295,"src":"43797:11:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":28780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43797:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28781,"nodeType":"RevertStatement","src":"43790:20:59"}]}},{"condition":{"arguments":[{"id":28785,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28771,"src":"43851:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28784,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28250,"src":"43835:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":28786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43835:33:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28791,"nodeType":"IfStatement","src":"43831:178:59","trueBody":{"id":28790,"nodeType":"Block","src":"43870:139:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":28787,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"43928:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":28788,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43928:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28789,"nodeType":"ExpressionStatement","src":"43928:8:59"}]}},{"assignments":[28793],"declarations":[{"constant":false,"id":28793,"mutability":"mutable","name":"denom","nameLocation":"44027:5:59","nodeType":"VariableDeclaration","scope":28887,"src":"44019:13:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28792,"name":"uint256","nodeType":"ElementaryTypeName","src":"44019:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28812,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28802,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28794,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"44036:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28795,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44045:8:59","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":26228,"src":"44036:17:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":28798,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":28796,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44056:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":28797,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44061:2:59","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44056:7:59","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"44036:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28800,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44035:29:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":28801,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"44067:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44035:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28807,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28803,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28771,"src":"44072:16:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":28806,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":28804,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44091:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":28805,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44096:2:59","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44091:7:59","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"44072:26:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28808,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44071:28:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":28809,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25483,"src":"44102:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44071:41:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44035:77:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"44019:93:59"},{"expression":{"id":28847,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28813,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28774,"src":"44122:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28843,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28832,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28829,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28817,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28814,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"44154:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28815,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44163:6:59","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":26230,"src":"44154:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":28816,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44173:3:59","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"44154:22:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28818,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44153:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":28819,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"44180:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44153:28:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28821,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44152:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28827,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28824,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28822,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28793,"src":"44187:5:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28823,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28793,"src":"44195:5:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44187:13:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28825,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44186:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":28826,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44205:2:59","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44186:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28828,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44185:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44152:56:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28830,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44151:58:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28831,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"44212:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44151:62:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28833,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44150:64:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28837,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28834,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"44218:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":28835,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"44222:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28836,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44231:5:59","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":26232,"src":"44222:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44218:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28838,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44217:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44150:87:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28840,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44149:89:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":28841,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28999,"src":"44257:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":28842,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44257:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44149:136:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28844,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44135:160:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":28845,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44299:2:59","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44135:166:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44122:179:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28848,"nodeType":"ExpressionStatement","src":"44122:179:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28852,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":28849,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28999,"src":"44316:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":28850,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44316:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":28851,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44348:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"44316:33:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28886,"nodeType":"IfStatement","src":"44312:362:59","trueBody":{"id":28885,"nodeType":"Block","src":"44351:323:59","statements":[{"assignments":[28854],"declarations":[{"constant":false,"id":28854,"mutability":"mutable","name":"thresholdOverride","nameLocation":"44373:17:59","nodeType":"VariableDeclaration","scope":28885,"src":"44365:25:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28853,"name":"uint256","nodeType":"ElementaryTypeName","src":"44365:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28875,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28874,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28869,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28862,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":28855,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"44413:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":28856,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44422:18:59","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":26234,"src":"44413:27:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":28857,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28999,"src":"44443:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":28858,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44443:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44413:58:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28860,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44412:60:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28861,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"44475:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44412:64:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28863,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44411:66:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":28865,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28999,"src":"44518:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":28866,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44518:28:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28864,"name":"getMaxConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29311,"src":"44501:16:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":28867,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44501:46:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28868,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44500:48:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44411:137:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28870,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44393:169:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"commonType":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"},"id":28873,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":28871,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44565:2:59","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3131","id":28872,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44571:2:59","typeDescriptions":{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},"value":"11"},"src":"44565:8:59","typeDescriptions":{"typeIdentifier":"t_rational_100000000000_by_1","typeString":"int_const 100000000000"}},"src":"44393:180:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"44365:208:59"},{"expression":{"id":28883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28876,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28774,"src":"44587:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28879,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28877,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28774,"src":"44600:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":28878,"name":"thresholdOverride","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28854,"src":"44613:17:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44600:30:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"id":28881,"name":"thresholdOverride","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28854,"src":"44646:17:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28882,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"44600:63:59","trueExpression":{"id":28880,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28774,"src":"44633:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44587:76:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28884,"nodeType":"ExpressionStatement","src":"44587:76:59"}]}}]},"documentation":{"id":28769,"nodeType":"StructuredDocumentation","src":"42947:570:59","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":"43531:18:59","parameters":{"id":28772,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28771,"mutability":"mutable","name":"_requestedAmount","nameLocation":"43558:16:59","nodeType":"VariableDeclaration","scope":28888,"src":"43550:24:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28770,"name":"uint256","nodeType":"ElementaryTypeName","src":"43550:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43549:26:59"},"returnParameters":{"id":28775,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28774,"mutability":"mutable","name":"_threshold","nameLocation":"43613:10:59","nodeType":"VariableDeclaration","scope":28888,"src":"43605:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28773,"name":"uint256","nodeType":"ElementaryTypeName","src":"43605:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43604:20:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":28925,"nodeType":"FunctionDefinition","src":"44941:306:59","nodes":[],"body":{"id":28924,"nodeType":"Block","src":"45027:220:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28900,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28898,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28891,"src":"45041:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":28899,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26489,"src":"45046:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45041:12:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28905,"nodeType":"IfStatement","src":"45037:77:59","trueBody":{"id":28904,"nodeType":"Block","src":"45055:59:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":28901,"name":"AShouldBeUnderOrEqTwo_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26345,"src":"45076:25:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":28902,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45076:27:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28903,"nodeType":"RevertStatement","src":"45069:34:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28908,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28906,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28893,"src":"45127:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":28907,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26489,"src":"45132:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45127:12:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28913,"nodeType":"IfStatement","src":"45123:72:59","trueBody":{"id":28912,"nodeType":"Block","src":"45141:54:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":28909,"name":"BShouldBeLessTwo_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26343,"src":"45162:20:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":28910,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45162:22:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28911,"nodeType":"RevertStatement","src":"45155:29:59"}]}},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28922,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28919,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28914,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28891,"src":"45214:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":28915,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28893,"src":"45219:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45214:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28917,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"45213:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":28918,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26492,"src":"45225:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45213:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":28920,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"45212:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":28921,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45237:3:59","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"45212:28:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28897,"id":28923,"nodeType":"Return","src":"45205:35:59"}]},"documentation":{"id":28889,"nodeType":"StructuredDocumentation","src":"44686:250:59","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":"44950:4:59","parameters":{"id":28894,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28891,"mutability":"mutable","name":"_a","nameLocation":"44963:2:59","nodeType":"VariableDeclaration","scope":28925,"src":"44955:10:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28890,"name":"uint256","nodeType":"ElementaryTypeName","src":"44955:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28893,"mutability":"mutable","name":"_b","nameLocation":"44975:2:59","nodeType":"VariableDeclaration","scope":28925,"src":"44967:10:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28892,"name":"uint256","nodeType":"ElementaryTypeName","src":"44967:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"44954:24:59"},"returnParameters":{"id":28897,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28896,"mutability":"mutable","name":"_result","nameLocation":"45018:7:59","nodeType":"VariableDeclaration","scope":28925,"src":"45010:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28895,"name":"uint256","nodeType":"ElementaryTypeName","src":"45010:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45009:17:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":28991,"nodeType":"FunctionDefinition","src":"45469:476:59","nodes":[],"body":{"id":28990,"nodeType":"Block","src":"45555:390:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28937,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28935,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28928,"src":"45569:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":28936,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26489,"src":"45575:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45569:13:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28942,"nodeType":"IfStatement","src":"45565:74:59","trueBody":{"id":28941,"nodeType":"Block","src":"45584:55:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":28938,"name":"AShouldBeUnderTwo_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26341,"src":"45605:21:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":28939,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45605:23:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":28940,"nodeType":"RevertStatement","src":"45598:30:59"}]}},{"assignments":[28944],"declarations":[{"constant":false,"id":28944,"mutability":"mutable","name":"a","nameLocation":"45657:1:59","nodeType":"VariableDeclaration","scope":28990,"src":"45649:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28943,"name":"uint256","nodeType":"ElementaryTypeName","src":"45649:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28946,"initialValue":{"id":28945,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28928,"src":"45661:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"45649:14:59"},{"assignments":[28948],"declarations":[{"constant":false,"id":28948,"mutability":"mutable","name":"b","nameLocation":"45681:1:59","nodeType":"VariableDeclaration","scope":28990,"src":"45673:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28947,"name":"uint256","nodeType":"ElementaryTypeName","src":"45673:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":28950,"initialValue":{"id":28949,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28930,"src":"45685:2:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"45673:14:59"},{"expression":{"id":28953,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28951,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28933,"src":"45697:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":28952,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26489,"src":"45707:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45697:17:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28954,"nodeType":"ExpressionStatement","src":"45697:17:59"},{"body":{"id":28988,"nodeType":"Block","src":"45738:201:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28960,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28958,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28948,"src":"45756:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":28959,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45760:1:59","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"45756:5:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":28961,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45765:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"45756:10:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":28986,"nodeType":"Block","src":"45846:83:59","statements":[{"expression":{"id":28980,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28975,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28933,"src":"45864:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":28977,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28933,"src":"45879:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28978,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28944,"src":"45888:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28976,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28925,"src":"45874:4:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":28979,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45874:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45864:26:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28981,"nodeType":"ExpressionStatement","src":"45864:26:59"},{"expression":{"id":28984,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28982,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28948,"src":"45908:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":28983,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45913:1:59","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"45908:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28985,"nodeType":"ExpressionStatement","src":"45908:6:59"}]},"id":28987,"nodeType":"IfStatement","src":"45752:177:59","trueBody":{"id":28974,"nodeType":"Block","src":"45768:72:59","statements":[{"expression":{"id":28968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28963,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28944,"src":"45786:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":28965,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28944,"src":"45795:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":28966,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28944,"src":"45798:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":28964,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28925,"src":"45790:4:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":28967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45790:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45786:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28969,"nodeType":"ExpressionStatement","src":"45786:14:59"},{"expression":{"id":28972,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":28970,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28948,"src":"45818:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":28971,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45824:1:59","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"45818:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":28973,"nodeType":"ExpressionStatement","src":"45818:7:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":28957,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":28955,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28948,"src":"45731:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":28956,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45735:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"45731:5:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":28989,"nodeType":"WhileStatement","src":"45724:215:59"}]},"documentation":{"id":28926,"nodeType":"StructuredDocumentation","src":"45253:211:59","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":"45478:4:59","parameters":{"id":28931,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28928,"mutability":"mutable","name":"_a","nameLocation":"45491:2:59","nodeType":"VariableDeclaration","scope":28991,"src":"45483:10:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28927,"name":"uint256","nodeType":"ElementaryTypeName","src":"45483:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28930,"mutability":"mutable","name":"_b","nameLocation":"45503:2:59","nodeType":"VariableDeclaration","scope":28991,"src":"45495:10:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28929,"name":"uint256","nodeType":"ElementaryTypeName","src":"45495:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45482:24:59"},"returnParameters":{"id":28934,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28933,"mutability":"mutable","name":"_result","nameLocation":"45546:7:59","nodeType":"VariableDeclaration","scope":28991,"src":"45538:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28932,"name":"uint256","nodeType":"ElementaryTypeName","src":"45538:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45537:17:59"},"scope":30151,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":28999,"nodeType":"FunctionDefinition","src":"45951:120:59","nodes":[],"body":{"id":28998,"nodeType":"Block","src":"46027:44:59","nodes":[],"statements":[{"expression":{"id":28996,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26520,"src":"46044:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":28995,"id":28997,"nodeType":"Return","src":"46037:27:59"}]},"functionSelector":"d1e36232","implemented":true,"kind":"function","modifiers":[],"name":"totalEffectiveActivePoints","nameLocation":"45960:26:59","parameters":{"id":28992,"nodeType":"ParameterList","parameters":[],"src":"45986:2:59"},"returnParameters":{"id":28995,"nodeType":"ParameterList","parameters":[{"constant":false,"id":28994,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":28999,"src":"46018:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":28993,"name":"uint256","nodeType":"ElementaryTypeName","src":"46018:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46017:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":29040,"nodeType":"FunctionDefinition","src":"46261:389:59","nodes":[],"body":{"id":29039,"nodeType":"Block","src":"46362:288:59","nodes":[],"statements":[{"assignments":[29009,29011],"declarations":[{"constant":false,"id":29009,"mutability":"mutable","name":"conviction","nameLocation":"46381:10:59","nodeType":"VariableDeclaration","scope":29039,"src":"46373:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29008,"name":"uint256","nodeType":"ElementaryTypeName","src":"46373:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":29011,"mutability":"mutable","name":"blockNumber","nameLocation":"46401:11:59","nodeType":"VariableDeclaration","scope":29039,"src":"46393:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29010,"name":"uint256","nodeType":"ElementaryTypeName","src":"46393:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":29016,"initialValue":{"arguments":[{"id":29013,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29003,"src":"46450:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":29014,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29005,"src":"46461:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29012,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29087,"src":"46416:33:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$26204_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":29015,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46416:56:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"46372:100:59"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29023,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29019,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29017,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29009,"src":"46486:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":29018,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"46500:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"46486:15:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29022,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29020,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29011,"src":"46505:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":29021,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"46520:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"46505:16:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"46486:35:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29026,"nodeType":"IfStatement","src":"46482:72:59","trueBody":{"id":29025,"nodeType":"Block","src":"46523:31:59","statements":[{"functionReturnParameters":29007,"id":29024,"nodeType":"Return","src":"46537:7:59"}]}},{"expression":{"id":29031,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29027,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29003,"src":"46563:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29029,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"46573:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"46563:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":29030,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29011,"src":"46585:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46563:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29032,"nodeType":"ExpressionStatement","src":"46563:33:59"},{"expression":{"id":29037,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29033,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29003,"src":"46606:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29035,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"46616:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"46606:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":29036,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29009,"src":"46633:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46606:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29038,"nodeType":"ExpressionStatement","src":"46606:37:59"}]},"documentation":{"id":29000,"nodeType":"StructuredDocumentation","src":"46077:179:59","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":"46270:26:59","parameters":{"id":29006,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29003,"mutability":"mutable","name":"_proposal","nameLocation":"46314:9:59","nodeType":"VariableDeclaration","scope":29040,"src":"46297:26:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":29002,"nodeType":"UserDefinedTypeName","pathNode":{"id":29001,"name":"Proposal","nameLocations":["46297:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"46297:8:59"},"referencedDeclaration":26204,"src":"46297:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":29005,"mutability":"mutable","name":"_oldStaked","nameLocation":"46333:10:59","nodeType":"VariableDeclaration","scope":29040,"src":"46325:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29004,"name":"uint256","nodeType":"ElementaryTypeName","src":"46325:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46296:48:59"},"returnParameters":{"id":29007,"nodeType":"ParameterList","parameters":[],"src":"46362:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":29087,"nodeType":"FunctionDefinition","src":"46656:720:59","nodes":[],"body":{"id":29086,"nodeType":"Block","src":"46855:521:59","nodes":[],"statements":[{"expression":{"id":29055,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":29052,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29050,"src":"46865:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29053,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"46879:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":29054,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"46885:6:59","memberName":"number","nodeType":"MemberAccess","src":"46879:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46865:26:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29056,"nodeType":"ExpressionStatement","src":"46865:26:59"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29058,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29043,"src":"46908:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29059,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46918:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"46908:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":29060,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29050,"src":"46931:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46908:34:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":29057,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"46901:6:59","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":29062,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46901:42:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29063,"nodeType":"ExpressionStatement","src":"46901:42:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29067,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29064,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29043,"src":"46957:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29065,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"46967:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"46957:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":29066,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29050,"src":"46980:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46957:34:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29073,"nodeType":"IfStatement","src":"46953:173:59","trueBody":{"id":29072,"nodeType":"Block","src":"46993:133:59","statements":[{"expression":{"components":[{"hexValue":"30","id":29068,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47081:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"30","id":29069,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47084:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"id":29070,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"47080:6:59","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$","typeString":"tuple(int_const 0,int_const 0)"}},"functionReturnParameters":29051,"id":29071,"nodeType":"Return","src":"47073:13:59"}]}},{"expression":{"id":29084,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":29074,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29048,"src":"47179:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29079,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29076,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29050,"src":"47225:11:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":29077,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29043,"src":"47239:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29078,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47249:9:59","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":26186,"src":"47239:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47225:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29080,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29043,"src":"47311:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29081,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47321:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"47311:24:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":29082,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29045,"src":"47349:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29075,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28768,"src":"47192:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":29083,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47192:177:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47179:190:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29085,"nodeType":"ExpressionStatement","src":"47179:190:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkBlockAndCalculateConviction","nameLocation":"46665:33:59","parameters":{"id":29046,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29043,"mutability":"mutable","name":"_proposal","nameLocation":"46716:9:59","nodeType":"VariableDeclaration","scope":29087,"src":"46699:26:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":29042,"nodeType":"UserDefinedTypeName","pathNode":{"id":29041,"name":"Proposal","nameLocations":["46699:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"46699:8:59"},"referencedDeclaration":26204,"src":"46699:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":29045,"mutability":"mutable","name":"_oldStaked","nameLocation":"46735:10:59","nodeType":"VariableDeclaration","scope":29087,"src":"46727:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29044,"name":"uint256","nodeType":"ElementaryTypeName","src":"46727:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46698:48:59"},"returnParameters":{"id":29051,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29048,"mutability":"mutable","name":"conviction","nameLocation":"46818:10:59","nodeType":"VariableDeclaration","scope":29087,"src":"46810:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29047,"name":"uint256","nodeType":"ElementaryTypeName","src":"46810:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":29050,"mutability":"mutable","name":"blockNumber","nameLocation":"46838:11:59","nodeType":"VariableDeclaration","scope":29087,"src":"46830:19:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29049,"name":"uint256","nodeType":"ElementaryTypeName","src":"46830:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46809:41:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":29105,"nodeType":"FunctionDefinition","src":"47382:198:59","nodes":[],"body":{"id":29104,"nodeType":"Block","src":"47492:88:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":29096,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26838,"src":"47502:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":29097,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47502:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29098,"nodeType":"ExpressionStatement","src":"47502:17:59"},{"expression":{"arguments":[{"id":29100,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29090,"src":"47544:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":29101,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29093,"src":"47563:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}],"id":29099,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[29257,29398,29436],"referencedDeclaration":29257,"src":"47529:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$26226_memory_ptr_$_t_struct$_CVParams_$26235_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":29102,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47529:44:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29103,"nodeType":"ExpressionStatement","src":"47529:44:59"}]},"functionSelector":"062f9ece","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"47391:13:59","parameters":{"id":29094,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29090,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47429:17:59","nodeType":"VariableDeclaration","scope":29105,"src":"47405:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29089,"nodeType":"UserDefinedTypeName","pathNode":{"id":29088,"name":"ArbitrableConfig","nameLocations":["47405:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"47405:16:59"},"referencedDeclaration":26226,"src":"47405:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":29093,"mutability":"mutable","name":"_cvParams","nameLocation":"47464:9:59","nodeType":"VariableDeclaration","scope":29105,"src":"47448:25:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":29092,"nodeType":"UserDefinedTypeName","pathNode":{"id":29091,"name":"CVParams","nameLocations":["47448:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"47448:8:59"},"referencedDeclaration":26235,"src":"47448:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47404:70:59"},"returnParameters":{"id":29095,"nodeType":"ParameterList","parameters":[],"src":"47492:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":29257,"nodeType":"FunctionDefinition","src":"47586:2357:59","nodes":[],"body":{"id":29256,"nodeType":"Block","src":"47697:2246:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29180,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29114,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"47724:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29115,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47742:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"47724:30:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":29118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47766:1:59","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":29117,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"47758:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29116,"name":"address","nodeType":"ElementaryTypeName","src":"47758:7:59","typeDescriptions":{}}},"id":29119,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47758:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"47724:44:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29130,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":29123,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"47780:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29124,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47798:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"47780:28:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}],"id":29122,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"47772:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29121,"name":"address","nodeType":"ElementaryTypeName","src":"47772:7:59","typeDescriptions":{}}},"id":29125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47772:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":29128,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47821:1:59","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":29127,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"47813:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29126,"name":"address","nodeType":"ElementaryTypeName","src":"47813:7:59","typeDescriptions":{}}},"id":29129,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47813:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"47772:51:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47724:99:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29178,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29170,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29162,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29146,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29138,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29132,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"47865:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29133,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47883:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"47865:30:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":29134,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"47899:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29136,"indexExpression":{"id":29135,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"47917:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"47899:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29137,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47949:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"47899:62:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"47865:96:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"},"id":29145,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29139,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"47989:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29140,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48007:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"47989:28:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":29141,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48021:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29143,"indexExpression":{"id":29142,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48039:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48021:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29144,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48071:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"48021:60:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"src":"47989:92:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47865:216:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29153,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29147,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"48109:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29148,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48127:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"48109:43:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":29149,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48184:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29151,"indexExpression":{"id":29150,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48202:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48184:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29152,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48234:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"48184:75:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48109:150:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47865:394:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29161,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29155,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"48287:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29156,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48305:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"48287:44:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":29157,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48363:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29159,"indexExpression":{"id":29158,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48381:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48363:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29160,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48413:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"48363:76:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48287:152:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47865:574:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29169,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29163,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"48467:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29164,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48485:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"48467:31:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":29165,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48502:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29167,"indexExpression":{"id":29166,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48520:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48502:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29168,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48552:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"48502:63:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48467:98:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47865:700:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29177,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29171,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"48593:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29172,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48611:20:59","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":26225,"src":"48593:38:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":29173,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48663:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29175,"indexExpression":{"id":29174,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48681:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48663:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29176,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48713:20:59","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":26225,"src":"48663:70:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48593:140:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47865:868:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":29179,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47843:908:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47724:1027:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29247,"nodeType":"IfStatement","src":"47707:2158:59","trueBody":{"id":29246,"nodeType":"Block","src":"48762:1103:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29195,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29187,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":29181,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48797:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29183,"indexExpression":{"id":29182,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48815:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48797:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29184,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48847:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"48797:62:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":29185,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"48863:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29186,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48881:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"48863:30:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"48797:96:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"},"id":29194,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":29188,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"48917:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29190,"indexExpression":{"id":29189,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"48935:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48917:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29191,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48967:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"48917:60:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":29192,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"48981:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29193,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48999:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"48981:28:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"src":"48917:92:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"48797:212:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29220,"nodeType":"IfStatement","src":"48776:522:59","trueBody":{"id":29219,"nodeType":"Block","src":"49024:274:59","statements":[{"expression":{"arguments":[{"expression":{"id":29201,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49084:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49102:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"49084:30:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"id":29196,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49042:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29199,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49060:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"49042:28:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"id":29200,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49071:12:59","memberName":"registerSafe","nodeType":"MemberAccess","referencedDeclaration":33253,"src":"49042:41:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":29203,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49042:73:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29204,"nodeType":"ExpressionStatement","src":"49042:73:59"},{"eventCall":{"arguments":[{"arguments":[{"id":29208,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"49189:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":29207,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"49181:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29206,"name":"address","nodeType":"ElementaryTypeName","src":"49181:7:59","typeDescriptions":{}}},"id":29209,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49181:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":29212,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49204:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29213,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49222:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"49204:28:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}],"id":29211,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"49196:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29210,"name":"address","nodeType":"ElementaryTypeName","src":"49196:7:59","typeDescriptions":{}}},"id":29214,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49196:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29215,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49235:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29216,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49253:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"49235:30:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":29205,"name":"TribunaSafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26441,"src":"49138:21:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (address,address,address)"}},"id":29217,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49138:145:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29218,"nodeType":"EmitStatement","src":"49133:150:59"}]}},{"expression":{"id":29222,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"49312:32:59","subExpression":{"id":29221,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"49312:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29223,"nodeType":"ExpressionStatement","src":"49312:32:59"},{"expression":{"id":29228,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":29224,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"49358:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29226,"indexExpression":{"id":29225,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"49376:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"49358:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":29227,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49410:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"49358:69:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29229,"nodeType":"ExpressionStatement","src":"49358:69:59"},{"eventCall":{"arguments":[{"id":29231,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"49488:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29232,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49536:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29233,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49554:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"49536:28:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},{"expression":{"id":29234,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49582:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29235,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49600:12:59","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":26217,"src":"49582:30:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29236,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49630:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29237,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49648:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"49630:43:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29238,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49691:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29239,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49709:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"49691:44:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29240,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49753:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29241,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49771:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"49753:31:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29242,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29108,"src":"49802:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29243,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49820:20:59","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":26225,"src":"49802:38:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$33254","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":29230,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26462,"src":"49447:23:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$33254_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":29244,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49447:407:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29245,"nodeType":"EmitStatement","src":"49442:412:59"}]}},{"expression":{"id":29250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":29248,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"49875:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":29249,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29111,"src":"49886:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}},"src":"49875:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":29251,"nodeType":"ExpressionStatement","src":"49875:20:59"},{"eventCall":{"arguments":[{"id":29253,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29111,"src":"49926:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}],"id":29252,"name":"CVParamsUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26414,"src":"49910:15:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_struct$_CVParams_$26235_memory_ptr_$returns$__$","typeString":"function (struct CVParams memory)"}},"id":29254,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49910:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29255,"nodeType":"EmitStatement","src":"49905:31:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"47595:14:59","parameters":{"id":29112,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29108,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47634:17:59","nodeType":"VariableDeclaration","scope":29257,"src":"47610:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29107,"nodeType":"UserDefinedTypeName","pathNode":{"id":29106,"name":"ArbitrableConfig","nameLocations":["47610:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"47610:16:59"},"referencedDeclaration":26226,"src":"47610:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":29111,"mutability":"mutable","name":"_cvParams","nameLocation":"47669:9:59","nodeType":"VariableDeclaration","scope":29257,"src":"47653:25:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":29110,"nodeType":"UserDefinedTypeName","pathNode":{"id":29109,"name":"CVParams","nameLocations":["47653:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"47653:8:59"},"referencedDeclaration":26235,"src":"47653:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47609:70:59"},"returnParameters":{"id":29113,"nodeType":"ParameterList","parameters":[],"src":"47697:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":29291,"nodeType":"FunctionDefinition","src":"49949:609:59","nodes":[],"body":{"id":29290,"nodeType":"Block","src":"50036:522:59","nodes":[],"statements":[{"assignments":[29266],"declarations":[{"constant":false,"id":29266,"mutability":"mutable","name":"proposal","nameLocation":"50063:8:59","nodeType":"VariableDeclaration","scope":29290,"src":"50046:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":29265,"nodeType":"UserDefinedTypeName","pathNode":{"id":29264,"name":"Proposal","nameLocations":["50046:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"50046:8:59"},"referencedDeclaration":26204,"src":"50046:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":29270,"initialValue":{"baseExpression":{"id":29267,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"50074:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29269,"indexExpression":{"id":29268,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29259,"src":"50084:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50074:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50046:49:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29271,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29266,"src":"50110:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29272,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50119:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"50110:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":29273,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29259,"src":"50133:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50110:33:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29280,"nodeType":"IfStatement","src":"50106:100:59","trueBody":{"id":29279,"nodeType":"Block","src":"50145:61:59","statements":[{"errorCall":{"arguments":[{"id":29276,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29259,"src":"50184:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29275,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26311,"src":"50166:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":29277,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50166:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29278,"nodeType":"RevertStatement","src":"50159:36:59"}]}},{"expression":{"arguments":[{"id":29282,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29266,"src":"50479:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":29283,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29266,"src":"50489:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29284,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50498:12:59","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":26176,"src":"50489:21:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29281,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29040,"src":"50452:26:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$26204_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":29285,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50452:59:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29286,"nodeType":"ExpressionStatement","src":"50452:59:59"},{"expression":{"expression":{"id":29287,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29266,"src":"50528:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29288,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50537:14:59","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":26178,"src":"50528:23:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":29263,"id":29289,"nodeType":"Return","src":"50521:30:59"}]},"functionSelector":"1aa91a9e","implemented":true,"kind":"function","modifiers":[],"name":"updateProposalConviction","nameLocation":"49958:24:59","parameters":{"id":29260,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29259,"mutability":"mutable","name":"proposalId","nameLocation":"49991:10:59","nodeType":"VariableDeclaration","scope":29291,"src":"49983:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29258,"name":"uint256","nodeType":"ElementaryTypeName","src":"49983:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"49982:20:59"},"returnParameters":{"id":29263,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29262,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":29291,"src":"50027:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29261,"name":"uint256","nodeType":"ElementaryTypeName","src":"50027:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50026:9:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":29311,"nodeType":"FunctionDefinition","src":"50564:141:59","nodes":[],"body":{"id":29310,"nodeType":"Block","src":"50644:61:59","nodes":[],"statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29307,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29300,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29298,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29293,"src":"50663:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":29299,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"50672:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50663:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":29301,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"50662:12:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29305,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29302,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26486,"src":"50678:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":29303,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26523,"src":"50682:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage","typeString":"struct CVParams storage ref"}},"id":29304,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50691:5:59","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":26232,"src":"50682:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50678:18:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":29306,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"50677:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50662:35:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":29308,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"50661:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":29297,"id":29309,"nodeType":"Return","src":"50654:44:59"}]},"functionSelector":"950559d7","implemented":true,"kind":"function","modifiers":[],"name":"getMaxConviction","nameLocation":"50573:16:59","parameters":{"id":29294,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29293,"mutability":"mutable","name":"amount","nameLocation":"50598:6:59","nodeType":"VariableDeclaration","scope":29311,"src":"50590:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29292,"name":"uint256","nodeType":"ElementaryTypeName","src":"50590:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50589:16:59"},"returnParameters":{"id":29297,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29296,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":29311,"src":"50635:7:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29295,"name":"uint256","nodeType":"ElementaryTypeName","src":"50635:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50634:9:59"},"scope":30151,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":29357,"nodeType":"FunctionDefinition","src":"51056:412:59","nodes":[],"body":{"id":29356,"nodeType":"Block","src":"51138:330:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29332,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29326,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29318,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"51152:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51156:6:59","memberName":"sender","nodeType":"MemberAccess","src":"51152:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":29322,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"51174:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":29323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51192:11:59","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":31136,"src":"51174:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$33380_$","typeString":"function () view external returns (contract ISafe)"}},"id":29324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51174:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":29321,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"51166:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29320,"name":"address","nodeType":"ElementaryTypeName","src":"51166:7:59","typeDescriptions":{}}},"id":29325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51166:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"51152:54:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29331,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29327,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"51210:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29328,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51214:6:59","memberName":"sender","nodeType":"MemberAccess","src":"51210:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":29329,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[30779],"referencedDeclaration":30779,"src":"51224:5:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":29330,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51224:7:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"51210:21:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"51152:79:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29337,"nodeType":"IfStatement","src":"51148:132:59","trueBody":{"id":29336,"nodeType":"Block","src":"51233:47:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":29333,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26323,"src":"51252:15:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":29334,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51252:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29335,"nodeType":"RevertStatement","src":"51245:24:59"}]}},{"expression":{"arguments":[{"id":29339,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29313,"src":"51308:12:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":29338,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26820,"src":"51289:18:59","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":29340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51289:32:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29341,"nodeType":"ExpressionStatement","src":"51289:32:59"},{"expression":{"id":29346,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":29342,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"51331:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":29344,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29313,"src":"51358:12:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":29343,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30228,"src":"51345:12:59","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$30228_$","typeString":"type(contract ISybilScorer)"}},"id":29345,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51345:26:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"src":"51331:40:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"id":29347,"nodeType":"ExpressionStatement","src":"51331:40:59"},{"expression":{"arguments":[{"id":29349,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29315,"src":"51404:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29348,"name":"_registerToSybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30146,"src":"51381:22:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":29350,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51381:33:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29351,"nodeType":"ExpressionStatement","src":"51381:33:59"},{"eventCall":{"arguments":[{"id":29353,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29313,"src":"51448:12:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":29352,"name":"SybilScorerUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26480,"src":"51429:18:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":29354,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51429:32:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29355,"nodeType":"EmitStatement","src":"51424:37:59"}]},"functionSelector":"3864d366","implemented":true,"kind":"function","modifiers":[],"name":"setSybilScorer","nameLocation":"51065:14:59","parameters":{"id":29316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29313,"mutability":"mutable","name":"_sybilScorer","nameLocation":"51088:12:59","nodeType":"VariableDeclaration","scope":29357,"src":"51080:20:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":29312,"name":"address","nodeType":"ElementaryTypeName","src":"51080:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":29315,"mutability":"mutable","name":"threshold","nameLocation":"51110:9:59","nodeType":"VariableDeclaration","scope":29357,"src":"51102:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29314,"name":"uint256","nodeType":"ElementaryTypeName","src":"51102:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"51079:41:59"},"returnParameters":{"id":29317,"nodeType":"ParameterList","parameters":[],"src":"51138:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":29398,"nodeType":"FunctionDefinition","src":"51474:470:59","nodes":[],"body":{"id":29397,"nodeType":"Block","src":"51688:256:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":29373,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29360,"src":"51713:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":29374,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29363,"src":"51732:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}],"id":29372,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[29257,29398,29436],"referencedDeclaration":29257,"src":"51698:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$26226_memory_ptr_$_t_struct$_CVParams_$26235_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":29375,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51698:44:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29376,"nodeType":"ExpressionStatement","src":"51698:44:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29380,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29377,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29366,"src":"51756:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":29378,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51769:6:59","memberName":"length","nodeType":"MemberAccess","src":"51756:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":29379,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51778:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51756:23:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29386,"nodeType":"IfStatement","src":"51752:83:59","trueBody":{"id":29385,"nodeType":"Block","src":"51781:54:59","statements":[{"expression":{"arguments":[{"id":29382,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29366,"src":"51811:12:59","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":29381,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30055,"src":"51795:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":29383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51795:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29384,"nodeType":"ExpressionStatement","src":"51795:29:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29387,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29369,"src":"51848:15:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":29388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51864:6:59","memberName":"length","nodeType":"MemberAccess","src":"51848:22:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":29389,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51873:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51848:26:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29396,"nodeType":"IfStatement","src":"51844:94:59","trueBody":{"id":29395,"nodeType":"Block","src":"51876:62:59","statements":[{"expression":{"arguments":[{"id":29392,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29369,"src":"51911:15:59","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":29391,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30124,"src":"51890:20:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":29393,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51890:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29394,"nodeType":"ExpressionStatement","src":"51890:37:59"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"51483:14:59","parameters":{"id":29370,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29360,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"51531:17:59","nodeType":"VariableDeclaration","scope":29398,"src":"51507:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29359,"nodeType":"UserDefinedTypeName","pathNode":{"id":29358,"name":"ArbitrableConfig","nameLocations":["51507:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"51507:16:59"},"referencedDeclaration":26226,"src":"51507:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":29363,"mutability":"mutable","name":"_cvParams","nameLocation":"51574:9:59","nodeType":"VariableDeclaration","scope":29398,"src":"51558:25:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":29362,"nodeType":"UserDefinedTypeName","pathNode":{"id":29361,"name":"CVParams","nameLocations":["51558:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"51558:8:59"},"referencedDeclaration":26235,"src":"51558:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":29366,"mutability":"mutable","name":"membersToAdd","nameLocation":"51610:12:59","nodeType":"VariableDeclaration","scope":29398,"src":"51593:29:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":29364,"name":"address","nodeType":"ElementaryTypeName","src":"51593:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29365,"nodeType":"ArrayTypeName","src":"51593:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":29369,"mutability":"mutable","name":"membersToRemove","nameLocation":"51649:15:59","nodeType":"VariableDeclaration","scope":29398,"src":"51632:32:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":29367,"name":"address","nodeType":"ElementaryTypeName","src":"51632:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29368,"nodeType":"ArrayTypeName","src":"51632:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"51497:173:59"},"returnParameters":{"id":29371,"nodeType":"ParameterList","parameters":[],"src":"51688:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":29436,"nodeType":"FunctionDefinition","src":"51950:368:59","nodes":[],"body":{"id":29435,"nodeType":"Block","src":"52120:198:59","nodes":[],"statements":[{"expression":{"arguments":[{"id":29410,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29401,"src":"52145:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":29411,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29404,"src":"52164:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}],"id":29409,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[29257,29398,29436],"referencedDeclaration":29257,"src":"52130:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$26226_memory_ptr_$_t_struct$_CVParams_$26235_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":29412,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52130:44:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29413,"nodeType":"ExpressionStatement","src":"52130:44:59"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29422,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":29416,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"52196:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}],"id":29415,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52188:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29414,"name":"address","nodeType":"ElementaryTypeName","src":"52188:7:59","typeDescriptions":{}}},"id":29417,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52188:20:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":29420,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52220:1:59","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":29419,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52212:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29418,"name":"address","nodeType":"ElementaryTypeName","src":"52212:7:59","typeDescriptions":{}}},"id":29421,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52212:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"52188:34:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29434,"nodeType":"IfStatement","src":"52184:128:59","trueBody":{"id":29433,"nodeType":"Block","src":"52224:88:59","statements":[{"expression":{"arguments":[{"arguments":[{"id":29428,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"52274:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":29427,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52266:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29426,"name":"address","nodeType":"ElementaryTypeName","src":"52266:7:59","typeDescriptions":{}}},"id":29429,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52266:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":29430,"name":"sybilScoreThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29406,"src":"52281:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":29423,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"52238:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"id":29425,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52250:15:59","memberName":"modifyThreshold","nodeType":"MemberAccess","referencedDeclaration":30208,"src":"52238:27:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256) external"}},"id":29431,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52238:63:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29432,"nodeType":"ExpressionStatement","src":"52238:63:59"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"51959:14:59","parameters":{"id":29407,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29401,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"52007:17:59","nodeType":"VariableDeclaration","scope":29436,"src":"51983:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29400,"nodeType":"UserDefinedTypeName","pathNode":{"id":29399,"name":"ArbitrableConfig","nameLocations":["51983:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"51983:16:59"},"referencedDeclaration":26226,"src":"51983:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":29404,"mutability":"mutable","name":"_cvParams","nameLocation":"52050:9:59","nodeType":"VariableDeclaration","scope":29436,"src":"52034:25:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":29403,"nodeType":"UserDefinedTypeName","pathNode":{"id":29402,"name":"CVParams","nameLocations":["52034:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"52034:8:59"},"referencedDeclaration":26235,"src":"52034:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":29406,"mutability":"mutable","name":"sybilScoreThreshold","nameLocation":"52077:19:59","nodeType":"VariableDeclaration","scope":29436,"src":"52069:27:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29405,"name":"uint256","nodeType":"ElementaryTypeName","src":"52069:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"51973:129:59"},"returnParameters":{"id":29408,"nodeType":"ParameterList","parameters":[],"src":"52120:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":29462,"nodeType":"FunctionDefinition","src":"52324:332:59","nodes":[],"body":{"id":29461,"nodeType":"Block","src":"52537:119:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":29451,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26838,"src":"52547:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":29452,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52547:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29453,"nodeType":"ExpressionStatement","src":"52547:17:59"},{"expression":{"arguments":[{"id":29455,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29439,"src":"52589:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":29456,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29442,"src":"52608:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}},{"id":29457,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29445,"src":"52619:12:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"id":29458,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29448,"src":"52633:15:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$26235_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":29454,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[29257,29398,29436],"referencedDeclaration":29398,"src":"52574:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$26226_memory_ptr_$_t_struct$_CVParams_$26235_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":29459,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52574:75:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29460,"nodeType":"ExpressionStatement","src":"52574:75:59"}]},"functionSelector":"948e7a59","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"52333:13:59","parameters":{"id":29449,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29439,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"52380:17:59","nodeType":"VariableDeclaration","scope":29462,"src":"52356:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29438,"nodeType":"UserDefinedTypeName","pathNode":{"id":29437,"name":"ArbitrableConfig","nameLocations":["52356:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"52356:16:59"},"referencedDeclaration":26226,"src":"52356:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":29442,"mutability":"mutable","name":"_cvParams","nameLocation":"52423:9:59","nodeType":"VariableDeclaration","scope":29462,"src":"52407:25:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":29441,"nodeType":"UserDefinedTypeName","pathNode":{"id":29440,"name":"CVParams","nameLocations":["52407:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"52407:8:59"},"referencedDeclaration":26235,"src":"52407:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":29445,"mutability":"mutable","name":"membersToAdd","nameLocation":"52459:12:59","nodeType":"VariableDeclaration","scope":29462,"src":"52442:29:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":29443,"name":"address","nodeType":"ElementaryTypeName","src":"52442:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29444,"nodeType":"ArrayTypeName","src":"52442:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":29448,"mutability":"mutable","name":"membersToRemove","nameLocation":"52498:15:59","nodeType":"VariableDeclaration","scope":29462,"src":"52481:32:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":29446,"name":"address","nodeType":"ElementaryTypeName","src":"52481:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29447,"nodeType":"ArrayTypeName","src":"52481:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"52346:173:59"},"returnParameters":{"id":29450,"nodeType":"ParameterList","parameters":[],"src":"52537:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":29483,"nodeType":"FunctionDefinition","src":"52662:278:59","nodes":[],"body":{"id":29482,"nodeType":"Block","src":"52831:109:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":29473,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26838,"src":"52841:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":29474,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52841:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29475,"nodeType":"ExpressionStatement","src":"52841:17:59"},{"expression":{"arguments":[{"id":29477,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29465,"src":"52883:17:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":29478,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29468,"src":"52902:9:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"}},{"id":29479,"name":"sybilScoreThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29470,"src":"52913:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams memory"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29476,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[29257,29398,29436],"referencedDeclaration":29436,"src":"52868:14:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$26226_memory_ptr_$_t_struct$_CVParams_$26235_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory,uint256)"}},"id":29480,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52868:65:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29481,"nodeType":"ExpressionStatement","src":"52868:65:59"}]},"functionSelector":"ad56fd5d","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"52671:13:59","parameters":{"id":29471,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29465,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"52718:17:59","nodeType":"VariableDeclaration","scope":29483,"src":"52694:41:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29464,"nodeType":"UserDefinedTypeName","pathNode":{"id":29463,"name":"ArbitrableConfig","nameLocations":["52694:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"52694:16:59"},"referencedDeclaration":26226,"src":"52694:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":29468,"mutability":"mutable","name":"_cvParams","nameLocation":"52761:9:59","nodeType":"VariableDeclaration","scope":29483,"src":"52745:25:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":29467,"nodeType":"UserDefinedTypeName","pathNode":{"id":29466,"name":"CVParams","nameLocations":["52745:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26235,"src":"52745:8:59"},"referencedDeclaration":26235,"src":"52745:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$26235_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":29470,"mutability":"mutable","name":"sybilScoreThreshold","nameLocation":"52788:19:59","nodeType":"VariableDeclaration","scope":29483,"src":"52780:27:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29469,"name":"uint256","nodeType":"ElementaryTypeName","src":"52780:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"52684:129:59"},"returnParameters":{"id":29472,"nodeType":"ParameterList","parameters":[],"src":"52831:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":29648,"nodeType":"FunctionDefinition","src":"52946:2575:59","nodes":[],"body":{"id":29647,"nodeType":"Block","src":"53132:2389:59","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":29495,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53162:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29496,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53166:6:59","memberName":"sender","nodeType":"MemberAccess","src":"53162:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":29494,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26788,"src":"53142:19:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":29497,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53142:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29498,"nodeType":"ExpressionStatement","src":"53142:31:59"},{"assignments":[29501],"declarations":[{"constant":false,"id":29501,"mutability":"mutable","name":"proposal","nameLocation":"53200:8:59","nodeType":"VariableDeclaration","scope":29647,"src":"53183:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":29500,"nodeType":"UserDefinedTypeName","pathNode":{"id":29499,"name":"Proposal","nameLocations":["53183:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"53183:8:59"},"referencedDeclaration":26204,"src":"53183:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":29505,"initialValue":{"baseExpression":{"id":29502,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"53211:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29504,"indexExpression":{"id":29503,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"53221:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53211:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"53183:49:59"},{"assignments":[29508],"declarations":[{"constant":false,"id":29508,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"53266:16:59","nodeType":"VariableDeclaration","scope":29647,"src":"53242:40:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29507,"nodeType":"UserDefinedTypeName","pathNode":{"id":29506,"name":"ArbitrableConfig","nameLocations":["53242:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"53242:16:59"},"referencedDeclaration":26226,"src":"53242:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":29513,"initialValue":{"baseExpression":{"id":29509,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"53285:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29512,"indexExpression":{"expression":{"id":29510,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"53303:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29511,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53312:23:59","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":26203,"src":"53303:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53285:51:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"53242:94:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29514,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"53645:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53654:10:59","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":26172,"src":"53645:19:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":29516,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"53668:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"53645:33:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29523,"nodeType":"IfStatement","src":"53641:100:59","trueBody":{"id":29522,"nodeType":"Block","src":"53680:61:59","statements":[{"errorCall":{"arguments":[{"id":29519,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"53719:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29518,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26311,"src":"53701:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":29520,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53701:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29521,"nodeType":"RevertStatement","src":"53694:36:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":29528,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29524,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"53754:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29525,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53763:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"53754:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":29526,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"53781:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29527,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53796:6:59","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":26157,"src":"53781:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"53754:48:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29534,"nodeType":"IfStatement","src":"53750:115:59","trueBody":{"id":29533,"nodeType":"Block","src":"53804:61:59","statements":[{"errorCall":{"arguments":[{"id":29530,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"53843:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29529,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26307,"src":"53825:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":29531,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53825:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29532,"nodeType":"RevertStatement","src":"53818:36:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29539,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29535,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53878:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29536,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53882:5:59","memberName":"value","nodeType":"MemberAccess","src":"53878:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":29537,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29508,"src":"53890:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53907:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"53890:43:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"53878:55:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29544,"nodeType":"IfStatement","src":"53874:258:59","trueBody":{"id":29543,"nodeType":"Block","src":"53935:197:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":29540,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"54051:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":29541,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54051:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29542,"nodeType":"ExpressionStatement","src":"54051:8:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29545,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"54251:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29546,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54260:21:59","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":26201,"src":"54251:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":29547,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"54285:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"54251:35:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29555,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29552,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29549,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"54306:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29550,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54315:21:59","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":26201,"src":"54306:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":29551,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26504,"src":"54339:20:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54306:53:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":29553,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"54362:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":29554,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54368:9:59","memberName":"timestamp","nodeType":"MemberAccess","src":"54362:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54306:71:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"54251:126:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29561,"nodeType":"IfStatement","src":"54234:418:59","trueBody":{"id":29560,"nodeType":"Block","src":"54388:264:59","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":29557,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"54571:6:59","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":29558,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54571:8:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29559,"nodeType":"ExpressionStatement","src":"54571:8:59"}]}},{"assignments":[29563],"declarations":[{"constant":false,"id":29563,"mutability":"mutable","name":"arbitrationFee","nameLocation":"54670:14:59","nodeType":"VariableDeclaration","scope":29647,"src":"54662:22:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29562,"name":"uint256","nodeType":"ElementaryTypeName","src":"54662:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":29569,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29568,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29564,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"54687:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29565,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54691:5:59","memberName":"value","nodeType":"MemberAccess","src":"54687:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":29566,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29508,"src":"54699:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29567,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54716:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"54699:43:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54687:55:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"54662:80:59"},{"expression":{"arguments":[{"id":29576,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"54839:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29577,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"54851:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29578,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54855:6:59","memberName":"sender","nodeType":"MemberAccess","src":"54851:10:59","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":29570,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"54753:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29572,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54769:17:59","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":33266,"src":"54753:33:59","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":29575,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":29573,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29508,"src":"54794:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29574,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54811:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"54794:43:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"54753:85:59","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":29579,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54753:109:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29580,"nodeType":"ExpressionStatement","src":"54753:109:59"},{"expression":{"id":29590,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":29581,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29492,"src":"54873:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":29587,"name":"RULING_OPTIONS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26501,"src":"54950:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":29588,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29489,"src":"54966:10:59","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":29582,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29508,"src":"54885:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29583,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54902:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"54885:27:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},"id":29584,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54913:13:59","memberName":"createDispute","nodeType":"MemberAccess","referencedDeclaration":33201,"src":"54885:41:59","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":29586,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":29585,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29563,"src":"54934:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"54885:64:59","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":29589,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54885:92:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54873:104:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29591,"nodeType":"ExpressionStatement","src":"54873:104:59"},{"expression":{"id":29597,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29592,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"54988:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29594,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"54997:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"54988:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29595,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"55014:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29596,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"55029:8:59","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":26161,"src":"55014:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"54988:49:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":29598,"nodeType":"ExpressionStatement","src":"54988:49:59"},{"expression":{"id":29605,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":29599,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"55047:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29602,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55056:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"55047:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29603,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55068:9:59","memberName":"disputeId","nodeType":"MemberAccess","referencedDeclaration":26165,"src":"55047:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":29604,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29492,"src":"55080:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"55047:42:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29606,"nodeType":"ExpressionStatement","src":"55047:42:59"},{"expression":{"id":29614,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":29607,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"55099:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29610,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55108:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"55099:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29611,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55120:16:59","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":26167,"src":"55099:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29612,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"55139:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":29613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55145:9:59","memberName":"timestamp","nodeType":"MemberAccess","src":"55139:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"55099:55:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29615,"nodeType":"ExpressionStatement","src":"55099:55:59"},{"expression":{"id":29623,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":29616,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"55164:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29619,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55173:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"55164:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29620,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55185:10:59","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":26169,"src":"55164:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29621,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"55198:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29622,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55202:6:59","memberName":"sender","nodeType":"MemberAccess","src":"55198:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"55164:44:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29624,"nodeType":"ExpressionStatement","src":"55164:44:59"},{"expression":{"id":29629,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":29625,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26559,"src":"55218:21:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":29627,"indexExpression":{"id":29626,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29492,"src":"55240:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"55218:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":29628,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"55253:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"55218:45:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29630,"nodeType":"ExpressionStatement","src":"55218:45:59"},{"expression":{"id":29632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"55274:14:59","subExpression":{"id":29631,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26512,"src":"55274:12:59","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":29633,"nodeType":"ExpressionStatement","src":"55274:14:59"},{"eventCall":{"arguments":[{"expression":{"id":29635,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29508,"src":"55334:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29636,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55351:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"55334:27:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},{"id":29637,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29485,"src":"55375:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":29638,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29492,"src":"55399:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29639,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"55422:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29640,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55426:6:59","memberName":"sender","nodeType":"MemberAccess","src":"55422:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":29641,"name":"context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29487,"src":"55446:7:59","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"expression":{"expression":{"id":29642,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29501,"src":"55467:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29643,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55476:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"55467:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29644,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55488:16:59","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":26167,"src":"55467:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$33254","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":29634,"name":"ProposalDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26433,"src":"55304:16:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$33254_$_t_uint256_$_t_uint256_$_t_address_$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256,address,string memory,uint256)"}},"id":29645,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"55304:210:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29646,"nodeType":"EmitStatement","src":"55299:215:59"}]},"functionSelector":"b41596ec","implemented":true,"kind":"function","modifiers":[],"name":"disputeProposal","nameLocation":"52955:15:59","parameters":{"id":29490,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29485,"mutability":"mutable","name":"proposalId","nameLocation":"52979:10:59","nodeType":"VariableDeclaration","scope":29648,"src":"52971:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29484,"name":"uint256","nodeType":"ElementaryTypeName","src":"52971:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":29487,"mutability":"mutable","name":"context","nameLocation":"53007:7:59","nodeType":"VariableDeclaration","scope":29648,"src":"52991:23:59","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":29486,"name":"string","nodeType":"ElementaryTypeName","src":"52991:6:59","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":29489,"mutability":"mutable","name":"_extraData","nameLocation":"53031:10:59","nodeType":"VariableDeclaration","scope":29648,"src":"53016:25:59","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":29488,"name":"bytes","nodeType":"ElementaryTypeName","src":"53016:5:59","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"52970:72:59"},"returnParameters":{"id":29493,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29492,"mutability":"mutable","name":"disputeId","nameLocation":"53117:9:59","nodeType":"VariableDeclaration","scope":29648,"src":"53109:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29491,"name":"uint256","nodeType":"ElementaryTypeName","src":"53109:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"53108:19:59"},"scope":30151,"stateMutability":"payable","virtual":true,"visibility":"external"},{"id":29895,"nodeType":"FunctionDefinition","src":"55527:2889:59","nodes":[],"body":{"id":29894,"nodeType":"Block","src":"55604:2812:59","nodes":[],"statements":[{"assignments":[29657],"declarations":[{"constant":false,"id":29657,"mutability":"mutable","name":"proposalId","nameLocation":"55622:10:59","nodeType":"VariableDeclaration","scope":29894,"src":"55614:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29656,"name":"uint256","nodeType":"ElementaryTypeName","src":"55614:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":29661,"initialValue":{"baseExpression":{"id":29658,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26559,"src":"55635:21:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":29660,"indexExpression":{"id":29659,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29650,"src":"55657:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"55635:33:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"55614:54:59"},{"assignments":[29664],"declarations":[{"constant":false,"id":29664,"mutability":"mutable","name":"proposal","nameLocation":"55695:8:59","nodeType":"VariableDeclaration","scope":29894,"src":"55678:25:59","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":29663,"nodeType":"UserDefinedTypeName","pathNode":{"id":29662,"name":"Proposal","nameLocations":["55678:8:59"],"nodeType":"IdentifierPath","referencedDeclaration":26204,"src":"55678:8:59"},"referencedDeclaration":26204,"src":"55678:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":29668,"initialValue":{"baseExpression":{"id":29665,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"55706:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29667,"indexExpression":{"id":29666,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"55716:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"55706:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"55678:49:59"},{"assignments":[29671],"declarations":[{"constant":false,"id":29671,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"55761:16:59","nodeType":"VariableDeclaration","scope":29894,"src":"55737:40:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":29670,"nodeType":"UserDefinedTypeName","pathNode":{"id":29669,"name":"ArbitrableConfig","nameLocations":["55737:16:59"],"nodeType":"IdentifierPath","referencedDeclaration":26226,"src":"55737:16:59"},"referencedDeclaration":26226,"src":"55737:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":29676,"initialValue":{"baseExpression":{"id":29672,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"55780:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29675,"indexExpression":{"expression":{"id":29673,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"55798:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29674,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55807:23:59","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":26203,"src":"55798:32:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"55780:51:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"55737:94:59"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29679,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29677,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"55846:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":29678,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"55860:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"55846:15:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29685,"nodeType":"IfStatement","src":"55842:82:59","trueBody":{"id":29684,"nodeType":"Block","src":"55863:61:59","statements":[{"errorCall":{"arguments":[{"id":29681,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"55902:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29680,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26311,"src":"55884:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":29682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"55884:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29683,"nodeType":"RevertStatement","src":"55877:36:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":29690,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29686,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"55937:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29687,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55946:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"55937:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":29688,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"55964:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29689,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"55979:8:59","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":26161,"src":"55964:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"55937:50:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29696,"nodeType":"IfStatement","src":"55933:119:59","trueBody":{"id":29695,"nodeType":"Block","src":"55989:63:59","statements":[{"errorCall":{"arguments":[{"id":29692,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"56030:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29691,"name":"ProposalNotDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26331,"src":"56010:19:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":29693,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56010:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29694,"nodeType":"RevertStatement","src":"56003:38:59"}]}},{"assignments":[29698],"declarations":[{"constant":false,"id":29698,"mutability":"mutable","name":"isTimeOut","nameLocation":"56067:9:59","nodeType":"VariableDeclaration","scope":29894,"src":"56062:14:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":29697,"name":"bool","nodeType":"ElementaryTypeName","src":"56062:4:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":29708,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29707,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29699,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"56079:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":29700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56085:9:59","memberName":"timestamp","nodeType":"MemberAccess","src":"56079:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29706,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":29701,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"56097:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29702,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56106:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"56097:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29703,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56118:16:59","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":26167,"src":"56097:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":29704,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"56137:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29705,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56154:20:59","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":26225,"src":"56137:37:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"56097:77:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"56079:95:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"56062:112:59"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29719,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29710,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"56189:10:59","subExpression":{"id":29709,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29698,"src":"56190:9:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29711,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"56203:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29712,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56207:6:59","memberName":"sender","nodeType":"MemberAccess","src":"56203:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"expression":{"id":29715,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"56225:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56242:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"56225:27:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}],"id":29714,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"56217:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29713,"name":"address","nodeType":"ElementaryTypeName","src":"56217:7:59","typeDescriptions":{}}},"id":29717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56217:36:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"56203:50:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"56189:64:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29724,"nodeType":"IfStatement","src":"56185:118:59","trueBody":{"id":29723,"nodeType":"Block","src":"56255:48:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":29720,"name":"OnlyArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26327,"src":"56276:14:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":29721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56276:16:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29722,"nodeType":"RevertStatement","src":"56269:23:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":29729,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29725,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29698,"src":"56317:9:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29728,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29726,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29652,"src":"56330:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":29727,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56341:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"56330:12:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"56317:25:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29789,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29787,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29652,"src":"57084:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":29788,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"57095:1:59","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"57084:12:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29817,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":29815,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29652,"src":"57441:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":29816,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"57452:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"57441:12:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29874,"nodeType":"IfStatement","src":"57437:819:59","trueBody":{"id":29873,"nodeType":"Block","src":"57455:801:59","statements":[{"expression":{"id":29823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29818,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"57469:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"57478:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"57469:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29821,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"57495:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29822,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"57510:8:59","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":26162,"src":"57495:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"57469:49:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":29824,"nodeType":"ExpressionStatement","src":"57469:49:59"},{"expression":{"arguments":[{"id":29828,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"57584:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":29829,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"57596:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29830,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57605:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"57596:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29831,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57617:10:59","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":26169,"src":"57596:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29832,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"57629:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29833,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57646:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"57629:43:59","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":29825,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"57532:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29827,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57548:18:59","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":33275,"src":"57532:34:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":29834,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57532:154:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29835,"nodeType":"ExpressionStatement","src":"57532:154:59"},{"expression":{"arguments":[{"id":29839,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"57755:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29840,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"57783:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29841,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57792:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"57783:18:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":29844,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"57827:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":29845,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57845:11:59","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":31136,"src":"57827:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$33380_$","typeString":"function () view external returns (contract ISafe)"}},"id":29846,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57827:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":29843,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"57819:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29842,"name":"address","nodeType":"ElementaryTypeName","src":"57819:7:59","typeDescriptions":{}}},"id":29847,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57819:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":29848,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"57877:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29850,"indexExpression":{"id":29849,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"57895:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"57877:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29851,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57927:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"57877:75:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":29852,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"57955:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"57877:79:59","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":29836,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"57700:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29838,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57716:21:59","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":33286,"src":"57700:37:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":29854,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57700:270:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29855,"nodeType":"ExpressionStatement","src":"57700:270:59"},{"expression":{"arguments":[{"id":29859,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"58039:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29860,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"58067:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29861,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58076:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"58067:18:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"expression":{"id":29862,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"58103:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29863,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58112:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"58103:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29864,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58124:10:59","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":26169,"src":"58103:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29870,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":29865,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"58152:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29867,"indexExpression":{"id":29866,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26516,"src":"58170:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58152:49:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29868,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58202:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"58152:75:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":29869,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"58230:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"58152:79:59","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":29856,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"57984:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58000:21:59","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":33286,"src":"57984:37:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":29871,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57984:261:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29872,"nodeType":"ExpressionStatement","src":"57984:261:59"}]}},"id":29875,"nodeType":"IfStatement","src":"57080:1176:59","trueBody":{"id":29814,"nodeType":"Block","src":"57098:333:59","statements":[{"expression":{"id":29795,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29790,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"57112:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29792,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"57121:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"57112:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29793,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"57138:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29794,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"57153:6:59","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":26157,"src":"57138:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"57112:47:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":29796,"nodeType":"ExpressionStatement","src":"57112:47:59"},{"expression":{"arguments":[{"id":29800,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"57228:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":29801,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"57256:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29802,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57265:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"57256:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29803,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57277:10:59","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":26169,"src":"57256:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":29806,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"57313:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":29807,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57331:11:59","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":31136,"src":"57313:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$33380_$","typeString":"function () view external returns (contract ISafe)"}},"id":29808,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57313:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":29805,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"57305:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29804,"name":"address","nodeType":"ElementaryTypeName","src":"57305:7:59","typeDescriptions":{}}},"id":29809,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57305:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29810,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"57363:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29811,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57380:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"57363:43:59","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":29797,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"57173:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57189:21:59","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":33286,"src":"57173:37:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":29812,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57173:247:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29813,"nodeType":"ExpressionStatement","src":"57173:247:59"}]}},"id":29876,"nodeType":"IfStatement","src":"56313:1943:59","trueBody":{"id":29786,"nodeType":"Block","src":"56344:730:59","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29733,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29730,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"56362:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29731,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56379:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"56362:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":29732,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56396:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"56362:35:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29738,"nodeType":"IfStatement","src":"56358:102:59","trueBody":{"id":29737,"nodeType":"Block","src":"56399:61:59","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":29734,"name":"DefaultRulingNotSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26339,"src":"56424:19:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":29735,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56424:21:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29736,"nodeType":"RevertStatement","src":"56417:28:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29739,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"56477:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29740,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56494:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"56477:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":29741,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56511:1:59","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"56477:35:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29751,"nodeType":"IfStatement","src":"56473:121:59","trueBody":{"id":29750,"nodeType":"Block","src":"56514:80:59","statements":[{"expression":{"id":29748,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29743,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"56532:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29745,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"56541:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"56532:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29746,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"56558:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29747,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"56573:6:59","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":26157,"src":"56558:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"56532:47:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":29749,"nodeType":"ExpressionStatement","src":"56532:47:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":29755,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":29752,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"56611:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29753,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56628:13:59","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":26223,"src":"56611:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":29754,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56645:1:59","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"56611:35:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29774,"nodeType":"IfStatement","src":"56607:289:59","trueBody":{"id":29773,"nodeType":"Block","src":"56648:248:59","statements":[{"expression":{"id":29761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29756,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"56666:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29758,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"56675:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"56666:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29759,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"56692:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29760,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"56707:8:59","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":26162,"src":"56692:23:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"56666:49:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":29762,"nodeType":"ExpressionStatement","src":"56666:49:59"},{"expression":{"arguments":[{"id":29766,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"56789:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":29767,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"56801:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29768,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56810:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"56801:18:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29769,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"56821:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29770,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56838:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"56821:42:59","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":29763,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"56733:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29765,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56749:18:59","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":33275,"src":"56733:34:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":29771,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56733:148:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29772,"nodeType":"ExpressionStatement","src":"56733:148:59"}]}},{"expression":{"arguments":[{"id":29778,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29657,"src":"56961:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":29779,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"56973:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29780,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56982:11:59","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":26199,"src":"56973:20:59","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$26170_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":29781,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56994:10:59","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":26169,"src":"56973:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29782,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"57006:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29783,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57023:26:59","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26221,"src":"57006:43:59","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":29775,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"56909:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29777,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56925:18:59","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":33275,"src":"56909:34:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":29784,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56909:154:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29785,"nodeType":"ExpressionStatement","src":"56909:154:59"}]}},{"expression":{"id":29878,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"58266:14:59","subExpression":{"id":29877,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26512,"src":"58266:12:59","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":29879,"nodeType":"ExpressionStatement","src":"58266:14:59"},{"expression":{"id":29885,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":29880,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29664,"src":"58290:8:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":29882,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"58299:21:59","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":26201,"src":"58290:30:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29883,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"58323:5:59","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":29884,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58329:9:59","memberName":"timestamp","nodeType":"MemberAccess","src":"58323:15:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"58290:48:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":29886,"nodeType":"ExpressionStatement","src":"58290:48:59"},{"eventCall":{"arguments":[{"expression":{"id":29888,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29671,"src":"58360:16:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":29889,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58377:10:59","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":26215,"src":"58360:27:59","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"}},{"id":29890,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29650,"src":"58389:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":29891,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29652,"src":"58401:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$33254","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29887,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33141,"src":"58353:6:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$33254_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256)"}},"id":29892,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58353:56:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29893,"nodeType":"EmitStatement","src":"58348:61:59"}]},"baseFunctions":[33149],"functionSelector":"311a6c56","implemented":true,"kind":"function","modifiers":[],"name":"rule","nameLocation":"55536:4:59","overrides":{"id":29654,"nodeType":"OverrideSpecifier","overrides":[],"src":"55595:8:59"},"parameters":{"id":29653,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29650,"mutability":"mutable","name":"_disputeID","nameLocation":"55549:10:59","nodeType":"VariableDeclaration","scope":29895,"src":"55541:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29649,"name":"uint256","nodeType":"ElementaryTypeName","src":"55541:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":29652,"mutability":"mutable","name":"_ruling","nameLocation":"55569:7:59","nodeType":"VariableDeclaration","scope":29895,"src":"55561:15:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29651,"name":"uint256","nodeType":"ElementaryTypeName","src":"55561:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"55540:37:59"},"returnParameters":{"id":29655,"nodeType":"ParameterList","parameters":[],"src":"55604:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":29961,"nodeType":"FunctionDefinition","src":"58422:702:59","nodes":[],"body":{"id":29960,"nodeType":"Block","src":"58483:641:59","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"},"id":29906,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":29900,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"58497:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29902,"indexExpression":{"id":29901,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58507:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58497:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":29903,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58519:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"58497:36:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":29904,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"58537:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29905,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"58552:6:59","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":26157,"src":"58537:21:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"58497:61:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29912,"nodeType":"IfStatement","src":"58493:128:59","trueBody":{"id":29911,"nodeType":"Block","src":"58560:61:59","statements":[{"errorCall":{"arguments":[{"id":29908,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58599:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29907,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26307,"src":"58581:17:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":29909,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58581:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29910,"nodeType":"RevertStatement","src":"58574:36:59"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":29919,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":29913,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"58635:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29915,"indexExpression":{"id":29914,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58645:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58635:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":29916,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58657:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"58635:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":29917,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"58670:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29918,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58674:6:59","memberName":"sender","nodeType":"MemberAccess","src":"58670:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"58635:45:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":29930,"nodeType":"IfStatement","src":"58631:141:59","trueBody":{"id":29929,"nodeType":"Block","src":"58682:90:59","statements":[{"errorCall":{"arguments":[{"expression":{"baseExpression":{"id":29921,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"58717:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29923,"indexExpression":{"id":29922,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58727:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58717:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":29924,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58739:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"58717:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":29925,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"58750:3:59","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":29926,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58754:6:59","memberName":"sender","nodeType":"MemberAccess","src":"58750:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":29920,"name":"OnlySubmitter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26337,"src":"58703:13:59","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":29927,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58703:58:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29928,"nodeType":"RevertStatement","src":"58696:65:59"}]}},{"expression":{"arguments":[{"id":29934,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58830:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":29935,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"58854:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29937,"indexExpression":{"id":29936,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58864:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58854:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":29938,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58876:9:59","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":26182,"src":"58854:31:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":29939,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26564,"src":"58899:17:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$26226_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":29944,"indexExpression":{"expression":{"baseExpression":{"id":29940,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"58917:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29942,"indexExpression":{"id":29941,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"58927:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58917:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":29943,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58939:23:59","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":26203,"src":"58917:45:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58899:64:59","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$26226_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":29945,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58964:25:59","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":26219,"src":"58899:90:59","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":29931,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26538,"src":"58782:15:59","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$33287","typeString":"contract ICollateralVault"}},"id":29933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58798:18:59","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":33275,"src":"58782:34:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":29946,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58782:217:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29947,"nodeType":"ExpressionStatement","src":"58782:217:59"},{"expression":{"id":29954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":29948,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26546,"src":"59010:9:59","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$26204_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":29950,"indexExpression":{"id":29949,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"59020:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59010:21:59","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$26204_storage","typeString":"struct Proposal storage ref"}},"id":29951,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"59032:14:59","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":26189,"src":"59010:36:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":29952,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26163,"src":"59049:14:59","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$26163_$","typeString":"type(enum ProposalStatus)"}},"id":29953,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"59064:9:59","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":26159,"src":"59049:24:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"src":"59010:63:59","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$26163","typeString":"enum ProposalStatus"}},"id":29955,"nodeType":"ExpressionStatement","src":"59010:63:59"},{"eventCall":{"arguments":[{"id":29957,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29897,"src":"59106:10:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":29956,"name":"ProposalCancelled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26445,"src":"59088:17:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":29958,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59088:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29959,"nodeType":"EmitStatement","src":"59083:34:59"}]},"functionSelector":"e0a8f6f5","implemented":true,"kind":"function","modifiers":[],"name":"cancelProposal","nameLocation":"58431:14:59","parameters":{"id":29898,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29897,"mutability":"mutable","name":"proposalId","nameLocation":"58454:10:59","nodeType":"VariableDeclaration","scope":29961,"src":"58446:18:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":29896,"name":"uint256","nodeType":"ElementaryTypeName","src":"58446:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"58445:20:59"},"returnParameters":{"id":29899,"nodeType":"ParameterList","parameters":[],"src":"58483:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":29975,"nodeType":"FunctionDefinition","src":"59130:125:59","nodes":[],"body":{"id":29974,"nodeType":"Block","src":"59187:68:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":29967,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26838,"src":"59197:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":29968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59197:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29969,"nodeType":"ExpressionStatement","src":"59197:17:59"},{"expression":{"arguments":[{"id":29971,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29964,"src":"59240:7:59","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":29970,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30055,"src":"59224:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":29972,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59224:24:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":29973,"nodeType":"ExpressionStatement","src":"59224:24:59"}]},"functionSelector":"7263cfe2","implemented":true,"kind":"function","modifiers":[],"name":"addToAllowList","nameLocation":"59139:14:59","parameters":{"id":29965,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29964,"mutability":"mutable","name":"members","nameLocation":"59171:7:59","nodeType":"VariableDeclaration","scope":29975,"src":"59154:24:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":29962,"name":"address","nodeType":"ElementaryTypeName","src":"59154:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29963,"nodeType":"ArrayTypeName","src":"59154:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"59153:26:59"},"returnParameters":{"id":29966,"nodeType":"ParameterList","parameters":[],"src":"59187:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":30055,"nodeType":"FunctionDefinition","src":"59261:610:59","nodes":[],"body":{"id":30054,"nodeType":"Block","src":"59321:550:59","nodes":[],"statements":[{"assignments":[29982],"declarations":[{"constant":false,"id":29982,"mutability":"mutable","name":"allowlistRole","nameLocation":"59339:13:59","nodeType":"VariableDeclaration","scope":30054,"src":"59331:21:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":29981,"name":"bytes32","nodeType":"ElementaryTypeName","src":"59331:7:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":29990,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":29986,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"59382:11:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":29987,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"59395:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":29984,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"59365:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":29985,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"59369:12:59","memberName":"encodePacked","nodeType":"MemberAccess","src":"59365:16:59","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":29988,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59365:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":29983,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"59355:9:59","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":29989,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59355:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"59331:72:59"},{"condition":{"arguments":[{"id":29993,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29982,"src":"59444:13:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":29996,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"59467:1:59","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":29995,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"59459:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":29994,"name":"address","nodeType":"ElementaryTypeName","src":"59459:7:59","typeDescriptions":{}}},"id":29997,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59459:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":29991,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"59418:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":29992,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59436:7:59","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":13595,"src":"59418:25:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":29998,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59418:52:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30010,"nodeType":"IfStatement","src":"59414:138:59","trueBody":{"id":30009,"nodeType":"Block","src":"59472:80:59","statements":[{"expression":{"arguments":[{"id":30002,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29982,"src":"59515:13:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":30005,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"59538:1:59","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":30004,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"59530:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":30003,"name":"address","nodeType":"ElementaryTypeName","src":"59530:7:59","typeDescriptions":{}}},"id":30006,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59530:10:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":29999,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"59486:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":30001,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59504:10:59","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":13702,"src":"59486:28:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":30007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59486:55:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30008,"nodeType":"ExpressionStatement","src":"59486:55:59"}]}},{"body":{"id":30047,"nodeType":"Block","src":"59606:205:59","statements":[{"condition":{"id":30029,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"59624:53:59","subExpression":{"arguments":[{"id":30024,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29982,"src":"59651:13:59","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":30025,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29978,"src":"59666:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":30027,"indexExpression":{"id":30026,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30012,"src":"59674:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59666:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":30022,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"59625:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":30023,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59643:7:59","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":13595,"src":"59625:25:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":30028,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59625:52:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30046,"nodeType":"IfStatement","src":"59620:181:59","trueBody":{"id":30045,"nodeType":"Block","src":"59679:122:59","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":30036,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"59752:11:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":30037,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"59765:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":30034,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"59735:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":30035,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"59739:12:59","memberName":"encodePacked","nodeType":"MemberAccess","src":"59735:16:59","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":30038,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59735:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":30033,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"59725:9:59","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":30039,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59725:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":30040,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29978,"src":"59775:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":30042,"indexExpression":{"id":30041,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30012,"src":"59783:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59775:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":30030,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"59697:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":30032,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59715:9:59","memberName":"grantRole","nodeType":"MemberAccess","referencedDeclaration":13682,"src":"59697:27:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":30043,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59697:89:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30044,"nodeType":"ExpressionStatement","src":"59697:89:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":30018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":30015,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30012,"src":"59581:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":30016,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29978,"src":"59585:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":30017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59593:6:59","memberName":"length","nodeType":"MemberAccess","src":"59585:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"59581:18:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30048,"initializationExpression":{"assignments":[30012],"declarations":[{"constant":false,"id":30012,"mutability":"mutable","name":"i","nameLocation":"59574:1:59","nodeType":"VariableDeclaration","scope":30048,"src":"59566:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30011,"name":"uint256","nodeType":"ElementaryTypeName","src":"59566:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":30014,"initialValue":{"hexValue":"30","id":30013,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"59578:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"59566:13:59"},"loopExpression":{"expression":{"id":30020,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"59601:3:59","subExpression":{"id":30019,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30012,"src":"59601:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":30021,"nodeType":"ExpressionStatement","src":"59601:3:59"},"nodeType":"ForStatement","src":"59561:250:59"},{"eventCall":{"arguments":[{"id":30050,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"59848:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":30051,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":29978,"src":"59856:7:59","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":30049,"name":"AllowlistMembersAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26476,"src":"59826:21:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":30052,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59826:38:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30053,"nodeType":"EmitStatement","src":"59821:43:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addToAllowList","nameLocation":"59270:15:59","parameters":{"id":29979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":29978,"mutability":"mutable","name":"members","nameLocation":"59303:7:59","nodeType":"VariableDeclaration","scope":30055,"src":"59286:24:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":29976,"name":"address","nodeType":"ElementaryTypeName","src":"59286:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":29977,"nodeType":"ArrayTypeName","src":"59286:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"59285:26:59"},"returnParameters":{"id":29980,"nodeType":"ParameterList","parameters":[],"src":"59321:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":30069,"nodeType":"FunctionDefinition","src":"59877:137:59","nodes":[],"body":{"id":30068,"nodeType":"Block","src":"59941:73:59","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":30061,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26838,"src":"59951:15:59","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":30062,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59951:17:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30063,"nodeType":"ExpressionStatement","src":"59951:17:59"},{"expression":{"arguments":[{"id":30065,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30058,"src":"59999:7:59","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":30064,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30124,"src":"59978:20:59","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":30066,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59978:29:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30067,"nodeType":"ExpressionStatement","src":"59978:29:59"}]},"functionSelector":"a51312c8","implemented":true,"kind":"function","modifiers":[],"name":"removeFromAllowList","nameLocation":"59886:19:59","parameters":{"id":30059,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30058,"mutability":"mutable","name":"members","nameLocation":"59923:7:59","nodeType":"VariableDeclaration","scope":30069,"src":"59906:24:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":30056,"name":"address","nodeType":"ElementaryTypeName","src":"59906:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":30057,"nodeType":"ArrayTypeName","src":"59906:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"59905:26:59"},"returnParameters":{"id":30060,"nodeType":"ParameterList","parameters":[],"src":"59941:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":30124,"nodeType":"FunctionDefinition","src":"60020:422:59","nodes":[],"body":{"id":30123,"nodeType":"Block","src":"60085:357:59","nodes":[],"statements":[{"body":{"id":30116,"nodeType":"Block","src":"60140:240:59","statements":[{"condition":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":30091,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"60211:11:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":30092,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"60224:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":30089,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"60194:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":30090,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"60198:12:59","memberName":"encodePacked","nodeType":"MemberAccess","src":"60194:16:59","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":30093,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60194:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":30088,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"60184:9:59","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":30094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60184:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":30095,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30072,"src":"60234:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":30097,"indexExpression":{"id":30096,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30076,"src":"60242:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"60234:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":30086,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"60158:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":30087,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60176:7:59","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":13595,"src":"60158:25:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":30098,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60158:87:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30115,"nodeType":"IfStatement","src":"60154:216:59","trueBody":{"id":30114,"nodeType":"Block","src":"60247:123:59","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":30105,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"60321:11:59","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":30106,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"60334:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":30103,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"60304:3:59","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":30104,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"60308:12:59","memberName":"encodePacked","nodeType":"MemberAccess","src":"60304:16:59","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":30107,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60304:37:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":30102,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"60294:9:59","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":30108,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60294:48:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":30109,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30072,"src":"60344:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":30111,"indexExpression":{"id":30110,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30076,"src":"60352:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"60344:10:59","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":30099,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"60265:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":30101,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60283:10:59","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":13702,"src":"60265:28:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":30112,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60265:90:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30113,"nodeType":"ExpressionStatement","src":"60265:90:59"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":30082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":30079,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30076,"src":"60115:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":30080,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30072,"src":"60119:7:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":30081,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60127:6:59","memberName":"length","nodeType":"MemberAccess","src":"60119:14:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"60115:18:59","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30117,"initializationExpression":{"assignments":[30076],"declarations":[{"constant":false,"id":30076,"mutability":"mutable","name":"i","nameLocation":"60108:1:59","nodeType":"VariableDeclaration","scope":30117,"src":"60100:9:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30075,"name":"uint256","nodeType":"ElementaryTypeName","src":"60100:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":30078,"initialValue":{"hexValue":"30","id":30077,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"60112:1:59","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"60100:13:59"},"loopExpression":{"expression":{"id":30084,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"60135:3:59","subExpression":{"id":30083,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30076,"src":"60135:1:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":30085,"nodeType":"ExpressionStatement","src":"60135:3:59"},"nodeType":"ForStatement","src":"60095:285:59"},{"eventCall":{"arguments":[{"id":30119,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":25481,"src":"60419:6:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":30120,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30072,"src":"60427:7:59","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":30118,"name":"AllowlistMembersRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26469,"src":"60395:23:59","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":30121,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60395:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30122,"nodeType":"EmitStatement","src":"60390:45:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeFromAllowList","nameLocation":"60029:20:59","parameters":{"id":30073,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30072,"mutability":"mutable","name":"members","nameLocation":"60067:7:59","nodeType":"VariableDeclaration","scope":30124,"src":"60050:24:59","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":30070,"name":"address","nodeType":"ElementaryTypeName","src":"60050:7:59","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":30071,"nodeType":"ArrayTypeName","src":"60050:9:59","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"60049:26:59"},"returnParameters":{"id":30074,"nodeType":"ParameterList","parameters":[],"src":"60085:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":30146,"nodeType":"FunctionDefinition","src":"60448:168:59","nodes":[],"body":{"id":30145,"nodeType":"Block","src":"60508:108:59","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":30134,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"60550:4:59","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}],"id":30133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"60542:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":30132,"name":"address","nodeType":"ElementaryTypeName","src":"60542:7:59","typeDescriptions":{}}},"id":30135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60542:13:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":30136,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30126,"src":"60557:9:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":30139,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26535,"src":"60576:17:59","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}},"id":30140,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60594:11:59","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":31136,"src":"60576:29:59","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$33380_$","typeString":"function () view external returns (contract ISafe)"}},"id":30141,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60576:31:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":30138,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"60568:7:59","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":30137,"name":"address","nodeType":"ElementaryTypeName","src":"60568:7:59","typeDescriptions":{}}},"id":30142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60568:40:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":30129,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26541,"src":"60518:11:59","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"id":30131,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60530:11:59","memberName":"addStrategy","nodeType":"MemberAccess","referencedDeclaration":30217,"src":"60518:23:59","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$_t_address_$returns$__$","typeString":"function (address,uint256,address) external"}},"id":30143,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60518:91:59","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30144,"nodeType":"ExpressionStatement","src":"60518:91:59"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_registerToSybilScorer","nameLocation":"60457:22:59","parameters":{"id":30127,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30126,"mutability":"mutable","name":"threshold","nameLocation":"60488:9:59","nodeType":"VariableDeclaration","scope":30146,"src":"60480:17:59","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30125,"name":"uint256","nodeType":"ElementaryTypeName","src":"60480:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"60479:19:59"},"returnParameters":{"id":30128,"nodeType":"ParameterList","parameters":[],"src":"60508:0:59"},"scope":30151,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":30150,"nodeType":"VariableDeclaration","src":"60622:25:59","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"60642:5:59","scope":30151,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":30147,"name":"uint256","nodeType":"ElementaryTypeName","src":"60622:7:59","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":30149,"length":{"hexValue":"3530","id":30148,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"60630:2:59","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"60622:11:59","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":26282,"name":"BaseStrategyUpgradeable","nameLocations":["4171:23:59"],"nodeType":"IdentifierPath","referencedDeclaration":26068,"src":"4171:23:59"},"id":26283,"nodeType":"InheritanceSpecifier","src":"4171:23:59"},{"baseName":{"id":26284,"name":"IArbitrable","nameLocations":["4196:11:59"],"nodeType":"IdentifierPath","referencedDeclaration":33150,"src":"4196:11:59"},"id":26285,"nodeType":"InheritanceSpecifier","src":"4196:11:59"},{"baseName":{"id":26286,"name":"IPointStrategy","nameLocations":["4209:14:59"],"nodeType":"IdentifierPath","referencedDeclaration":26134,"src":"4209:14:59"},"id":26287,"nodeType":"InheritanceSpecifier","src":"4209:14:59"},{"baseName":{"id":26288,"name":"ERC165","nameLocations":["4225:6:59"],"nodeType":"IdentifierPath","referencedDeclaration":18550,"src":"4225:6:59"},"id":26289,"nodeType":"InheritanceSpecifier","src":"4225:6:59"}],"canonicalName":"CVStrategyV0_0","contractDependencies":[],"contractKind":"contract","documentation":{"id":26281,"nodeType":"StructuredDocumentation","src":"4100:44:59","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[30151,18550,18756,26134,33150,26068,793,1021,810,673,30801,16733,16386,16035,16045,14042,14757,14291],"name":"CVStrategyV0_0","nameLocation":"4153:14:59","scope":30152,"usedErrors":[712,715,718,721,724,727,730,733,736,739,742,745,748,751,754,757,760,763,766,769,772,775,778,783,786,789,792,821,26291,26293,26295,26297,26303,26307,26311,26317,26319,26321,26323,26325,26327,26331,26337,26339,26341,26343,26345,30716]}],"license":"AGPL-3.0-only"},"id":59} \ 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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a\",\"dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{},"viaIR":true},"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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4","urls":["bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a","dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"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":70250,"exportedSymbols":{"ArbitrableConfig":[66316],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[66158],"CVParams":[66325],"CVStrategyInitializeParamsV0_0":[66345],"CVStrategyInitializeParamsV0_1":[66370],"CVStrategyV0_0":[70249],"Clone":[3002],"CreateProposal":[66245],"ERC165":[57022],"ERC20":[55747],"IAllo":[2610],"IArbitrable":[76845],"IArbitrator":[76949],"ICollateralVault":[76982],"IERC165":[57228],"IPointStrategy":[66224],"ISybilScorer":[70608],"Math":[58094],"Metadata":[3098],"OwnableUpgradeable":[52200],"PassportScorer":[71080],"PointSystem":[66233],"PointSystemConfig":[66302],"Proposal":[66294],"ProposalDisputeInfo":[66260],"ProposalStatus":[66253],"ProposalSupport":[66299],"ProposalType":[66228],"RegistryCommunityV0_0":[73556],"UUPSUpgradeable":[54969],"console":[28807]},"nodeType":"SourceUnit","src":"42:60730:96","nodes":[{"id":66160,"nodeType":"PragmaDirective","src":"42:24:96","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":66162,"nodeType":"ImportDirective","src":"68:71:96","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"allo-v2-contracts/core/libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":66161,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"76:8:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66165,"nodeType":"ImportDirective","src":"140:82:96","nodes":[],"absolutePath":"lib/allo-v2/contracts/strategies/BaseStrategy.sol","file":"allo-v2-contracts/strategies/BaseStrategy.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":3924,"symbolAliases":[{"foreign":{"id":66163,"name":"BaseStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3923,"src":"148:12:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":66164,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"162:5:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66167,"nodeType":"ImportDirective","src":"223:85:96","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":73557,"symbolAliases":[{"foreign":{"id":66166,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"231:21:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66170,"nodeType":"ImportDirective","src":"309:87:96","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":57023,"symbolAliases":[{"foreign":{"id":66168,"name":"ERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57022,"src":"317:6:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":66169,"name":"IERC165","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57228,"src":"325:7:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66172,"nodeType":"ImportDirective","src":"397:68:96","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","file":"@openzeppelin/contracts/token/ERC20/ERC20.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":55748,"symbolAliases":[{"foreign":{"id":66171,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55747,"src":"405:5:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66174,"nodeType":"ImportDirective","src":"466:58:96","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"../interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":76950,"symbolAliases":[{"foreign":{"id":66173,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76949,"src":"474:11:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66176,"nodeType":"ImportDirective","src":"525:58:96","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"../interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":76846,"symbolAliases":[{"foreign":{"id":66175,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76845,"src":"533:11:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66178,"nodeType":"ImportDirective","src":"584:65:96","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":66177,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"592:5:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66180,"nodeType":"ImportDirective","src":"650:46:96","nodes":[],"absolutePath":"lib/forge-std/src/console.sol","file":"forge-std/console.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":28808,"symbolAliases":[{"foreign":{"id":66179,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28807,"src":"658:7:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66182,"nodeType":"ImportDirective","src":"697:65:96","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/math/Math.sol","file":"@openzeppelin/contracts/utils/math/Math.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":58095,"symbolAliases":[{"foreign":{"id":66181,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58094,"src":"705:4:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66184,"nodeType":"ImportDirective","src":"763:49:96","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":70609,"symbolAliases":[{"foreign":{"id":66183,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70608,"src":"771:12:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66186,"nodeType":"ImportDirective","src":"813:88:96","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":54970,"symbolAliases":[{"foreign":{"id":66185,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54969,"src":"821:15:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66188,"nodeType":"ImportDirective","src":"902:71:96","nodes":[],"absolutePath":"pkg/contracts/src/BaseStrategyUpgradeable.sol","file":"../BaseStrategyUpgradeable.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":66159,"symbolAliases":[{"foreign":{"id":66187,"name":"BaseStrategyUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66158,"src":"910:23:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66190,"nodeType":"ImportDirective","src":"974:101:96","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":52201,"symbolAliases":[{"foreign":{"id":66189,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52200,"src":"982:18:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66192,"nodeType":"ImportDirective","src":"1076:68:96","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"../interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":76983,"symbolAliases":[{"foreign":{"id":66191,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76982,"src":"1084:16:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66194,"nodeType":"ImportDirective","src":"1145:53:96","nodes":[],"absolutePath":"pkg/contracts/src/PassportScorer.sol","file":"../PassportScorer.sol","nameLocation":"-1:-1:-1","scope":70250,"sourceUnit":71081,"symbolAliases":[{"foreign":{"id":66193,"name":"PassportScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71080,"src":"1153:14:96","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":66224,"nodeType":"ContractDefinition","src":"1354:343:96","nodes":[{"id":66199,"nodeType":"FunctionDefinition","src":"1385:52:96","nodes":[],"functionSelector":"6453d9c4","implemented":false,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"1394:16:96","parameters":{"id":66197,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66196,"mutability":"mutable","name":"_member","nameLocation":"1419:7:96","nodeType":"VariableDeclaration","scope":66199,"src":"1411:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66195,"name":"address","nodeType":"ElementaryTypeName","src":"1411:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1410:17:96"},"returnParameters":{"id":66198,"nodeType":"ParameterList","parameters":[],"src":"1436:0:96"},"scope":66224,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":66208,"nodeType":"FunctionDefinition","src":"1443:91:96","nodes":[],"functionSelector":"782aadff","implemented":false,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"1452:13:96","parameters":{"id":66204,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66201,"mutability":"mutable","name":"_member","nameLocation":"1474:7:96","nodeType":"VariableDeclaration","scope":66208,"src":"1466:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66200,"name":"address","nodeType":"ElementaryTypeName","src":"1466:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66203,"mutability":"mutable","name":"_amountToStake","nameLocation":"1491:14:96","nodeType":"VariableDeclaration","scope":66208,"src":"1483:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66202,"name":"uint256","nodeType":"ElementaryTypeName","src":"1483:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1465:41:96"},"returnParameters":{"id":66207,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66206,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66208,"src":"1525:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66205,"name":"uint256","nodeType":"ElementaryTypeName","src":"1525:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1524:9:96"},"scope":66224,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":66217,"nodeType":"FunctionDefinition","src":"1540:92:96","nodes":[],"functionSelector":"2ed04b2b","implemented":false,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"1549:13:96","parameters":{"id":66213,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66210,"mutability":"mutable","name":"_member","nameLocation":"1571:7:96","nodeType":"VariableDeclaration","scope":66217,"src":"1563:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66209,"name":"address","nodeType":"ElementaryTypeName","src":"1563:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66212,"mutability":"mutable","name":"_amountToUntake","nameLocation":"1588:15:96","nodeType":"VariableDeclaration","scope":66217,"src":"1580:23:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66211,"name":"uint256","nodeType":"ElementaryTypeName","src":"1580:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1562:42:96"},"returnParameters":{"id":66216,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66215,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66217,"src":"1623:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66214,"name":"uint256","nodeType":"ElementaryTypeName","src":"1623:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1622:9:96"},"scope":66224,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":66223,"nodeType":"FunctionDefinition","src":"1638:57:96","nodes":[],"functionSelector":"c3292171","implemented":false,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"1647:14:96","parameters":{"id":66218,"nodeType":"ParameterList","parameters":[],"src":"1661:2:96"},"returnParameters":{"id":66222,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66221,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66223,"src":"1682:11:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":66220,"nodeType":"UserDefinedTypeName","pathNode":{"id":66219,"name":"PointSystem","nameLocations":["1682:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"1682:11:96"},"referencedDeclaration":66233,"src":"1682:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"1681:13:96"},"scope":66224,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IPointStrategy","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[66224],"name":"IPointStrategy","nameLocation":"1364:14:96","scope":70250,"usedErrors":[]},{"id":66228,"nodeType":"EnumDefinition","src":"1699:63:96","nodes":[],"canonicalName":"ProposalType","members":[{"id":66225,"name":"Signaling","nameLocation":"1723:9:96","nodeType":"EnumValue","src":"1723:9:96"},{"id":66226,"name":"Funding","nameLocation":"1738:7:96","nodeType":"EnumValue","src":"1738:7:96"},{"id":66227,"name":"Streaming","nameLocation":"1751:9:96","nodeType":"EnumValue","src":"1751:9:96"}],"name":"ProposalType","nameLocation":"1704:12:96"},{"id":66233,"nodeType":"EnumDefinition","src":"1764:72:96","nodes":[],"canonicalName":"PointSystem","members":[{"id":66229,"name":"Fixed","nameLocation":"1787:5:96","nodeType":"EnumValue","src":"1787:5:96"},{"id":66230,"name":"Capped","nameLocation":"1798:6:96","nodeType":"EnumValue","src":"1798:6:96"},{"id":66231,"name":"Unlimited","nameLocation":"1810:9:96","nodeType":"EnumValue","src":"1810:9:96"},{"id":66232,"name":"Quadratic","nameLocation":"1825:9:96","nodeType":"EnumValue","src":"1825:9:96"}],"name":"PointSystem","nameLocation":"1769:11:96"},{"id":66245,"nodeType":"StructDefinition","src":"1838:211:96","nodes":[],"canonicalName":"CreateProposal","members":[{"constant":false,"id":66235,"mutability":"mutable","name":"poolId","nameLocation":"1901:6:96","nodeType":"VariableDeclaration","scope":66245,"src":"1893:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66234,"name":"uint256","nodeType":"ElementaryTypeName","src":"1893:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66237,"mutability":"mutable","name":"beneficiary","nameLocation":"1921:11:96","nodeType":"VariableDeclaration","scope":66245,"src":"1913:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66236,"name":"address","nodeType":"ElementaryTypeName","src":"1913:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66239,"mutability":"mutable","name":"amountRequested","nameLocation":"1980:15:96","nodeType":"VariableDeclaration","scope":66245,"src":"1972:23:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66238,"name":"uint256","nodeType":"ElementaryTypeName","src":"1972:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66241,"mutability":"mutable","name":"requestedToken","nameLocation":"2009:14:96","nodeType":"VariableDeclaration","scope":66245,"src":"2001:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66240,"name":"address","nodeType":"ElementaryTypeName","src":"2001:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66244,"mutability":"mutable","name":"metadata","nameLocation":"2038:8:96","nodeType":"VariableDeclaration","scope":66245,"src":"2029:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":66243,"nodeType":"UserDefinedTypeName","pathNode":{"id":66242,"name":"Metadata","nameLocations":["2029:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2029:8:96"},"referencedDeclaration":3098,"src":"2029:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"name":"CreateProposal","nameLocation":"1845:14:96","scope":70250,"visibility":"public"},{"id":66253,"nodeType":"EnumDefinition","src":"2051:360:96","nodes":[],"canonicalName":"ProposalStatus","members":[{"id":66246,"name":"Inactive","nameLocation":"2077:8:96","nodeType":"EnumValue","src":"2077:8:96"},{"id":66247,"name":"Active","nameLocation":"2103:6:96","nodeType":"EnumValue","src":"2103:6:96"},{"id":66248,"name":"Paused","nameLocation":"2162:6:96","nodeType":"EnumValue","src":"2162:6:96"},{"id":66249,"name":"Cancelled","nameLocation":"2224:9:96","nodeType":"EnumValue","src":"2224:9:96"},{"id":66250,"name":"Executed","nameLocation":"2273:8:96","nodeType":"EnumValue","src":"2273:8:96"},{"id":66251,"name":"Disputed","nameLocation":"2320:8:96","nodeType":"EnumValue","src":"2320:8:96"},{"id":66252,"name":"Rejected","nameLocation":"2367:8:96","nodeType":"EnumValue","src":"2367:8:96"}],"name":"ProposalStatus","nameLocation":"2056:14:96"},{"id":66260,"nodeType":"StructDefinition","src":"2413:107:96","nodes":[],"canonicalName":"ProposalDisputeInfo","members":[{"constant":false,"id":66255,"mutability":"mutable","name":"disputeId","nameLocation":"2454:9:96","nodeType":"VariableDeclaration","scope":66260,"src":"2446:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66254,"name":"uint256","nodeType":"ElementaryTypeName","src":"2446:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66257,"mutability":"mutable","name":"disputeTimestamp","nameLocation":"2477:16:96","nodeType":"VariableDeclaration","scope":66260,"src":"2469:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66256,"name":"uint256","nodeType":"ElementaryTypeName","src":"2469:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66259,"mutability":"mutable","name":"challenger","nameLocation":"2507:10:96","nodeType":"VariableDeclaration","scope":66260,"src":"2499:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66258,"name":"address","nodeType":"ElementaryTypeName","src":"2499:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"ProposalDisputeInfo","nameLocation":"2420:19:96","scope":70250,"visibility":"public"},{"id":66294,"nodeType":"StructDefinition","src":"2522:466:96","nodes":[],"canonicalName":"Proposal","members":[{"constant":false,"id":66262,"mutability":"mutable","name":"proposalId","nameLocation":"2552:10:96","nodeType":"VariableDeclaration","scope":66294,"src":"2544:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66261,"name":"uint256","nodeType":"ElementaryTypeName","src":"2544:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66264,"mutability":"mutable","name":"requestedAmount","nameLocation":"2576:15:96","nodeType":"VariableDeclaration","scope":66294,"src":"2568:23:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66263,"name":"uint256","nodeType":"ElementaryTypeName","src":"2568:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66266,"mutability":"mutable","name":"stakedAmount","nameLocation":"2605:12:96","nodeType":"VariableDeclaration","scope":66294,"src":"2597:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66265,"name":"uint256","nodeType":"ElementaryTypeName","src":"2597:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66268,"mutability":"mutable","name":"convictionLast","nameLocation":"2631:14:96","nodeType":"VariableDeclaration","scope":66294,"src":"2623:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66267,"name":"uint256","nodeType":"ElementaryTypeName","src":"2623:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66270,"mutability":"mutable","name":"beneficiary","nameLocation":"2659:11:96","nodeType":"VariableDeclaration","scope":66294,"src":"2651:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66269,"name":"address","nodeType":"ElementaryTypeName","src":"2651:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66272,"mutability":"mutable","name":"submitter","nameLocation":"2684:9:96","nodeType":"VariableDeclaration","scope":66294,"src":"2676:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66271,"name":"address","nodeType":"ElementaryTypeName","src":"2676:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66274,"mutability":"mutable","name":"requestedToken","nameLocation":"2707:14:96","nodeType":"VariableDeclaration","scope":66294,"src":"2699:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66273,"name":"address","nodeType":"ElementaryTypeName","src":"2699:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66276,"mutability":"mutable","name":"blockLast","nameLocation":"2735:9:96","nodeType":"VariableDeclaration","scope":66294,"src":"2727:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66275,"name":"uint256","nodeType":"ElementaryTypeName","src":"2727:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66279,"mutability":"mutable","name":"proposalStatus","nameLocation":"2765:14:96","nodeType":"VariableDeclaration","scope":66294,"src":"2750:29:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"typeName":{"id":66278,"nodeType":"UserDefinedTypeName","pathNode":{"id":66277,"name":"ProposalStatus","nameLocations":["2750:14:96"],"nodeType":"IdentifierPath","referencedDeclaration":66253,"src":"2750:14:96"},"referencedDeclaration":66253,"src":"2750:14:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":66283,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"2813:17:96","nodeType":"VariableDeclaration","scope":66294,"src":"2785:45:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":66282,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":66280,"name":"address","nodeType":"ElementaryTypeName","src":"2793:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"2785:27:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":66281,"name":"uint256","nodeType":"ElementaryTypeName","src":"2804:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"internal"},{"constant":false,"id":66286,"mutability":"mutable","name":"metadata","nameLocation":"2868:8:96","nodeType":"VariableDeclaration","scope":66294,"src":"2859:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":66285,"nodeType":"UserDefinedTypeName","pathNode":{"id":66284,"name":"Metadata","nameLocations":["2859:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2859:8:96"},"referencedDeclaration":3098,"src":"2859:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":66289,"mutability":"mutable","name":"disputeInfo","nameLocation":"2902:11:96","nodeType":"VariableDeclaration","scope":66294,"src":"2882:31:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage_ptr","typeString":"struct ProposalDisputeInfo"},"typeName":{"id":66288,"nodeType":"UserDefinedTypeName","pathNode":{"id":66287,"name":"ProposalDisputeInfo","nameLocations":["2882:19:96"],"nodeType":"IdentifierPath","referencedDeclaration":66260,"src":"2882:19:96"},"referencedDeclaration":66260,"src":"2882:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage_ptr","typeString":"struct ProposalDisputeInfo"}},"visibility":"internal"},{"constant":false,"id":66291,"mutability":"mutable","name":"lastDisputeCompletion","nameLocation":"2927:21:96","nodeType":"VariableDeclaration","scope":66294,"src":"2919:29:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66290,"name":"uint256","nodeType":"ElementaryTypeName","src":"2919:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66293,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"2962:23:96","nodeType":"VariableDeclaration","scope":66294,"src":"2954:31:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66292,"name":"uint256","nodeType":"ElementaryTypeName","src":"2954:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"Proposal","nameLocation":"2529:8:96","scope":70250,"visibility":"public"},{"id":66299,"nodeType":"StructDefinition","src":"2990:114:96","nodes":[],"canonicalName":"ProposalSupport","members":[{"constant":false,"id":66296,"mutability":"mutable","name":"proposalId","nameLocation":"3027:10:96","nodeType":"VariableDeclaration","scope":66299,"src":"3019:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66295,"name":"uint256","nodeType":"ElementaryTypeName","src":"3019:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66298,"mutability":"mutable","name":"deltaSupport","nameLocation":"3050:12:96","nodeType":"VariableDeclaration","scope":66299,"src":"3043:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":66297,"name":"int256","nodeType":"ElementaryTypeName","src":"3043:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"name":"ProposalSupport","nameLocation":"2997:15:96","scope":70250,"visibility":"public"},{"id":66302,"nodeType":"StructDefinition","src":"3106:77:96","nodes":[],"canonicalName":"PointSystemConfig","members":[{"constant":false,"id":66301,"mutability":"mutable","name":"maxAmount","nameLocation":"3171:9:96","nodeType":"VariableDeclaration","scope":66302,"src":"3163:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66300,"name":"uint256","nodeType":"ElementaryTypeName","src":"3163:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"PointSystemConfig","nameLocation":"3113:17:96","scope":70250,"visibility":"public"},{"id":66316,"nodeType":"StructDefinition","src":"3185:221:96","nodes":[],"canonicalName":"ArbitrableConfig","members":[{"constant":false,"id":66305,"mutability":"mutable","name":"arbitrator","nameLocation":"3227:10:96","nodeType":"VariableDeclaration","scope":66316,"src":"3215:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"},"typeName":{"id":66304,"nodeType":"UserDefinedTypeName","pathNode":{"id":66303,"name":"IArbitrator","nameLocations":["3215:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":76949,"src":"3215:11:96"},"referencedDeclaration":76949,"src":"3215:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":66307,"mutability":"mutable","name":"tribunalSafe","nameLocation":"3251:12:96","nodeType":"VariableDeclaration","scope":66316,"src":"3243:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66306,"name":"address","nodeType":"ElementaryTypeName","src":"3243:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66309,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"3277:25:96","nodeType":"VariableDeclaration","scope":66316,"src":"3269:33:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66308,"name":"uint256","nodeType":"ElementaryTypeName","src":"3269:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66311,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"3316:26:96","nodeType":"VariableDeclaration","scope":66316,"src":"3308:34:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66310,"name":"uint256","nodeType":"ElementaryTypeName","src":"3308:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66313,"mutability":"mutable","name":"defaultRuling","nameLocation":"3356:13:96","nodeType":"VariableDeclaration","scope":66316,"src":"3348:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66312,"name":"uint256","nodeType":"ElementaryTypeName","src":"3348:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66315,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"3383:20:96","nodeType":"VariableDeclaration","scope":66316,"src":"3375:28:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66314,"name":"uint256","nodeType":"ElementaryTypeName","src":"3375:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"ArbitrableConfig","nameLocation":"3192:16:96","scope":70250,"visibility":"public"},{"id":66325,"nodeType":"StructDefinition","src":"3408:112:96","nodes":[],"canonicalName":"CVParams","members":[{"constant":false,"id":66318,"mutability":"mutable","name":"maxRatio","nameLocation":"3438:8:96","nodeType":"VariableDeclaration","scope":66325,"src":"3430:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66317,"name":"uint256","nodeType":"ElementaryTypeName","src":"3430:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66320,"mutability":"mutable","name":"weight","nameLocation":"3460:6:96","nodeType":"VariableDeclaration","scope":66325,"src":"3452:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66319,"name":"uint256","nodeType":"ElementaryTypeName","src":"3452:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66322,"mutability":"mutable","name":"decay","nameLocation":"3480:5:96","nodeType":"VariableDeclaration","scope":66325,"src":"3472:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66321,"name":"uint256","nodeType":"ElementaryTypeName","src":"3472:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66324,"mutability":"mutable","name":"minThresholdPoints","nameLocation":"3499:18:96","nodeType":"VariableDeclaration","scope":66325,"src":"3491:26:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66323,"name":"uint256","nodeType":"ElementaryTypeName","src":"3491:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"name":"CVParams","nameLocation":"3415:8:96","scope":70250,"visibility":"public"},{"id":66345,"nodeType":"StructDefinition","src":"3522:254:96","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_0","members":[{"constant":false,"id":66328,"mutability":"mutable","name":"cvParams","nameLocation":"3575:8:96","nodeType":"VariableDeclaration","scope":66345,"src":"3566:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":66327,"nodeType":"UserDefinedTypeName","pathNode":{"id":66326,"name":"CVParams","nameLocations":["3566:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"3566:8:96"},"referencedDeclaration":66325,"src":"3566:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":66331,"mutability":"mutable","name":"proposalType","nameLocation":"3602:12:96","nodeType":"VariableDeclaration","scope":66345,"src":"3589:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"typeName":{"id":66330,"nodeType":"UserDefinedTypeName","pathNode":{"id":66329,"name":"ProposalType","nameLocations":["3589:12:96"],"nodeType":"IdentifierPath","referencedDeclaration":66228,"src":"3589:12:96"},"referencedDeclaration":66228,"src":"3589:12:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":66334,"mutability":"mutable","name":"pointSystem","nameLocation":"3632:11:96","nodeType":"VariableDeclaration","scope":66345,"src":"3620:23:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":66333,"nodeType":"UserDefinedTypeName","pathNode":{"id":66332,"name":"PointSystem","nameLocations":["3620:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"3620:11:96"},"referencedDeclaration":66233,"src":"3620:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":66337,"mutability":"mutable","name":"pointConfig","nameLocation":"3667:11:96","nodeType":"VariableDeclaration","scope":66345,"src":"3649:29:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":66336,"nodeType":"UserDefinedTypeName","pathNode":{"id":66335,"name":"PointSystemConfig","nameLocations":["3649:17:96"],"nodeType":"IdentifierPath","referencedDeclaration":66302,"src":"3649:17:96"},"referencedDeclaration":66302,"src":"3649:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":66340,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3701:16:96","nodeType":"VariableDeclaration","scope":66345,"src":"3684:33:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":66339,"nodeType":"UserDefinedTypeName","pathNode":{"id":66338,"name":"ArbitrableConfig","nameLocations":["3684:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"3684:16:96"},"referencedDeclaration":66316,"src":"3684:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":66342,"mutability":"mutable","name":"registryCommunity","nameLocation":"3731:17:96","nodeType":"VariableDeclaration","scope":66345,"src":"3723:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66341,"name":"address","nodeType":"ElementaryTypeName","src":"3723:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66344,"mutability":"mutable","name":"sybilScorer","nameLocation":"3762:11:96","nodeType":"VariableDeclaration","scope":66345,"src":"3754:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66343,"name":"address","nodeType":"ElementaryTypeName","src":"3754:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_0","nameLocation":"3529:30:96","scope":70250,"visibility":"public"},{"id":66370,"nodeType":"StructDefinition","src":"3778:320:96","nodes":[],"canonicalName":"CVStrategyInitializeParamsV0_1","members":[{"constant":false,"id":66348,"mutability":"mutable","name":"cvParams","nameLocation":"3831:8:96","nodeType":"VariableDeclaration","scope":66370,"src":"3822:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"},"typeName":{"id":66347,"nodeType":"UserDefinedTypeName","pathNode":{"id":66346,"name":"CVParams","nameLocations":["3822:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"3822:8:96"},"referencedDeclaration":66325,"src":"3822:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":66351,"mutability":"mutable","name":"proposalType","nameLocation":"3858:12:96","nodeType":"VariableDeclaration","scope":66370,"src":"3845:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"typeName":{"id":66350,"nodeType":"UserDefinedTypeName","pathNode":{"id":66349,"name":"ProposalType","nameLocations":["3845:12:96"],"nodeType":"IdentifierPath","referencedDeclaration":66228,"src":"3845:12:96"},"referencedDeclaration":66228,"src":"3845:12:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"visibility":"internal"},{"constant":false,"id":66354,"mutability":"mutable","name":"pointSystem","nameLocation":"3888:11:96","nodeType":"VariableDeclaration","scope":66370,"src":"3876:23:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":66353,"nodeType":"UserDefinedTypeName","pathNode":{"id":66352,"name":"PointSystem","nameLocations":["3876:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"3876:11:96"},"referencedDeclaration":66233,"src":"3876:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"internal"},{"constant":false,"id":66357,"mutability":"mutable","name":"pointConfig","nameLocation":"3923:11:96","nodeType":"VariableDeclaration","scope":66370,"src":"3905:29:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage_ptr","typeString":"struct PointSystemConfig"},"typeName":{"id":66356,"nodeType":"UserDefinedTypeName","pathNode":{"id":66355,"name":"PointSystemConfig","nameLocations":["3905:17:96"],"nodeType":"IdentifierPath","referencedDeclaration":66302,"src":"3905:17:96"},"referencedDeclaration":66302,"src":"3905:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"internal"},{"constant":false,"id":66360,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"3957:16:96","nodeType":"VariableDeclaration","scope":66370,"src":"3940:33:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":66359,"nodeType":"UserDefinedTypeName","pathNode":{"id":66358,"name":"ArbitrableConfig","nameLocations":["3940:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"3940:16:96"},"referencedDeclaration":66316,"src":"3940:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":66362,"mutability":"mutable","name":"registryCommunity","nameLocation":"3987:17:96","nodeType":"VariableDeclaration","scope":66370,"src":"3979:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66361,"name":"address","nodeType":"ElementaryTypeName","src":"3979:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66364,"mutability":"mutable","name":"sybilScorer","nameLocation":"4018:11:96","nodeType":"VariableDeclaration","scope":66370,"src":"4010:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66363,"name":"address","nodeType":"ElementaryTypeName","src":"4010:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66366,"mutability":"mutable","name":"sybilScorerThreshold","nameLocation":"4043:20:96","nodeType":"VariableDeclaration","scope":66370,"src":"4035:28:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66365,"name":"uint256","nodeType":"ElementaryTypeName","src":"4035:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66369,"mutability":"mutable","name":"initialAllowlist","nameLocation":"4079:16:96","nodeType":"VariableDeclaration","scope":66370,"src":"4069:26:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":66367,"name":"address","nodeType":"ElementaryTypeName","src":"4069:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66368,"nodeType":"ArrayTypeName","src":"4069:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"CVStrategyInitializeParamsV0_1","nameLocation":"3785:30:96","scope":70250,"visibility":"public"},{"id":70249,"nodeType":"ContractDefinition","src":"4144:56627:96","nodes":[{"id":66381,"nodeType":"ErrorDefinition","src":"4451:26:96","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"4457:17:96","parameters":{"id":66380,"nodeType":"ParameterList","parameters":[],"src":"4474:2:96"}},{"id":66383,"nodeType":"ErrorDefinition","src":"4495:23:96","nodes":[],"errorSelector":"5fccb67f","name":"UserIsInactive","nameLocation":"4501:14:96","parameters":{"id":66382,"nodeType":"ParameterList","parameters":[],"src":"4515:2:96"}},{"id":66385,"nodeType":"ErrorDefinition","src":"4537:20:96","nodes":[],"errorSelector":"ed4421ad","name":"PoolIsEmpty","nameLocation":"4543:11:96","parameters":{"id":66384,"nodeType":"ParameterList","parameters":[],"src":"4554:2:96"}},{"id":66387,"nodeType":"ErrorDefinition","src":"4762:28:96","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"4768:19:96","parameters":{"id":66386,"nodeType":"ParameterList","parameters":[],"src":"4787:2:96"}},{"id":66393,"nodeType":"ErrorDefinition","src":"4953:77:96","nodes":[],"errorSelector":"d64182fe","name":"NotEnoughPointsToSupport","nameLocation":"4959:24:96","parameters":{"id":66392,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66389,"mutability":"mutable","name":"pointsSupport","nameLocation":"4992:13:96","nodeType":"VariableDeclaration","scope":66393,"src":"4984:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66388,"name":"uint256","nodeType":"ElementaryTypeName","src":"4984:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66391,"mutability":"mutable","name":"pointsBalance","nameLocation":"5015:13:96","nodeType":"VariableDeclaration","scope":66393,"src":"5007:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66390,"name":"uint256","nodeType":"ElementaryTypeName","src":"5007:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4983:46:96"}},{"id":66397,"nodeType":"ErrorDefinition","src":"5151:45:96","nodes":[],"errorSelector":"44980d8f","name":"ProposalNotActive","nameLocation":"5157:17:96","parameters":{"id":66396,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66395,"mutability":"mutable","name":"_proposalId","nameLocation":"5183:11:96","nodeType":"VariableDeclaration","scope":66397,"src":"5175:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66394,"name":"uint256","nodeType":"ElementaryTypeName","src":"5175:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5174:21:96"}},{"id":66401,"nodeType":"ErrorDefinition","src":"5215:45:96","nodes":[],"errorSelector":"c1d17bef","name":"ProposalNotInList","nameLocation":"5221:17:96","parameters":{"id":66400,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66399,"mutability":"mutable","name":"_proposalId","nameLocation":"5247:11:96","nodeType":"VariableDeclaration","scope":66401,"src":"5239:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66398,"name":"uint256","nodeType":"ElementaryTypeName","src":"5239:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5238:21:96"}},{"id":66407,"nodeType":"ErrorDefinition","src":"5279:68:96","nodes":[],"errorSelector":"adebb154","name":"ProposalSupportDuplicated","nameLocation":"5285:25:96","parameters":{"id":66406,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66403,"mutability":"mutable","name":"_proposalId","nameLocation":"5319:11:96","nodeType":"VariableDeclaration","scope":66407,"src":"5311:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66402,"name":"uint256","nodeType":"ElementaryTypeName","src":"5311:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66405,"mutability":"mutable","name":"index","nameLocation":"5340:5:96","nodeType":"VariableDeclaration","scope":66407,"src":"5332:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66404,"name":"uint256","nodeType":"ElementaryTypeName","src":"5332:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5310:36:96"}},{"id":66409,"nodeType":"ErrorDefinition","src":"5365:40:96","nodes":[],"errorSelector":"cce79308","name":"ConvictionUnderMinimumThreshold","nameLocation":"5371:31:96","parameters":{"id":66408,"nodeType":"ParameterList","parameters":[],"src":"5402:2:96"}},{"id":66411,"nodeType":"ErrorDefinition","src":"5424:29:96","nodes":[],"errorSelector":"af0916a2","name":"OnlyCommunityAllowed","nameLocation":"5430:20:96","parameters":{"id":66410,"nodeType":"ParameterList","parameters":[],"src":"5450:2:96"}},{"id":66413,"nodeType":"ErrorDefinition","src":"5587:24:96","nodes":[],"errorSelector":"e860ec7e","name":"OnlyCouncilSafe","nameLocation":"5593:15:96","parameters":{"id":66412,"nodeType":"ParameterList","parameters":[],"src":"5608:2:96"}},{"id":66415,"nodeType":"ErrorDefinition","src":"5616:32:96","nodes":[],"errorSelector":"5b96b588","name":"UserCannotExecuteAction","nameLocation":"5622:23:96","parameters":{"id":66414,"nodeType":"ParameterList","parameters":[],"src":"5645:2:96"}},{"id":66417,"nodeType":"ErrorDefinition","src":"5734:23:96","nodes":[],"errorSelector":"2eef310a","name":"OnlyArbitrator","nameLocation":"5740:14:96","parameters":{"id":66416,"nodeType":"ParameterList","parameters":[],"src":"5754:2:96"}},{"id":66421,"nodeType":"ErrorDefinition","src":"5762:47:96","nodes":[],"errorSelector":"96023952","name":"ProposalNotDisputed","nameLocation":"5768:19:96","parameters":{"id":66420,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66419,"mutability":"mutable","name":"_proposalId","nameLocation":"5796:11:96","nodeType":"VariableDeclaration","scope":66421,"src":"5788:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66418,"name":"uint256","nodeType":"ElementaryTypeName","src":"5788:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5787:21:96"}},{"id":66427,"nodeType":"ErrorDefinition","src":"5853:55:96","nodes":[],"errorSelector":"8a89b922","name":"OnlySubmitter","nameLocation":"5859:13:96","parameters":{"id":66426,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66423,"mutability":"mutable","name":"submitter","nameLocation":"5881:9:96","nodeType":"VariableDeclaration","scope":66427,"src":"5873:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66422,"name":"address","nodeType":"ElementaryTypeName","src":"5873:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66425,"mutability":"mutable","name":"sender","nameLocation":"5900:6:96","nodeType":"VariableDeclaration","scope":66427,"src":"5892:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66424,"name":"address","nodeType":"ElementaryTypeName","src":"5892:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5872:35:96"}},{"id":66429,"nodeType":"ErrorDefinition","src":"5994:28:96","nodes":[],"errorSelector":"dd466dd0","name":"DefaultRulingNotSet","nameLocation":"6000:19:96","parameters":{"id":66428,"nodeType":"ParameterList","parameters":[],"src":"6019:2:96"}},{"id":66431,"nodeType":"ErrorDefinition","src":"6206:30:96","nodes":[],"errorSelector":"3e668d03","name":"AShouldBeUnderTwo_128","nameLocation":"6212:21:96","parameters":{"id":66430,"nodeType":"ParameterList","parameters":[],"src":"6233:2:96"}},{"id":66433,"nodeType":"ErrorDefinition","src":"6241:29:96","nodes":[],"errorSelector":"70b7a2d9","name":"BShouldBeLessTwo_128","nameLocation":"6247:20:96","parameters":{"id":66432,"nodeType":"ParameterList","parameters":[],"src":"6267:2:96"}},{"id":66435,"nodeType":"ErrorDefinition","src":"6275:34:96","nodes":[],"errorSelector":"ff5b3cef","name":"AShouldBeUnderOrEqTwo_128","nameLocation":"6281:25:96","parameters":{"id":66434,"nodeType":"ParameterList","parameters":[],"src":"6306:2:96"}},{"id":66442,"nodeType":"EventDefinition","src":"6481:73:96","nodes":[],"anonymous":false,"eventSelector":"e5315be7b0ab27f8044fa25213ec2851fa61dd47203db658cf77f45f39ffc37b","name":"InitializedCV","nameLocation":"6487:13:96","parameters":{"id":66441,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66437,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6509:6:96","nodeType":"VariableDeclaration","scope":66442,"src":"6501:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66436,"name":"uint256","nodeType":"ElementaryTypeName","src":"6501:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66440,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6548:4:96","nodeType":"VariableDeclaration","scope":66442,"src":"6517:35:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$66345_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"},"typeName":{"id":66439,"nodeType":"UserDefinedTypeName","pathNode":{"id":66438,"name":"CVStrategyInitializeParamsV0_0","nameLocations":["6517:30:96"],"nodeType":"IdentifierPath","referencedDeclaration":66345,"src":"6517:30:96"},"referencedDeclaration":66345,"src":"6517:30:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_0_$66345_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_0"}},"visibility":"internal"}],"src":"6500:53:96"}},{"id":66449,"nodeType":"EventDefinition","src":"6559:74:96","nodes":[],"anonymous":false,"eventSelector":"b6a062fc5f19aa17637bf61ab001ce3e5ceb67a5bd51d9753281e41df94f3fd3","name":"InitializedCV2","nameLocation":"6565:14:96","parameters":{"id":66448,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66444,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6588:6:96","nodeType":"VariableDeclaration","scope":66449,"src":"6580:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66443,"name":"uint256","nodeType":"ElementaryTypeName","src":"6580:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66447,"indexed":false,"mutability":"mutable","name":"data","nameLocation":"6627:4:96","nodeType":"VariableDeclaration","scope":66449,"src":"6596:35:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":66446,"nodeType":"UserDefinedTypeName","pathNode":{"id":66445,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["6596:30:96"],"nodeType":"IdentifierPath","referencedDeclaration":66370,"src":"6596:30:96"},"referencedDeclaration":66370,"src":"6596:30:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"src":"6579:53:96"}},{"id":66457,"nodeType":"EventDefinition","src":"6638:75:96","nodes":[],"anonymous":false,"eventSelector":"a7932e9c92f31e1ed56b29d00bbe669a97484dc24de28dd9c8c0429df7f35847","name":"Distributed","nameLocation":"6644:11:96","parameters":{"id":66456,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66451,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6664:10:96","nodeType":"VariableDeclaration","scope":66457,"src":"6656:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66450,"name":"uint256","nodeType":"ElementaryTypeName","src":"6656:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66453,"indexed":false,"mutability":"mutable","name":"beneficiary","nameLocation":"6684:11:96","nodeType":"VariableDeclaration","scope":66457,"src":"6676:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66452,"name":"address","nodeType":"ElementaryTypeName","src":"6676:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66455,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6705:6:96","nodeType":"VariableDeclaration","scope":66457,"src":"6697:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66454,"name":"uint256","nodeType":"ElementaryTypeName","src":"6697:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6655:57:96"}},{"id":66463,"nodeType":"EventDefinition","src":"6718:58:96","nodes":[],"anonymous":false,"eventSelector":"fcf3b1aa65a464cef2889608f99e8b8c0f680a4be6c2acb9d961c536a5a9294b","name":"ProposalCreated","nameLocation":"6724:15:96","parameters":{"id":66462,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66459,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"6748:6:96","nodeType":"VariableDeclaration","scope":66463,"src":"6740:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66458,"name":"uint256","nodeType":"ElementaryTypeName","src":"6740:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66461,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"6764:10:96","nodeType":"VariableDeclaration","scope":66463,"src":"6756:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66460,"name":"uint256","nodeType":"ElementaryTypeName","src":"6756:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6739:36:96"}},{"id":66467,"nodeType":"EventDefinition","src":"6781:42:96","nodes":[],"anonymous":false,"eventSelector":"46aeb5d8770fc4474bc2dfa118fd2595f7fb33ce2cbce6f4e5a3dabfe0f76339","name":"PoolAmountIncreased","nameLocation":"6787:19:96","parameters":{"id":66466,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66465,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6815:6:96","nodeType":"VariableDeclaration","scope":66467,"src":"6807:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66464,"name":"uint256","nodeType":"ElementaryTypeName","src":"6807:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6806:16:96"}},{"id":66471,"nodeType":"EventDefinition","src":"6828:40:96","nodes":[],"anonymous":false,"eventSelector":"1468da654b37bb3631011c1917d02e0db437d519918858d40b38b5e980ca033b","name":"PointsDeactivated","nameLocation":"6834:17:96","parameters":{"id":66470,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66469,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6860:6:96","nodeType":"VariableDeclaration","scope":66471,"src":"6852:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66468,"name":"address","nodeType":"ElementaryTypeName","src":"6852:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6851:16:96"}},{"id":66479,"nodeType":"EventDefinition","src":"6873:85:96","nodes":[],"anonymous":false,"eventSelector":"0b9150e1e54346ed3fa36b977cd5d65dca5a649c737c3174a26bddaadd47667a","name":"PowerIncreased","nameLocation":"6879:14:96","parameters":{"id":66478,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66473,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6902:6:96","nodeType":"VariableDeclaration","scope":66479,"src":"6894:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66472,"name":"address","nodeType":"ElementaryTypeName","src":"6894:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66475,"indexed":false,"mutability":"mutable","name":"tokensStaked","nameLocation":"6918:12:96","nodeType":"VariableDeclaration","scope":66479,"src":"6910:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66474,"name":"uint256","nodeType":"ElementaryTypeName","src":"6910:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66477,"indexed":false,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"6940:16:96","nodeType":"VariableDeclaration","scope":66479,"src":"6932:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66476,"name":"uint256","nodeType":"ElementaryTypeName","src":"6932:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6893:64:96"}},{"id":66487,"nodeType":"EventDefinition","src":"6963:87:96","nodes":[],"anonymous":false,"eventSelector":"70b752f3fadb6ac131c0ece847fcbb6994ec56ed6411595710fd9b29c6ac6cc1","name":"PowerDecreased","nameLocation":"6969:14:96","parameters":{"id":66486,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66481,"indexed":false,"mutability":"mutable","name":"member","nameLocation":"6992:6:96","nodeType":"VariableDeclaration","scope":66487,"src":"6984:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66480,"name":"address","nodeType":"ElementaryTypeName","src":"6984:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66483,"indexed":false,"mutability":"mutable","name":"tokensUnStaked","nameLocation":"7008:14:96","nodeType":"VariableDeclaration","scope":66487,"src":"7000:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66482,"name":"uint256","nodeType":"ElementaryTypeName","src":"7000:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66485,"indexed":false,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"7032:16:96","nodeType":"VariableDeclaration","scope":66487,"src":"7024:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66484,"name":"uint256","nodeType":"ElementaryTypeName","src":"7024:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6983:66:96"}},{"id":66499,"nodeType":"EventDefinition","src":"7055:134:96","nodes":[],"anonymous":false,"eventSelector":"0227f642ddcf2042ceaeafadb9d540f432072c00cd4862881667168dcc14710f","name":"SupportAdded","nameLocation":"7061:12:96","parameters":{"id":66498,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66489,"indexed":false,"mutability":"mutable","name":"from","nameLocation":"7091:4:96","nodeType":"VariableDeclaration","scope":66499,"src":"7083:12:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66488,"name":"address","nodeType":"ElementaryTypeName","src":"7083:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66491,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7105:10:96","nodeType":"VariableDeclaration","scope":66499,"src":"7097:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66490,"name":"uint256","nodeType":"ElementaryTypeName","src":"7097:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66493,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"7125:6:96","nodeType":"VariableDeclaration","scope":66499,"src":"7117:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66492,"name":"uint256","nodeType":"ElementaryTypeName","src":"7117:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66495,"indexed":false,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"7141:17:96","nodeType":"VariableDeclaration","scope":66499,"src":"7133:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66494,"name":"uint256","nodeType":"ElementaryTypeName","src":"7133:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66497,"indexed":false,"mutability":"mutable","name":"convictionLast","nameLocation":"7168:14:96","nodeType":"VariableDeclaration","scope":66499,"src":"7160:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66496,"name":"uint256","nodeType":"ElementaryTypeName","src":"7160:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7073:115:96"}},{"id":66504,"nodeType":"EventDefinition","src":"7194:41:96","nodes":[],"anonymous":false,"eventSelector":"ec9315d9f4291207475c061feff1e5d7105750ac0ee9534af9444b4ff1dab9bc","name":"CVParamsUpdated","nameLocation":"7200:15:96","parameters":{"id":66503,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66502,"indexed":false,"mutability":"mutable","name":"cvParams","nameLocation":"7225:8:96","nodeType":"VariableDeclaration","scope":66504,"src":"7216:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":66501,"nodeType":"UserDefinedTypeName","pathNode":{"id":66500,"name":"CVParams","nameLocations":["7216:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"7216:8:96"},"referencedDeclaration":66325,"src":"7216:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"7215:19:96"}},{"id":66508,"nodeType":"EventDefinition","src":"7240:49:96","nodes":[],"anonymous":false,"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"7246:15:96","parameters":{"id":66507,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66506,"indexed":false,"mutability":"mutable","name":"registryCommunity","nameLocation":"7270:17:96","nodeType":"VariableDeclaration","scope":66508,"src":"7262:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66505,"name":"address","nodeType":"ElementaryTypeName","src":"7262:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7261:27:96"}},{"id":66523,"nodeType":"EventDefinition","src":"7294:195:96","nodes":[],"anonymous":false,"eventSelector":"034f6a48076db1bcaaa311ccdc43d473aff44d3918a76fe0fae27c8b3665016d","name":"ProposalDisputed","nameLocation":"7300:16:96","parameters":{"id":66522,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66511,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7338:10:96","nodeType":"VariableDeclaration","scope":66523,"src":"7326:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"},"typeName":{"id":66510,"nodeType":"UserDefinedTypeName","pathNode":{"id":66509,"name":"IArbitrator","nameLocations":["7326:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":76949,"src":"7326:11:96"},"referencedDeclaration":76949,"src":"7326:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":66513,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7366:10:96","nodeType":"VariableDeclaration","scope":66523,"src":"7358:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66512,"name":"uint256","nodeType":"ElementaryTypeName","src":"7358:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66515,"indexed":false,"mutability":"mutable","name":"disputeId","nameLocation":"7394:9:96","nodeType":"VariableDeclaration","scope":66523,"src":"7386:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66514,"name":"uint256","nodeType":"ElementaryTypeName","src":"7386:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66517,"indexed":false,"mutability":"mutable","name":"challenger","nameLocation":"7421:10:96","nodeType":"VariableDeclaration","scope":66523,"src":"7413:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66516,"name":"address","nodeType":"ElementaryTypeName","src":"7413:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66519,"indexed":false,"mutability":"mutable","name":"context","nameLocation":"7448:7:96","nodeType":"VariableDeclaration","scope":66523,"src":"7441:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66518,"name":"string","nodeType":"ElementaryTypeName","src":"7441:6:96","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":66521,"indexed":false,"mutability":"mutable","name":"timestamp","nameLocation":"7473:9:96","nodeType":"VariableDeclaration","scope":66523,"src":"7465:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66520,"name":"uint256","nodeType":"ElementaryTypeName","src":"7465:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7316:172:96"}},{"id":66531,"nodeType":"EventDefinition","src":"7494:88:96","nodes":[],"anonymous":false,"eventSelector":"dc20f5c479493aac0cf803ca3b82ebc1964faa557450a37ea0a8121b0e98454f","name":"TribunaSafeRegistered","nameLocation":"7500:21:96","parameters":{"id":66530,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66525,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7530:8:96","nodeType":"VariableDeclaration","scope":66531,"src":"7522:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66524,"name":"address","nodeType":"ElementaryTypeName","src":"7522:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66527,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7548:10:96","nodeType":"VariableDeclaration","scope":66531,"src":"7540:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66526,"name":"address","nodeType":"ElementaryTypeName","src":"7540:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66529,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7568:12:96","nodeType":"VariableDeclaration","scope":66531,"src":"7560:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66528,"name":"address","nodeType":"ElementaryTypeName","src":"7560:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7521:60:96"}},{"id":66535,"nodeType":"EventDefinition","src":"7587:44:96","nodes":[],"anonymous":false,"eventSelector":"416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c","name":"ProposalCancelled","nameLocation":"7593:17:96","parameters":{"id":66534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66533,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"7619:10:96","nodeType":"VariableDeclaration","scope":66535,"src":"7611:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66532,"name":"uint256","nodeType":"ElementaryTypeName","src":"7611:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7610:20:96"}},{"id":66552,"nodeType":"EventDefinition","src":"7636:302:96","nodes":[],"anonymous":false,"eventSelector":"e677e2878aaaaf6a65ecf50f849ad58100c49f6dfd57d055ba4bddd63a175d53","name":"ArbitrableConfigUpdated","nameLocation":"7642:23:96","parameters":{"id":66551,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66537,"indexed":false,"mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"7683:30:96","nodeType":"VariableDeclaration","scope":66552,"src":"7675:38:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66536,"name":"uint256","nodeType":"ElementaryTypeName","src":"7675:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66540,"indexed":false,"mutability":"mutable","name":"arbitrator","nameLocation":"7735:10:96","nodeType":"VariableDeclaration","scope":66552,"src":"7723:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"},"typeName":{"id":66539,"nodeType":"UserDefinedTypeName","pathNode":{"id":66538,"name":"IArbitrator","nameLocations":["7723:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":76949,"src":"7723:11:96"},"referencedDeclaration":76949,"src":"7723:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"visibility":"internal"},{"constant":false,"id":66542,"indexed":false,"mutability":"mutable","name":"tribunalSafe","nameLocation":"7763:12:96","nodeType":"VariableDeclaration","scope":66552,"src":"7755:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66541,"name":"address","nodeType":"ElementaryTypeName","src":"7755:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66544,"indexed":false,"mutability":"mutable","name":"submitterCollateralAmount","nameLocation":"7793:25:96","nodeType":"VariableDeclaration","scope":66552,"src":"7785:33:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66543,"name":"uint256","nodeType":"ElementaryTypeName","src":"7785:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66546,"indexed":false,"mutability":"mutable","name":"challengerCollateralAmount","nameLocation":"7836:26:96","nodeType":"VariableDeclaration","scope":66552,"src":"7828:34:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66545,"name":"uint256","nodeType":"ElementaryTypeName","src":"7828:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66548,"indexed":false,"mutability":"mutable","name":"defaultRuling","nameLocation":"7880:13:96","nodeType":"VariableDeclaration","scope":66552,"src":"7872:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66547,"name":"uint256","nodeType":"ElementaryTypeName","src":"7872:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66550,"indexed":false,"mutability":"mutable","name":"defaultRulingTimeout","nameLocation":"7911:20:96","nodeType":"VariableDeclaration","scope":66552,"src":"7903:28:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66549,"name":"uint256","nodeType":"ElementaryTypeName","src":"7903:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7665:272:96"}},{"id":66559,"nodeType":"EventDefinition","src":"7943:65:96","nodes":[],"anonymous":false,"eventSelector":"d418c93b6b78d828a87ee1909e6fcdbbf2f8d8f540ad7b232bb3e221e6d7cc1e","name":"AllowlistMembersRemoved","nameLocation":"7949:23:96","parameters":{"id":66558,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66554,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"7981:6:96","nodeType":"VariableDeclaration","scope":66559,"src":"7973:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66553,"name":"uint256","nodeType":"ElementaryTypeName","src":"7973:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66557,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"7999:7:96","nodeType":"VariableDeclaration","scope":66559,"src":"7989:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":66555,"name":"address","nodeType":"ElementaryTypeName","src":"7989:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66556,"nodeType":"ArrayTypeName","src":"7989:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"7972:35:96"}},{"id":66566,"nodeType":"EventDefinition","src":"8013:63:96","nodes":[],"anonymous":false,"eventSelector":"7a2e396a5614184c0af2c60827c206595126faa1238b94e19823192de52e728a","name":"AllowlistMembersAdded","nameLocation":"8019:21:96","parameters":{"id":66565,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66561,"indexed":false,"mutability":"mutable","name":"poolId","nameLocation":"8049:6:96","nodeType":"VariableDeclaration","scope":66566,"src":"8041:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66560,"name":"uint256","nodeType":"ElementaryTypeName","src":"8041:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66564,"indexed":false,"mutability":"mutable","name":"members","nameLocation":"8067:7:96","nodeType":"VariableDeclaration","scope":66566,"src":"8057:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":66562,"name":"address","nodeType":"ElementaryTypeName","src":"8057:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66563,"nodeType":"ArrayTypeName","src":"8057:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"8040:35:96"}},{"id":66570,"nodeType":"EventDefinition","src":"8081:46:96","nodes":[],"anonymous":false,"eventSelector":"2667a0cd99dbc787d1d2596efe938cf43dfe83e8b8ddeb70e28007c09ff33485","name":"SybilScorerUpdated","nameLocation":"8087:18:96","parameters":{"id":66569,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66568,"indexed":false,"mutability":"mutable","name":"sybilScorer","nameLocation":"8114:11:96","nodeType":"VariableDeclaration","scope":66570,"src":"8106:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66567,"name":"address","nodeType":"ElementaryTypeName","src":"8106:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8105:21:96"}},{"id":66573,"nodeType":"VariableDeclaration","src":"8501:38:96","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"8524:7:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":66571,"name":"string","nodeType":"ElementaryTypeName","src":"8501:6:96","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":66572,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8534:5:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":66576,"nodeType":"VariableDeclaration","src":"8545:36:96","nodes":[],"constant":true,"functionSelector":"0f529ba2","mutability":"constant","name":"D","nameLocation":"8569:1:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66574,"name":"uint256","nodeType":"ElementaryTypeName","src":"8545:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130303030303030","id":66575,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8573:8:96","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"value":"10000000"},"visibility":"public"},{"id":66579,"nodeType":"VariableDeclaration","src":"8595:71:96","nodes":[],"constant":true,"mutability":"constant","name":"TWO_128","nameLocation":"8621:7:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66577,"name":"uint256","nodeType":"ElementaryTypeName","src":"8595:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3078313030303030303030303030303030303030303030303030303030303030303030","id":66578,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8631:35:96","typeDescriptions":{"typeIdentifier":"t_rational_340282366920938463463374607431768211456_by_1","typeString":"int_const 3402...(31 digits omitted)...1456"},"value":"0x100000000000000000000000000000000"},"visibility":"internal"},{"id":66582,"nodeType":"VariableDeclaration","src":"8682:70:96","nodes":[],"constant":true,"mutability":"constant","name":"TWO_127","nameLocation":"8708:7:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66580,"name":"uint256","nodeType":"ElementaryTypeName","src":"8682:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783830303030303030303030303030303030303030303030303030303030303030","id":66581,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8718:34:96","typeDescriptions":{"typeIdentifier":"t_rational_170141183460469231731687303715884105728_by_1","typeString":"int_const 1701...(31 digits omitted)...5728"},"value":"0x80000000000000000000000000000000"},"visibility":"internal"},{"id":66585,"nodeType":"VariableDeclaration","src":"8768:54:96","nodes":[],"constant":true,"mutability":"constant","name":"TWO_64","nameLocation":"8794:6:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66583,"name":"uint256","nodeType":"ElementaryTypeName","src":"8768:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"30783130303030303030303030303030303030","id":66584,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8803:19:96","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"value":"0x10000000000000000"},"visibility":"internal"},{"id":66588,"nodeType":"VariableDeclaration","src":"8837:49:96","nodes":[],"constant":true,"functionSelector":"406244d8","mutability":"constant","name":"MAX_STAKED_PROPOSALS","nameLocation":"8861:20:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66586,"name":"uint256","nodeType":"ElementaryTypeName","src":"8837:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"3130","id":66587,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8884:2:96","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"visibility":"public"},{"id":66591,"nodeType":"VariableDeclaration","src":"8972:42:96","nodes":[],"constant":true,"functionSelector":"626c47e8","mutability":"constant","name":"RULING_OPTIONS","nameLocation":"8996:14:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66589,"name":"uint256","nodeType":"ElementaryTypeName","src":"8972:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"33","id":66590,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9013:1:96","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"visibility":"public"},{"id":66594,"nodeType":"VariableDeclaration","src":"9020:54:96","nodes":[],"constant":true,"functionSelector":"f5be3f7c","mutability":"constant","name":"DISPUTE_COOLDOWN_SEC","nameLocation":"9044:20:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66592,"name":"uint256","nodeType":"ElementaryTypeName","src":"9020:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"hexValue":"32","id":66593,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9067:7:96","subdenomination":"hours","typeDescriptions":{"typeIdentifier":"t_rational_7200_by_1","typeString":"int_const 7200"},"value":"2"},"visibility":"public"},{"id":66596,"nodeType":"VariableDeclaration","src":"9081:40:96","nodes":[],"constant":false,"mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"9098:23:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66595,"name":"address","nodeType":"ElementaryTypeName","src":"9081:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"id":66598,"nodeType":"VariableDeclaration","src":"9169:47:96","nodes":[],"constant":false,"mutability":"mutable","name":"surpressStateMutabilityWarning","nameLocation":"9186:30:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66597,"name":"uint256","nodeType":"ElementaryTypeName","src":"9169:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"id":66600,"nodeType":"VariableDeclaration","src":"9260:25:96","nodes":[],"constant":false,"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"9275:10:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66599,"name":"uint256","nodeType":"ElementaryTypeName","src":"9260:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":66602,"nodeType":"VariableDeclaration","src":"9291:26:96","nodes":[],"constant":false,"functionSelector":"a28889e1","mutability":"mutable","name":"disputeCount","nameLocation":"9305:12:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":66601,"name":"uint64","nodeType":"ElementaryTypeName","src":"9291:6:96","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"public"},{"id":66604,"nodeType":"VariableDeclaration","src":"9323:30:96","nodes":[],"constant":false,"functionSelector":"0c0512e9","mutability":"mutable","name":"proposalCounter","nameLocation":"9338:15:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66603,"name":"uint256","nodeType":"ElementaryTypeName","src":"9323:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":66606,"nodeType":"VariableDeclaration","src":"9359:45:96","nodes":[],"constant":false,"functionSelector":"125fd1d9","mutability":"mutable","name":"currentArbitrableConfigVersion","nameLocation":"9374:30:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66605,"name":"uint256","nodeType":"ElementaryTypeName","src":"9359:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":66608,"nodeType":"VariableDeclaration","src":"9411:26:96","nodes":[],"constant":false,"functionSelector":"817b1cd2","mutability":"mutable","name":"totalStaked","nameLocation":"9426:11:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66607,"name":"uint256","nodeType":"ElementaryTypeName","src":"9411:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":66610,"nodeType":"VariableDeclaration","src":"9443:35:96","nodes":[],"constant":false,"functionSelector":"aba9ffee","mutability":"mutable","name":"totalPointsActivated","nameLocation":"9458:20:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66609,"name":"uint256","nodeType":"ElementaryTypeName","src":"9443:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":66613,"nodeType":"VariableDeclaration","src":"9485:24:96","nodes":[],"constant":false,"functionSelector":"2506b870","mutability":"mutable","name":"cvParams","nameLocation":"9501:8:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams"},"typeName":{"id":66612,"nodeType":"UserDefinedTypeName","pathNode":{"id":66611,"name":"CVParams","nameLocations":["9485:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"9485:8:96"},"referencedDeclaration":66325,"src":"9485:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"public"},{"id":66616,"nodeType":"VariableDeclaration","src":"9556:32:96","nodes":[],"constant":false,"functionSelector":"351d9f96","mutability":"mutable","name":"proposalType","nameLocation":"9576:12:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"typeName":{"id":66615,"nodeType":"UserDefinedTypeName","pathNode":{"id":66614,"name":"ProposalType","nameLocations":["9556:12:96"],"nodeType":"IdentifierPath","referencedDeclaration":66228,"src":"9556:12:96"},"referencedDeclaration":66228,"src":"9556:12:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"visibility":"public"},{"id":66619,"nodeType":"VariableDeclaration","src":"9647:30:96","nodes":[],"constant":false,"functionSelector":"2dbd6fdd","mutability":"mutable","name":"pointSystem","nameLocation":"9666:11:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":66618,"nodeType":"UserDefinedTypeName","pathNode":{"id":66617,"name":"PointSystem","nameLocations":["9647:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"9647:11:96"},"referencedDeclaration":66233,"src":"9647:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"public"},{"id":66622,"nodeType":"VariableDeclaration","src":"9683:36:96","nodes":[],"constant":false,"functionSelector":"a47ff7e5","mutability":"mutable","name":"pointConfig","nameLocation":"9708:11:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage","typeString":"struct PointSystemConfig"},"typeName":{"id":66621,"nodeType":"UserDefinedTypeName","pathNode":{"id":66620,"name":"PointSystemConfig","nameLocations":["9683:17:96"],"nodeType":"IdentifierPath","referencedDeclaration":66302,"src":"9683:17:96"},"referencedDeclaration":66302,"src":"9683:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage_ptr","typeString":"struct PointSystemConfig"}},"visibility":"public"},{"id":66625,"nodeType":"VariableDeclaration","src":"9752:46:96","nodes":[],"constant":false,"functionSelector":"6003e414","mutability":"mutable","name":"registryCommunity","nameLocation":"9781:17:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":66624,"nodeType":"UserDefinedTypeName","pathNode":{"id":66623,"name":"RegistryCommunityV0_0","nameLocations":["9752:21:96"],"nodeType":"IdentifierPath","referencedDeclaration":73556,"src":"9752:21:96"},"referencedDeclaration":73556,"src":"9752:21:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"visibility":"public"},{"id":66628,"nodeType":"VariableDeclaration","src":"9805:39:96","nodes":[],"constant":false,"functionSelector":"0bece79c","mutability":"mutable","name":"collateralVault","nameLocation":"9829:15:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"},"typeName":{"id":66627,"nodeType":"UserDefinedTypeName","pathNode":{"id":66626,"name":"ICollateralVault","nameLocations":["9805:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":76982,"src":"9805:16:96"},"referencedDeclaration":76982,"src":"9805:16:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"visibility":"public"},{"id":66631,"nodeType":"VariableDeclaration","src":"9850:31:96","nodes":[],"constant":false,"functionSelector":"b6c61f31","mutability":"mutable","name":"sybilScorer","nameLocation":"9870:11:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"},"typeName":{"id":66630,"nodeType":"UserDefinedTypeName","pathNode":{"id":66629,"name":"ISybilScorer","nameLocations":["9850:12:96"],"nodeType":"IdentifierPath","referencedDeclaration":70608,"src":"9850:12:96"},"referencedDeclaration":70608,"src":"9850:12:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"visibility":"public"},{"id":66636,"nodeType":"VariableDeclaration","src":"9948:45:96","nodes":[],"constant":false,"functionSelector":"013cf08b","mutability":"mutable","name":"proposals","nameLocation":"9984:9:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"typeName":{"id":66635,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":66632,"name":"uint256","nodeType":"ElementaryTypeName","src":"9956:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"9948:28:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":66634,"nodeType":"UserDefinedTypeName","pathNode":{"id":66633,"name":"Proposal","nameLocations":["9967:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"9967:8:96"},"referencedDeclaration":66294,"src":"9967:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}}},"visibility":"public"},{"id":66640,"nodeType":"VariableDeclaration","src":"10049:53:96","nodes":[],"constant":false,"functionSelector":"5db64b99","mutability":"mutable","name":"totalVoterStakePct","nameLocation":"10084:18:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":66639,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":66637,"name":"address","nodeType":"ElementaryTypeName","src":"10057:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"10049:27:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":66638,"name":"uint256","nodeType":"ElementaryTypeName","src":"10068:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":66645,"nodeType":"VariableDeclaration","src":"10140:57:96","nodes":[],"constant":false,"functionSelector":"868c57b8","mutability":"mutable","name":"voterStakedProposals","nameLocation":"10177:20:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"typeName":{"id":66644,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":66641,"name":"address","nodeType":"ElementaryTypeName","src":"10148:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"10140:29:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[])"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"baseType":{"id":66642,"name":"uint256","nodeType":"ElementaryTypeName","src":"10159:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":66643,"nodeType":"ArrayTypeName","src":"10159:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"visibility":"public"},{"id":66649,"nodeType":"VariableDeclaration","src":"10235:56:96","nodes":[],"constant":false,"functionSelector":"255ffb38","mutability":"mutable","name":"disputeIdToProposalId","nameLocation":"10270:21:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"typeName":{"id":66648,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":66646,"name":"uint256","nodeType":"ElementaryTypeName","src":"10243:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"10235:27:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":66647,"name":"uint256","nodeType":"ElementaryTypeName","src":"10254:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":66654,"nodeType":"VariableDeclaration","src":"10297:61:96","nodes":[],"constant":false,"functionSelector":"41bb7605","mutability":"mutable","name":"arbitrableConfigs","nameLocation":"10341:17:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"typeName":{"id":66653,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":66650,"name":"uint256","nodeType":"ElementaryTypeName","src":"10305:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"10297:36:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":66652,"nodeType":"UserDefinedTypeName","pathNode":{"id":66651,"name":"ArbitrableConfig","nameLocations":["10316:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"10316:16:96"},"referencedDeclaration":66316,"src":"10316:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}}},"visibility":"public"},{"id":66678,"nodeType":"FunctionDefinition","src":"10610:222:96","nodes":[],"body":{"id":66677,"nodeType":"Block","src":"10717:115:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":66668,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66656,"src":"10738:5:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"43565374726174656779","id":66669,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10745:12:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_5f43243e98d2b877d41079bf899c9372a6b91af5be3180830de9d43f93117b2e","typeString":"literal_string \"CVStrategy\""},"value":"CVStrategy"},{"id":66670,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66660,"src":"10759:5:96","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":66665,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"10727:5:96","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$70249_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":66667,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10733:4:96","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":65607,"src":"10727:10:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (address,string memory,address)"}},"id":66671,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10727:38:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66672,"nodeType":"ExpressionStatement","src":"10727:38:96"},{"expression":{"id":66675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66673,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66596,"src":"10775:23:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":66674,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66658,"src":"10801:24:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10775:50:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66676,"nodeType":"ExpressionStatement","src":"10775:50:96"}]},"functionSelector":"184b9559","implemented":true,"kind":"function","modifiers":[{"id":66663,"kind":"modifierInvocation","modifierName":{"id":66662,"name":"initializer","nameLocations":["10705:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":52351,"src":"10705:11:96"},"nodeType":"ModifierInvocation","src":"10705:11:96"}],"name":"init","nameLocation":"10619:4:96","parameters":{"id":66661,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66656,"mutability":"mutable","name":"_allo","nameLocation":"10632:5:96","nodeType":"VariableDeclaration","scope":66678,"src":"10624:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66655,"name":"address","nodeType":"ElementaryTypeName","src":"10624:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66658,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"10647:24:96","nodeType":"VariableDeclaration","scope":66678,"src":"10639:32:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66657,"name":"address","nodeType":"ElementaryTypeName","src":"10639:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":66660,"mutability":"mutable","name":"owner","nameLocation":"10681:5:96","nodeType":"VariableDeclaration","scope":66678,"src":"10673:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66659,"name":"address","nodeType":"ElementaryTypeName","src":"10673:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10623:64:96"},"returnParameters":{"id":66664,"nodeType":"ParameterList","parameters":[],"src":"10717:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66724,"nodeType":"FunctionDefinition","src":"10838:826:96","nodes":[],"body":{"id":66723,"nodeType":"Block","src":"10914:750:96","nodes":[],"statements":[{"expression":{"id":66693,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":66686,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"10982:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66688,"indexExpression":{"id":66687,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11000:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10982:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66689,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"11032:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"10982:60:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":66691,"name":"newSafeArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66680,"src":"11057:17:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66690,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76949,"src":"11045:11:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IArbitrator_$76949_$","typeString":"type(contract IArbitrator)"}},"id":66692,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11045:30:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"src":"10982:93:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"id":66694,"nodeType":"ExpressionStatement","src":"10982:93:96"},{"eventCall":{"arguments":[{"id":66696,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11127:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66697,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"11171:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66699,"indexExpression":{"id":66698,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11189:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11171:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66700,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11221:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"11171:60:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},{"expression":{"baseExpression":{"id":66701,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"11245:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66703,"indexExpression":{"id":66702,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11263:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11245:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66704,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11295:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"11245:62:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":66705,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"11321:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66707,"indexExpression":{"id":66706,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11339:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11321:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66708,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11371:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"11321:75:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66709,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"11410:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66711,"indexExpression":{"id":66710,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11428:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11410:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66712,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11460:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"11410:76:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66713,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"11500:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66715,"indexExpression":{"id":66714,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11518:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11500:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66716,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11550:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"11500:63:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":66717,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"11577:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":66719,"indexExpression":{"id":66718,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"11595:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"11577:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":66720,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11627:20:96","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":66315,"src":"11577:70:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$76949","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":66695,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66552,"src":"11090:23:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$76949_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":66721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11090:567:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66722,"nodeType":"EmitStatement","src":"11085:572:96"}]},"functionSelector":"f4fe2556","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":66683,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10911:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":66684,"kind":"modifierInvocation","modifierName":{"id":66682,"name":"reinitializer","nameLocations":["10897:13:96"],"nodeType":"IdentifierPath","referencedDeclaration":52384,"src":"10897:13:96"},"nodeType":"ModifierInvocation","src":"10897:16:96"}],"name":"init2","nameLocation":"10847:5:96","parameters":{"id":66681,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66680,"mutability":"mutable","name":"newSafeArbitrator","nameLocation":"10861:17:96","nodeType":"VariableDeclaration","scope":66724,"src":"10853:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66679,"name":"address","nodeType":"ElementaryTypeName","src":"10853:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10852:27:96"},"returnParameters":{"id":66685,"nodeType":"ParameterList","parameters":[],"src":"10914:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":66832,"nodeType":"FunctionDefinition","src":"11670:1036:96","nodes":[],"body":{"id":66831,"nodeType":"Block","src":"11754:952:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":66735,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66726,"src":"11784:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66734,"name":"__BaseStrategy_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65743,"src":"11764:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":66736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11764:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66737,"nodeType":"ExpressionStatement","src":"11764:28:96"},{"expression":{"id":66747,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66738,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"11803:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":66742,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66596,"src":"11856:23:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":66744,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"11881:12:96","subExpression":{"id":66743,"name":"cloneNonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66600,"src":"11881:10:96","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":66740,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"11838:5:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Clone_$3002_$","typeString":"type(library Clone)"}},"id":66741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11844:11:96","memberName":"createClone","nodeType":"MemberAccess","referencedDeclaration":3001,"src":"11838:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_address_$","typeString":"function (address,uint256) returns (address)"}},"id":66745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11838:56:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66739,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76982,"src":"11821:16:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ICollateralVault_$76982_$","typeString":"type(contract ICollateralVault)"}},"id":66746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11821:74:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"src":"11803:92:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":66748,"nodeType":"ExpressionStatement","src":"11803:92:96"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66749,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"11905:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":66751,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11921:10:96","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":76954,"src":"11905:26:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$__$","typeString":"function () external"}},"id":66752,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11905:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66753,"nodeType":"ExpressionStatement","src":"11905:28:96"},{"assignments":[66756],"declarations":[{"constant":false,"id":66756,"mutability":"mutable","name":"ip","nameLocation":"11982:2:96","nodeType":"VariableDeclaration","scope":66831,"src":"11944:40:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":66755,"nodeType":"UserDefinedTypeName","pathNode":{"id":66754,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["11944:30:96"],"nodeType":"IdentifierPath","referencedDeclaration":66370,"src":"11944:30:96"},"referencedDeclaration":66370,"src":"11944:30:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"}],"id":66763,"initialValue":{"arguments":[{"id":66759,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66728,"src":"11998:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":66760,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66370,"src":"12006:30:96","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$66370_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}}],"id":66761,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"12005:32:96","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CVStrategyInitializeParamsV0_1_$66370_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_$66370_storage_ptr_$","typeString":"type(struct CVStrategyInitializeParamsV0_1 storage pointer)"}],"expression":{"id":66757,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"11987:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66758,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11991:6:96","memberName":"decode","nodeType":"MemberAccess","src":"11987:10:96","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":66762,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11987:51:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"nodeType":"VariableDeclarationStatement","src":"11944:94:96"},{"expression":{"id":66769,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66764,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"12206:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":66766,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12248:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66767,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12251:17:96","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":66362,"src":"12248:20:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66765,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"12226:21:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73556_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":66768,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12226:43:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"src":"12206:63:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":66770,"nodeType":"ExpressionStatement","src":"12206:63:96"},{"expression":{"id":66774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66771,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66616,"src":"12280:12:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66772,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12295:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66773,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12298:12:96","memberName":"proposalType","nodeType":"MemberAccess","referencedDeclaration":66351,"src":"12295:15:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"src":"12280:30:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"id":66775,"nodeType":"ExpressionStatement","src":"12280:30:96"},{"expression":{"id":66779,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66776,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"12320:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66777,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12334:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66778,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12337:11:96","memberName":"pointSystem","nodeType":"MemberAccess","referencedDeclaration":66354,"src":"12334:14:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"12320:28:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"id":66780,"nodeType":"ExpressionStatement","src":"12320:28:96"},{"expression":{"id":66784,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66781,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66622,"src":"12358:11:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage","typeString":"struct PointSystemConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":66782,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12372:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66783,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12375:11:96","memberName":"pointConfig","nodeType":"MemberAccess","referencedDeclaration":66357,"src":"12372:14:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_memory_ptr","typeString":"struct PointSystemConfig memory"}},"src":"12358:28:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage","typeString":"struct PointSystemConfig storage ref"}},"id":66785,"nodeType":"ExpressionStatement","src":"12358:28:96"},{"expression":{"id":66791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":66786,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"12396:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":66788,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12423:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66789,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12426:11:96","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":66364,"src":"12423:14:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":66787,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70608,"src":"12410:12:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70608_$","typeString":"type(contract ISybilScorer)"}},"id":66790,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12410:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"src":"12396:42:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"id":66792,"nodeType":"ExpressionStatement","src":"12396:42:96"},{"eventCall":{"arguments":[{"id":66794,"name":"_poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66726,"src":"12469:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":66795,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12478:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"id":66793,"name":"InitializedCV2","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66449,"src":"12454:14:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr_$returns$__$","typeString":"function (uint256,struct CVStrategyInitializeParamsV0_1 memory)"}},"id":66796,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12454:27:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66797,"nodeType":"EmitStatement","src":"12449:32:96"},{"expression":{"arguments":[{"expression":{"id":66799,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12507:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66800,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12510:16:96","memberName":"arbitrableConfig","nodeType":"MemberAccess","referencedDeclaration":66360,"src":"12507:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"expression":{"id":66801,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12528:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66802,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12531:8:96","memberName":"cvParams","nodeType":"MemberAccess","referencedDeclaration":66348,"src":"12528:11:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}},{"arguments":[{"hexValue":"30","id":66806,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12555:1:96","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":66805,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12541:13:96","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":66803,"name":"address","nodeType":"ElementaryTypeName","src":"12545:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66804,"nodeType":"ArrayTypeName","src":"12545:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":66807,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12541:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"arguments":[{"hexValue":"30","id":66811,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12573:1:96","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":66810,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12559:13:96","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":66808,"name":"address","nodeType":"ElementaryTypeName","src":"12563:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":66809,"nodeType":"ArrayTypeName","src":"12563:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":66812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12559:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$66325_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":66798,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69355,69496,69534],"referencedDeclaration":69496,"src":"12492:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_struct$_CVParams_$66325_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":66813,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12492:84:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66814,"nodeType":"ExpressionStatement","src":"12492:84:96"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66817,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"12598:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}],"id":66816,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12590:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66815,"name":"address","nodeType":"ElementaryTypeName","src":"12590:7:96","typeDescriptions":{}}},"id":66818,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12590:20:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"307830","id":66821,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12622:3:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0x0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":66820,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12614:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66819,"name":"address","nodeType":"ElementaryTypeName","src":"12614:7:96","typeDescriptions":{}}},"id":66822,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12614:12:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12590:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66830,"nodeType":"IfStatement","src":"12586:114:96","trueBody":{"id":66829,"nodeType":"Block","src":"12628:72:96","statements":[{"expression":{"arguments":[{"expression":{"id":66825,"name":"ip","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66756,"src":"12665:2:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":66826,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12668:20:96","memberName":"sybilScorerThreshold","nodeType":"MemberAccess","referencedDeclaration":66366,"src":"12665:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":66824,"name":"_registerToSybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70244,"src":"12642:22:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":66827,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12642:47:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66828,"nodeType":"ExpressionStatement","src":"12642:47:96"}]}}]},"baseFunctions":[2939],"functionSelector":"edd146cc","implemented":true,"kind":"function","modifiers":[{"id":66732,"kind":"modifierInvocation","modifierName":{"id":66731,"name":"onlyAllo","nameLocations":["11745:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":65615,"src":"11745:8:96"},"nodeType":"ModifierInvocation","src":"11745:8:96"}],"name":"initialize","nameLocation":"11679:10:96","overrides":{"id":66730,"nodeType":"OverrideSpecifier","overrides":[],"src":"11736:8:96"},"parameters":{"id":66729,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66726,"mutability":"mutable","name":"_poolId","nameLocation":"11698:7:96","nodeType":"VariableDeclaration","scope":66832,"src":"11690:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66725,"name":"uint256","nodeType":"ElementaryTypeName","src":"11690:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66728,"mutability":"mutable","name":"_data","nameLocation":"11720:5:96","nodeType":"VariableDeclaration","scope":66832,"src":"11707:18:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":66727,"name":"bytes","nodeType":"ElementaryTypeName","src":"11707:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"11689:37:96"},"returnParameters":{"id":66733,"nodeType":"ParameterList","parameters":[],"src":"11754:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":66836,"nodeType":"FunctionDefinition","src":"12877:83:96","nodes":[],"body":{"id":66835,"nodeType":"Block","src":"12905:55:96","nodes":[],"statements":[]},"implemented":true,"kind":"fallback","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66833,"nodeType":"ParameterList","parameters":[],"src":"12885:2:96"},"returnParameters":{"id":66834,"nodeType":"ParameterList","parameters":[],"src":"12905:0:96"},"scope":70249,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66840,"nodeType":"FunctionDefinition","src":"12966:135:96","nodes":[],"body":{"id":66839,"nodeType":"Block","src":"12993:108:96","nodes":[],"statements":[]},"implemented":true,"kind":"receive","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":66837,"nodeType":"ParameterList","parameters":[],"src":"12973:2:96"},"returnParameters":{"id":66838,"nodeType":"ParameterList","parameters":[],"src":"12993:0:96"},"scope":70249,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":66862,"nodeType":"FunctionDefinition","src":"13107:210:96","nodes":[],"body":{"id":66861,"nodeType":"Block","src":"13206:111:96","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":66859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"id":66854,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66849,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66842,"src":"13223:11:96","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"arguments":[{"id":66851,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66224,"src":"13243:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}],"id":66850,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"13238:4:96","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":66852,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13238:20:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$66224","typeString":"type(contract IPointStrategy)"}},"id":66853,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13259:11:96","memberName":"interfaceId","nodeType":"MemberAccess","src":"13238:32:96","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"src":"13223:47:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":66857,"name":"interfaceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66842,"src":"13298:11:96","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":66855,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"13274:5:96","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_CVStrategyV0_0_$70249_$","typeString":"type(contract super CVStrategyV0_0)"}},"id":66856,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13280:17:96","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57021,"src":"13274:23:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes4_$returns$_t_bool_$","typeString":"function (bytes4) view returns (bool)"}},"id":66858,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13274:36:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"13223:87:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66848,"id":66860,"nodeType":"Return","src":"13216:94:96"}]},"baseFunctions":[57021],"functionSelector":"01ffc9a7","implemented":true,"kind":"function","modifiers":[],"name":"supportsInterface","nameLocation":"13116:17:96","overrides":{"id":66845,"nodeType":"OverrideSpecifier","overrides":[{"id":66844,"name":"ERC165","nameLocations":["13183:6:96"],"nodeType":"IdentifierPath","referencedDeclaration":57022,"src":"13183:6:96"}],"src":"13174:16:96"},"parameters":{"id":66843,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66842,"mutability":"mutable","name":"interfaceId","nameLocation":"13141:11:96","nodeType":"VariableDeclaration","scope":66862,"src":"13134:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":66841,"name":"bytes4","nodeType":"ElementaryTypeName","src":"13134:6:96","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"visibility":"internal"}],"src":"13133:20:96"},"returnParameters":{"id":66848,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66847,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66862,"src":"13200:4:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66846,"name":"bool","nodeType":"ElementaryTypeName","src":"13200:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13199:6:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":66878,"nodeType":"FunctionDefinition","src":"13488:404:96","nodes":[],"body":{"id":66877,"nodeType":"Block","src":"13556:336:96","nodes":[],"statements":[{"condition":{"id":66871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"13783:36:96","subExpression":{"arguments":[{"id":66869,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66864,"src":"13811:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66867,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"13784:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":66868,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13802:8:96","memberName":"isMember","nodeType":"MemberAccess","referencedDeclaration":72999,"src":"13784:26:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view external returns (bool)"}},"id":66870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13784:35:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66876,"nodeType":"IfStatement","src":"13779:93:96","trueBody":{"id":66875,"nodeType":"Block","src":"13821:51:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66872,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66381,"src":"13842:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66873,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13842:19:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66874,"nodeType":"RevertStatement","src":"13835:26:96"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"checkSenderIsMember","nameLocation":"13497:19:96","parameters":{"id":66865,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66864,"mutability":"mutable","name":"_sender","nameLocation":"13525:7:96","nodeType":"VariableDeclaration","scope":66878,"src":"13517:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66863,"name":"address","nodeType":"ElementaryTypeName","src":"13517:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13516:17:96"},"returnParameters":{"id":66866,"nodeType":"ParameterList","parameters":[],"src":"13556:0:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66894,"nodeType":"FunctionDefinition","src":"13898:171:96","nodes":[],"body":{"id":66893,"nodeType":"Block","src":"13953:116:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66881,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"13967:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66882,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13971:6:96","memberName":"sender","nodeType":"MemberAccess","src":"13967:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"id":66885,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"13989:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":66884,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13981:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66883,"name":"address","nodeType":"ElementaryTypeName","src":"13981:7:96","typeDescriptions":{}}},"id":66886,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13981:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13967:40:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66892,"nodeType":"IfStatement","src":"13963:100:96","trueBody":{"id":66891,"nodeType":"Block","src":"14009:54:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66888,"name":"OnlyCommunityAllowed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66411,"src":"14030:20:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66889,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14030:22:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66890,"nodeType":"RevertStatement","src":"14023:29:96"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryCommunity","nameLocation":"13907:21:96","parameters":{"id":66879,"nodeType":"ParameterList","parameters":[],"src":"13928:2:96"},"returnParameters":{"id":66880,"nodeType":"ParameterList","parameters":[],"src":"13953:0:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66910,"nodeType":"FunctionDefinition","src":"14075:141:96","nodes":[],"body":{"id":66909,"nodeType":"Block","src":"14143:73:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66904,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66899,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66896,"src":"14157:8:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14177:1:96","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":66901,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14169:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66900,"name":"address","nodeType":"ElementaryTypeName","src":"14169:7:96","typeDescriptions":{}}},"id":66903,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14169:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14157:22:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66908,"nodeType":"IfStatement","src":"14153:56:96","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66905,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66387,"src":"14188:19:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66906,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14188:21:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66907,"nodeType":"RevertStatement","src":"14181:28:96"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"14084:18:96","parameters":{"id":66897,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66896,"mutability":"mutable","name":"_address","nameLocation":"14111:8:96","nodeType":"VariableDeclaration","scope":66910,"src":"14103:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66895,"name":"address","nodeType":"ElementaryTypeName","src":"14103:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14102:18:96"},"returnParameters":{"id":66898,"nodeType":"ParameterList","parameters":[],"src":"14143:0:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":66928,"nodeType":"FunctionDefinition","src":"14222:174:96","nodes":[],"body":{"id":66927,"nodeType":"Block","src":"14271:125:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66921,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":66913,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"14285:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":66914,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14289:6:96","memberName":"sender","nodeType":"MemberAccess","src":"14285:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":66917,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"14307:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":66918,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14325:11:96","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71620,"src":"14307:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$77075_$","typeString":"function () view external returns (contract ISafe)"}},"id":66919,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14307:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":66916,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14299:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66915,"name":"address","nodeType":"ElementaryTypeName","src":"14299:7:96","typeDescriptions":{}}},"id":66920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14299:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14285:54:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66926,"nodeType":"IfStatement","src":"14281:109:96","trueBody":{"id":66925,"nodeType":"Block","src":"14341:49:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":66922,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66413,"src":"14362:15:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":66923,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14362:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":66924,"nodeType":"RevertStatement","src":"14355:24:96"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"14231:15:96","parameters":{"id":66911,"nodeType":"ParameterList","parameters":[],"src":"14246:2:96"},"returnParameters":{"id":66912,"nodeType":"ParameterList","parameters":[],"src":"14271:0:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":66985,"nodeType":"FunctionDefinition","src":"14402:499:96","nodes":[],"body":{"id":66984,"nodeType":"Block","src":"14473:428:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":66943,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":66937,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"14495:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}],"id":66936,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14487:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66935,"name":"address","nodeType":"ElementaryTypeName","src":"14487:7:96","typeDescriptions":{}}},"id":66938,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14487:20:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":66941,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14519:1:96","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":66940,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14511:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66939,"name":"address","nodeType":"ElementaryTypeName","src":"14511:7:96","typeDescriptions":{}}},"id":66942,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14511:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14487:34:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":66974,"nodeType":"IfStatement","src":"14483:345:96","trueBody":{"id":66973,"nodeType":"Block","src":"14523:305:96","statements":[{"assignments":[66945],"declarations":[{"constant":false,"id":66945,"mutability":"mutable","name":"allowlistRole","nameLocation":"14545:13:96","nodeType":"VariableDeclaration","scope":66973,"src":"14537:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":66944,"name":"bytes32","nodeType":"ElementaryTypeName","src":"14537:7:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":66953,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":66949,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14588:11:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":66950,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"14601:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":66947,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14571:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":66948,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14575:12:96","memberName":"encodePacked","nodeType":"MemberAccess","src":"14571:16:96","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":66951,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14571:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":66946,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14561:9:96","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":66952,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14561:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"14537:72:96"},{"condition":{"arguments":[{"id":66956,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66945,"src":"14653:13:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":66959,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14676:1:96","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":66958,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14668:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66957,"name":"address","nodeType":"ElementaryTypeName","src":"14668:7:96","typeDescriptions":{}}},"id":66960,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14668:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66954,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"14627:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":66955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14645:7:96","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":51753,"src":"14627:25:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":66961,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14627:52:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":66971,"nodeType":"Block","src":"14731:87:96","statements":[{"expression":{"arguments":[{"id":66967,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66945,"src":"14782:13:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":66968,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66930,"src":"14797:5:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66965,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"14756:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":66966,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14774:7:96","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":51753,"src":"14756:25:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":66969,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14756:47:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66934,"id":66970,"nodeType":"Return","src":"14749:54:96"}]},"id":66972,"nodeType":"IfStatement","src":"14623:195:96","trueBody":{"id":66964,"nodeType":"Block","src":"14681:44:96","statements":[{"expression":{"hexValue":"74727565","id":66962,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"14706:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":66934,"id":66963,"nodeType":"Return","src":"14699:11:96"}]}}]}},{"expression":{"arguments":[{"id":66977,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66930,"src":"14873:5:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":66980,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"14888:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":66979,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14880:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":66978,"name":"address","nodeType":"ElementaryTypeName","src":"14880:7:96","typeDescriptions":{}}},"id":66981,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14880:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":66975,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"14844:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"id":66976,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14856:16:96","memberName":"canExecuteAction","nodeType":"MemberAccess","referencedDeclaration":70581,"src":"14844:28:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":66982,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14844:50:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":66934,"id":66983,"nodeType":"Return","src":"14837:57:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_canExecuteAction","nameLocation":"14411:17:96","parameters":{"id":66931,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66930,"mutability":"mutable","name":"_user","nameLocation":"14437:5:96","nodeType":"VariableDeclaration","scope":66985,"src":"14429:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66929,"name":"address","nodeType":"ElementaryTypeName","src":"14429:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"14428:15:96"},"returnParameters":{"id":66934,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66933,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":66985,"src":"14467:4:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":66932,"name":"bool","nodeType":"ElementaryTypeName","src":"14467:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"14466:6:96"},"scope":70249,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":67033,"nodeType":"FunctionDefinition","src":"14907:666:96","nodes":[],"body":{"id":67032,"nodeType":"Block","src":"15013:560:96","nodes":[],"statements":[{"assignments":[66994],"declarations":[{"constant":false,"id":66994,"mutability":"mutable","name":"p","nameLocation":"15040:1:96","nodeType":"VariableDeclaration","scope":67032,"src":"15023:18:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":66993,"nodeType":"UserDefinedTypeName","pathNode":{"id":66992,"name":"Proposal","nameLocations":["15023:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"15023:8:96"},"referencedDeclaration":66294,"src":"15023:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":66998,"initialValue":{"baseExpression":{"id":66995,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"15044:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":66997,"indexExpression":{"id":66996,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66987,"src":"15054:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15044:22:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15023:43:96"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67026,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":67001,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":66999,"name":"deltaSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66989,"src":"15093:12:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67000,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15108:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"15093:16:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67012,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":67006,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67002,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66994,"src":"15151:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67003,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15153:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"15151:16:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67004,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"15171:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67005,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15186:8:96","memberName":"Inactive","nodeType":"MemberAccess","referencedDeclaration":66246,"src":"15171:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"15151:43:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":67011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67007,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66994,"src":"15198:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67008,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15200:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"15198:16:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67009,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"15218:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67010,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15233:9:96","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":66249,"src":"15218:24:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"15198:44:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15151:91:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":67017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67013,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66994,"src":"15270:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67014,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15272:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"15270:16:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67015,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"15290:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67016,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15305:8:96","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":66250,"src":"15290:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"15270:43:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15151:162:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":67023,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67019,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66994,"src":"15317:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67020,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15319:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"15317:16:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67021,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"15337:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67022,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15352:8:96","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":66252,"src":"15337:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"15317:43:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15151:209:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":67025,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"15129:249:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"15093:285:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67031,"nodeType":"IfStatement","src":"15076:491:96","trueBody":{"id":67030,"nodeType":"Block","src":"15389:178:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67027,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"15486:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":67028,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15486:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67029,"nodeType":"ExpressionStatement","src":"15486:8:96"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkProposalAllocationValidity","nameLocation":"14916:32:96","parameters":{"id":66990,"nodeType":"ParameterList","parameters":[{"constant":false,"id":66987,"mutability":"mutable","name":"_proposalId","nameLocation":"14957:11:96","nodeType":"VariableDeclaration","scope":67033,"src":"14949:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":66986,"name":"uint256","nodeType":"ElementaryTypeName","src":"14949:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":66989,"mutability":"mutable","name":"deltaSupport","nameLocation":"14977:12:96","nodeType":"VariableDeclaration","scope":67033,"src":"14970:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":66988,"name":"int256","nodeType":"ElementaryTypeName","src":"14970:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"14948:42:96"},"returnParameters":{"id":66991,"nodeType":"ParameterList","parameters":[],"src":"15013:0:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67045,"nodeType":"FunctionDefinition","src":"15579:132:96","nodes":[],"body":{"id":67044,"nodeType":"Block","src":"15660:51:96","nodes":[],"statements":[{"expression":{"id":67042,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67040,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66596,"src":"15670:23:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67041,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67035,"src":"15696:8:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15670:34:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67043,"nodeType":"ExpressionStatement","src":"15670:34:96"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":67038,"kind":"modifierInvocation","modifierName":{"id":67037,"name":"onlyOwner","nameLocations":["15650:9:96"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"15650:9:96"},"nodeType":"ModifierInvocation","src":"15650:9:96"}],"name":"setCollateralVaultTemplate","nameLocation":"15588:26:96","parameters":{"id":67036,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67035,"mutability":"mutable","name":"template","nameLocation":"15623:8:96","nodeType":"VariableDeclaration","scope":67045,"src":"15615:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67034,"name":"address","nodeType":"ElementaryTypeName","src":"15615:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15614:18:96"},"returnParameters":{"id":67039,"nodeType":"ParameterList","parameters":[],"src":"15660:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":67249,"nodeType":"FunctionDefinition","src":"16037:2679:96","nodes":[],"body":{"id":67248,"nodeType":"Block","src":"16146:2570:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":67056,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67049,"src":"16176:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67055,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66878,"src":"16156:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":67057,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16156:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67058,"nodeType":"ExpressionStatement","src":"16156:28:96"},{"expression":{"arguments":[{"arguments":[{"id":67064,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16240:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67063,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"16232:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67062,"name":"address","nodeType":"ElementaryTypeName","src":"16232:7:96","typeDescriptions":{}}},"id":67065,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16232:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67059,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"16194:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16212:19:96","memberName":"onlyStrategyEnabled","nodeType":"MemberAccess","referencedDeclaration":71735,"src":"16194:37:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$__$","typeString":"function (address) view external"}},"id":67066,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16194:52:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67067,"nodeType":"ExpressionStatement","src":"16194:52:96"},{"expression":{"id":67068,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67047,"src":"16301:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":67069,"nodeType":"ExpressionStatement","src":"16301:5:96"},{"assignments":[67072],"declarations":[{"constant":false,"id":67072,"mutability":"mutable","name":"proposal","nameLocation":"16338:8:96","nodeType":"VariableDeclaration","scope":67248,"src":"16316:30:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal"},"typeName":{"id":67071,"nodeType":"UserDefinedTypeName","pathNode":{"id":67070,"name":"CreateProposal","nameLocations":["16316:14:96"],"nodeType":"IdentifierPath","referencedDeclaration":66245,"src":"16316:14:96"},"referencedDeclaration":66245,"src":"16316:14:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_storage_ptr","typeString":"struct CreateProposal"}},"visibility":"internal"}],"id":67079,"initialValue":{"arguments":[{"id":67075,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67047,"src":"16360:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":67076,"name":"CreateProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66245,"src":"16368:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$66245_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"id":67077,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"16367:16:96","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$66245_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_struct$_CreateProposal_$66245_storage_ptr_$","typeString":"type(struct CreateProposal storage pointer)"}],"expression":{"id":67073,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"16349:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67074,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"16353:6:96","memberName":"decode","nodeType":"MemberAccess","src":"16349:10:96","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67078,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16349:35:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"nodeType":"VariableDeclarationStatement","src":"16316:68:96"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"id":67083,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67080,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66616,"src":"16462:12:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67081,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66228,"src":"16478:12:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$66228_$","typeString":"type(enum ProposalType)"}},"id":67082,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"16491:7:96","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":66226,"src":"16478:20:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"src":"16462:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67120,"nodeType":"IfStatement","src":"16458:897:96","trueBody":{"id":67119,"nodeType":"Block","src":"16500:855:96","statements":[{"expression":{"arguments":[{"expression":{"id":67085,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"16533:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67086,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16542:11:96","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":66237,"src":"16533:20:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67084,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66910,"src":"16514:18:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":67087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16514:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67088,"nodeType":"ExpressionStatement","src":"16514:40:96"},{"assignments":[67091],"declarations":[{"constant":false,"id":67091,"mutability":"mutable","name":"_allo","nameLocation":"16746:5:96","nodeType":"VariableDeclaration","scope":67119,"src":"16740:11:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"},"typeName":{"id":67090,"nodeType":"UserDefinedTypeName","pathNode":{"id":67089,"name":"IAllo","nameLocations":["16740:5:96"],"nodeType":"IdentifierPath","referencedDeclaration":2610,"src":"16740:5:96"},"referencedDeclaration":2610,"src":"16740:5:96","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"visibility":"internal"}],"id":67095,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":67092,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"16754:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}},"id":67093,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16759:7:96","memberName":"getAllo","nodeType":"MemberAccess","referencedDeclaration":65661,"src":"16754:12:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IAllo_$2610_$","typeString":"function () view external returns (contract IAllo)"}},"id":67094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16754:14:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"nodeType":"VariableDeclarationStatement","src":"16740:28:96"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":67104,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67096,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"16786:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67097,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16795:14:96","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":66241,"src":"16786:23:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"arguments":[{"expression":{"id":67100,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"16827:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67101,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16836:6:96","memberName":"poolId","nodeType":"MemberAccess","referencedDeclaration":66235,"src":"16827:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67098,"name":"_allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67091,"src":"16813:5:96","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":67099,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16819:7:96","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"16813:13:96","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":67102,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16813:30:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":67103,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"16844:5:96","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"16813:36:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"16786:63:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67109,"nodeType":"IfStatement","src":"16782:352:96","trueBody":{"id":67108,"nodeType":"Block","src":"16851:283:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67105,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"17049:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":67106,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17049:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67107,"nodeType":"ExpressionStatement","src":"17049:8:96"}]}},{"condition":{"arguments":[{"expression":{"id":67111,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"17167:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67112,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17176:15:96","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":66239,"src":"17167:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67110,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68340,"src":"17151:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":67113,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17151:41:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67118,"nodeType":"IfStatement","src":"17147:198:96","trueBody":{"id":67117,"nodeType":"Block","src":"17194:151:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67114,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"17260:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":67115,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17260:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67116,"nodeType":"ExpressionStatement","src":"17260:8:96"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67140,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":67132,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"baseExpression":{"id":67123,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"17390:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67125,"indexExpression":{"id":67124,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"17408:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17390:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67126,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17440:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"17390:60:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}],"id":67122,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17382:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67121,"name":"address","nodeType":"ElementaryTypeName","src":"17382:7:96","typeDescriptions":{}}},"id":67127,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17382:69:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":67130,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17463:1:96","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":67129,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"17455:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67128,"name":"address","nodeType":"ElementaryTypeName","src":"17455:7:96","typeDescriptions":{}}},"id":67131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17455:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17382:83:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67139,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67133,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17485:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67134,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17489:5:96","memberName":"value","nodeType":"MemberAccess","src":"17485:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":67135,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"17497:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67137,"indexExpression":{"id":67136,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"17515:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17497:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67138,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"17547:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"17497:75:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17485:87:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"17382:190:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67145,"nodeType":"IfStatement","src":"17365:483:96","trueBody":{"id":67144,"nodeType":"Block","src":"17583:265:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67141,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"17767:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":67142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17767:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67143,"nodeType":"ExpressionStatement","src":"17767:8:96"}]}},{"assignments":[67147],"declarations":[{"constant":false,"id":67147,"mutability":"mutable","name":"proposalId","nameLocation":"17866:10:96","nodeType":"VariableDeclaration","scope":67248,"src":"17858:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67146,"name":"uint256","nodeType":"ElementaryTypeName","src":"17858:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67150,"initialValue":{"id":67149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":true,"src":"17879:17:96","subExpression":{"id":67148,"name":"proposalCounter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66604,"src":"17881:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"17858:38:96"},{"assignments":[67153],"declarations":[{"constant":false,"id":67153,"mutability":"mutable","name":"p","nameLocation":"17923:1:96","nodeType":"VariableDeclaration","scope":67248,"src":"17906:18:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67152,"nodeType":"UserDefinedTypeName","pathNode":{"id":67151,"name":"Proposal","nameLocations":["17906:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"17906:8:96"},"referencedDeclaration":66294,"src":"17906:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67157,"initialValue":{"baseExpression":{"id":67154,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"17927:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67156,"indexExpression":{"id":67155,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"17937:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17927:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"17906:42:96"},{"expression":{"id":67162,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67158,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"17959:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67160,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"17961:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"17959:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67161,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"17974:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17959:25:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67163,"nodeType":"ExpressionStatement","src":"17959:25:96"},{"expression":{"id":67168,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67164,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"17994:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67166,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"17996:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"17994:11:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67167,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67049,"src":"18008:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17994:21:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67169,"nodeType":"ExpressionStatement","src":"17994:21:96"},{"expression":{"id":67175,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67170,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18025:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67172,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18027:11:96","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":66270,"src":"18025:13:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67173,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"18041:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67174,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18050:11:96","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":66237,"src":"18041:20:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18025:36:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67176,"nodeType":"ExpressionStatement","src":"18025:36:96"},{"expression":{"id":67182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67177,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18071:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67179,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18073:14:96","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":66274,"src":"18071:16:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67180,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"18090:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67181,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18099:14:96","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":66241,"src":"18090:23:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"18071:42:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67183,"nodeType":"ExpressionStatement","src":"18071:42:96"},{"expression":{"id":67189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67184,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18123:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67186,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18125:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"18123:17:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67187,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"18143:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67188,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18152:15:96","memberName":"amountRequested","nodeType":"MemberAccess","referencedDeclaration":66239,"src":"18143:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18123:44:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67190,"nodeType":"ExpressionStatement","src":"18123:44:96"},{"expression":{"id":67196,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67191,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18228:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67193,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18230:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"18228:16:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67194,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"18247:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67195,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"18262:6:96","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":66247,"src":"18247:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"18228:40:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":67197,"nodeType":"ExpressionStatement","src":"18228:40:96"},{"expression":{"id":67203,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67198,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18278:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67200,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18280:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"18278:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67201,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"18292:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":67202,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18298:6:96","memberName":"number","nodeType":"MemberAccess","src":"18292:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18278:26:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67204,"nodeType":"ExpressionStatement","src":"18278:26:96"},{"expression":{"id":67209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67205,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18314:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67207,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18316:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"18314:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":67208,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18333:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"18314:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67210,"nodeType":"ExpressionStatement","src":"18314:20:96"},{"expression":{"id":67216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67211,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18380:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67213,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18382:8:96","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":66286,"src":"18380:10:96","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67214,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67072,"src":"18393:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CreateProposal_$66245_memory_ptr","typeString":"struct CreateProposal memory"}},"id":67215,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18402:8:96","memberName":"metadata","nodeType":"MemberAccess","referencedDeclaration":66244,"src":"18393:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},"src":"18380:30:96","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage","typeString":"struct Metadata storage ref"}},"id":67217,"nodeType":"ExpressionStatement","src":"18380:30:96"},{"expression":{"id":67222,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":67218,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18420:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67220,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18422:23:96","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":66293,"src":"18420:25:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67221,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"18448:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18420:58:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67223,"nodeType":"ExpressionStatement","src":"18420:58:96"},{"expression":{"arguments":[{"id":67230,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"18540:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":67231,"name":"p","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67153,"src":"18552:1:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67232,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"18554:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"18552:11:96","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":67224,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"18488:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":67226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18504:17:96","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":76961,"src":"18488:33:96","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":67229,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":67227,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"18529:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67228,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18533:5:96","memberName":"value","nodeType":"MemberAccess","src":"18529:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"18488:51:96","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":67233,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18488:76:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67234,"nodeType":"ExpressionStatement","src":"18488:76:96"},{"eventCall":{"arguments":[{"id":67236,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"18596:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67237,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"18604:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67235,"name":"ProposalCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66463,"src":"18580:15:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256)"}},"id":67238,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18580:35:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67239,"nodeType":"EmitStatement","src":"18575:40:96"},{"expression":{"arguments":[{"arguments":[{"id":67244,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67147,"src":"18697:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67243,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18689:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":67242,"name":"uint160","nodeType":"ElementaryTypeName","src":"18689:7:96","typeDescriptions":{}}},"id":67245,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18689:19:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":67241,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18681:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67240,"name":"address","nodeType":"ElementaryTypeName","src":"18681:7:96","typeDescriptions":{}}},"id":67246,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18681:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":67054,"id":67247,"nodeType":"Return","src":"18674:35:96"}]},"baseFunctions":[66044],"implemented":true,"kind":"function","modifiers":[],"name":"_registerRecipient","nameLocation":"16046:18:96","overrides":{"id":67051,"nodeType":"OverrideSpecifier","overrides":[],"src":"16119:8:96"},"parameters":{"id":67050,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67047,"mutability":"mutable","name":"_data","nameLocation":"16078:5:96","nodeType":"VariableDeclaration","scope":67249,"src":"16065:18:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67046,"name":"bytes","nodeType":"ElementaryTypeName","src":"16065:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67049,"mutability":"mutable","name":"_sender","nameLocation":"16093:7:96","nodeType":"VariableDeclaration","scope":67249,"src":"16085:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67048,"name":"address","nodeType":"ElementaryTypeName","src":"16085:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16064:37:96"},"returnParameters":{"id":67054,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67053,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67249,"src":"16137:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67052,"name":"address","nodeType":"ElementaryTypeName","src":"16137:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16136:9:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67285,"nodeType":"FunctionDefinition","src":"18835:339:96","nodes":[],"body":{"id":67284,"nodeType":"Block","src":"18892:282:96","nodes":[],"statements":[{"condition":{"id":67257,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"18906:27:96","subExpression":{"arguments":[{"id":67255,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67251,"src":"18925:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67254,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66985,"src":"18907:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67256,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18907:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67262,"nodeType":"IfStatement","src":"18902:90:96","trueBody":{"id":67261,"nodeType":"Block","src":"18935:57:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67258,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66415,"src":"18956:23:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67259,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18956:25:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67260,"nodeType":"RevertStatement","src":"18949:32:96"}]}},{"expression":{"arguments":[{"id":67266,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67251,"src":"19044:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67269,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19061:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67268,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19053:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67267,"name":"address","nodeType":"ElementaryTypeName","src":"19053:7:96","typeDescriptions":{}}},"id":67270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19053:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67263,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"19001:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67265,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19019:24:96","memberName":"activateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":72374,"src":"19001:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":67271,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19001:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67272,"nodeType":"ExpressionStatement","src":"19001:66:96"},{"expression":{"id":67282,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67273,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66610,"src":"19077:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"arguments":[{"id":67276,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67251,"src":"19144:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67279,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19161:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67278,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19153:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67277,"name":"address","nodeType":"ElementaryTypeName","src":"19153:7:96","typeDescriptions":{}}},"id":67280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19153:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67274,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"19101:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67275,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19119:24:96","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72736,"src":"19101:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67281,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19101:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19077:90:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67283,"nodeType":"ExpressionStatement","src":"19077:90:96"}]},"functionSelector":"db9b5d50","implemented":true,"kind":"function","modifiers":[],"name":"_activatePoints","nameLocation":"18844:15:96","parameters":{"id":67252,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67251,"mutability":"mutable","name":"_sender","nameLocation":"18868:7:96","nodeType":"VariableDeclaration","scope":67285,"src":"18860:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67250,"name":"address","nodeType":"ElementaryTypeName","src":"18860:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"18859:17:96"},"returnParameters":{"id":67253,"nodeType":"ParameterList","parameters":[],"src":"18892:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":67294,"nodeType":"FunctionDefinition","src":"19180:87:96","nodes":[],"body":{"id":67293,"nodeType":"Block","src":"19223:44:96","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":67289,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"19249:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67290,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19253:6:96","memberName":"sender","nodeType":"MemberAccess","src":"19249:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67288,"name":"_activatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67285,"src":"19233:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":67291,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19233:27:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67292,"nodeType":"ExpressionStatement","src":"19233:27:96"}]},"functionSelector":"814516ad","implemented":true,"kind":"function","modifiers":[],"name":"activatePoints","nameLocation":"19189:14:96","parameters":{"id":67286,"nodeType":"ParameterList","parameters":[],"src":"19203:2:96"},"returnParameters":{"id":67287,"nodeType":"ParameterList","parameters":[],"src":"19223:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":67303,"nodeType":"FunctionDefinition","src":"19273:89:96","nodes":[],"body":{"id":67302,"nodeType":"Block","src":"19316:46:96","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":67298,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"19344:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":67299,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19348:6:96","memberName":"sender","nodeType":"MemberAccess","src":"19344:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67297,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67351,"src":"19326:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":67300,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19326:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67301,"nodeType":"ExpressionStatement","src":"19326:29:96"}]},"functionSelector":"1ddf1e23","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"19282:16:96","parameters":{"id":67295,"nodeType":"ParameterList","parameters":[],"src":"19298:2:96"},"returnParameters":{"id":67296,"nodeType":"ParameterList","parameters":[],"src":"19316:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":67316,"nodeType":"FunctionDefinition","src":"19368:136:96","nodes":[],"body":{"id":67315,"nodeType":"Block","src":"19428:76:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67308,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66894,"src":"19438:21:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":67309,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19438:23:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67310,"nodeType":"ExpressionStatement","src":"19438:23:96"},{"expression":{"arguments":[{"id":67312,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67305,"src":"19489:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67311,"name":"_deactivatePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67351,"src":"19471:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":67313,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19471:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67314,"nodeType":"ExpressionStatement","src":"19471:26:96"}]},"baseFunctions":[66199],"functionSelector":"6453d9c4","implemented":true,"kind":"function","modifiers":[],"name":"deactivatePoints","nameLocation":"19377:16:96","parameters":{"id":67306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67305,"mutability":"mutable","name":"_member","nameLocation":"19402:7:96","nodeType":"VariableDeclaration","scope":67316,"src":"19394:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67304,"name":"address","nodeType":"ElementaryTypeName","src":"19394:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19393:17:96"},"returnParameters":{"id":67307,"nodeType":"ParameterList","parameters":[],"src":"19428:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":67351,"nodeType":"FunctionDefinition","src":"19510:359:96","nodes":[],"body":{"id":67350,"nodeType":"Block","src":"19571:298:96","nodes":[],"statements":[{"expression":{"id":67330,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67321,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66610,"src":"19581:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"arguments":[{"id":67324,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67318,"src":"19648:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67327,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19665:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67326,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19657:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67325,"name":"address","nodeType":"ElementaryTypeName","src":"19657:7:96","typeDescriptions":{}}},"id":67328,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19657:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67322,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"19605:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19623:24:96","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72736,"src":"19605:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67329,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19605:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19581:90:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67331,"nodeType":"ExpressionStatement","src":"19581:90:96"},{"expression":{"arguments":[{"id":67335,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67318,"src":"19726:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67338,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"19743:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67337,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"19735:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67336,"name":"address","nodeType":"ElementaryTypeName","src":"19735:7:96","typeDescriptions":{}}},"id":67339,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19735:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67332,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"19681:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67334,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19699:26:96","memberName":"deactivateMemberInStrategy","nodeType":"MemberAccess","referencedDeclaration":72429,"src":"19681:44:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) external"}},"id":67340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19681:68:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67341,"nodeType":"ExpressionStatement","src":"19681:68:96"},{"expression":{"arguments":[{"id":67343,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67318,"src":"19813:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67342,"name":"withdraw","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68177,"src":"19804:8:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":67344,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19804:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67345,"nodeType":"ExpressionStatement","src":"19804:17:96"},{"eventCall":{"arguments":[{"id":67347,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67318,"src":"19854:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67346,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66471,"src":"19836:17:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":67348,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19836:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67349,"nodeType":"EmitStatement","src":"19831:31:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_deactivatePoints","nameLocation":"19519:17:96","parameters":{"id":67319,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67318,"mutability":"mutable","name":"_member","nameLocation":"19545:7:96","nodeType":"VariableDeclaration","scope":67351,"src":"19537:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67317,"name":"address","nodeType":"ElementaryTypeName","src":"19537:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"19536:17:96"},"returnParameters":{"id":67320,"nodeType":"ParameterList","parameters":[],"src":"19571:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67439,"nodeType":"FunctionDefinition","src":"19875:1045:96","nodes":[],"body":{"id":67438,"nodeType":"Block","src":"19974:946:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67360,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66894,"src":"20029:21:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":67361,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20029:23:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67362,"nodeType":"ExpressionStatement","src":"20029:23:96"},{"condition":{"id":67366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"20066:27:96","subExpression":{"arguments":[{"id":67364,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67353,"src":"20085:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67363,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66985,"src":"20067:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67365,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20067:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67371,"nodeType":"IfStatement","src":"20062:90:96","trueBody":{"id":67370,"nodeType":"Block","src":"20095:57:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67367,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66415,"src":"20116:23:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67368,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20116:25:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67369,"nodeType":"RevertStatement","src":"20109:32:96"}]}},{"assignments":[67373],"declarations":[{"constant":false,"id":67373,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"20169:16:96","nodeType":"VariableDeclaration","scope":67438,"src":"20161:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67372,"name":"uint256","nodeType":"ElementaryTypeName","src":"20161:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67375,"initialValue":{"hexValue":"30","id":67374,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20188:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"20161:28:96"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"id":67379,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67376,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"20203:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67377,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"20218:11:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$66233_$","typeString":"type(enum PointSystem)"}},"id":67378,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"20230:9:96","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":66231,"src":"20218:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"20203:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"id":67388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67385,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"20358:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67386,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"20373:11:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$66233_$","typeString":"type(enum PointSystem)"}},"id":67387,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"20385:6:96","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":66230,"src":"20373:18:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"20358:33:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"id":67400,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67397,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"20491:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67398,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"20506:11:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$66233_$","typeString":"type(enum PointSystem)"}},"id":67399,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"20518:9:96","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":66232,"src":"20506:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"20491:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67409,"nodeType":"IfStatement","src":"20487:133:96","trueBody":{"id":67408,"nodeType":"Block","src":"20529:91:96","statements":[{"expression":{"id":67406,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67401,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67373,"src":"20543:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":67403,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67353,"src":"20585:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67404,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67355,"src":"20594:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67402,"name":"increasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67607,"src":"20562:22:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":67405,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20562:47:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20543:66:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67407,"nodeType":"ExpressionStatement","src":"20543:66:96"}]}},"id":67410,"nodeType":"IfStatement","src":"20354:266:96","trueBody":{"id":67396,"nodeType":"Block","src":"20393:88:96","statements":[{"expression":{"id":67394,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67389,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67373,"src":"20407:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":67391,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67353,"src":"20446:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67392,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67355,"src":"20455:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67390,"name":"increasePowerCapped","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67529,"src":"20426:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":67393,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20426:44:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20407:63:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67395,"nodeType":"ExpressionStatement","src":"20407:63:96"}]}},"id":67411,"nodeType":"IfStatement","src":"20199:421:96","trueBody":{"id":67384,"nodeType":"Block","src":"20241:107:96","statements":[{"expression":{"id":67382,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67380,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67373,"src":"20255:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67381,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67355,"src":"20274:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20255:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67383,"nodeType":"ExpressionStatement","src":"20255:33:96"}]}},{"assignments":[67413],"declarations":[{"constant":false,"id":67413,"mutability":"mutable","name":"isActivated","nameLocation":"20634:11:96","nodeType":"VariableDeclaration","scope":67438,"src":"20629:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67412,"name":"bool","nodeType":"ElementaryTypeName","src":"20629:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":67422,"initialValue":{"arguments":[{"id":67416,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67353,"src":"20694:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67419,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"20711:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67418,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20703:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67417,"name":"address","nodeType":"ElementaryTypeName","src":"20703:7:96","typeDescriptions":{}}},"id":67420,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20703:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67414,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"20648:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20666:27:96","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":71661,"src":"20648:45:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":67421,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20648:69:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"20629:88:96"},{"condition":{"id":67423,"name":"isActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67413,"src":"20731:11:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67429,"nodeType":"IfStatement","src":"20727:82:96","trueBody":{"id":67428,"nodeType":"Block","src":"20744:65:96","statements":[{"expression":{"id":67426,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67424,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66610,"src":"20758:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":67425,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67373,"src":"20782:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20758:40:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67427,"nodeType":"ExpressionStatement","src":"20758:40:96"}]}},{"eventCall":{"arguments":[{"id":67431,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67353,"src":"20838:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67432,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67355,"src":"20847:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67433,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67373,"src":"20863:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67430,"name":"PowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66479,"src":"20823:14:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":67434,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20823:57:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67435,"nodeType":"EmitStatement","src":"20818:62:96"},{"expression":{"id":67436,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67373,"src":"20897:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67359,"id":67437,"nodeType":"Return","src":"20890:23:96"}]},"baseFunctions":[66208],"functionSelector":"782aadff","implemented":true,"kind":"function","modifiers":[],"name":"increasePower","nameLocation":"19884:13:96","parameters":{"id":67356,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67353,"mutability":"mutable","name":"_member","nameLocation":"19906:7:96","nodeType":"VariableDeclaration","scope":67439,"src":"19898:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67352,"name":"address","nodeType":"ElementaryTypeName","src":"19898:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67355,"mutability":"mutable","name":"_amountToStake","nameLocation":"19923:14:96","nodeType":"VariableDeclaration","scope":67439,"src":"19915:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67354,"name":"uint256","nodeType":"ElementaryTypeName","src":"19915:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19897:41:96"},"returnParameters":{"id":67359,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67358,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67439,"src":"19965:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67357,"name":"uint256","nodeType":"ElementaryTypeName","src":"19965:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"19964:9:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":67491,"nodeType":"FunctionDefinition","src":"20926:684:96","nodes":[],"body":{"id":67490,"nodeType":"Block","src":"21027:583:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67448,"name":"onlyRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66894,"src":"21037:21:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":67449,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21037:23:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67450,"nodeType":"ExpressionStatement","src":"21037:23:96"},{"assignments":[67452],"declarations":[{"constant":false,"id":67452,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"21124:16:96","nodeType":"VariableDeclaration","scope":67490,"src":"21116:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67451,"name":"uint256","nodeType":"ElementaryTypeName","src":"21116:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67454,"initialValue":{"hexValue":"30","id":67453,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21143:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"21116:28:96"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67463,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"id":67458,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67455,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"21158:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67456,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"21173:11:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$66233_$","typeString":"type(enum PointSystem)"}},"id":67457,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"21185:9:96","memberName":"Unlimited","nodeType":"MemberAccess","referencedDeclaration":66231,"src":"21173:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"21158:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"id":67462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67459,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"21198:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67460,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"21213:11:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$66233_$","typeString":"type(enum PointSystem)"}},"id":67461,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"21225:6:96","memberName":"Capped","nodeType":"MemberAccess","referencedDeclaration":66230,"src":"21213:18:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"21198:33:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"21158:73:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":67476,"nodeType":"Block","src":"21354:93:96","statements":[{"expression":{"id":67474,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67469,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"21368:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":67471,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67441,"src":"21410:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67472,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67443,"src":"21419:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67470,"name":"decreasePowerQuadratic","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67681,"src":"21387:22:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) view returns (uint256)"}},"id":67473,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21387:49:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21368:68:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67475,"nodeType":"ExpressionStatement","src":"21368:68:96"}]},"id":67477,"nodeType":"IfStatement","src":"21154:293:96","trueBody":{"id":67468,"nodeType":"Block","src":"21233:115:96","statements":[{"expression":{"id":67466,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67464,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"21247:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":67465,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67443,"src":"21266:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21247:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67467,"nodeType":"ExpressionStatement","src":"21247:35:96"}]}},{"expression":{"id":67480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67478,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66610,"src":"21456:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":67479,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"21480:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21456:40:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67481,"nodeType":"ExpressionStatement","src":"21456:40:96"},{"eventCall":{"arguments":[{"id":67483,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67441,"src":"21526:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67484,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67443,"src":"21535:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":67485,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"21553:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67482,"name":"PowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66487,"src":"21511:14:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (address,uint256,uint256)"}},"id":67486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21511:59:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67487,"nodeType":"EmitStatement","src":"21506:64:96"},{"expression":{"id":67488,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67452,"src":"21587:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67447,"id":67489,"nodeType":"Return","src":"21580:23:96"}]},"baseFunctions":[66217],"functionSelector":"2ed04b2b","implemented":true,"kind":"function","modifiers":[],"name":"decreasePower","nameLocation":"20935:13:96","parameters":{"id":67444,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67441,"mutability":"mutable","name":"_member","nameLocation":"20957:7:96","nodeType":"VariableDeclaration","scope":67491,"src":"20949:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67440,"name":"address","nodeType":"ElementaryTypeName","src":"20949:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67443,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"20974:16:96","nodeType":"VariableDeclaration","scope":67491,"src":"20966:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67442,"name":"uint256","nodeType":"ElementaryTypeName","src":"20966:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20948:43:96"},"returnParameters":{"id":67447,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67446,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67491,"src":"21018:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67445,"name":"uint256","nodeType":"ElementaryTypeName","src":"21018:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21017:9:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":67529,"nodeType":"FunctionDefinition","src":"21616:571:96","nodes":[],"body":{"id":67528,"nodeType":"Block","src":"21726:461:96","nodes":[],"statements":[{"assignments":[67501],"declarations":[{"constant":false,"id":67501,"mutability":"mutable","name":"memberPower","nameLocation":"21806:11:96","nodeType":"VariableDeclaration","scope":67528,"src":"21798:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67500,"name":"uint256","nodeType":"ElementaryTypeName","src":"21798:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67510,"initialValue":{"arguments":[{"id":67504,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67493,"src":"21863:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67507,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"21880:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67506,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21872:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67505,"name":"address","nodeType":"ElementaryTypeName","src":"21872:7:96","typeDescriptions":{}}},"id":67508,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21872:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67502,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"21820:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67503,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21838:24:96","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72736,"src":"21820:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67509,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21820:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"21798:88:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67516,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67513,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67511,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67501,"src":"21952:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":67512,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67495,"src":"21966:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21952:28:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":67514,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66622,"src":"21983:11:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage","typeString":"struct PointSystemConfig storage ref"}},"id":67515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21995:9:96","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":66301,"src":"21983:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"21952:52:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67525,"nodeType":"IfStatement","src":"21948:135:96","trueBody":{"id":67524,"nodeType":"Block","src":"22006:77:96","statements":[{"expression":{"id":67522,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67517,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67495,"src":"22020:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67521,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":67518,"name":"pointConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66622,"src":"22037:11:96","typeDescriptions":{"typeIdentifier":"t_struct$_PointSystemConfig_$66302_storage","typeString":"struct PointSystemConfig storage ref"}},"id":67519,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"22049:9:96","memberName":"maxAmount","nodeType":"MemberAccess","referencedDeclaration":66301,"src":"22037:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":67520,"name":"memberPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67501,"src":"22061:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22037:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22020:52:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67523,"nodeType":"ExpressionStatement","src":"22020:52:96"}]}},{"expression":{"id":67526,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67495,"src":"22166:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67499,"id":67527,"nodeType":"Return","src":"22159:21:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerCapped","nameLocation":"21625:19:96","parameters":{"id":67496,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67493,"mutability":"mutable","name":"_member","nameLocation":"21653:7:96","nodeType":"VariableDeclaration","scope":67529,"src":"21645:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67492,"name":"address","nodeType":"ElementaryTypeName","src":"21645:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67495,"mutability":"mutable","name":"_amountToStake","nameLocation":"21670:14:96","nodeType":"VariableDeclaration","scope":67529,"src":"21662:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67494,"name":"uint256","nodeType":"ElementaryTypeName","src":"21662:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21644:41:96"},"returnParameters":{"id":67499,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67498,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67529,"src":"21717:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67497,"name":"uint256","nodeType":"ElementaryTypeName","src":"21717:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"21716:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67607,"nodeType":"FunctionDefinition","src":"22193:741:96","nodes":[],"body":{"id":67606,"nodeType":"Block","src":"22306:628:96","nodes":[],"statements":[{"assignments":[67539],"declarations":[{"constant":false,"id":67539,"mutability":"mutable","name":"totalStake","nameLocation":"22324:10:96","nodeType":"VariableDeclaration","scope":67606,"src":"22316:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67538,"name":"uint256","nodeType":"ElementaryTypeName","src":"22316:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67546,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67545,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":67542,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67531,"src":"22377:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67540,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"22337:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67541,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22355:21:96","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":72749,"src":"22337:39:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":67543,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22337:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":67544,"name":"_amountToStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67533,"src":"22388:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22337:65:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22316:86:96"},{"assignments":[67548],"declarations":[{"constant":false,"id":67548,"mutability":"mutable","name":"decimal","nameLocation":"22421:7:96","nodeType":"VariableDeclaration","scope":67606,"src":"22413:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67547,"name":"uint256","nodeType":"ElementaryTypeName","src":"22413:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67550,"initialValue":{"hexValue":"3138","id":67549,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22431:2:96","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"22413:20:96"},{"clauses":[{"block":{"id":67571,"nodeType":"Block","src":"22531:52:96","statements":[{"expression":{"id":67569,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67564,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67548,"src":"22545:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":67567,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67562,"src":"22563:8:96","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":67566,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22555:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67565,"name":"uint256","nodeType":"ElementaryTypeName","src":"22555:7:96","typeDescriptions":{}}},"id":67568,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22555:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22545:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67570,"nodeType":"ExpressionStatement","src":"22545:27:96"}]},"errorName":"","id":67572,"nodeType":"TryCatchClause","parameters":{"id":67563,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67562,"mutability":"mutable","name":"_decimal","nameLocation":"22521:8:96","nodeType":"VariableDeclaration","scope":67572,"src":"22515:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":67561,"name":"uint8","nodeType":"ElementaryTypeName","src":"22515:5:96","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"22514:16:96"},"src":"22506:77:96"},{"block":{"id":67573,"nodeType":"Block","src":"22590:64:96","statements":[]},"errorName":"","id":67574,"nodeType":"TryCatchClause","src":"22584:70:96"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":67554,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"22461:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67555,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22479:11:96","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":71616,"src":"22461:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$55825_$","typeString":"function () view external returns (contract IERC20)"}},"id":67556,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22461:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}],"id":67553,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22453:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67552,"name":"address","nodeType":"ElementaryTypeName","src":"22453:7:96","typeDescriptions":{}}},"id":67557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22453:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67551,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55747,"src":"22447:5:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$55747_$","typeString":"type(contract ERC20)"}},"id":67558,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22447:47:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$55747","typeString":"contract ERC20"}},"id":67559,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22495:8:96","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55235,"src":"22447:56:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":67560,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22447:58:96","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":67575,"nodeType":"TryStatement","src":"22443:211:96"},{"assignments":[67577],"declarations":[{"constant":false,"id":67577,"mutability":"mutable","name":"newTotalPoints","nameLocation":"22671:14:96","nodeType":"VariableDeclaration","scope":67606,"src":"22663:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67576,"name":"uint256","nodeType":"ElementaryTypeName","src":"22663:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67586,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67584,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67580,"name":"totalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67539,"src":"22698:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67583,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":67581,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22711:2:96","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":67582,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67548,"src":"22717:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22711:13:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22698:26:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67578,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58094,"src":"22688:4:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58094_$","typeString":"type(library Math)"}},"id":67579,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22693:4:96","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":57598,"src":"22688:9:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":67585,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22688:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22663:62:96"},{"assignments":[67588],"declarations":[{"constant":false,"id":67588,"mutability":"mutable","name":"currentPoints","nameLocation":"22743:13:96","nodeType":"VariableDeclaration","scope":67606,"src":"22735:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67587,"name":"uint256","nodeType":"ElementaryTypeName","src":"22735:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67597,"initialValue":{"arguments":[{"id":67591,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67531,"src":"22802:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67594,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"22819:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67593,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22811:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67592,"name":"address","nodeType":"ElementaryTypeName","src":"22811:7:96","typeDescriptions":{}}},"id":67595,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22811:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67589,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"22759:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67590,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22777:24:96","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72736,"src":"22759:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67596,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22759:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22735:90:96"},{"assignments":[67599],"declarations":[{"constant":false,"id":67599,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"22844:16:96","nodeType":"VariableDeclaration","scope":67606,"src":"22836:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67598,"name":"uint256","nodeType":"ElementaryTypeName","src":"22836:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67603,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67602,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67600,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67577,"src":"22863:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":67601,"name":"currentPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67588,"src":"22880:13:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"22863:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"22836:57:96"},{"expression":{"id":67604,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67599,"src":"22911:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67537,"id":67605,"nodeType":"Return","src":"22904:23:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"increasePowerQuadratic","nameLocation":"22202:22:96","parameters":{"id":67534,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67531,"mutability":"mutable","name":"_member","nameLocation":"22233:7:96","nodeType":"VariableDeclaration","scope":67607,"src":"22225:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67530,"name":"address","nodeType":"ElementaryTypeName","src":"22225:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67533,"mutability":"mutable","name":"_amountToStake","nameLocation":"22250:14:96","nodeType":"VariableDeclaration","scope":67607,"src":"22242:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67532,"name":"uint256","nodeType":"ElementaryTypeName","src":"22242:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22224:41:96"},"returnParameters":{"id":67537,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67536,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67607,"src":"22297:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67535,"name":"uint256","nodeType":"ElementaryTypeName","src":"22297:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22296:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67681,"nodeType":"FunctionDefinition","src":"22940:855:96","nodes":[],"body":{"id":67680,"nodeType":"Block","src":"23091:704:96","nodes":[],"statements":[{"assignments":[67617],"declarations":[{"constant":false,"id":67617,"mutability":"mutable","name":"decimal","nameLocation":"23109:7:96","nodeType":"VariableDeclaration","scope":67680,"src":"23101:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67616,"name":"uint256","nodeType":"ElementaryTypeName","src":"23101:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67619,"initialValue":{"hexValue":"3138","id":67618,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23119:2:96","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"nodeType":"VariableDeclarationStatement","src":"23101:20:96"},{"clauses":[{"block":{"id":67640,"nodeType":"Block","src":"23219:52:96","statements":[{"expression":{"id":67638,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67633,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67617,"src":"23233:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":67636,"name":"_decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67631,"src":"23251:8:96","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint8","typeString":"uint8"}],"id":67635,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23243:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67634,"name":"uint256","nodeType":"ElementaryTypeName","src":"23243:7:96","typeDescriptions":{}}},"id":67637,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23243:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23233:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67639,"nodeType":"ExpressionStatement","src":"23233:27:96"}]},"errorName":"","id":67641,"nodeType":"TryCatchClause","parameters":{"id":67632,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67631,"mutability":"mutable","name":"_decimal","nameLocation":"23209:8:96","nodeType":"VariableDeclaration","scope":67641,"src":"23203:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":67630,"name":"uint8","nodeType":"ElementaryTypeName","src":"23203:5:96","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"23202:16:96"},"src":"23194:77:96"},{"block":{"id":67642,"nodeType":"Block","src":"23278:64:96","statements":[]},"errorName":"","id":67643,"nodeType":"TryCatchClause","src":"23272:70:96"}],"externalCall":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":67623,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"23149:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23167:11:96","memberName":"gardenToken","nodeType":"MemberAccess","referencedDeclaration":71616,"src":"23149:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_IERC20_$55825_$","typeString":"function () view external returns (contract IERC20)"}},"id":67625,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23149:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}],"id":67622,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23141:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67621,"name":"address","nodeType":"ElementaryTypeName","src":"23141:7:96","typeDescriptions":{}}},"id":67626,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23141:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67620,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55747,"src":"23135:5:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ERC20_$55747_$","typeString":"type(contract ERC20)"}},"id":67627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23135:47:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC20_$55747","typeString":"contract ERC20"}},"id":67628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23183:8:96","memberName":"decimals","nodeType":"MemberAccess","referencedDeclaration":55235,"src":"23135:56:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint8_$","typeString":"function () view external returns (uint8)"}},"id":67629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23135:58:96","tryCall":true,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":67644,"nodeType":"TryStatement","src":"23131:211:96"},{"assignments":[67646],"declarations":[{"constant":false,"id":67646,"mutability":"mutable","name":"newTotalStake","nameLocation":"23421:13:96","nodeType":"VariableDeclaration","scope":67680,"src":"23413:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67645,"name":"uint256","nodeType":"ElementaryTypeName","src":"23413:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67653,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67652,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":67649,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67609,"src":"23477:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67647,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"23437:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67648,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23455:21:96","memberName":"getMemberStakedAmount","nodeType":"MemberAccess","referencedDeclaration":72749,"src":"23437:39:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":67650,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23437:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":67651,"name":"_amountToUnstake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67611,"src":"23488:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23437:67:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23413:91:96"},{"assignments":[67655],"declarations":[{"constant":false,"id":67655,"mutability":"mutable","name":"newTotalPoints","nameLocation":"23578:14:96","nodeType":"VariableDeclaration","scope":67680,"src":"23570:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67654,"name":"uint256","nodeType":"ElementaryTypeName","src":"23570:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67664,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67662,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67658,"name":"newTotalStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67646,"src":"23605:13:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67661,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":67659,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23621:2:96","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"id":67660,"name":"decimal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67617,"src":"23627:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23621:13:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23605:29:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67656,"name":"Math","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":58094,"src":"23595:4:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Math_$58094_$","typeString":"type(library Math)"}},"id":67657,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23600:4:96","memberName":"sqrt","nodeType":"MemberAccess","referencedDeclaration":57598,"src":"23595:9:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) pure returns (uint256)"}},"id":67663,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23595:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23570:65:96"},{"assignments":[67666],"declarations":[{"constant":false,"id":67666,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"23653:16:96","nodeType":"VariableDeclaration","scope":67680,"src":"23645:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67665,"name":"uint256","nodeType":"ElementaryTypeName","src":"23645:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67677,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":67669,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67609,"src":"23715:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67672,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"23732:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67671,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23724:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67670,"name":"address","nodeType":"ElementaryTypeName","src":"23724:7:96","typeDescriptions":{}}},"id":67673,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23724:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67667,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"23672:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67668,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23690:24:96","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72736,"src":"23672:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":67674,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23672:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":67675,"name":"newTotalPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67655,"src":"23741:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23672:83:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23645:110:96"},{"expression":{"id":67678,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67666,"src":"23772:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":67615,"id":67679,"nodeType":"Return","src":"23765:23:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"decreasePowerQuadratic","nameLocation":"22949:22:96","parameters":{"id":67612,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67609,"mutability":"mutable","name":"_member","nameLocation":"22980:7:96","nodeType":"VariableDeclaration","scope":67681,"src":"22972:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67608,"name":"address","nodeType":"ElementaryTypeName","src":"22972:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":67611,"mutability":"mutable","name":"_amountToUnstake","nameLocation":"22997:16:96","nodeType":"VariableDeclaration","scope":67681,"src":"22989:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67610,"name":"uint256","nodeType":"ElementaryTypeName","src":"22989:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22971:43:96"},"returnParameters":{"id":67615,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67614,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67681,"src":"23078:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67613,"name":"uint256","nodeType":"ElementaryTypeName","src":"23078:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"23077:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":67690,"nodeType":"FunctionDefinition","src":"23990:103:96","nodes":[],"body":{"id":67689,"nodeType":"Block","src":"24058:35:96","nodes":[],"statements":[{"expression":{"id":67687,"name":"pointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66619,"src":"24075:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"functionReturnParameters":67686,"id":67688,"nodeType":"Return","src":"24068:18:96"}]},"baseFunctions":[66223],"functionSelector":"c3292171","implemented":true,"kind":"function","modifiers":[],"name":"getPointSystem","nameLocation":"23999:14:96","parameters":{"id":67682,"nodeType":"ParameterList","parameters":[],"src":"24013:2:96"},"returnParameters":{"id":67686,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67685,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67690,"src":"24045:11:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"typeName":{"id":67684,"nodeType":"UserDefinedTypeName","pathNode":{"id":67683,"name":"PointSystem","nameLocations":["24045:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":66233,"src":"24045:11:96"},"referencedDeclaration":66233,"src":"24045:11:96","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"visibility":"internal"}],"src":"24044:13:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":67736,"nodeType":"FunctionDefinition","src":"24444:322:96","nodes":[],"body":{"id":67735,"nodeType":"Block","src":"24537:229:96","nodes":[],"statements":[{"assignments":[67702],"declarations":[{"constant":false,"id":67702,"mutability":"mutable","name":"pv","nameLocation":"24572:2:96","nodeType":"VariableDeclaration","scope":67735,"src":"24547:27:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67700,"nodeType":"UserDefinedTypeName","pathNode":{"id":67699,"name":"ProposalSupport","nameLocations":["24547:15:96"],"nodeType":"IdentifierPath","referencedDeclaration":66299,"src":"24547:15:96"},"referencedDeclaration":66299,"src":"24547:15:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_storage_ptr","typeString":"struct ProposalSupport"}},"id":67701,"nodeType":"ArrayTypeName","src":"24547:17:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":67710,"initialValue":{"arguments":[{"id":67705,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67692,"src":"24588:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":67706,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66299,"src":"24596:15:96","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$66299_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":67707,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"24596:17:96","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":67708,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"24595:19:96","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$66299_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_$66299_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":67703,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"24577:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67704,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"24581:6:96","memberName":"decode","nodeType":"MemberAccess","src":"24577:10:96","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67709,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24577:38:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"24547:68:96"},{"body":{"id":67733,"nodeType":"Block","src":"24665:95:96","statements":[{"expression":{"arguments":[{"expression":{"baseExpression":{"id":67723,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67702,"src":"24712:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67725,"indexExpression":{"id":67724,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67712,"src":"24715:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24712:5:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67726,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24718:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66296,"src":"24712:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67727,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67702,"src":"24730:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67729,"indexExpression":{"id":67728,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67712,"src":"24733:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"24730:5:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67730,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"24736:12:96","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":66298,"src":"24730:18:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":67722,"name":"_checkProposalAllocationValidity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67033,"src":"24679:32:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_int256_$returns$__$","typeString":"function (uint256,int256) view"}},"id":67731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24679:70:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67732,"nodeType":"ExpressionStatement","src":"24679:70:96"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67715,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67712,"src":"24645:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67716,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67702,"src":"24649:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67717,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24652:6:96","memberName":"length","nodeType":"MemberAccess","src":"24649:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24645:13:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67734,"initializationExpression":{"assignments":[67712],"declarations":[{"constant":false,"id":67712,"mutability":"mutable","name":"i","nameLocation":"24638:1:96","nodeType":"VariableDeclaration","scope":67734,"src":"24630:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67711,"name":"uint256","nodeType":"ElementaryTypeName","src":"24630:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67714,"initialValue":{"hexValue":"30","id":67713,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24642:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"24630:13:96"},"loopExpression":{"expression":{"id":67720,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"24660:3:96","subExpression":{"id":67719,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67712,"src":"24660:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67721,"nodeType":"ExpressionStatement","src":"24660:3:96"},"nodeType":"ForStatement","src":"24625:135:96"}]},"baseFunctions":[66124],"implemented":true,"kind":"function","modifiers":[],"name":"_beforeAllocate","nameLocation":"24453:15:96","overrides":{"id":67696,"nodeType":"OverrideSpecifier","overrides":[],"src":"24528:8:96"},"parameters":{"id":67695,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67692,"mutability":"mutable","name":"_data","nameLocation":"24482:5:96","nodeType":"VariableDeclaration","scope":67736,"src":"24469:18:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67691,"name":"bytes","nodeType":"ElementaryTypeName","src":"24469:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67694,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67736,"src":"24489:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67693,"name":"address","nodeType":"ElementaryTypeName","src":"24489:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24468:42:96"},"returnParameters":{"id":67697,"nodeType":"ParameterList","parameters":[],"src":"24537:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67816,"nodeType":"FunctionDefinition","src":"24912:739:96","nodes":[],"body":{"id":67815,"nodeType":"Block","src":"24994:657:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":67745,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"25024:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67744,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66878,"src":"25004:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":67746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25004:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67747,"nodeType":"ExpressionStatement","src":"25004:28:96"},{"assignments":[67752],"declarations":[{"constant":false,"id":67752,"mutability":"mutable","name":"pv","nameLocation":"25067:2:96","nodeType":"VariableDeclaration","scope":67815,"src":"25042:27:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":67750,"nodeType":"UserDefinedTypeName","pathNode":{"id":67749,"name":"ProposalSupport","nameLocations":["25042:15:96"],"nodeType":"IdentifierPath","referencedDeclaration":66299,"src":"25042:15:96"},"referencedDeclaration":66299,"src":"25042:15:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_storage_ptr","typeString":"struct ProposalSupport"}},"id":67751,"nodeType":"ArrayTypeName","src":"25042:17:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"id":67760,"initialValue":{"arguments":[{"id":67755,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67738,"src":"25083:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"baseExpression":{"id":67756,"name":"ProposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66299,"src":"25091:15:96","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_ProposalSupport_$66299_storage_ptr_$","typeString":"type(struct ProposalSupport storage pointer)"}},"id":67757,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"IndexAccess","src":"25091:17:96","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}}],"id":67758,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"25090:19:96","typeDescriptions":{"typeIdentifier":"t_type$_t_array$_t_struct$_ProposalSupport_$66299_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_$66299_memory_ptr_$dyn_memory_ptr_$","typeString":"type(struct ProposalSupport memory[] memory)"}],"expression":{"id":67753,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"25072:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67754,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"25076:6:96","memberName":"decode","nodeType":"MemberAccess","src":"25072:10:96","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25072:38:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"25042:68:96"},{"condition":{"id":67764,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25124:27:96","subExpression":{"arguments":[{"id":67762,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"25143:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":67761,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66985,"src":"25125:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":67763,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25125:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67790,"nodeType":"IfStatement","src":"25120:230:96","trueBody":{"id":67789,"nodeType":"Block","src":"25153:197:96","statements":[{"body":{"id":67787,"nodeType":"Block","src":"25207:133:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":67781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67776,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67752,"src":"25229:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67778,"indexExpression":{"id":67777,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67766,"src":"25232:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"25229:5:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":67779,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"25235:12:96","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":66298,"src":"25229:18:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67780,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25250:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"25229:22:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67786,"nodeType":"IfStatement","src":"25225:101:96","trueBody":{"id":67785,"nodeType":"Block","src":"25253:73:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67782,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66415,"src":"25282:23:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67783,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25282:25:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67784,"nodeType":"RevertStatement","src":"25275:32:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67772,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67769,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67766,"src":"25187:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":67770,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67752,"src":"25191:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":67771,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25194:6:96","memberName":"length","nodeType":"MemberAccess","src":"25191:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25187:13:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67788,"initializationExpression":{"assignments":[67766],"declarations":[{"constant":false,"id":67766,"mutability":"mutable","name":"i","nameLocation":"25180:1:96","nodeType":"VariableDeclaration","scope":67788,"src":"25172:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67765,"name":"uint256","nodeType":"ElementaryTypeName","src":"25172:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67768,"initialValue":{"hexValue":"30","id":67767,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25184:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"25172:13:96"},"loopExpression":{"expression":{"id":67774,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"25202:3:96","subExpression":{"id":67773,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67766,"src":"25202:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67775,"nodeType":"ExpressionStatement","src":"25202:3:96"},"nodeType":"ForStatement","src":"25167:173:96"}]}},{"condition":{"id":67799,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"25363:70:96","subExpression":{"arguments":[{"id":67793,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"25410:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":67796,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"25427:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":67795,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"25419:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":67794,"name":"address","nodeType":"ElementaryTypeName","src":"25419:7:96","typeDescriptions":{}}},"id":67797,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25419:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":67791,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"25364:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":67792,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25382:27:96","memberName":"memberActivatedInStrategies","nodeType":"MemberAccess","referencedDeclaration":71661,"src":"25364:45:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_bool_$","typeString":"function (address,address) view external returns (bool)"}},"id":67798,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25364:69:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67804,"nodeType":"IfStatement","src":"25359:124:96","trueBody":{"id":67803,"nodeType":"Block","src":"25435:48:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67800,"name":"UserIsInactive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66383,"src":"25456:14:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67801,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25456:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67802,"nodeType":"RevertStatement","src":"25449:23:96"}]}},{"expression":{"arguments":[{"id":67806,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"25598:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67807,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67752,"src":"25607:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67805,"name":"_check_before_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68456,"src":"25573:24:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67808,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25573:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67809,"nodeType":"ExpressionStatement","src":"25573:37:96"},{"expression":{"arguments":[{"id":67811,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67740,"src":"25632:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":67812,"name":"pv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67752,"src":"25641:2:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}],"id":67810,"name":"_addSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68741,"src":"25620:11:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr_$returns$__$","typeString":"function (address,struct ProposalSupport memory[] memory)"}},"id":67813,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25620:24:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67814,"nodeType":"ExpressionStatement","src":"25620:24:96"}]},"baseFunctions":[66052],"implemented":true,"kind":"function","modifiers":[],"name":"_allocate","nameLocation":"24921:9:96","overrides":{"id":67742,"nodeType":"OverrideSpecifier","overrides":[],"src":"24985:8:96"},"parameters":{"id":67741,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67738,"mutability":"mutable","name":"_data","nameLocation":"24944:5:96","nodeType":"VariableDeclaration","scope":67816,"src":"24931:18:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67737,"name":"bytes","nodeType":"ElementaryTypeName","src":"24931:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67740,"mutability":"mutable","name":"_sender","nameLocation":"24959:7:96","nodeType":"VariableDeclaration","scope":67816,"src":"24951:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67739,"name":"address","nodeType":"ElementaryTypeName","src":"24951:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"24930:37:96"},"returnParameters":{"id":67743,"nodeType":"ParameterList","parameters":[],"src":"24994:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":67967,"nodeType":"FunctionDefinition","src":"25907:2078:96","nodes":[],"body":{"id":67966,"nodeType":"Block","src":"26001:1984:96","nodes":[],"statements":[{"assignments":[67828],"declarations":[{"constant":false,"id":67828,"mutability":"mutable","name":"proposalId","nameLocation":"26159:10:96","nodeType":"VariableDeclaration","scope":67966,"src":"26151:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67827,"name":"uint256","nodeType":"ElementaryTypeName","src":"26151:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67836,"initialValue":{"arguments":[{"id":67831,"name":"_data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67821,"src":"26183:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":67833,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"26191:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":67832,"name":"uint256","nodeType":"ElementaryTypeName","src":"26191:7:96","typeDescriptions":{}}}],"id":67834,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"26190:9:96","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":67829,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"26172:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":67830,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"26176:6:96","memberName":"decode","nodeType":"MemberAccess","src":"26172:10:96","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":67835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26172:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"26151:49:96"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"},"id":67840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67837,"name":"proposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66616,"src":"26311:12:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":67838,"name":"ProposalType","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66228,"src":"26327:12:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalType_$66228_$","typeString":"type(enum ProposalType)"}},"id":67839,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"26340:7:96","memberName":"Funding","nodeType":"MemberAccess","referencedDeclaration":66226,"src":"26327:20:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalType_$66228","typeString":"enum ProposalType"}},"src":"26311:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67965,"nodeType":"IfStatement","src":"26307:1612:96","trueBody":{"id":67964,"nodeType":"Block","src":"26349:1570:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67841,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"26367:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67843,"indexExpression":{"id":67842,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26377:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26367:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67844,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26389:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"26367:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":67845,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26403:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26367:46:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67852,"nodeType":"IfStatement","src":"26363:121:96","trueBody":{"id":67851,"nodeType":"Block","src":"26415:69:96","statements":[{"errorCall":{"arguments":[{"id":67848,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26458:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67847,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66401,"src":"26440:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67849,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26440:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67850,"nodeType":"RevertStatement","src":"26433:36:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67853,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"26502:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67855,"indexExpression":{"id":67854,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26512:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26502:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67856,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26524:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"26502:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":67857,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65573,"src":"26542:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26502:50:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67863,"nodeType":"IfStatement","src":"26498:269:96","trueBody":{"id":67862,"nodeType":"Block","src":"26554:213:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":67859,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"26682:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":67860,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26682:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67861,"nodeType":"ExpressionStatement","src":"26682:8:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":67870,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67864,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"26785:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67866,"indexExpression":{"id":67865,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26795:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"26785:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67867,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26807:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"26785:36:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":67868,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"26825:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67869,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"26840:6:96","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":66247,"src":"26825:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"26785:61:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67876,"nodeType":"IfStatement","src":"26781:136:96","trueBody":{"id":67875,"nodeType":"Block","src":"26848:69:96","statements":[{"errorCall":{"arguments":[{"id":67872,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26891:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67871,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66397,"src":"26873:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":67873,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26873:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67874,"nodeType":"RevertStatement","src":"26866:36:96"}]}},{"assignments":[67878],"declarations":[{"constant":false,"id":67878,"mutability":"mutable","name":"convictionLast","nameLocation":"26939:14:96","nodeType":"VariableDeclaration","scope":67964,"src":"26931:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67877,"name":"uint256","nodeType":"ElementaryTypeName","src":"26931:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67882,"initialValue":{"arguments":[{"id":67880,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"26981:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67879,"name":"updateProposalConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69389,"src":"26956:24:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) returns (uint256)"}},"id":67881,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26956:36:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"26931:61:96"},{"assignments":[67884],"declarations":[{"constant":false,"id":67884,"mutability":"mutable","name":"threshold","nameLocation":"27014:9:96","nodeType":"VariableDeclaration","scope":67964,"src":"27006:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67883,"name":"uint256","nodeType":"ElementaryTypeName","src":"27006:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67891,"initialValue":{"arguments":[{"expression":{"baseExpression":{"id":67886,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27045:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67888,"indexExpression":{"id":67887,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27055:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27045:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67889,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27067:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"27045:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67885,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68960,"src":"27026:18:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":67890,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27026:57:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"27006:77:96"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67894,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67892,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67878,"src":"27102:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":67893,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67884,"src":"27119:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27102:26:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67900,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":67895,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27132:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67897,"indexExpression":{"id":67896,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27142:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27132:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67898,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27154:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"27132:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":67899,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27172:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"27132:41:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"27102:71:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":67906,"nodeType":"IfStatement","src":"27098:150:96","trueBody":{"id":67905,"nodeType":"Block","src":"27175:73:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":67902,"name":"ConvictionUnderMinimumThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66409,"src":"27200:31:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":67903,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27200:33:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67904,"nodeType":"RevertStatement","src":"27193:40:96"}]}},{"expression":{"id":67912,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67907,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65573,"src":"27262:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"expression":{"baseExpression":{"id":67908,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27276:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67910,"indexExpression":{"id":67909,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27286:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27276:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67911,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27298:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"27276:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27262:51:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":67913,"nodeType":"ExpressionStatement","src":"27262:51:96"},{"expression":{"arguments":[{"expression":{"arguments":[{"id":67917,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"27381:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":67915,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65565,"src":"27368:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_IAllo_$2610","typeString":"contract IAllo"}},"id":67916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27373:7:96","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":2603,"src":"27368:12:96","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":67918,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27368:20:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":67919,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27389:5:96","memberName":"token","nodeType":"MemberAccess","referencedDeclaration":2311,"src":"27368:26:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67920,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27396:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67922,"indexExpression":{"id":67921,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27406:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27396:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67923,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27418:11:96","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":66270,"src":"27396:33:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67924,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27431:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67926,"indexExpression":{"id":67925,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27441:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27431:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67927,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27453:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"27431:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67914,"name":"_transferAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3287,"src":"27335:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":67928,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27335:147:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67929,"nodeType":"ExpressionStatement","src":"27335:147:96"},{"expression":{"id":67936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":67930,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27497:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67932,"indexExpression":{"id":67931,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27507:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27497:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67933,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"27519:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"27497:36:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67934,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"27536:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":67935,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"27551:8:96","memberName":"Executed","nodeType":"MemberAccess","referencedDeclaration":66250,"src":"27536:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"27497:62:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":67937,"nodeType":"ExpressionStatement","src":"27497:62:96"},{"expression":{"arguments":[{"id":67941,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27625:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67942,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27653:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67944,"indexExpression":{"id":67943,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27663:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27653:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67945,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27675:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"27653:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67946,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"27702:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":67948,"indexExpression":{"id":67947,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"27720:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27702:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":67949,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27752:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"27702:75:96","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":67938,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"27573:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":67940,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27589:18:96","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76970,"src":"27573:34:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":67950,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27573:218:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67951,"nodeType":"ExpressionStatement","src":"27573:218:96"},{"eventCall":{"arguments":[{"id":67953,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27823:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":67954,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27835:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67956,"indexExpression":{"id":67955,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27845:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27835:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67957,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27857:11:96","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":66270,"src":"27835:33:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":67958,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"27870:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67960,"indexExpression":{"id":67959,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67828,"src":"27880:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"27870:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":67961,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27892:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"27870:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67952,"name":"Distributed","nodeType":"Identifier","overloadedDeclarations":[66457,2858],"referencedDeclaration":66457,"src":"27811:11:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":67962,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27811:97:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":67963,"nodeType":"EmitStatement","src":"27806:102:96"}]}}]},"baseFunctions":[66063],"implemented":true,"kind":"function","modifiers":[],"name":"_distribute","nameLocation":"25916:11:96","overrides":{"id":67825,"nodeType":"OverrideSpecifier","overrides":[],"src":"25992:8:96"},"parameters":{"id":67824,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67819,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67967,"src":"25928:16:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":67817,"name":"address","nodeType":"ElementaryTypeName","src":"25928:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":67818,"nodeType":"ArrayTypeName","src":"25928:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":67821,"mutability":"mutable","name":"_data","nameLocation":"25959:5:96","nodeType":"VariableDeclaration","scope":67967,"src":"25946:18:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":67820,"name":"bytes","nodeType":"ElementaryTypeName","src":"25946:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":67823,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":67967,"src":"25966:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":67822,"name":"address","nodeType":"ElementaryTypeName","src":"25966:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"25927:47:96"},"returnParameters":{"id":67826,"nodeType":"ParameterList","parameters":[],"src":"26001:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68019,"nodeType":"FunctionDefinition","src":"27991:728:96","nodes":[],"body":{"id":68018,"nodeType":"Block","src":"28088:631:96","nodes":[],"statements":[{"assignments":[67976],"declarations":[{"constant":false,"id":67976,"mutability":"mutable","name":"proposal","nameLocation":"28115:8:96","nodeType":"VariableDeclaration","scope":68018,"src":"28098:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":67975,"nodeType":"UserDefinedTypeName","pathNode":{"id":67974,"name":"Proposal","nameLocations":["28098:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"28098:8:96"},"referencedDeclaration":66294,"src":"28098:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":67980,"initialValue":{"baseExpression":{"id":67977,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"28126:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":67979,"indexExpression":{"id":67978,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67969,"src":"28136:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"28126:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"28098:49:96"},{"assignments":[67982,67984],"declarations":[{"constant":false,"id":67982,"mutability":"mutable","name":"convictionLast","nameLocation":"28241:14:96","nodeType":"VariableDeclaration","scope":68018,"src":"28233:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67981,"name":"uint256","nodeType":"ElementaryTypeName","src":"28233:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":67984,"mutability":"mutable","name":"blockNumber","nameLocation":"28265:11:96","nodeType":"VariableDeclaration","scope":68018,"src":"28257:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67983,"name":"uint256","nodeType":"ElementaryTypeName","src":"28257:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":67990,"initialValue":{"arguments":[{"id":67986,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67976,"src":"28326:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":67987,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67976,"src":"28336:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":67988,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28345:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"28336:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":67985,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69185,"src":"28292:33:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$66294_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":67989,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28292:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"28232:126:96"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":67997,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67993,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67991,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67982,"src":"28373:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67992,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28391:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"28373:19:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":67996,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":67994,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67984,"src":"28396:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":67995,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28411:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"28396:16:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"28373:39:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68004,"nodeType":"IfStatement","src":"28369:110:96","trueBody":{"id":68003,"nodeType":"Block","src":"28414:65:96","statements":[{"expression":{"id":68001,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":67998,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67982,"src":"28428:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":67999,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67976,"src":"28445:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68000,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28454:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"28445:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28428:40:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68002,"nodeType":"ExpressionStatement","src":"28428:40:96"}]}},{"assignments":[68006],"declarations":[{"constant":false,"id":68006,"mutability":"mutable","name":"threshold","nameLocation":"28496:9:96","nodeType":"VariableDeclaration","scope":68018,"src":"28488:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68005,"name":"uint256","nodeType":"ElementaryTypeName","src":"28488:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68011,"initialValue":{"arguments":[{"expression":{"id":68008,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67976,"src":"28527:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68009,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28536:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"28527:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68007,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68960,"src":"28508:18:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":68010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28508:44:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"28488:64:96"},{"expression":{"id":68016,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68012,"name":"canBeExecuted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67972,"src":"28669:13:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68013,"name":"convictionLast","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":67982,"src":"28685:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":68014,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68006,"src":"28703:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"28685:27:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"28669:43:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68017,"nodeType":"ExpressionStatement","src":"28669:43:96"}]},"functionSelector":"824ea8ed","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteProposal","nameLocation":"28000:18:96","parameters":{"id":67970,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67969,"mutability":"mutable","name":"proposalId","nameLocation":"28027:10:96","nodeType":"VariableDeclaration","scope":68019,"src":"28019:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":67968,"name":"uint256","nodeType":"ElementaryTypeName","src":"28019:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"28018:20:96"},"returnParameters":{"id":67973,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67972,"mutability":"mutable","name":"canBeExecuted","nameLocation":"28073:13:96","nodeType":"VariableDeclaration","scope":68019,"src":"28068:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":67971,"name":"bool","nodeType":"ElementaryTypeName","src":"28068:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"28067:20:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68029,"nodeType":"FunctionDefinition","src":"29009:231:96","nodes":[],"body":{"id":68028,"nodeType":"Block","src":"29108:132:96","nodes":[],"statements":[]},"baseFunctions":[66083],"implemented":true,"kind":"function","modifiers":[],"name":"_getRecipientStatus","nameLocation":"29018:19:96","overrides":{"id":68023,"nodeType":"OverrideSpecifier","overrides":[],"src":"29082:8:96"},"parameters":{"id":68022,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68021,"mutability":"mutable","name":"_recipientId","nameLocation":"29046:12:96","nodeType":"VariableDeclaration","scope":68029,"src":"29038:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68020,"name":"address","nodeType":"ElementaryTypeName","src":"29038:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"29037:22:96"},"returnParameters":{"id":68027,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68026,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68029,"src":"29100:6:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"},"typeName":{"id":68025,"nodeType":"UserDefinedTypeName","pathNode":{"id":68024,"name":"Status","nameLocations":["29100:6:96"],"nodeType":"IdentifierPath","referencedDeclaration":2815,"src":"29100:6:96"},"referencedDeclaration":2815,"src":"29100:6:96","typeDescriptions":{"typeIdentifier":"t_enum$_Status_$2815","typeString":"enum IStrategy.Status"}},"visibility":"internal"}],"src":"29099:8:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68048,"nodeType":"FunctionDefinition","src":"29369:308:96","nodes":[],"body":{"id":68047,"nodeType":"Block","src":"29479:198:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68044,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"29662:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":68045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29662:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68046,"nodeType":"ExpressionStatement","src":"29662:8:96"}]},"baseFunctions":[65922],"documentation":{"id":68030,"nodeType":"StructuredDocumentation","src":"29246:118:96","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":"29378:10:96","overrides":{"id":68038,"nodeType":"OverrideSpecifier","overrides":[],"src":"29437:8:96"},"parameters":{"id":68037,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68033,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68048,"src":"29389:16:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":68031,"name":"address","nodeType":"ElementaryTypeName","src":"29389:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":68032,"nodeType":"ArrayTypeName","src":"29389:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":68036,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68048,"src":"29407:14:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":68034,"name":"bytes","nodeType":"ElementaryTypeName","src":"29407:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":68035,"nodeType":"ArrayTypeName","src":"29407:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"29388:34:96"},"returnParameters":{"id":68043,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68042,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68048,"src":"29455:22:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_memory_ptr_$dyn_memory_ptr","typeString":"struct IStrategy.PayoutSummary[]"},"typeName":{"baseType":{"id":68040,"nodeType":"UserDefinedTypeName","pathNode":{"id":68039,"name":"PayoutSummary","nameLocations":["29455:13:96"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"29455:13:96"},"referencedDeclaration":2820,"src":"29455:13:96","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"id":68041,"nodeType":"ArrayTypeName","src":"29455:15:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_PayoutSummary_$2820_storage_$dyn_storage_ptr","typeString":"struct IStrategy.PayoutSummary[]"}},"visibility":"internal"}],"src":"29454:24:96"},"scope":70249,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":68060,"nodeType":"FunctionDefinition","src":"29683:286:96","nodes":[],"body":{"id":68059,"nodeType":"Block","src":"29851:118:96","nodes":[],"statements":[]},"baseFunctions":[66074],"implemented":true,"kind":"function","modifiers":[],"name":"_getPayout","nameLocation":"29692:10:96","overrides":{"id":68054,"nodeType":"OverrideSpecifier","overrides":[],"src":"29799:8:96"},"parameters":{"id":68053,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68050,"mutability":"mutable","name":"_recipientId","nameLocation":"29711:12:96","nodeType":"VariableDeclaration","scope":68060,"src":"29703:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68049,"name":"address","nodeType":"ElementaryTypeName","src":"29703:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68052,"mutability":"mutable","name":"_data","nameLocation":"29738:5:96","nodeType":"VariableDeclaration","scope":68060,"src":"29725:18:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":68051,"name":"bytes","nodeType":"ElementaryTypeName","src":"29725:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"29702:42:96"},"returnParameters":{"id":68058,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68057,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68060,"src":"29825:20:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_memory_ptr","typeString":"struct IStrategy.PayoutSummary"},"typeName":{"id":68056,"nodeType":"UserDefinedTypeName","pathNode":{"id":68055,"name":"PayoutSummary","nameLocations":["29825:13:96"],"nodeType":"IdentifierPath","referencedDeclaration":2820,"src":"29825:13:96"},"referencedDeclaration":2820,"src":"29825:13:96","typeDescriptions":{"typeIdentifier":"t_struct$_PayoutSummary_$2820_storage_ptr","typeString":"struct IStrategy.PayoutSummary"}},"visibility":"internal"}],"src":"29824:22:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68071,"nodeType":"FunctionDefinition","src":"29975:127:96","nodes":[],"body":{"id":68070,"nodeType":"Block","src":"30052:50:96","nodes":[],"statements":[{"eventCall":{"arguments":[{"id":68067,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68062,"src":"30087:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68066,"name":"PoolAmountIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66467,"src":"30067:19:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":68068,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30067:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68069,"nodeType":"EmitStatement","src":"30062:33:96"}]},"baseFunctions":[66097],"implemented":true,"kind":"function","modifiers":[],"name":"_afterIncreasePoolAmount","nameLocation":"29984:24:96","overrides":{"id":68064,"nodeType":"OverrideSpecifier","overrides":[],"src":"30043:8:96"},"parameters":{"id":68063,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68062,"mutability":"mutable","name":"_amount","nameLocation":"30017:7:96","nodeType":"VariableDeclaration","scope":68071,"src":"30009:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68061,"name":"uint256","nodeType":"ElementaryTypeName","src":"30009:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"30008:17:96"},"returnParameters":{"id":68065,"nodeType":"ParameterList","parameters":[],"src":"30052:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68080,"nodeType":"FunctionDefinition","src":"30197:143:96","nodes":[],"body":{"id":68079,"nodeType":"Block","src":"30290:50:96","nodes":[],"statements":[]},"baseFunctions":[66034],"implemented":true,"kind":"function","modifiers":[],"name":"_isValidAllocator","nameLocation":"30206:17:96","overrides":{"id":68075,"nodeType":"OverrideSpecifier","overrides":[],"src":"30266:8:96"},"parameters":{"id":68074,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68073,"mutability":"mutable","name":"_allocator","nameLocation":"30232:10:96","nodeType":"VariableDeclaration","scope":68080,"src":"30224:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68072,"name":"address","nodeType":"ElementaryTypeName","src":"30224:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30223:20:96"},"returnParameters":{"id":68078,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68077,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68080,"src":"30284:4:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68076,"name":"bool","nodeType":"ElementaryTypeName","src":"30284:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"30283:6:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68090,"nodeType":"FunctionDefinition","src":"30346:86:96","nodes":[],"body":{"id":68089,"nodeType":"Block","src":"30392:40:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":68086,"name":"_active","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68082,"src":"30417:7:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":68085,"name":"_setPoolActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66017,"src":"30402:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":68087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30402:23:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68088,"nodeType":"ExpressionStatement","src":"30402:23:96"}]},"functionSelector":"b5f620ce","implemented":true,"kind":"function","modifiers":[],"name":"setPoolActive","nameLocation":"30355:13:96","parameters":{"id":68083,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68082,"mutability":"mutable","name":"_active","nameLocation":"30374:7:96","nodeType":"VariableDeclaration","scope":68090,"src":"30369:12:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68081,"name":"bool","nodeType":"ElementaryTypeName","src":"30369:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"30368:14:96"},"returnParameters":{"id":68084,"nodeType":"ParameterList","parameters":[],"src":"30392:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":68177,"nodeType":"FunctionDefinition","src":"30438:833:96","nodes":[],"body":{"id":68176,"nodeType":"Block","src":"30490:781:96","nodes":[],"statements":[{"body":{"id":68168,"nodeType":"Block","src":"30615:609:96","statements":[{"assignments":[68109],"declarations":[{"constant":false,"id":68109,"mutability":"mutable","name":"proposalId","nameLocation":"30637:10:96","nodeType":"VariableDeclaration","scope":68168,"src":"30629:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68108,"name":"uint256","nodeType":"ElementaryTypeName","src":"30629:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68115,"initialValue":{"baseExpression":{"baseExpression":{"id":68110,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66645,"src":"30650:20:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":68112,"indexExpression":{"id":68111,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68092,"src":"30671:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30650:29:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":68114,"indexExpression":{"id":68113,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68096,"src":"30680:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30650:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"30629:53:96"},{"assignments":[68118],"declarations":[{"constant":false,"id":68118,"mutability":"mutable","name":"proposal","nameLocation":"30713:8:96","nodeType":"VariableDeclaration","scope":68168,"src":"30696:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68117,"nodeType":"UserDefinedTypeName","pathNode":{"id":68116,"name":"Proposal","nameLocations":["30696:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"30696:8:96"},"referencedDeclaration":66294,"src":"30696:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68122,"initialValue":{"baseExpression":{"id":68119,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"30724:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68121,"indexExpression":{"id":68120,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68109,"src":"30734:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30724:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"30696:49:96"},{"condition":{"arguments":[{"id":68124,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68109,"src":"30778:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68123,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68321,"src":"30763:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30763:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68167,"nodeType":"IfStatement","src":"30759:455:96","trueBody":{"id":68166,"nodeType":"Block","src":"30791:423:96","statements":[{"assignments":[68127],"declarations":[{"constant":false,"id":68127,"mutability":"mutable","name":"stakedPoints","nameLocation":"30817:12:96","nodeType":"VariableDeclaration","scope":68166,"src":"30809:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68126,"name":"uint256","nodeType":"ElementaryTypeName","src":"30809:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68132,"initialValue":{"baseExpression":{"expression":{"id":68128,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68118,"src":"30832:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68129,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30841:17:96","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":66283,"src":"30832:26:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68131,"indexExpression":{"id":68130,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68092,"src":"30859:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30832:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"30809:58:96"},{"expression":{"id":68139,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":68133,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68118,"src":"30885:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68136,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"30894:17:96","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":66283,"src":"30885:26:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68137,"indexExpression":{"id":68135,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68092,"src":"30912:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"30885:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":68138,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30923:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"30885:39:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68140,"nodeType":"ExpressionStatement","src":"30885:39:96"},{"expression":{"id":68145,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68141,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68118,"src":"30942:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68143,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"30951:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"30942:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":68144,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68127,"src":"30967:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30942:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68146,"nodeType":"ExpressionStatement","src":"30942:37:96"},{"expression":{"id":68149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68147,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66608,"src":"30997:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":68148,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68127,"src":"31012:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30997:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68150,"nodeType":"ExpressionStatement","src":"30997:27:96"},{"expression":{"arguments":[{"id":68152,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68118,"src":"31069:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68153,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68127,"src":"31079:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68151,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69138,"src":"31042:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$66294_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68154,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31042:50:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68155,"nodeType":"ExpressionStatement","src":"31042:50:96"},{"eventCall":{"arguments":[{"id":68157,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68092,"src":"31128:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68158,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68109,"src":"31137:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":68159,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31149:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":68160,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68118,"src":"31152:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68161,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31161:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"31152:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68162,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68118,"src":"31175:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68163,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"31184:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"31175:23:96","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":68156,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66499,"src":"31115:12:96","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":68164,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31115:84:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68165,"nodeType":"EmitStatement","src":"31110:89:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68104,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68099,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68096,"src":"30568:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":68100,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66645,"src":"30572:20:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":68102,"indexExpression":{"id":68101,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68092,"src":"30593:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"30572:29:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":68103,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30602:6:96","memberName":"length","nodeType":"MemberAccess","src":"30572:36:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"30568:40:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68169,"initializationExpression":{"assignments":[68096],"declarations":[{"constant":false,"id":68096,"mutability":"mutable","name":"i","nameLocation":"30561:1:96","nodeType":"VariableDeclaration","scope":68169,"src":"30553:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68095,"name":"uint256","nodeType":"ElementaryTypeName","src":"30553:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68098,"initialValue":{"hexValue":"30","id":68097,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30565:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"30553:13:96"},"loopExpression":{"expression":{"id":68106,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"30610:3:96","subExpression":{"id":68105,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68096,"src":"30610:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68107,"nodeType":"ExpressionStatement","src":"30610:3:96"},"nodeType":"ForStatement","src":"30548:676:96"},{"expression":{"id":68174,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68170,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66640,"src":"31233:18:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68172,"indexExpression":{"id":68171,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68092,"src":"31252:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"31233:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":68173,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31263:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"31233:31:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68175,"nodeType":"ExpressionStatement","src":"31233:31:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"withdraw","nameLocation":"30447:8:96","parameters":{"id":68093,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68092,"mutability":"mutable","name":"_member","nameLocation":"30464:7:96","nodeType":"VariableDeclaration","scope":68177,"src":"30456:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68091,"name":"address","nodeType":"ElementaryTypeName","src":"30456:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"30455:17:96"},"returnParameters":{"id":68094,"nodeType":"ParameterList","parameters":[],"src":"30490:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68253,"nodeType":"FunctionDefinition","src":"31955:1115:96","nodes":[],"body":{"id":68252,"nodeType":"Block","src":"32470:600:96","nodes":[],"statements":[{"assignments":[68208],"declarations":[{"constant":false,"id":68208,"mutability":"mutable","name":"proposal","nameLocation":"32497:8:96","nodeType":"VariableDeclaration","scope":68252,"src":"32480:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68207,"nodeType":"UserDefinedTypeName","pathNode":{"id":68206,"name":"Proposal","nameLocations":["32480:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"32480:8:96"},"referencedDeclaration":66294,"src":"32480:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68212,"initialValue":{"baseExpression":{"id":68209,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"32508:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68211,"indexExpression":{"id":68210,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68180,"src":"32518:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32508:22:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"32480:50:96"},{"expression":{"id":68224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68213,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68200,"src":"32541:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68217,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68214,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32553:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68215,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32562:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"32553:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68216,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32581:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"32553:29:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"arguments":[{"expression":{"id":68220,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32608:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68221,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32617:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"32608:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68219,"name":"calculateThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68960,"src":"32589:18:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":68222,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32589:44:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68223,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"32553:80:96","trueExpression":{"hexValue":"30","id":68218,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32585:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"32541:92:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68225,"nodeType":"ExpressionStatement","src":"32541:92:96"},{"expression":{"components":[{"expression":{"id":68226,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32664:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68227,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32673:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"32664:18:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68228,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32696:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68229,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32705:11:96","memberName":"beneficiary","nodeType":"MemberAccess","referencedDeclaration":66270,"src":"32696:20:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68230,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32730:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68231,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32739:14:96","memberName":"requestedToken","nodeType":"MemberAccess","referencedDeclaration":66274,"src":"32730:23:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":68232,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32767:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68233,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32776:15:96","memberName":"requestedAmount","nodeType":"MemberAccess","referencedDeclaration":66264,"src":"32767:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68234,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32805:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68235,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32814:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"32805:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68236,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32840:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68237,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32849:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"32840:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},{"expression":{"id":68238,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32877:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68239,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32886:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"32877:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68240,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32909:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68241,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32918:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"32909:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68242,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68200,"src":"32946:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"baseExpression":{"expression":{"id":68243,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"32969:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68244,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"32978:17:96","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":66283,"src":"32969:26:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68247,"indexExpression":{"expression":{"id":68245,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"32996:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":68246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33000:6:96","memberName":"sender","nodeType":"MemberAccess","src":"32996:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"32969:38:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68248,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68208,"src":"33021:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68249,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"33030:23:96","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":66293,"src":"33021:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68250,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"32650:413:96","typeDescriptions":{"typeIdentifier":"t_tuple$_t_address_$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_enum$_ProposalStatus_$66253_$_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":68205,"id":68251,"nodeType":"Return","src":"32643:420:96"}]},"documentation":{"id":68178,"nodeType":"StructuredDocumentation","src":"31277:673:96","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":"31964:11:96","parameters":{"id":68181,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68180,"mutability":"mutable","name":"_proposalId","nameLocation":"31984:11:96","nodeType":"VariableDeclaration","scope":68253,"src":"31976:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68179,"name":"uint256","nodeType":"ElementaryTypeName","src":"31976:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"31975:21:96"},"returnParameters":{"id":68205,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68183,"mutability":"mutable","name":"submitter","nameLocation":"32081:9:96","nodeType":"VariableDeclaration","scope":68253,"src":"32073:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68182,"name":"address","nodeType":"ElementaryTypeName","src":"32073:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68185,"mutability":"mutable","name":"beneficiary","nameLocation":"32112:11:96","nodeType":"VariableDeclaration","scope":68253,"src":"32104:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68184,"name":"address","nodeType":"ElementaryTypeName","src":"32104:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68187,"mutability":"mutable","name":"requestedToken","nameLocation":"32145:14:96","nodeType":"VariableDeclaration","scope":68253,"src":"32137:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68186,"name":"address","nodeType":"ElementaryTypeName","src":"32137:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68189,"mutability":"mutable","name":"requestedAmount","nameLocation":"32181:15:96","nodeType":"VariableDeclaration","scope":68253,"src":"32173:23:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68188,"name":"uint256","nodeType":"ElementaryTypeName","src":"32173:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68191,"mutability":"mutable","name":"stakedAmount","nameLocation":"32218:12:96","nodeType":"VariableDeclaration","scope":68253,"src":"32210:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68190,"name":"uint256","nodeType":"ElementaryTypeName","src":"32210:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68194,"mutability":"mutable","name":"proposalStatus","nameLocation":"32259:14:96","nodeType":"VariableDeclaration","scope":68253,"src":"32244:29:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"typeName":{"id":68193,"nodeType":"UserDefinedTypeName","pathNode":{"id":68192,"name":"ProposalStatus","nameLocations":["32244:14:96"],"nodeType":"IdentifierPath","referencedDeclaration":66253,"src":"32244:14:96"},"referencedDeclaration":66253,"src":"32244:14:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"visibility":"internal"},{"constant":false,"id":68196,"mutability":"mutable","name":"blockLast","nameLocation":"32295:9:96","nodeType":"VariableDeclaration","scope":68253,"src":"32287:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68195,"name":"uint256","nodeType":"ElementaryTypeName","src":"32287:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68198,"mutability":"mutable","name":"convictionLast","nameLocation":"32326:14:96","nodeType":"VariableDeclaration","scope":68253,"src":"32318:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68197,"name":"uint256","nodeType":"ElementaryTypeName","src":"32318:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68200,"mutability":"mutable","name":"threshold","nameLocation":"32362:9:96","nodeType":"VariableDeclaration","scope":68253,"src":"32354:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68199,"name":"uint256","nodeType":"ElementaryTypeName","src":"32354:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68202,"mutability":"mutable","name":"voterStakedPoints","nameLocation":"32393:17:96","nodeType":"VariableDeclaration","scope":68253,"src":"32385:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68201,"name":"uint256","nodeType":"ElementaryTypeName","src":"32385:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68204,"mutability":"mutable","name":"arbitrableConfigVersion","nameLocation":"32432:23:96","nodeType":"VariableDeclaration","scope":68253,"src":"32424:31:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68203,"name":"uint256","nodeType":"ElementaryTypeName","src":"32424:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"32059:406:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":68269,"nodeType":"FunctionDefinition","src":"33544:184:96","nodes":[],"body":{"id":68268,"nodeType":"Block","src":"33652:76:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":68264,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68256,"src":"33701:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68265,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68258,"src":"33714:6:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"id":68263,"name":"_internal_getProposalVoterStake","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68286,"src":"33669:31:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_address_$returns$_t_uint256_$","typeString":"function (uint256,address) view returns (uint256)"}},"id":68266,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33669:52:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68262,"id":68267,"nodeType":"Return","src":"33662:59:96"}]},"documentation":{"id":68254,"nodeType":"StructuredDocumentation","src":"33349:190:96","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":"33553:21:96","parameters":{"id":68259,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68256,"mutability":"mutable","name":"_proposalId","nameLocation":"33583:11:96","nodeType":"VariableDeclaration","scope":68269,"src":"33575:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68255,"name":"uint256","nodeType":"ElementaryTypeName","src":"33575:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68258,"mutability":"mutable","name":"_voter","nameLocation":"33604:6:96","nodeType":"VariableDeclaration","scope":68269,"src":"33596:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68257,"name":"address","nodeType":"ElementaryTypeName","src":"33596:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"33574:37:96"},"returnParameters":{"id":68262,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68261,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68269,"src":"33643:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68260,"name":"uint256","nodeType":"ElementaryTypeName","src":"33643:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"33642:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":68286,"nodeType":"FunctionDefinition","src":"35252:226:96","nodes":[],"body":{"id":68285,"nodeType":"Block","src":"35406:72:96","nodes":[],"statements":[{"expression":{"baseExpression":{"expression":{"baseExpression":{"id":68278,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"35423:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68280,"indexExpression":{"id":68279,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68271,"src":"35433:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35423:22:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":68281,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35446:17:96","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":66283,"src":"35423:40:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68283,"indexExpression":{"id":68282,"name":"_voter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68273,"src":"35464:6:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35423:48:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68277,"id":68284,"nodeType":"Return","src":"35416:55:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_internal_getProposalVoterStake","nameLocation":"35261:31:96","parameters":{"id":68274,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68271,"mutability":"mutable","name":"_proposalId","nameLocation":"35301:11:96","nodeType":"VariableDeclaration","scope":68286,"src":"35293:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68270,"name":"uint256","nodeType":"ElementaryTypeName","src":"35293:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68273,"mutability":"mutable","name":"_voter","nameLocation":"35322:6:96","nodeType":"VariableDeclaration","scope":68286,"src":"35314:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68272,"name":"address","nodeType":"ElementaryTypeName","src":"35314:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"35292:37:96"},"returnParameters":{"id":68277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68276,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68286,"src":"35393:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68275,"name":"uint256","nodeType":"ElementaryTypeName","src":"35393:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35392:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68296,"nodeType":"FunctionDefinition","src":"35484:153:96","nodes":[],"body":{"id":68295,"nodeType":"Block","src":"35556:81:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":68291,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"35573:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":68292,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35591:20:96","memberName":"getBasisStakedAmount","nodeType":"MemberAccess","referencedDeclaration":73172,"src":"35573:38:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_uint256_$","typeString":"function () view external returns (uint256)"}},"id":68293,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35573:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68290,"id":68294,"nodeType":"Return","src":"35566:47:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"35493:20:96","parameters":{"id":68287,"nodeType":"ParameterList","parameters":[],"src":"35513:2:96"},"returnParameters":{"id":68290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68289,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68296,"src":"35547:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68288,"name":"uint256","nodeType":"ElementaryTypeName","src":"35547:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35546:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68321,"nodeType":"FunctionDefinition","src":"35643:193:96","nodes":[],"body":{"id":68320,"nodeType":"Block","src":"35725:111:96","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68318,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68308,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68303,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"35742:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68305,"indexExpression":{"id":68304,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68298,"src":"35752:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35742:22:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":68306,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35765:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"35742:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":68307,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35778:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"35742:37:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":68317,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68309,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"35783:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68311,"indexExpression":{"id":68310,"name":"_proposalID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68298,"src":"35793:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"35783:22:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":68312,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35806:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"35783:32:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":68315,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35827:1:96","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":68314,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"35819:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68313,"name":"address","nodeType":"ElementaryTypeName","src":"35819:7:96","typeDescriptions":{}}},"id":68316,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35819:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"35783:46:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"35742:87:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":68302,"id":68319,"nodeType":"Return","src":"35735:94:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"proposalExists","nameLocation":"35652:14:96","parameters":{"id":68299,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68298,"mutability":"mutable","name":"_proposalID","nameLocation":"35675:11:96","nodeType":"VariableDeclaration","scope":68321,"src":"35667:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68297,"name":"uint256","nodeType":"ElementaryTypeName","src":"35667:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35666:21:96"},"returnParameters":{"id":68302,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68301,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68321,"src":"35719:4:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68300,"name":"bool","nodeType":"ElementaryTypeName","src":"35719:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"35718:6:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68340,"nodeType":"FunctionDefinition","src":"35842:191:96","nodes":[],"body":{"id":68339,"nodeType":"Block","src":"35945:88:96","nodes":[],"statements":[{"expression":{"id":68337,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68328,"name":"isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68326,"src":"35955:14:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68336,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68332,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68329,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"35972:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68330,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"35981:8:96","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":66318,"src":"35972:17:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68331,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65573,"src":"35992:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35972:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68335,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68333,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68323,"src":"36006:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68334,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"36025:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36006:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"35972:54:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"35955:71:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68338,"nodeType":"ExpressionStatement","src":"35955:71:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_isOverMaxRatio","nameLocation":"35851:15:96","parameters":{"id":68324,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68323,"mutability":"mutable","name":"_requestedAmount","nameLocation":"35875:16:96","nodeType":"VariableDeclaration","scope":68340,"src":"35867:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68322,"name":"uint256","nodeType":"ElementaryTypeName","src":"35867:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"35866:26:96"},"returnParameters":{"id":68327,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68326,"mutability":"mutable","name":"isOverMaxRatio","nameLocation":"35929:14:96","nodeType":"VariableDeclaration","scope":68340,"src":"35924:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68325,"name":"bool","nodeType":"ElementaryTypeName","src":"35924:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"35923:21:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":68456,"nodeType":"FunctionDefinition","src":"36039:1713:96","nodes":[],"body":{"id":68455,"nodeType":"Block","src":"36142:1610:96","nodes":[],"statements":[{"assignments":[68350],"declarations":[{"constant":false,"id":68350,"mutability":"mutable","name":"deltaSupportSum","nameLocation":"36159:15:96","nodeType":"VariableDeclaration","scope":68455,"src":"36152:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68349,"name":"int256","nodeType":"ElementaryTypeName","src":"36152:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68352,"initialValue":{"hexValue":"30","id":68351,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36177:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36152:26:96"},{"assignments":[68354],"declarations":[{"constant":false,"id":68354,"mutability":"mutable","name":"canAddSupport","nameLocation":"36193:13:96","nodeType":"VariableDeclaration","scope":68455,"src":"36188:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68353,"name":"bool","nodeType":"ElementaryTypeName","src":"36188:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68358,"initialValue":{"arguments":[{"id":68356,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68342,"src":"36227:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":68355,"name":"_canExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66985,"src":"36209:17:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":68357,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36209:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"36188:47:96"},{"body":{"id":68417,"nodeType":"Block","src":"36299:714:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":68378,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68371,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36372:14:96","subExpression":{"id":68370,"name":"canAddSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68354,"src":"36373:13:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68377,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68372,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68346,"src":"36390:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68374,"indexExpression":{"id":68373,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"36407:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36390:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":68375,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36410:12:96","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":66298,"src":"36390:32:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":68376,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36425:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"36390:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"36372:54:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68383,"nodeType":"IfStatement","src":"36368:125:96","trueBody":{"id":68382,"nodeType":"Block","src":"36428:65:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68379,"name":"UserCannotExecuteAction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66415,"src":"36453:23:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68380,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36453:25:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68381,"nodeType":"RevertStatement","src":"36446:32:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68389,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":68384,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68346,"src":"36510:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68386,"indexExpression":{"id":68385,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"36527:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36510:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":68387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36530:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66296,"src":"36510:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68388,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36544:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"36510:35:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68392,"nodeType":"IfStatement","src":"36506:187:96","trueBody":{"id":68391,"nodeType":"Block","src":"36547:146:96","statements":[{"id":68390,"nodeType":"Continue","src":"36670:8:96"}]}},{"assignments":[68394],"declarations":[{"constant":false,"id":68394,"mutability":"mutable","name":"proposalId","nameLocation":"36714:10:96","nodeType":"VariableDeclaration","scope":68417,"src":"36706:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68393,"name":"uint256","nodeType":"ElementaryTypeName","src":"36706:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68399,"initialValue":{"expression":{"baseExpression":{"id":68395,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68346,"src":"36727:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68397,"indexExpression":{"id":68396,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"36744:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36727:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":68398,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36747:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66296,"src":"36727:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"36706:51:96"},{"condition":{"id":68403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"36775:27:96","subExpression":{"arguments":[{"id":68401,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68394,"src":"36791:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68400,"name":"proposalExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68321,"src":"36776:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68402,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36776:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68409,"nodeType":"IfStatement","src":"36771:167:96","trueBody":{"id":68408,"nodeType":"Block","src":"36804:134:96","statements":[{"errorCall":{"arguments":[{"id":68405,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68394,"src":"36847:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68404,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66401,"src":"36829:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":68406,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36829:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68407,"nodeType":"RevertStatement","src":"36822:36:96"}]}},{"expression":{"id":68415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68410,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68350,"src":"36951:15:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"baseExpression":{"id":68411,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68346,"src":"36970:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68413,"indexExpression":{"id":68412,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"36987:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"36970:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":68414,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"36990:12:96","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":66298,"src":"36970:32:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"36951:51:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":68416,"nodeType":"ExpressionStatement","src":"36951:51:96"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68363,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"36265:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68364,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68346,"src":"36269:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68365,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36286:6:96","memberName":"length","nodeType":"MemberAccess","src":"36269:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"36265:27:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68418,"initializationExpression":{"assignments":[68360],"declarations":[{"constant":false,"id":68360,"mutability":"mutable","name":"i","nameLocation":"36258:1:96","nodeType":"VariableDeclaration","scope":68418,"src":"36250:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68359,"name":"uint256","nodeType":"ElementaryTypeName","src":"36250:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68362,"initialValue":{"hexValue":"30","id":68361,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36262:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"36250:13:96"},"loopExpression":{"expression":{"id":68368,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"36294:3:96","subExpression":{"id":68367,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68360,"src":"36294:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68369,"nodeType":"ExpressionStatement","src":"36294:3:96"},"nodeType":"ForStatement","src":"36245:768:96"},{"assignments":[68420],"declarations":[{"constant":false,"id":68420,"mutability":"mutable","name":"newTotalVotingSupport","nameLocation":"37117:21:96","nodeType":"VariableDeclaration","scope":68455,"src":"37109:29:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68419,"name":"uint256","nodeType":"ElementaryTypeName","src":"37109:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68427,"initialValue":{"arguments":[{"baseExpression":{"id":68422,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66640,"src":"37153:18:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68424,"indexExpression":{"id":68423,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68342,"src":"37172:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"37153:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68425,"name":"deltaSupportSum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68350,"src":"37182:15:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68421,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68773,"src":"37141:11:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":68426,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37141:57:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"37109:89:96"},{"assignments":[68429],"declarations":[{"constant":false,"id":68429,"mutability":"mutable","name":"participantBalance","nameLocation":"37288:18:96","nodeType":"VariableDeclaration","scope":68455,"src":"37280:26:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68428,"name":"uint256","nodeType":"ElementaryTypeName","src":"37280:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68438,"initialValue":{"arguments":[{"id":68432,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68342,"src":"37352:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":68435,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"37369:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":68434,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"37361:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":68433,"name":"address","nodeType":"ElementaryTypeName","src":"37361:7:96","typeDescriptions":{}}},"id":68436,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37361:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":68430,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"37309:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":68431,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37327:24:96","memberName":"getMemberPowerInStrategy","nodeType":"MemberAccess","referencedDeclaration":72736,"src":"37309:42:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":68437,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37309:66:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"37280:95:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68441,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68439,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68420,"src":"37541:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":68440,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68429,"src":"37565:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37541:42:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68448,"nodeType":"IfStatement","src":"37537:147:96","trueBody":{"id":68447,"nodeType":"Block","src":"37585:99:96","statements":[{"errorCall":{"arguments":[{"id":68443,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68420,"src":"37631:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68444,"name":"participantBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68429,"src":"37654:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68442,"name":"NotEnoughPointsToSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66393,"src":"37606:24:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68445,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37606:67:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68446,"nodeType":"RevertStatement","src":"37599:74:96"}]}},{"expression":{"id":68453,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68449,"name":"totalVoterStakePct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66640,"src":"37694:18:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68451,"indexExpression":{"id":68450,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68342,"src":"37713:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"37694:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68452,"name":"newTotalVotingSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68420,"src":"37724:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37694:51:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68454,"nodeType":"ExpressionStatement","src":"37694:51:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_check_before_addSupport","nameLocation":"36048:24:96","parameters":{"id":68347,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68342,"mutability":"mutable","name":"_sender","nameLocation":"36081:7:96","nodeType":"VariableDeclaration","scope":68456,"src":"36073:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68341,"name":"address","nodeType":"ElementaryTypeName","src":"36073:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68346,"mutability":"mutable","name":"_proposalSupport","nameLocation":"36115:16:96","nodeType":"VariableDeclaration","scope":68456,"src":"36090:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":68344,"nodeType":"UserDefinedTypeName","pathNode":{"id":68343,"name":"ProposalSupport","nameLocations":["36090:15:96"],"nodeType":"IdentifierPath","referencedDeclaration":66299,"src":"36090:15:96"},"referencedDeclaration":66299,"src":"36090:15:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_storage_ptr","typeString":"struct ProposalSupport"}},"id":68345,"nodeType":"ArrayTypeName","src":"36090:17:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"36072:60:96"},"returnParameters":{"id":68348,"nodeType":"ParameterList","parameters":[],"src":"36142:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":68741,"nodeType":"FunctionDefinition","src":"37758:3457:96","nodes":[],"body":{"id":68740,"nodeType":"Block","src":"37856:3359:96","nodes":[],"statements":[{"assignments":[68469],"declarations":[{"constant":false,"id":68469,"mutability":"mutable","name":"proposalsIds","nameLocation":"37883:12:96","nodeType":"VariableDeclaration","scope":68740,"src":"37866:29:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":68467,"name":"uint256","nodeType":"ElementaryTypeName","src":"37866:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68468,"nodeType":"ArrayTypeName","src":"37866:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":68470,"nodeType":"VariableDeclarationStatement","src":"37866:29:96"},{"body":{"id":68738,"nodeType":"Block","src":"37959:3250:96","statements":[{"assignments":[68483],"declarations":[{"constant":false,"id":68483,"mutability":"mutable","name":"proposalId","nameLocation":"37981:10:96","nodeType":"VariableDeclaration","scope":68738,"src":"37973:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68482,"name":"uint256","nodeType":"ElementaryTypeName","src":"37973:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68488,"initialValue":{"expression":{"baseExpression":{"id":68484,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68462,"src":"37994:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68486,"indexExpression":{"id":68485,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68472,"src":"38011:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"37994:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":68487,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"38014:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66296,"src":"37994:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"37973:51:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68489,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38097:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68490,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38110:6:96","memberName":"length","nodeType":"MemberAccess","src":"38097:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68491,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38120:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"38097:24:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68591,"nodeType":"Block","src":"38249:764:96","statements":[{"assignments":[68509],"declarations":[{"constant":false,"id":68509,"mutability":"mutable","name":"exist","nameLocation":"38272:5:96","nodeType":"VariableDeclaration","scope":68591,"src":"38267:10:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68508,"name":"bool","nodeType":"ElementaryTypeName","src":"38267:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68511,"initialValue":{"hexValue":"66616c7365","id":68510,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"38280:5:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"38267:18:96"},{"body":{"id":68539,"nodeType":"Block","src":"38353:268:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68527,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":68523,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38404:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68525,"indexExpression":{"id":68524,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68513,"src":"38417:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"38404:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":68526,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68483,"src":"38423:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38404:29:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68538,"nodeType":"IfStatement","src":"38400:203:96","trueBody":{"id":68537,"nodeType":"Block","src":"38435:168:96","statements":[{"expression":{"id":68530,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68528,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68509,"src":"38461:5:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":68529,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"38469:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"38461:12:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68531,"nodeType":"ExpressionStatement","src":"38461:12:96"},{"errorCall":{"arguments":[{"id":68533,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68483,"src":"38532:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68534,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68513,"src":"38544:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68532,"name":"ProposalSupportDuplicated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66407,"src":"38506:25:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":68535,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38506:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68536,"nodeType":"RevertStatement","src":"38499:47:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68516,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68513,"src":"38323:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68517,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38327:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68518,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38340:6:96","memberName":"length","nodeType":"MemberAccess","src":"38327:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38323:23:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68540,"initializationExpression":{"assignments":[68513],"declarations":[{"constant":false,"id":68513,"mutability":"mutable","name":"j","nameLocation":"38316:1:96","nodeType":"VariableDeclaration","scope":68540,"src":"38308:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68512,"name":"uint256","nodeType":"ElementaryTypeName","src":"38308:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68515,"initialValue":{"hexValue":"30","id":68514,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38320:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"38308:13:96"},"loopExpression":{"expression":{"id":68521,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"38348:3:96","subExpression":{"id":68520,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68513,"src":"38348:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68522,"nodeType":"ExpressionStatement","src":"38348:3:96"},"nodeType":"ForStatement","src":"38303:318:96"},{"condition":{"id":68542,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"38642:6:96","subExpression":{"id":68541,"name":"exist","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68509,"src":"38643:5:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68590,"nodeType":"IfStatement","src":"38638:361:96","trueBody":{"id":68589,"nodeType":"Block","src":"38650:349:96","statements":[{"assignments":[68547],"declarations":[{"constant":false,"id":68547,"mutability":"mutable","name":"temp","nameLocation":"38689:4:96","nodeType":"VariableDeclaration","scope":68589,"src":"38672:21:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":68545,"name":"uint256","nodeType":"ElementaryTypeName","src":"38672:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68546,"nodeType":"ArrayTypeName","src":"38672:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"id":68556,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68554,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68551,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38710:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68552,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38723:6:96","memberName":"length","nodeType":"MemberAccess","src":"38710:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":68553,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38732:1:96","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"38710:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68550,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"38696:13:96","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":68548,"name":"uint256","nodeType":"ElementaryTypeName","src":"38700:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68549,"nodeType":"ArrayTypeName","src":"38700:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":68555,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38696:38:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"VariableDeclarationStatement","src":"38672:62:96"},{"body":{"id":68576,"nodeType":"Block","src":"38806:74:96","statements":[{"expression":{"id":68574,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68568,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68547,"src":"38832:4:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68570,"indexExpression":{"id":68569,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68558,"src":"38837:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"38832:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":68571,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38842:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68573,"indexExpression":{"id":68572,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68558,"src":"38855:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"38842:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38832:25:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68575,"nodeType":"ExpressionStatement","src":"38832:25:96"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68564,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68561,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68558,"src":"38776:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68562,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38780:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68563,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38793:6:96","memberName":"length","nodeType":"MemberAccess","src":"38780:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38776:23:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68577,"initializationExpression":{"assignments":[68558],"declarations":[{"constant":false,"id":68558,"mutability":"mutable","name":"j","nameLocation":"38769:1:96","nodeType":"VariableDeclaration","scope":68577,"src":"38761:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68557,"name":"uint256","nodeType":"ElementaryTypeName","src":"38761:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68560,"initialValue":{"hexValue":"30","id":68559,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38773:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"38761:13:96"},"loopExpression":{"expression":{"id":68566,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"38801:3:96","subExpression":{"id":68565,"name":"j","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68558,"src":"38801:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68567,"nodeType":"ExpressionStatement","src":"38801:3:96"},"nodeType":"ForStatement","src":"38756:124:96"},{"expression":{"id":68583,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68578,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68547,"src":"38901:4:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68581,"indexExpression":{"expression":{"id":68579,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38906:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68580,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38919:6:96","memberName":"length","nodeType":"MemberAccess","src":"38906:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"38901:25:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68582,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68483,"src":"38929:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38901:38:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68584,"nodeType":"ExpressionStatement","src":"38901:38:96"},{"expression":{"id":68587,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68585,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38961:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68586,"name":"temp","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68547,"src":"38976:4:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"38961:19:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68588,"nodeType":"ExpressionStatement","src":"38961:19:96"}]}}]},"id":68592,"nodeType":"IfStatement","src":"38093:920:96","trueBody":{"id":68507,"nodeType":"Block","src":"38123:120:96","statements":[{"expression":{"id":68499,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68493,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38141:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"31","id":68497,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38170:1:96","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":68496,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"38156:13:96","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":68494,"name":"uint256","nodeType":"ElementaryTypeName","src":"38160:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68495,"nodeType":"ArrayTypeName","src":"38160:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}}},"id":68498,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38156:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"src":"38141:31:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68500,"nodeType":"ExpressionStatement","src":"38141:31:96"},{"expression":{"id":68505,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":68501,"name":"proposalsIds","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68469,"src":"38190:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[] memory"}},"id":68503,"indexExpression":{"hexValue":"30","id":68502,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38203:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"38190:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68504,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68483,"src":"38208:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"38190:28:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68506,"nodeType":"ExpressionStatement","src":"38190:28:96"}]}},{"assignments":[68594],"declarations":[{"constant":false,"id":68594,"mutability":"mutable","name":"delta","nameLocation":"39033:5:96","nodeType":"VariableDeclaration","scope":68738,"src":"39026:12:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68593,"name":"int256","nodeType":"ElementaryTypeName","src":"39026:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68599,"initialValue":{"expression":{"baseExpression":{"id":68595,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68462,"src":"39041:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68597,"indexExpression":{"id":68596,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68472,"src":"39058:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"39041:19:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_memory_ptr","typeString":"struct ProposalSupport memory"}},"id":68598,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39061:12:96","memberName":"deltaSupport","nodeType":"MemberAccess","referencedDeclaration":66298,"src":"39041:32:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"39026:47:96"},{"assignments":[68602],"declarations":[{"constant":false,"id":68602,"mutability":"mutable","name":"proposal","nameLocation":"39105:8:96","nodeType":"VariableDeclaration","scope":68738,"src":"39088:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68601,"nodeType":"UserDefinedTypeName","pathNode":{"id":68600,"name":"Proposal","nameLocations":["39088:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"39088:8:96"},"referencedDeclaration":66294,"src":"39088:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68606,"initialValue":{"baseExpression":{"id":68603,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"39116:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68605,"indexExpression":{"id":68604,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68483,"src":"39126:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"39116:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"39088:49:96"},{"assignments":[68608],"declarations":[{"constant":false,"id":68608,"mutability":"mutable","name":"previousStakedPoints","nameLocation":"39247:20:96","nodeType":"VariableDeclaration","scope":68738,"src":"39239:28:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68607,"name":"uint256","nodeType":"ElementaryTypeName","src":"39239:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68613,"initialValue":{"baseExpression":{"expression":{"id":68609,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"39270:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68610,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39279:17:96","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":66283,"src":"39270:26:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68612,"indexExpression":{"id":68611,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68458,"src":"39297:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"39270:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"39239:66:96"},{"assignments":[68615],"declarations":[{"constant":false,"id":68615,"mutability":"mutable","name":"stakedPoints","nameLocation":"39478:12:96","nodeType":"VariableDeclaration","scope":68738,"src":"39470:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68614,"name":"uint256","nodeType":"ElementaryTypeName","src":"39470:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68620,"initialValue":{"arguments":[{"id":68617,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"39505:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68618,"name":"delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68594,"src":"39527:5:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68616,"name":"_applyDelta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68773,"src":"39493:11:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_int256_$returns$_t_uint256_$","typeString":"function (uint256,int256) pure returns (uint256)"}},"id":68619,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39493:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"39470:63:96"},{"expression":{"id":68627,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"expression":{"id":68621,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"39668:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68624,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"39677:17:96","memberName":"voterStakedPoints","nodeType":"MemberAccess","referencedDeclaration":66283,"src":"39668:26:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":68625,"indexExpression":{"id":68623,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68458,"src":"39695:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"39668:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":68626,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"39706:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"39668:50:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68628,"nodeType":"ExpressionStatement","src":"39668:50:96"},{"assignments":[68630],"declarations":[{"constant":false,"id":68630,"mutability":"mutable","name":"hasProposal","nameLocation":"39957:11:96","nodeType":"VariableDeclaration","scope":68738,"src":"39952:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":68629,"name":"bool","nodeType":"ElementaryTypeName","src":"39952:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":68632,"initialValue":{"hexValue":"66616c7365","id":68631,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"39971:5:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"39952:24:96"},{"body":{"id":68661,"nodeType":"Block","src":"40057:179:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68653,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"baseExpression":{"id":68646,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66645,"src":"40079:20:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":68648,"indexExpression":{"id":68647,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68458,"src":"40100:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40079:29:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":68650,"indexExpression":{"id":68649,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68634,"src":"40109:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40079:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":68651,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"40115:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68652,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40124:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"40115:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40079:55:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68660,"nodeType":"IfStatement","src":"40075:147:96","trueBody":{"id":68659,"nodeType":"Block","src":"40136:86:96","statements":[{"expression":{"id":68656,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68654,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68630,"src":"40158:11:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":68655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"40172:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"40158:18:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68657,"nodeType":"ExpressionStatement","src":"40158:18:96"},{"id":68658,"nodeType":"Break","src":"40198:5:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68642,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68637,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68634,"src":"40010:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":68638,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66645,"src":"40014:20:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":68640,"indexExpression":{"id":68639,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68458,"src":"40035:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40014:29:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":68641,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40044:6:96","memberName":"length","nodeType":"MemberAccess","src":"40014:36:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40010:40:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68662,"initializationExpression":{"assignments":[68634],"declarations":[{"constant":false,"id":68634,"mutability":"mutable","name":"k","nameLocation":"40003:1:96","nodeType":"VariableDeclaration","scope":68662,"src":"39995:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68633,"name":"uint256","nodeType":"ElementaryTypeName","src":"39995:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68636,"initialValue":{"hexValue":"30","id":68635,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40007:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"39995:13:96"},"loopExpression":{"expression":{"id":68644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"40052:3:96","subExpression":{"id":68643,"name":"k","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68634,"src":"40052:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68645,"nodeType":"ExpressionStatement","src":"40052:3:96"},"nodeType":"ForStatement","src":"39990:246:96"},{"condition":{"id":68664,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"40253:12:96","subExpression":{"id":68663,"name":"hasProposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68630,"src":"40254:11:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68674,"nodeType":"IfStatement","src":"40249:106:96","trueBody":{"id":68673,"nodeType":"Block","src":"40267:88:96","statements":[{"expression":{"arguments":[{"expression":{"id":68669,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"40320:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68670,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40329:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"40320:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"baseExpression":{"id":68665,"name":"voterStakedProposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66645,"src":"40285:20:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_uint256_$dyn_storage_$","typeString":"mapping(address => uint256[] storage ref)"}},"id":68667,"indexExpression":{"id":68666,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68458,"src":"40306:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"40285:29:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage","typeString":"uint256[] storage ref"}},"id":68668,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40315:4:96","memberName":"push","nodeType":"MemberAccess","src":"40285:34:96","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":68671,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40285:55:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68672,"nodeType":"ExpressionStatement","src":"40285:55:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68675,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"40510:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":68676,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"40534:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40510:36:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68707,"nodeType":"Block","src":"40715:161:96","statements":[{"expression":{"id":68697,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68693,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66608,"src":"40733:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68696,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68694,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"40748:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68695,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"40771:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40748:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40733:50:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68698,"nodeType":"ExpressionStatement","src":"40733:50:96"},{"expression":{"id":68705,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68699,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"40801:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68701,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"40810:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"40801:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68704,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68702,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"40826:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68703,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"40849:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40826:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40801:60:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68706,"nodeType":"ExpressionStatement","src":"40801:60:96"}]},"id":68708,"nodeType":"IfStatement","src":"40506:370:96","trueBody":{"id":68692,"nodeType":"Block","src":"40548:161:96","statements":[{"expression":{"id":68682,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68678,"name":"totalStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66608,"src":"40566:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68681,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68679,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"40581:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68680,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"40596:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40581:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40566:50:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68683,"nodeType":"ExpressionStatement","src":"40566:50:96"},{"expression":{"id":68690,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68684,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"40634:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68686,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"40643:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"40634:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68689,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68687,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"40659:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68688,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"40674:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40659:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40634:60:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68691,"nodeType":"ExpressionStatement","src":"40634:60:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68712,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68709,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"40893:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"40902:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"40893:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":68711,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40915:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"40893:23:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":68736,"nodeType":"Block","src":"40990:209:96","statements":[{"expression":{"arguments":[{"id":68722,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"41035:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":68723,"name":"previousStakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68608,"src":"41045:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68721,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69138,"src":"41008:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$66294_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":68724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41008:58:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68725,"nodeType":"ExpressionStatement","src":"41008:58:96"},{"eventCall":{"arguments":[{"id":68727,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68458,"src":"41102:7:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":68728,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68483,"src":"41111:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68729,"name":"stakedPoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68615,"src":"41123:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68730,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"41137:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68731,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41146:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"41137:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68732,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"41160:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68733,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41169:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"41160:23:96","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":68726,"name":"SupportAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66499,"src":"41089:12:96","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":68734,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41089:95:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68735,"nodeType":"EmitStatement","src":"41084:100:96"}]},"id":68737,"nodeType":"IfStatement","src":"40889:310:96","trueBody":{"id":68720,"nodeType":"Block","src":"40918:66:96","statements":[{"expression":{"id":68718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":68713,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68602,"src":"40936:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68715,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"40945:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"40936:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":68716,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"40957:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68717,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40963:6:96","memberName":"number","nodeType":"MemberAccess","src":"40957:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"40936:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68719,"nodeType":"ExpressionStatement","src":"40936:33:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68478,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68475,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68472,"src":"37925:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":68476,"name":"_proposalSupport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68462,"src":"37929:16:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport memory[] memory"}},"id":68477,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37946:6:96","memberName":"length","nodeType":"MemberAccess","src":"37929:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"37925:27:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68739,"initializationExpression":{"assignments":[68472],"declarations":[{"constant":false,"id":68472,"mutability":"mutable","name":"i","nameLocation":"37918:1:96","nodeType":"VariableDeclaration","scope":68739,"src":"37910:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68471,"name":"uint256","nodeType":"ElementaryTypeName","src":"37910:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68474,"initialValue":{"hexValue":"30","id":68473,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37922:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"37910:13:96"},"loopExpression":{"expression":{"id":68480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"37954:3:96","subExpression":{"id":68479,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68472,"src":"37954:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68481,"nodeType":"ExpressionStatement","src":"37954:3:96"},"nodeType":"ForStatement","src":"37905:3304:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addSupport","nameLocation":"37767:11:96","parameters":{"id":68463,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68458,"mutability":"mutable","name":"_sender","nameLocation":"37787:7:96","nodeType":"VariableDeclaration","scope":68741,"src":"37779:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":68457,"name":"address","nodeType":"ElementaryTypeName","src":"37779:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":68462,"mutability":"mutable","name":"_proposalSupport","nameLocation":"37821:16:96","nodeType":"VariableDeclaration","scope":68741,"src":"37796:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_memory_ptr_$dyn_memory_ptr","typeString":"struct ProposalSupport[]"},"typeName":{"baseType":{"id":68460,"nodeType":"UserDefinedTypeName","pathNode":{"id":68459,"name":"ProposalSupport","nameLocations":["37796:15:96"],"nodeType":"IdentifierPath","referencedDeclaration":66299,"src":"37796:15:96"},"referencedDeclaration":66299,"src":"37796:15:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalSupport_$66299_storage_ptr","typeString":"struct ProposalSupport"}},"id":68461,"nodeType":"ArrayTypeName","src":"37796:17:96","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_ProposalSupport_$66299_storage_$dyn_storage_ptr","typeString":"struct ProposalSupport[]"}},"visibility":"internal"}],"src":"37778:60:96"},"returnParameters":{"id":68464,"nodeType":"ParameterList","parameters":[],"src":"37856:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":68773,"nodeType":"FunctionDefinition","src":"41221:371:96","nodes":[],"body":{"id":68772,"nodeType":"Block","src":"41315:277:96","nodes":[],"statements":[{"assignments":[68751],"declarations":[{"constant":false,"id":68751,"mutability":"mutable","name":"result","nameLocation":"41332:6:96","nodeType":"VariableDeclaration","scope":68772,"src":"41325:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68750,"name":"int256","nodeType":"ElementaryTypeName","src":"41325:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"id":68758,"initialValue":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68757,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":68754,"name":"_support","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68743,"src":"41348:8:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68753,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"41341:6:96","typeDescriptions":{"typeIdentifier":"t_type$_t_int256_$","typeString":"type(int256)"},"typeName":{"id":68752,"name":"int256","nodeType":"ElementaryTypeName","src":"41341:6:96","typeDescriptions":{}}},"id":68755,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41341:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68756,"name":"_delta","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68745,"src":"41360:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"src":"41341:25:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"VariableDeclarationStatement","src":"41325:41:96"},{"condition":{"commonType":{"typeIdentifier":"t_int256","typeString":"int256"},"id":68761,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68759,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68751,"src":"41381:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"30","id":68760,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41390:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"41381:10:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68766,"nodeType":"IfStatement","src":"41377:177:96","trueBody":{"id":68765,"nodeType":"Block","src":"41393:161:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68762,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"41473:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":68763,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41473:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68764,"nodeType":"ExpressionStatement","src":"41473:8:96"}]}},{"expression":{"arguments":[{"id":68769,"name":"result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68751,"src":"41578:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_int256","typeString":"int256"}],"id":68768,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"41570:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":68767,"name":"uint256","nodeType":"ElementaryTypeName","src":"41570:7:96","typeDescriptions":{}}},"id":68770,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41570:15:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68749,"id":68771,"nodeType":"Return","src":"41563:22:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_applyDelta","nameLocation":"41230:11:96","parameters":{"id":68746,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68743,"mutability":"mutable","name":"_support","nameLocation":"41250:8:96","nodeType":"VariableDeclaration","scope":68773,"src":"41242:16:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68742,"name":"uint256","nodeType":"ElementaryTypeName","src":"41242:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68745,"mutability":"mutable","name":"_delta","nameLocation":"41267:6:96","nodeType":"VariableDeclaration","scope":68773,"src":"41260:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"},"typeName":{"id":68744,"name":"int256","nodeType":"ElementaryTypeName","src":"41260:6:96","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"visibility":"internal"}],"src":"41241:33:96"},"returnParameters":{"id":68749,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68748,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68773,"src":"41306:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68747,"name":"uint256","nodeType":"ElementaryTypeName","src":"41306:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41305:9:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":68800,"nodeType":"FunctionDefinition","src":"41598:282:96","nodes":[],"body":{"id":68799,"nodeType":"Block","src":"41694:186:96","nodes":[],"statements":[{"assignments":[68782],"declarations":[{"constant":false,"id":68782,"mutability":"mutable","name":"proposal","nameLocation":"41721:8:96","nodeType":"VariableDeclaration","scope":68799,"src":"41704:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":68781,"nodeType":"UserDefinedTypeName","pathNode":{"id":68780,"name":"Proposal","nameLocations":["41704:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"41704:8:96"},"referencedDeclaration":66294,"src":"41704:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":68786,"initialValue":{"baseExpression":{"id":68783,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"41732:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":68785,"indexExpression":{"id":68784,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68775,"src":"41742:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"41732:22:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"41704:50:96"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68792,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68788,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"41791:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":68789,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"41797:6:96","memberName":"number","nodeType":"MemberAccess","src":"41791:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68790,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68782,"src":"41806:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68791,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41815:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"41806:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"41791:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68793,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68782,"src":"41826:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68794,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41835:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"41826:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":68795,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68782,"src":"41851:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":68796,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"41860:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"41851:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68787,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68858,"src":"41771:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":68797,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41771:102:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68779,"id":68798,"nodeType":"Return","src":"41764:109:96"}]},"functionSelector":"60b0645a","implemented":true,"kind":"function","modifiers":[],"name":"calculateProposalConviction","nameLocation":"41607:27:96","parameters":{"id":68776,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68775,"mutability":"mutable","name":"_proposalId","nameLocation":"41643:11:96","nodeType":"VariableDeclaration","scope":68800,"src":"41635:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68774,"name":"uint256","nodeType":"ElementaryTypeName","src":"41635:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41634:21:96"},"returnParameters":{"id":68779,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68778,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68800,"src":"41685:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68777,"name":"uint256","nodeType":"ElementaryTypeName","src":"41685:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"41684:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68858,"nodeType":"FunctionDefinition","src":"42297:644:96","nodes":[],"body":{"id":68857,"nodeType":"Block","src":"42460:481:96","nodes":[],"statements":[{"assignments":[68813],"declarations":[{"constant":false,"id":68813,"mutability":"mutable","name":"t","nameLocation":"42478:1:96","nodeType":"VariableDeclaration","scope":68857,"src":"42470:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68812,"name":"uint256","nodeType":"ElementaryTypeName","src":"42470:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68815,"initialValue":{"id":68814,"name":"_timePassed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68803,"src":"42482:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42470:23:96"},{"assignments":[68817],"declarations":[{"constant":false,"id":68817,"mutability":"mutable","name":"atTWO_128","nameLocation":"42745:9:96","nodeType":"VariableDeclaration","scope":68857,"src":"42737:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68816,"name":"uint256","nodeType":"ElementaryTypeName","src":"42737:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68828,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68825,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68822,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68819,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"42763:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"42772:5:96","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":66322,"src":"42763:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68821,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42781:3:96","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"42763:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68823,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42762:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68824,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"42788:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42762:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":68826,"name":"t","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68813,"src":"42791:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68818,"name":"_pow","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69089,"src":"42757:4:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":68827,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42757:36:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"42737:56:96"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68855,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68852,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68849,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68829,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68817,"src":"42813:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68830,"name":"_lastConv","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68805,"src":"42825:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42813:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68832,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42812:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68847,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68835,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68833,"name":"_oldAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68807,"src":"42840:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68834,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"42853:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42840:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68838,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68836,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66579,"src":"42858:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":68837,"name":"atTWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68817,"src":"42868:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42858:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68839,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42857:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42840:38:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68841,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42839:40:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68845,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68842,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"42883:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68843,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"42887:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68844,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"42896:5:96","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":66322,"src":"42887:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42883:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68846,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42882:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42839:63:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68848,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42838:65:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42812:91:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68850,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42811:93:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":68851,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66582,"src":"42907:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"42811:103:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68853,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"42810:105:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":68854,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42931:3:96","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"42810:124:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68811,"id":68856,"nodeType":"Return","src":"42803:131:96"}]},"documentation":{"id":68801,"nodeType":"StructuredDocumentation","src":"41886:406:96","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":"42306:19:96","parameters":{"id":68808,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68803,"mutability":"mutable","name":"_timePassed","nameLocation":"42334:11:96","nodeType":"VariableDeclaration","scope":68858,"src":"42326:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68802,"name":"uint256","nodeType":"ElementaryTypeName","src":"42326:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68805,"mutability":"mutable","name":"_lastConv","nameLocation":"42355:9:96","nodeType":"VariableDeclaration","scope":68858,"src":"42347:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68804,"name":"uint256","nodeType":"ElementaryTypeName","src":"42347:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68807,"mutability":"mutable","name":"_oldAmount","nameLocation":"42374:10:96","nodeType":"VariableDeclaration","scope":68858,"src":"42366:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68806,"name":"uint256","nodeType":"ElementaryTypeName","src":"42366:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42325:60:96"},"returnParameters":{"id":68811,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68810,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68858,"src":"42447:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68809,"name":"uint256","nodeType":"ElementaryTypeName","src":"42447:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"42446:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68960,"nodeType":"FunctionDefinition","src":"43522:1006:96","nodes":[],"body":{"id":68959,"nodeType":"Block","src":"43625:903:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68868,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68866,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65573,"src":"43759:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"hexValue":"30","id":68867,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43773:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"43759:15:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68873,"nodeType":"IfStatement","src":"43755:66:96","trueBody":{"id":68872,"nodeType":"Block","src":"43776:45:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68869,"name":"PoolIsEmpty","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66385,"src":"43797:11:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":68870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43797:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68871,"nodeType":"RevertStatement","src":"43790:20:96"}]}},{"condition":{"arguments":[{"id":68875,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68861,"src":"43851:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68874,"name":"_isOverMaxRatio","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68340,"src":"43835:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_bool_$","typeString":"function (uint256) view returns (bool)"}},"id":68876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43835:33:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68881,"nodeType":"IfStatement","src":"43831:178:96","trueBody":{"id":68880,"nodeType":"Block","src":"43870:139:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":68877,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"43928:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":68878,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43928:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":68879,"nodeType":"ExpressionStatement","src":"43928:8:96"}]}},{"assignments":[68883],"declarations":[{"constant":false,"id":68883,"mutability":"mutable","name":"denom","nameLocation":"44027:5:96","nodeType":"VariableDeclaration","scope":68959,"src":"44019:13:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68882,"name":"uint256","nodeType":"ElementaryTypeName","src":"44019:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68902,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68901,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68892,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68889,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68884,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"44036:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68885,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44045:8:96","memberName":"maxRatio","nodeType":"MemberAccess","referencedDeclaration":66318,"src":"44036:17:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68888,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44056:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68887,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44061:2:96","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44056:7:96","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"44036:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68890,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44035:29:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68891,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"44067:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44035:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68900,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68897,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68893,"name":"_requestedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68861,"src":"44072:16:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"commonType":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"},"id":68896,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":68894,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44091:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"3634","id":68895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44096:2:96","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44091:7:96","typeDescriptions":{"typeIdentifier":"t_rational_18446744073709551616_by_1","typeString":"int_const 18446744073709551616"}},"src":"44072:26:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68898,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44071:28:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68899,"name":"poolAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65573,"src":"44102:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44071:41:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44035:77:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"44019:93:96"},{"expression":{"id":68937,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68903,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68864,"src":"44122:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68929,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68922,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68919,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68910,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68907,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68904,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"44154:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68905,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44163:6:96","memberName":"weight","nodeType":"MemberAccess","referencedDeclaration":66320,"src":"44154:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<<","rightExpression":{"hexValue":"313238","id":68906,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44173:3:96","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"44154:22:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68908,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44153:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"id":68909,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"44180:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44153:28:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68911,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44152:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68917,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68914,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68912,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"44187:5:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68913,"name":"denom","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68883,"src":"44195:5:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44187:13:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68915,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44186:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68916,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44205:2:96","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44186:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68918,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44185:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44152:56:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68920,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44151:58:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68921,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"44212:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44151:62:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68923,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44150:64:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68927,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68924,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"44218:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":68925,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"44222:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68926,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44231:5:96","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":66322,"src":"44222:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44218:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68928,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44217:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44150:87:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68930,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44149:89:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":68931,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69097,"src":"44257:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68932,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44257:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44149:136:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68934,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44135:160:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"3634","id":68935,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44299:2:96","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"},"src":"44135:166:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44122:179:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68938,"nodeType":"ExpressionStatement","src":"44122:179:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68942,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":68939,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69097,"src":"44316:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68940,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44316:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":68941,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44348:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"44316:33:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":68958,"nodeType":"IfStatement","src":"44312:210:96","trueBody":{"id":68957,"nodeType":"Block","src":"44351:171:96","statements":[{"assignments":[68944],"declarations":[{"constant":false,"id":68944,"mutability":"mutable","name":"thresholdOverride","nameLocation":"44373:17:96","nodeType":"VariableDeclaration","scope":68957,"src":"44365:25:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68943,"name":"uint256","nodeType":"ElementaryTypeName","src":"44365:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":68947,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":68945,"name":"calculateThresholdOverride","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68986,"src":"44393:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68946,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44393:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"44365:56:96"},{"expression":{"id":68955,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":68948,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68864,"src":"44435:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68951,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68949,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68864,"src":"44448:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":68950,"name":"thresholdOverride","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68944,"src":"44461:17:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44448:30:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseExpression":{"id":68953,"name":"thresholdOverride","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68944,"src":"44494:17:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"Conditional","src":"44448:63:96","trueExpression":{"id":68952,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68864,"src":"44481:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44435:76:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":68956,"nodeType":"ExpressionStatement","src":"44435:76:96"}]}}]},"documentation":{"id":68859,"nodeType":"StructuredDocumentation","src":"42947:570:96","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":"43531:18:96","parameters":{"id":68862,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68861,"mutability":"mutable","name":"_requestedAmount","nameLocation":"43558:16:96","nodeType":"VariableDeclaration","scope":68960,"src":"43550:24:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68860,"name":"uint256","nodeType":"ElementaryTypeName","src":"43550:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43549:26:96"},"returnParameters":{"id":68865,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68864,"mutability":"mutable","name":"_threshold","nameLocation":"43613:10:96","nodeType":"VariableDeclaration","scope":68960,"src":"43605:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68863,"name":"uint256","nodeType":"ElementaryTypeName","src":"43605:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"43604:20:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":68986,"nodeType":"FunctionDefinition","src":"44534:265:96","nodes":[],"body":{"id":68985,"nodeType":"Block","src":"44610:189:96","nodes":[],"statements":[{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68983,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68978,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68973,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":68965,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"44642:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":68966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"44651:18:96","memberName":"minThresholdPoints","nodeType":"MemberAccess","referencedDeclaration":66324,"src":"44642:27:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":68967,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"44672:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44642:31:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":68970,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69097,"src":"44693:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68971,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44693:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":68969,"name":"getMaxConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69409,"src":"44676:16:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256) view returns (uint256)"}},"id":68972,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44676:46:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44642:80:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68974,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44641:82:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"arguments":[],"expression":{"argumentTypes":[],"id":68975,"name":"totalEffectiveActivePoints","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69097,"src":"44743:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_uint256_$","typeString":"function () view returns (uint256)"}},"id":68976,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44743:28:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68977,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44742:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"44641:131:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":68979,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"44627:155:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"commonType":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"},"id":68982,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":68980,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44785:2:96","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"37","id":68981,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44791:1:96","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},"src":"44785:7:96","typeDescriptions":{"typeIdentifier":"t_rational_10000000_by_1","typeString":"int_const 10000000"}},"src":"44627:165:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68964,"id":68984,"nodeType":"Return","src":"44620:172:96"}]},"functionSelector":"d5cc68a6","implemented":true,"kind":"function","modifiers":[],"name":"calculateThresholdOverride","nameLocation":"44543:26:96","parameters":{"id":68961,"nodeType":"ParameterList","parameters":[],"src":"44569:2:96"},"returnParameters":{"id":68964,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68963,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":68986,"src":"44601:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68962,"name":"uint256","nodeType":"ElementaryTypeName","src":"44601:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"44600:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":69023,"nodeType":"FunctionDefinition","src":"45060:306:96","nodes":[],"body":{"id":69022,"nodeType":"Block","src":"45146:220:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":68998,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":68996,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68989,"src":"45160:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":68997,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66579,"src":"45165:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45160:12:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69003,"nodeType":"IfStatement","src":"45156:77:96","trueBody":{"id":69002,"nodeType":"Block","src":"45174:59:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":68999,"name":"AShouldBeUnderOrEqTwo_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66435,"src":"45195:25:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69000,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45195:27:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69001,"nodeType":"RevertStatement","src":"45188:34:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69006,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69004,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68991,"src":"45246:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":69005,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66579,"src":"45251:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45246:12:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69011,"nodeType":"IfStatement","src":"45242:72:96","trueBody":{"id":69010,"nodeType":"Block","src":"45260:54:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69007,"name":"BShouldBeLessTwo_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66433,"src":"45281:20:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69008,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45281:22:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69009,"nodeType":"RevertStatement","src":"45274:29:96"}]}},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69020,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69014,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69012,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68989,"src":"45333:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":69013,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68991,"src":"45338:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45333:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":69015,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"45332:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":69016,"name":"TWO_127","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66582,"src":"45344:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45332:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":69018,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"45331:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"313238","id":69019,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45356:3:96","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"},"src":"45331:28:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":68995,"id":69021,"nodeType":"Return","src":"45324:35:96"}]},"documentation":{"id":68987,"nodeType":"StructuredDocumentation","src":"44805:250:96","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":"45069:4:96","parameters":{"id":68992,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68989,"mutability":"mutable","name":"_a","nameLocation":"45082:2:96","nodeType":"VariableDeclaration","scope":69023,"src":"45074:10:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68988,"name":"uint256","nodeType":"ElementaryTypeName","src":"45074:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":68991,"mutability":"mutable","name":"_b","nameLocation":"45094:2:96","nodeType":"VariableDeclaration","scope":69023,"src":"45086:10:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68990,"name":"uint256","nodeType":"ElementaryTypeName","src":"45086:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45073:24:96"},"returnParameters":{"id":68995,"nodeType":"ParameterList","parameters":[{"constant":false,"id":68994,"mutability":"mutable","name":"_result","nameLocation":"45137:7:96","nodeType":"VariableDeclaration","scope":69023,"src":"45129:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":68993,"name":"uint256","nodeType":"ElementaryTypeName","src":"45129:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45128:17:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":69089,"nodeType":"FunctionDefinition","src":"45588:476:96","nodes":[],"body":{"id":69088,"nodeType":"Block","src":"45674:390:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69035,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69033,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69026,"src":"45688:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":69034,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66579,"src":"45694:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45688:13:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69040,"nodeType":"IfStatement","src":"45684:74:96","trueBody":{"id":69039,"nodeType":"Block","src":"45703:55:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69036,"name":"AShouldBeUnderTwo_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66431,"src":"45724:21:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69037,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45724:23:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69038,"nodeType":"RevertStatement","src":"45717:30:96"}]}},{"assignments":[69042],"declarations":[{"constant":false,"id":69042,"mutability":"mutable","name":"a","nameLocation":"45776:1:96","nodeType":"VariableDeclaration","scope":69088,"src":"45768:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69041,"name":"uint256","nodeType":"ElementaryTypeName","src":"45768:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69044,"initialValue":{"id":69043,"name":"_a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69026,"src":"45780:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"45768:14:96"},{"assignments":[69046],"declarations":[{"constant":false,"id":69046,"mutability":"mutable","name":"b","nameLocation":"45800:1:96","nodeType":"VariableDeclaration","scope":69088,"src":"45792:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69045,"name":"uint256","nodeType":"ElementaryTypeName","src":"45792:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69048,"initialValue":{"id":69047,"name":"_b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69028,"src":"45804:2:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"45792:14:96"},{"expression":{"id":69051,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69049,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69031,"src":"45816:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69050,"name":"TWO_128","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66579,"src":"45826:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45816:17:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69052,"nodeType":"ExpressionStatement","src":"45816:17:96"},{"body":{"id":69086,"nodeType":"Block","src":"45857:201:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69060,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69058,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69056,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69046,"src":"45875:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"31","id":69057,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45879:1:96","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"45875:5:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":69059,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45884:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"45875:10:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":69084,"nodeType":"Block","src":"45965:83:96","statements":[{"expression":{"id":69078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69073,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69031,"src":"45983:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":69075,"name":"_result","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69031,"src":"45998:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69076,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69042,"src":"46007:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69074,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69023,"src":"45993:4:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":69077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45993:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45983:26:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69079,"nodeType":"ExpressionStatement","src":"45983:26:96"},{"expression":{"id":69082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69080,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69046,"src":"46027:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":69081,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"46032:1:96","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"46027:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69083,"nodeType":"ExpressionStatement","src":"46027:6:96"}]},"id":69085,"nodeType":"IfStatement","src":"45871:177:96","trueBody":{"id":69072,"nodeType":"Block","src":"45887:72:96","statements":[{"expression":{"id":69066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69061,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69042,"src":"45905:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":69063,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69042,"src":"45914:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69064,"name":"a","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69042,"src":"45917:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69062,"name":"_mul","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69023,"src":"45909:4:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256) pure returns (uint256)"}},"id":69065,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45909:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"45905:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69067,"nodeType":"ExpressionStatement","src":"45905:14:96"},{"expression":{"id":69070,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69068,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69046,"src":"45937:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":">>=","rightHandSide":{"hexValue":"31","id":69069,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45943:1:96","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"45937:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69071,"nodeType":"ExpressionStatement","src":"45937:7:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69055,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69053,"name":"b","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69046,"src":"45850:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":69054,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45854:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"45850:5:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69087,"nodeType":"WhileStatement","src":"45843:215:96"}]},"documentation":{"id":69024,"nodeType":"StructuredDocumentation","src":"45372:211:96","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":"45597:4:96","parameters":{"id":69029,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69026,"mutability":"mutable","name":"_a","nameLocation":"45610:2:96","nodeType":"VariableDeclaration","scope":69089,"src":"45602:10:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69025,"name":"uint256","nodeType":"ElementaryTypeName","src":"45602:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69028,"mutability":"mutable","name":"_b","nameLocation":"45622:2:96","nodeType":"VariableDeclaration","scope":69089,"src":"45614:10:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69027,"name":"uint256","nodeType":"ElementaryTypeName","src":"45614:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45601:24:96"},"returnParameters":{"id":69032,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69031,"mutability":"mutable","name":"_result","nameLocation":"45665:7:96","nodeType":"VariableDeclaration","scope":69089,"src":"45657:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69030,"name":"uint256","nodeType":"ElementaryTypeName","src":"45657:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"45656:17:96"},"scope":70249,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":69097,"nodeType":"FunctionDefinition","src":"46070:120:96","nodes":[],"body":{"id":69096,"nodeType":"Block","src":"46146:44:96","nodes":[],"statements":[{"expression":{"id":69094,"name":"totalPointsActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66610,"src":"46163:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":69093,"id":69095,"nodeType":"Return","src":"46156:27:96"}]},"functionSelector":"d1e36232","implemented":true,"kind":"function","modifiers":[],"name":"totalEffectiveActivePoints","nameLocation":"46079:26:96","parameters":{"id":69090,"nodeType":"ParameterList","parameters":[],"src":"46105:2:96"},"returnParameters":{"id":69093,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69092,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69097,"src":"46137:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69091,"name":"uint256","nodeType":"ElementaryTypeName","src":"46137:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46136:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":69138,"nodeType":"FunctionDefinition","src":"46380:389:96","nodes":[],"body":{"id":69137,"nodeType":"Block","src":"46481:288:96","nodes":[],"statements":[{"assignments":[69107,69109],"declarations":[{"constant":false,"id":69107,"mutability":"mutable","name":"conviction","nameLocation":"46500:10:96","nodeType":"VariableDeclaration","scope":69137,"src":"46492:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69106,"name":"uint256","nodeType":"ElementaryTypeName","src":"46492:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69109,"mutability":"mutable","name":"blockNumber","nameLocation":"46520:11:96","nodeType":"VariableDeclaration","scope":69137,"src":"46512:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69108,"name":"uint256","nodeType":"ElementaryTypeName","src":"46512:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69114,"initialValue":{"arguments":[{"id":69111,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69101,"src":"46569:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},{"id":69112,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69103,"src":"46580:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69110,"name":"_checkBlockAndCalculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69185,"src":"46535:33:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_struct$_Proposal_$66294_storage_ptr_$_t_uint256_$returns$_t_uint256_$_t_uint256_$","typeString":"function (struct Proposal storage pointer,uint256) view returns (uint256,uint256)"}},"id":69113,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46535:56:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_uint256_$","typeString":"tuple(uint256,uint256)"}},"nodeType":"VariableDeclarationStatement","src":"46491:100:96"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69121,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69115,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69107,"src":"46605:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":69116,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"46619:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"46605:15:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69118,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69109,"src":"46624:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":69119,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"46639:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"46624:16:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"46605:35:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69124,"nodeType":"IfStatement","src":"46601:72:96","trueBody":{"id":69123,"nodeType":"Block","src":"46642:31:96","statements":[{"functionReturnParameters":69105,"id":69122,"nodeType":"Return","src":"46656:7:96"}]}},{"expression":{"id":69129,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69125,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69101,"src":"46682:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69127,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"46692:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"46682:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69128,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69109,"src":"46704:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46682:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69130,"nodeType":"ExpressionStatement","src":"46682:33:96"},{"expression":{"id":69135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69131,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69101,"src":"46725:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69133,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"46735:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"46725:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69134,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69107,"src":"46752:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46725:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69136,"nodeType":"ExpressionStatement","src":"46725:37:96"}]},"documentation":{"id":69098,"nodeType":"StructuredDocumentation","src":"46196:179:96","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":"46389:26:96","parameters":{"id":69104,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69101,"mutability":"mutable","name":"_proposal","nameLocation":"46433:9:96","nodeType":"VariableDeclaration","scope":69138,"src":"46416:26:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69100,"nodeType":"UserDefinedTypeName","pathNode":{"id":69099,"name":"Proposal","nameLocations":["46416:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"46416:8:96"},"referencedDeclaration":66294,"src":"46416:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":69103,"mutability":"mutable","name":"_oldStaked","nameLocation":"46452:10:96","nodeType":"VariableDeclaration","scope":69138,"src":"46444:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69102,"name":"uint256","nodeType":"ElementaryTypeName","src":"46444:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46415:48:96"},"returnParameters":{"id":69105,"nodeType":"ParameterList","parameters":[],"src":"46481:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69185,"nodeType":"FunctionDefinition","src":"46775:720:96","nodes":[],"body":{"id":69184,"nodeType":"Block","src":"46974:521:96","nodes":[],"statements":[{"expression":{"id":69153,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69150,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69148,"src":"46984:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69151,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"46998:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69152,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"47004:6:96","memberName":"number","nodeType":"MemberAccess","src":"46998:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"46984:26:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69154,"nodeType":"ExpressionStatement","src":"46984:26:96"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69156,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69141,"src":"47027:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69157,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47037:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"47027:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<=","rightExpression":{"id":69158,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69148,"src":"47050:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47027:34:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":69155,"name":"assert","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-3,"src":"47020:6:96","typeDescriptions":{"typeIdentifier":"t_function_assert_pure$_t_bool_$returns$__$","typeString":"function (bool) pure"}},"id":69160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47020:42:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69161,"nodeType":"ExpressionStatement","src":"47020:42:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69162,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69141,"src":"47076:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69163,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47086:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"47076:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":69164,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69148,"src":"47099:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47076:34:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69171,"nodeType":"IfStatement","src":"47072:173:96","trueBody":{"id":69170,"nodeType":"Block","src":"47112:133:96","statements":[{"expression":{"components":[{"hexValue":"30","id":69166,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47200:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"hexValue":"30","id":69167,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47203:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"id":69168,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"47199:6:96","typeDescriptions":{"typeIdentifier":"t_tuple$_t_rational_0_by_1_$_t_rational_0_by_1_$","typeString":"tuple(int_const 0,int_const 0)"}},"functionReturnParameters":69149,"id":69169,"nodeType":"Return","src":"47192:13:96"}]}},{"expression":{"id":69182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69172,"name":"conviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69146,"src":"47298:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69177,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69174,"name":"blockNumber","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69148,"src":"47344:11:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":69175,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69141,"src":"47358:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69176,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47368:9:96","memberName":"blockLast","nodeType":"MemberAccess","referencedDeclaration":66276,"src":"47358:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47344:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69178,"name":"_proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69141,"src":"47430:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69179,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47440:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"47430:24:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69180,"name":"_oldStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69143,"src":"47468:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69173,"name":"calculateConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":68858,"src":"47311:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$","typeString":"function (uint256,uint256,uint256) view returns (uint256)"}},"id":69181,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47311:177:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"47298:190:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69183,"nodeType":"ExpressionStatement","src":"47298:190:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_checkBlockAndCalculateConviction","nameLocation":"46784:33:96","parameters":{"id":69144,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69141,"mutability":"mutable","name":"_proposal","nameLocation":"46835:9:96","nodeType":"VariableDeclaration","scope":69185,"src":"46818:26:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69140,"nodeType":"UserDefinedTypeName","pathNode":{"id":69139,"name":"Proposal","nameLocations":["46818:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"46818:8:96"},"referencedDeclaration":66294,"src":"46818:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"},{"constant":false,"id":69143,"mutability":"mutable","name":"_oldStaked","nameLocation":"46854:10:96","nodeType":"VariableDeclaration","scope":69185,"src":"46846:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69142,"name":"uint256","nodeType":"ElementaryTypeName","src":"46846:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46817:48:96"},"returnParameters":{"id":69149,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69146,"mutability":"mutable","name":"conviction","nameLocation":"46937:10:96","nodeType":"VariableDeclaration","scope":69185,"src":"46929:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69145,"name":"uint256","nodeType":"ElementaryTypeName","src":"46929:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69148,"mutability":"mutable","name":"blockNumber","nameLocation":"46957:11:96","nodeType":"VariableDeclaration","scope":69185,"src":"46949:19:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69147,"name":"uint256","nodeType":"ElementaryTypeName","src":"46949:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"46928:41:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":69203,"nodeType":"FunctionDefinition","src":"47501:198:96","nodes":[],"body":{"id":69202,"nodeType":"Block","src":"47611:88:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69194,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66928,"src":"47621:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69195,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47621:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69196,"nodeType":"ExpressionStatement","src":"47621:17:96"},{"expression":{"arguments":[{"id":69198,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69188,"src":"47663:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69199,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69191,"src":"47682:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}],"id":69197,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69355,69496,69534],"referencedDeclaration":69355,"src":"47648:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_struct$_CVParams_$66325_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":69200,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47648:44:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69201,"nodeType":"ExpressionStatement","src":"47648:44:96"}]},"functionSelector":"062f9ece","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"47510:13:96","parameters":{"id":69192,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69188,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47548:17:96","nodeType":"VariableDeclaration","scope":69203,"src":"47524:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69187,"nodeType":"UserDefinedTypeName","pathNode":{"id":69186,"name":"ArbitrableConfig","nameLocations":["47524:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"47524:16:96"},"referencedDeclaration":66316,"src":"47524:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69191,"mutability":"mutable","name":"_cvParams","nameLocation":"47583:9:96","nodeType":"VariableDeclaration","scope":69203,"src":"47567:25:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69190,"nodeType":"UserDefinedTypeName","pathNode":{"id":69189,"name":"CVParams","nameLocations":["47567:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"47567:8:96"},"referencedDeclaration":66325,"src":"47567:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47523:70:96"},"returnParameters":{"id":69193,"nodeType":"ParameterList","parameters":[],"src":"47611:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69355,"nodeType":"FunctionDefinition","src":"47705:2357:96","nodes":[],"body":{"id":69354,"nodeType":"Block","src":"47816:2246:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69278,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69229,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69218,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69212,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"47843:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69213,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47861:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"47843:30:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":69216,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47885:1:96","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":69215,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"47877:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69214,"name":"address","nodeType":"ElementaryTypeName","src":"47877:7:96","typeDescriptions":{}}},"id":69217,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47877:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"47843:44:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69228,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":69221,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"47899:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69222,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"47917:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"47899:28:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}],"id":69220,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"47891:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69219,"name":"address","nodeType":"ElementaryTypeName","src":"47891:7:96","typeDescriptions":{}}},"id":69223,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47891:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":69226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"47940:1:96","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":69225,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"47932:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69224,"name":"address","nodeType":"ElementaryTypeName","src":"47932:7:96","typeDescriptions":{}}},"id":69227,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"47932:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"47891:51:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47843:99:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69276,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69260,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69252,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69236,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69230,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"47984:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69231,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48002:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"47984:30:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":69232,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48018:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69234,"indexExpression":{"id":69233,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48036:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48018:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69235,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48068:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"48018:62:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"47984:96:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"},"id":69243,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69237,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"48108:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69238,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48126:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"48108:28:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":69239,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48140:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69241,"indexExpression":{"id":69240,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48158:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48140:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69242,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48190:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"48140:60:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"src":"48108:92:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47984:216:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69251,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69245,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"48228:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69246,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48246:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"48228:43:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":69247,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48303:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69249,"indexExpression":{"id":69248,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48321:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48303:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69250,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48353:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"48303:75:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48228:150:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47984:394:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69259,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69253,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"48406:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69254,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48424:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"48406:44:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":69255,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48482:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69257,"indexExpression":{"id":69256,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48500:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48482:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69258,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48532:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"48482:76:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48406:152:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47984:574:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69267,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69261,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"48586:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69262,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48604:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"48586:31:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":69263,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48621:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69265,"indexExpression":{"id":69264,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48639:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48621:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69266,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48671:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"48621:63:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48586:98:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47984:700:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69275,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69269,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"48712:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69270,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48730:20:96","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":66315,"src":"48712:38:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"baseExpression":{"id":69271,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48782:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69273,"indexExpression":{"id":69272,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48800:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48782:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69274,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48832:20:96","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":66315,"src":"48782:70:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"48712:140:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47984:868:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":69277,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"47962:908:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"47843:1027:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69345,"nodeType":"IfStatement","src":"47826:2158:96","trueBody":{"id":69344,"nodeType":"Block","src":"48881:1103:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69293,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69279,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"48916:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69281,"indexExpression":{"id":69280,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"48934:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"48916:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69282,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"48966:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"48916:62:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69283,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"48982:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69284,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49000:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"48982:30:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"48916:96:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"},"id":69292,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69286,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"49036:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69288,"indexExpression":{"id":69287,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"49054:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"49036:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69289,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49086:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"49036:60:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69290,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49100:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69291,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49118:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"49100:28:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"src":"49036:92:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"48916:212:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69318,"nodeType":"IfStatement","src":"48895:522:96","trueBody":{"id":69317,"nodeType":"Block","src":"49143:274:96","statements":[{"expression":{"arguments":[{"expression":{"id":69299,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49203:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69300,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49221:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"49203:30:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"expression":{"id":69294,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49161:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69297,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49179:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"49161:28:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"id":69298,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"49190:12:96","memberName":"registerSafe","nodeType":"MemberAccess","referencedDeclaration":76948,"src":"49161:41:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":69301,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49161:73:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69302,"nodeType":"ExpressionStatement","src":"49161:73:96"},{"eventCall":{"arguments":[{"arguments":[{"id":69306,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"49308:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":69305,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"49300:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69304,"name":"address","nodeType":"ElementaryTypeName","src":"49300:7:96","typeDescriptions":{}}},"id":69307,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49300:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"id":69310,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49323:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69311,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49341:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"49323:28:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}],"id":69309,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"49315:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69308,"name":"address","nodeType":"ElementaryTypeName","src":"49315:7:96","typeDescriptions":{}}},"id":69312,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49315:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69313,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49354:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69314,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49372:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"49354:30:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":69303,"name":"TribunaSafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66531,"src":"49257:21:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function (address,address,address)"}},"id":69315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49257:145:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69316,"nodeType":"EmitStatement","src":"49252:150:96"}]}},{"expression":{"id":69320,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"49431:32:96","subExpression":{"id":69319,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"49431:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69321,"nodeType":"ExpressionStatement","src":"49431:32:96"},{"expression":{"id":69326,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":69322,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"49477:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69324,"indexExpression":{"id":69323,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"49495:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"49477:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69325,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49529:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"src":"49477:69:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69327,"nodeType":"ExpressionStatement","src":"49477:69:96"},{"eventCall":{"arguments":[{"id":69329,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"49607:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69330,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49655:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69331,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49673:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"49655:28:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},{"expression":{"id":69332,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49701:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69333,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49719:12:96","memberName":"tribunalSafe","nodeType":"MemberAccess","referencedDeclaration":66307,"src":"49701:30:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69334,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49749:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69335,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49767:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"49749:43:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69336,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49810:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69337,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49828:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"49810:44:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69338,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49872:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69339,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49890:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"49872:31:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69340,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69206,"src":"49921:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69341,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"49939:20:96","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":66315,"src":"49921:38:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrator_$76949","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":69328,"name":"ArbitrableConfigUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66552,"src":"49566:23:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrator_$76949_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,contract IArbitrator,address,uint256,uint256,uint256,uint256)"}},"id":69342,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"49566:407:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69343,"nodeType":"EmitStatement","src":"49561:412:96"}]}},{"expression":{"id":69348,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69346,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"49994:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69347,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69209,"src":"50005:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}},"src":"49994:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":69349,"nodeType":"ExpressionStatement","src":"49994:20:96"},{"eventCall":{"arguments":[{"id":69351,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69209,"src":"50045:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}],"id":69350,"name":"CVParamsUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66504,"src":"50029:15:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_struct$_CVParams_$66325_memory_ptr_$returns$__$","typeString":"function (struct CVParams memory)"}},"id":69352,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50029:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69353,"nodeType":"EmitStatement","src":"50024:31:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"47714:14:96","parameters":{"id":69210,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69206,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"47753:17:96","nodeType":"VariableDeclaration","scope":69355,"src":"47729:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69205,"nodeType":"UserDefinedTypeName","pathNode":{"id":69204,"name":"ArbitrableConfig","nameLocations":["47729:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"47729:16:96"},"referencedDeclaration":66316,"src":"47729:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69209,"mutability":"mutable","name":"_cvParams","nameLocation":"47788:9:96","nodeType":"VariableDeclaration","scope":69355,"src":"47772:25:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69208,"nodeType":"UserDefinedTypeName","pathNode":{"id":69207,"name":"CVParams","nameLocations":["47772:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"47772:8:96"},"referencedDeclaration":66325,"src":"47772:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"}],"src":"47728:70:96"},"returnParameters":{"id":69211,"nodeType":"ParameterList","parameters":[],"src":"47816:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69389,"nodeType":"FunctionDefinition","src":"50068:609:96","nodes":[],"body":{"id":69388,"nodeType":"Block","src":"50155:522:96","nodes":[],"statements":[{"assignments":[69364],"declarations":[{"constant":false,"id":69364,"mutability":"mutable","name":"proposal","nameLocation":"50182:8:96","nodeType":"VariableDeclaration","scope":69388,"src":"50165:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69363,"nodeType":"UserDefinedTypeName","pathNode":{"id":69362,"name":"Proposal","nameLocations":["50165:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"50165:8:96"},"referencedDeclaration":66294,"src":"50165:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":69368,"initialValue":{"baseExpression":{"id":69365,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"50193:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69367,"indexExpression":{"id":69366,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69357,"src":"50203:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"50193:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"50165:49:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69372,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69369,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69364,"src":"50229:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69370,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50238:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"50229:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":69371,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69357,"src":"50252:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50229:33:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69378,"nodeType":"IfStatement","src":"50225:100:96","trueBody":{"id":69377,"nodeType":"Block","src":"50264:61:96","statements":[{"errorCall":{"arguments":[{"id":69374,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69357,"src":"50303:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69373,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66401,"src":"50285:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69375,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50285:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69376,"nodeType":"RevertStatement","src":"50278:36:96"}]}},{"expression":{"arguments":[{"id":69380,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69364,"src":"50598:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},{"expression":{"id":69381,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69364,"src":"50608:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69382,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50617:12:96","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":66266,"src":"50608:21:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69379,"name":"_calculateAndSetConviction","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69138,"src":"50571:26:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_Proposal_$66294_storage_ptr_$_t_uint256_$returns$__$","typeString":"function (struct Proposal storage pointer,uint256)"}},"id":69383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"50571:59:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69384,"nodeType":"ExpressionStatement","src":"50571:59:96"},{"expression":{"expression":{"id":69385,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69364,"src":"50647:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69386,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50656:14:96","memberName":"convictionLast","nodeType":"MemberAccess","referencedDeclaration":66268,"src":"50647:23:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":69361,"id":69387,"nodeType":"Return","src":"50640:30:96"}]},"functionSelector":"1aa91a9e","implemented":true,"kind":"function","modifiers":[],"name":"updateProposalConviction","nameLocation":"50077:24:96","parameters":{"id":69358,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69357,"mutability":"mutable","name":"proposalId","nameLocation":"50110:10:96","nodeType":"VariableDeclaration","scope":69389,"src":"50102:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69356,"name":"uint256","nodeType":"ElementaryTypeName","src":"50102:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50101:20:96"},"returnParameters":{"id":69361,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69360,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69389,"src":"50146:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69359,"name":"uint256","nodeType":"ElementaryTypeName","src":"50146:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50145:9:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":69409,"nodeType":"FunctionDefinition","src":"50683:141:96","nodes":[],"body":{"id":69408,"nodeType":"Block","src":"50763:61:96","nodes":[],"statements":[{"expression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69405,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69398,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69396,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69391,"src":"50782:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":69397,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"50791:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50782:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":69399,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"50781:12:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69400,"name":"D","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66576,"src":"50797:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":69401,"name":"cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66613,"src":"50801:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage","typeString":"struct CVParams storage ref"}},"id":69402,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"50810:5:96","memberName":"decay","nodeType":"MemberAccess","referencedDeclaration":66322,"src":"50801:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50797:18:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":69404,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"50796:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"50781:35:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":69406,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"50780:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":69395,"id":69407,"nodeType":"Return","src":"50773:44:96"}]},"functionSelector":"950559d7","implemented":true,"kind":"function","modifiers":[],"name":"getMaxConviction","nameLocation":"50692:16:96","parameters":{"id":69392,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69391,"mutability":"mutable","name":"amount","nameLocation":"50717:6:96","nodeType":"VariableDeclaration","scope":69409,"src":"50709:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69390,"name":"uint256","nodeType":"ElementaryTypeName","src":"50709:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50708:16:96"},"returnParameters":{"id":69395,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69394,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69409,"src":"50754:7:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69393,"name":"uint256","nodeType":"ElementaryTypeName","src":"50754:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"50753:9:96"},"scope":70249,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":69455,"nodeType":"FunctionDefinition","src":"51175:414:96","nodes":[],"body":{"id":69454,"nodeType":"Block","src":"51257:332:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69430,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69416,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"51271:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69417,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51275:6:96","memberName":"sender","nodeType":"MemberAccess","src":"51271:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":69420,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"51293:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":69421,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51311:11:96","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71620,"src":"51293:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$77075_$","typeString":"function () view external returns (contract ISafe)"}},"id":69422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51293:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":69419,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"51285:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69418,"name":"address","nodeType":"ElementaryTypeName","src":"51285:7:96","typeDescriptions":{}}},"id":69423,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51285:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"51271:54:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69429,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69425,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"51329:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69426,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51333:6:96","memberName":"sender","nodeType":"MemberAccess","src":"51329:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":69427,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[71159],"referencedDeclaration":71159,"src":"51343:5:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":69428,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51343:7:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"51329:21:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"51271:79:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69435,"nodeType":"IfStatement","src":"51267:134:96","trueBody":{"id":69434,"nodeType":"Block","src":"51352:49:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69431,"name":"OnlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66413,"src":"51373:15:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69432,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51373:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69433,"nodeType":"RevertStatement","src":"51366:24:96"}]}},{"expression":{"arguments":[{"id":69437,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69411,"src":"51429:12:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69436,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66910,"src":"51410:18:96","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":69438,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51410:32:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69439,"nodeType":"ExpressionStatement","src":"51410:32:96"},{"expression":{"id":69444,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69440,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"51452:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":69442,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69411,"src":"51479:12:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69441,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70608,"src":"51466:12:96","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISybilScorer_$70608_$","typeString":"type(contract ISybilScorer)"}},"id":69443,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51466:26:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"src":"51452:40:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"id":69445,"nodeType":"ExpressionStatement","src":"51452:40:96"},{"expression":{"arguments":[{"id":69447,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69413,"src":"51525:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69446,"name":"_registerToSybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70244,"src":"51502:22:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":69448,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51502:33:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69449,"nodeType":"ExpressionStatement","src":"51502:33:96"},{"eventCall":{"arguments":[{"id":69451,"name":"_sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69411,"src":"51569:12:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69450,"name":"SybilScorerUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66570,"src":"51550:18:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":69452,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51550:32:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69453,"nodeType":"EmitStatement","src":"51545:37:96"}]},"functionSelector":"3864d366","implemented":true,"kind":"function","modifiers":[],"name":"setSybilScorer","nameLocation":"51184:14:96","parameters":{"id":69414,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69411,"mutability":"mutable","name":"_sybilScorer","nameLocation":"51207:12:96","nodeType":"VariableDeclaration","scope":69455,"src":"51199:20:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69410,"name":"address","nodeType":"ElementaryTypeName","src":"51199:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69413,"mutability":"mutable","name":"threshold","nameLocation":"51229:9:96","nodeType":"VariableDeclaration","scope":69455,"src":"51221:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69412,"name":"uint256","nodeType":"ElementaryTypeName","src":"51221:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"51198:41:96"},"returnParameters":{"id":69415,"nodeType":"ParameterList","parameters":[],"src":"51257:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69496,"nodeType":"FunctionDefinition","src":"51595:470:96","nodes":[],"body":{"id":69495,"nodeType":"Block","src":"51809:256:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":69471,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69458,"src":"51834:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69472,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69461,"src":"51853:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}],"id":69470,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69355,69496,69534],"referencedDeclaration":69355,"src":"51819:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_struct$_CVParams_$66325_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":69473,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51819:44:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69474,"nodeType":"ExpressionStatement","src":"51819:44:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69478,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69475,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69464,"src":"51877:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51890:6:96","memberName":"length","nodeType":"MemberAccess","src":"51877:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":69477,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51899:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51877:23:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69484,"nodeType":"IfStatement","src":"51873:83:96","trueBody":{"id":69483,"nodeType":"Block","src":"51902:54:96","statements":[{"expression":{"arguments":[{"id":69480,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69464,"src":"51932:12:96","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":69479,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70153,"src":"51916:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69481,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"51916:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69482,"nodeType":"ExpressionStatement","src":"51916:29:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69488,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69485,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69467,"src":"51969:15:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":69486,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"51985:6:96","memberName":"length","nodeType":"MemberAccess","src":"51969:22:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":69487,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"51994:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"51969:26:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69494,"nodeType":"IfStatement","src":"51965:94:96","trueBody":{"id":69493,"nodeType":"Block","src":"51997:62:96","statements":[{"expression":{"arguments":[{"id":69490,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69467,"src":"52032:15:96","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":69489,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70222,"src":"52011:20:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":69491,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52011:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69492,"nodeType":"ExpressionStatement","src":"52011:37:96"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"51604:14:96","parameters":{"id":69468,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69458,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"51652:17:96","nodeType":"VariableDeclaration","scope":69496,"src":"51628:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69457,"nodeType":"UserDefinedTypeName","pathNode":{"id":69456,"name":"ArbitrableConfig","nameLocations":["51628:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"51628:16:96"},"referencedDeclaration":66316,"src":"51628:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69461,"mutability":"mutable","name":"_cvParams","nameLocation":"51695:9:96","nodeType":"VariableDeclaration","scope":69496,"src":"51679:25:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69460,"nodeType":"UserDefinedTypeName","pathNode":{"id":69459,"name":"CVParams","nameLocations":["51679:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"51679:8:96"},"referencedDeclaration":66325,"src":"51679:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69464,"mutability":"mutable","name":"membersToAdd","nameLocation":"51731:12:96","nodeType":"VariableDeclaration","scope":69496,"src":"51714:29:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69462,"name":"address","nodeType":"ElementaryTypeName","src":"51714:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69463,"nodeType":"ArrayTypeName","src":"51714:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":69467,"mutability":"mutable","name":"membersToRemove","nameLocation":"51770:15:96","nodeType":"VariableDeclaration","scope":69496,"src":"51753:32:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69465,"name":"address","nodeType":"ElementaryTypeName","src":"51753:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69466,"nodeType":"ArrayTypeName","src":"51753:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"51618:173:96"},"returnParameters":{"id":69469,"nodeType":"ParameterList","parameters":[],"src":"51809:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69534,"nodeType":"FunctionDefinition","src":"52071:368:96","nodes":[],"body":{"id":69533,"nodeType":"Block","src":"52241:198:96","nodes":[],"statements":[{"expression":{"arguments":[{"id":69508,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69499,"src":"52266:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69509,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69502,"src":"52285:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}],"id":69507,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69355,69496,69534],"referencedDeclaration":69355,"src":"52251:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_struct$_CVParams_$66325_memory_ptr_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory)"}},"id":69510,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52251:44:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69511,"nodeType":"ExpressionStatement","src":"52251:44:96"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69520,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":69514,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"52317:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}],"id":69513,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52309:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69512,"name":"address","nodeType":"ElementaryTypeName","src":"52309:7:96","typeDescriptions":{}}},"id":69515,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52309:20:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":69518,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"52341:1:96","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":69517,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52333:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69516,"name":"address","nodeType":"ElementaryTypeName","src":"52333:7:96","typeDescriptions":{}}},"id":69519,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52333:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"52309:34:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69532,"nodeType":"IfStatement","src":"52305:128:96","trueBody":{"id":69531,"nodeType":"Block","src":"52345:88:96","statements":[{"expression":{"arguments":[{"arguments":[{"id":69526,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"52395:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":69525,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"52387:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69524,"name":"address","nodeType":"ElementaryTypeName","src":"52387:7:96","typeDescriptions":{}}},"id":69527,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52387:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":69528,"name":"sybilScoreThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69504,"src":"52402:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":69521,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"52359:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"id":69523,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"52371:15:96","memberName":"modifyThreshold","nodeType":"MemberAccess","referencedDeclaration":70588,"src":"52359:27:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256) external"}},"id":69529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52359:63:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69530,"nodeType":"ExpressionStatement","src":"52359:63:96"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_setPoolParams","nameLocation":"52080:14:96","parameters":{"id":69505,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69499,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"52128:17:96","nodeType":"VariableDeclaration","scope":69534,"src":"52104:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69498,"nodeType":"UserDefinedTypeName","pathNode":{"id":69497,"name":"ArbitrableConfig","nameLocations":["52104:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"52104:16:96"},"referencedDeclaration":66316,"src":"52104:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69502,"mutability":"mutable","name":"_cvParams","nameLocation":"52171:9:96","nodeType":"VariableDeclaration","scope":69534,"src":"52155:25:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69501,"nodeType":"UserDefinedTypeName","pathNode":{"id":69500,"name":"CVParams","nameLocations":["52155:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"52155:8:96"},"referencedDeclaration":66325,"src":"52155:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69504,"mutability":"mutable","name":"sybilScoreThreshold","nameLocation":"52198:19:96","nodeType":"VariableDeclaration","scope":69534,"src":"52190:27:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69503,"name":"uint256","nodeType":"ElementaryTypeName","src":"52190:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"52094:129:96"},"returnParameters":{"id":69506,"nodeType":"ParameterList","parameters":[],"src":"52241:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":69560,"nodeType":"FunctionDefinition","src":"52445:332:96","nodes":[],"body":{"id":69559,"nodeType":"Block","src":"52658:119:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69549,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66928,"src":"52668:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69550,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52668:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69551,"nodeType":"ExpressionStatement","src":"52668:17:96"},{"expression":{"arguments":[{"id":69553,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69537,"src":"52710:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69554,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69540,"src":"52729:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}},{"id":69555,"name":"membersToAdd","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69543,"src":"52740:12:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},{"id":69556,"name":"membersToRemove","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69546,"src":"52754:15:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$66325_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":69552,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69355,69496,69534],"referencedDeclaration":69496,"src":"52695:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_struct$_CVParams_$66325_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":69557,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52695:75:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69558,"nodeType":"ExpressionStatement","src":"52695:75:96"}]},"functionSelector":"948e7a59","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"52454:13:96","parameters":{"id":69547,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69537,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"52501:17:96","nodeType":"VariableDeclaration","scope":69560,"src":"52477:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69536,"nodeType":"UserDefinedTypeName","pathNode":{"id":69535,"name":"ArbitrableConfig","nameLocations":["52477:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"52477:16:96"},"referencedDeclaration":66316,"src":"52477:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69540,"mutability":"mutable","name":"_cvParams","nameLocation":"52544:9:96","nodeType":"VariableDeclaration","scope":69560,"src":"52528:25:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69539,"nodeType":"UserDefinedTypeName","pathNode":{"id":69538,"name":"CVParams","nameLocations":["52528:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"52528:8:96"},"referencedDeclaration":66325,"src":"52528:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69543,"mutability":"mutable","name":"membersToAdd","nameLocation":"52580:12:96","nodeType":"VariableDeclaration","scope":69560,"src":"52563:29:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69541,"name":"address","nodeType":"ElementaryTypeName","src":"52563:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69542,"nodeType":"ArrayTypeName","src":"52563:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":69546,"mutability":"mutable","name":"membersToRemove","nameLocation":"52619:15:96","nodeType":"VariableDeclaration","scope":69560,"src":"52602:32:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69544,"name":"address","nodeType":"ElementaryTypeName","src":"52602:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69545,"nodeType":"ArrayTypeName","src":"52602:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"52467:173:96"},"returnParameters":{"id":69548,"nodeType":"ParameterList","parameters":[],"src":"52658:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69581,"nodeType":"FunctionDefinition","src":"52783:278:96","nodes":[],"body":{"id":69580,"nodeType":"Block","src":"52952:109:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69571,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66928,"src":"52962:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":69572,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52962:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69573,"nodeType":"ExpressionStatement","src":"52962:17:96"},{"expression":{"arguments":[{"id":69575,"name":"_arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69563,"src":"53004:17:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},{"id":69576,"name":"_cvParams","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69566,"src":"53023:9:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"}},{"id":69577,"name":"sybilScoreThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69568,"src":"53034:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"},{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams memory"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69574,"name":"_setPoolParams","nodeType":"Identifier","overloadedDeclarations":[69355,69496,69534],"referencedDeclaration":69534,"src":"52989:14:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_struct$_ArbitrableConfig_$66316_memory_ptr_$_t_struct$_CVParams_$66325_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (struct ArbitrableConfig memory,struct CVParams memory,uint256)"}},"id":69578,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"52989:65:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69579,"nodeType":"ExpressionStatement","src":"52989:65:96"}]},"functionSelector":"ad56fd5d","implemented":true,"kind":"function","modifiers":[],"name":"setPoolParams","nameLocation":"52792:13:96","parameters":{"id":69569,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69563,"mutability":"mutable","name":"_arbitrableConfig","nameLocation":"52839:17:96","nodeType":"VariableDeclaration","scope":69581,"src":"52815:41:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69562,"nodeType":"UserDefinedTypeName","pathNode":{"id":69561,"name":"ArbitrableConfig","nameLocations":["52815:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"52815:16:96"},"referencedDeclaration":66316,"src":"52815:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"},{"constant":false,"id":69566,"mutability":"mutable","name":"_cvParams","nameLocation":"52882:9:96","nodeType":"VariableDeclaration","scope":69581,"src":"52866:25:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_memory_ptr","typeString":"struct CVParams"},"typeName":{"id":69565,"nodeType":"UserDefinedTypeName","pathNode":{"id":69564,"name":"CVParams","nameLocations":["52866:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66325,"src":"52866:8:96"},"referencedDeclaration":66325,"src":"52866:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_CVParams_$66325_storage_ptr","typeString":"struct CVParams"}},"visibility":"internal"},{"constant":false,"id":69568,"mutability":"mutable","name":"sybilScoreThreshold","nameLocation":"52909:19:96","nodeType":"VariableDeclaration","scope":69581,"src":"52901:27:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69567,"name":"uint256","nodeType":"ElementaryTypeName","src":"52901:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"52805:129:96"},"returnParameters":{"id":69570,"nodeType":"ParameterList","parameters":[],"src":"52952:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":69746,"nodeType":"FunctionDefinition","src":"53067:2575:96","nodes":[],"body":{"id":69745,"nodeType":"Block","src":"53253:2389:96","nodes":[],"statements":[{"expression":{"arguments":[{"expression":{"id":69593,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53283:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69594,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"53287:6:96","memberName":"sender","nodeType":"MemberAccess","src":"53283:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":69592,"name":"checkSenderIsMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66878,"src":"53263:19:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":69595,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53263:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69596,"nodeType":"ExpressionStatement","src":"53263:31:96"},{"assignments":[69599],"declarations":[{"constant":false,"id":69599,"mutability":"mutable","name":"proposal","nameLocation":"53321:8:96","nodeType":"VariableDeclaration","scope":69745,"src":"53304:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69598,"nodeType":"UserDefinedTypeName","pathNode":{"id":69597,"name":"Proposal","nameLocations":["53304:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"53304:8:96"},"referencedDeclaration":66294,"src":"53304:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":69603,"initialValue":{"baseExpression":{"id":69600,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"53332:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69602,"indexExpression":{"id":69601,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"53342:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53332:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"53304:49:96"},{"assignments":[69606],"declarations":[{"constant":false,"id":69606,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"53387:16:96","nodeType":"VariableDeclaration","scope":69745,"src":"53363:40:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69605,"nodeType":"UserDefinedTypeName","pathNode":{"id":69604,"name":"ArbitrableConfig","nameLocations":["53363:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"53363:16:96"},"referencedDeclaration":66316,"src":"53363:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":69611,"initialValue":{"baseExpression":{"id":69607,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"53406:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69610,"indexExpression":{"expression":{"id":69608,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"53424:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69609,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53433:23:96","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":66293,"src":"53424:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"53406:51:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"53363:94:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69615,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69612,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"53766:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69613,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53775:10:96","memberName":"proposalId","nodeType":"MemberAccess","referencedDeclaration":66262,"src":"53766:19:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":69614,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"53789:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"53766:33:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69621,"nodeType":"IfStatement","src":"53762:100:96","trueBody":{"id":69620,"nodeType":"Block","src":"53801:61:96","statements":[{"errorCall":{"arguments":[{"id":69617,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"53840:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69616,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66401,"src":"53822:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69618,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53822:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69619,"nodeType":"RevertStatement","src":"53815:36:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":69626,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69622,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"53875:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69623,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"53884:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"53875:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69624,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"53902:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69625,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"53917:6:96","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":66247,"src":"53902:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"53875:48:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69632,"nodeType":"IfStatement","src":"53871:115:96","trueBody":{"id":69631,"nodeType":"Block","src":"53925:61:96","statements":[{"errorCall":{"arguments":[{"id":69628,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"53964:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69627,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66397,"src":"53946:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"53946:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69630,"nodeType":"RevertStatement","src":"53939:36:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69637,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69633,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"53999:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69634,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54003:5:96","memberName":"value","nodeType":"MemberAccess","src":"53999:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":69635,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"54011:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69636,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54028:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"54011:43:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"53999:55:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69642,"nodeType":"IfStatement","src":"53995:258:96","trueBody":{"id":69641,"nodeType":"Block","src":"54056:197:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69638,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"54172:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":69639,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54172:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69640,"nodeType":"ExpressionStatement","src":"54172:8:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69646,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69643,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"54372:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69644,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54381:21:96","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":66291,"src":"54372:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":69645,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"54406:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"54372:35:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69653,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69650,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69647,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"54427:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69648,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54436:21:96","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":66291,"src":"54427:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":69649,"name":"DISPUTE_COOLDOWN_SEC","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66594,"src":"54460:20:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54427:53:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":69651,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"54483:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69652,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54489:9:96","memberName":"timestamp","nodeType":"MemberAccess","src":"54483:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54427:71:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"54372:126:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69659,"nodeType":"IfStatement","src":"54355:418:96","trueBody":{"id":69658,"nodeType":"Block","src":"54509:264:96","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":69655,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"54692:6:96","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$__$returns$__$","typeString":"function () pure"}},"id":69656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54692:8:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69657,"nodeType":"ExpressionStatement","src":"54692:8:96"}]}},{"assignments":[69661],"declarations":[{"constant":false,"id":69661,"mutability":"mutable","name":"arbitrationFee","nameLocation":"54791:14:96","nodeType":"VariableDeclaration","scope":69745,"src":"54783:22:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69660,"name":"uint256","nodeType":"ElementaryTypeName","src":"54783:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69667,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69662,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"54808:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69663,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54812:5:96","memberName":"value","nodeType":"MemberAccess","src":"54808:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"expression":{"id":69664,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"54820:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69665,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54837:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"54820:43:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54808:55:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"54783:80:96"},{"expression":{"arguments":[{"id":69674,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"54960:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69675,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"54972:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54976:6:96","memberName":"sender","nodeType":"MemberAccess","src":"54972:10:96","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":69668,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"54874:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69670,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"54890:17:96","memberName":"depositCollateral","nodeType":"MemberAccess","referencedDeclaration":76961,"src":"54874:33:96","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$","typeString":"function (uint256,address) payable external"}},"id":69673,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":69671,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"54915:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69672,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"54932:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"54915:43:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"54874:85:96","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_uint256_$_t_address_$returns$__$value","typeString":"function (uint256,address) payable external"}},"id":69677,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"54874:109:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69678,"nodeType":"ExpressionStatement","src":"54874:109:96"},{"expression":{"id":69688,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69679,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69590,"src":"54994:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":69685,"name":"RULING_OPTIONS","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66591,"src":"55071:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69686,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69587,"src":"55087:10:96","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":69680,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"55006:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69681,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55023:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"55006:27:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},"id":69682,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55034:13:96","memberName":"createDispute","nodeType":"MemberAccess","referencedDeclaration":76896,"src":"55006:41:96","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":69684,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":69683,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69661,"src":"55055:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"55006:64:96","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":69687,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"55006:92:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"54994:104:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69689,"nodeType":"ExpressionStatement","src":"54994:104:96"},{"expression":{"id":69695,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69690,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"55109:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69692,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55118:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"55109:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69693,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"55135:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69694,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"55150:8:96","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":66251,"src":"55135:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"55109:49:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":69696,"nodeType":"ExpressionStatement","src":"55109:49:96"},{"expression":{"id":69703,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":69697,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"55168:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69700,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55177:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"55168:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69701,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55189:9:96","memberName":"disputeId","nodeType":"MemberAccess","referencedDeclaration":66255,"src":"55168:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69702,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69590,"src":"55201:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"55168:42:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69704,"nodeType":"ExpressionStatement","src":"55168:42:96"},{"expression":{"id":69712,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":69705,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"55220:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69708,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55229:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"55220:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69709,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55241:16:96","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":66257,"src":"55220:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69710,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"55260:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69711,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55266:9:96","memberName":"timestamp","nodeType":"MemberAccess","src":"55260:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"55220:55:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69713,"nodeType":"ExpressionStatement","src":"55220:55:96"},{"expression":{"id":69721,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"expression":{"id":69714,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"55285:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69717,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55294:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"55285:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"55306:10:96","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":66259,"src":"55285:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69719,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"55319:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69720,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55323:6:96","memberName":"sender","nodeType":"MemberAccess","src":"55319:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"55285:44:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69722,"nodeType":"ExpressionStatement","src":"55285:44:96"},{"expression":{"id":69727,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":69723,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66649,"src":"55339:21:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":69725,"indexExpression":{"id":69724,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69590,"src":"55361:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"55339:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69726,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"55374:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"55339:45:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69728,"nodeType":"ExpressionStatement","src":"55339:45:96"},{"expression":{"id":69730,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"55395:14:96","subExpression":{"id":69729,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66602,"src":"55395:12:96","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":69731,"nodeType":"ExpressionStatement","src":"55395:14:96"},{"eventCall":{"arguments":[{"expression":{"id":69733,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69606,"src":"55455:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69734,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55472:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"55455:27:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},{"id":69735,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"55496:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69736,"name":"disputeId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69590,"src":"55520:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69737,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"55543:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69738,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"55547:6:96","memberName":"sender","nodeType":"MemberAccess","src":"55543:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":69739,"name":"context","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69585,"src":"55567:7:96","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string calldata"}},{"expression":{"expression":{"id":69740,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69599,"src":"55588:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69741,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55597:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"55588:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69742,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55609:16:96","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":66257,"src":"55588:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76949","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":69732,"name":"ProposalDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66523,"src":"55425:16:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$76949_$_t_uint256_$_t_uint256_$_t_address_$_t_string_memory_ptr_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256,address,string memory,uint256)"}},"id":69743,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"55425:210:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69744,"nodeType":"EmitStatement","src":"55420:215:96"}]},"functionSelector":"b41596ec","implemented":true,"kind":"function","modifiers":[],"name":"disputeProposal","nameLocation":"53076:15:96","parameters":{"id":69588,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69583,"mutability":"mutable","name":"proposalId","nameLocation":"53100:10:96","nodeType":"VariableDeclaration","scope":69746,"src":"53092:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69582,"name":"uint256","nodeType":"ElementaryTypeName","src":"53092:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69585,"mutability":"mutable","name":"context","nameLocation":"53128:7:96","nodeType":"VariableDeclaration","scope":69746,"src":"53112:23:96","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":69584,"name":"string","nodeType":"ElementaryTypeName","src":"53112:6:96","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":69587,"mutability":"mutable","name":"_extraData","nameLocation":"53152:10:96","nodeType":"VariableDeclaration","scope":69746,"src":"53137:25:96","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":69586,"name":"bytes","nodeType":"ElementaryTypeName","src":"53137:5:96","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"53091:72:96"},"returnParameters":{"id":69591,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69590,"mutability":"mutable","name":"disputeId","nameLocation":"53238:9:96","nodeType":"VariableDeclaration","scope":69746,"src":"53230:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69589,"name":"uint256","nodeType":"ElementaryTypeName","src":"53230:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"53229:19:96"},"scope":70249,"stateMutability":"payable","virtual":true,"visibility":"external"},{"id":69993,"nodeType":"FunctionDefinition","src":"55648:2889:96","nodes":[],"body":{"id":69992,"nodeType":"Block","src":"55725:2812:96","nodes":[],"statements":[{"assignments":[69755],"declarations":[{"constant":false,"id":69755,"mutability":"mutable","name":"proposalId","nameLocation":"55743:10:96","nodeType":"VariableDeclaration","scope":69992,"src":"55735:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69754,"name":"uint256","nodeType":"ElementaryTypeName","src":"55735:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69759,"initialValue":{"baseExpression":{"id":69756,"name":"disputeIdToProposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66649,"src":"55756:21:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_uint256_$","typeString":"mapping(uint256 => uint256)"}},"id":69758,"indexExpression":{"id":69757,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69748,"src":"55778:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"55756:33:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"55735:54:96"},{"assignments":[69762],"declarations":[{"constant":false,"id":69762,"mutability":"mutable","name":"proposal","nameLocation":"55816:8:96","nodeType":"VariableDeclaration","scope":69992,"src":"55799:25:96","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"},"typeName":{"id":69761,"nodeType":"UserDefinedTypeName","pathNode":{"id":69760,"name":"Proposal","nameLocations":["55799:8:96"],"nodeType":"IdentifierPath","referencedDeclaration":66294,"src":"55799:8:96"},"referencedDeclaration":66294,"src":"55799:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal"}},"visibility":"internal"}],"id":69766,"initialValue":{"baseExpression":{"id":69763,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"55827:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":69765,"indexExpression":{"id":69764,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"55837:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"55827:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"nodeType":"VariableDeclarationStatement","src":"55799:49:96"},{"assignments":[69769],"declarations":[{"constant":false,"id":69769,"mutability":"mutable","name":"arbitrableConfig","nameLocation":"55882:16:96","nodeType":"VariableDeclaration","scope":69992,"src":"55858:40:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig"},"typeName":{"id":69768,"nodeType":"UserDefinedTypeName","pathNode":{"id":69767,"name":"ArbitrableConfig","nameLocations":["55858:16:96"],"nodeType":"IdentifierPath","referencedDeclaration":66316,"src":"55858:16:96"},"referencedDeclaration":66316,"src":"55858:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage_ptr","typeString":"struct ArbitrableConfig"}},"visibility":"internal"}],"id":69774,"initialValue":{"baseExpression":{"id":69770,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"55901:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69773,"indexExpression":{"expression":{"id":69771,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"55919:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69772,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"55928:23:96","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":66293,"src":"55919:32:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"55901:51:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"nodeType":"VariableDeclarationStatement","src":"55858:94:96"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69777,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69775,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"55967:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":69776,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"55981:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"55967:15:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69783,"nodeType":"IfStatement","src":"55963:82:96","trueBody":{"id":69782,"nodeType":"Block","src":"55984:61:96","statements":[{"errorCall":{"arguments":[{"id":69779,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"56023:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69778,"name":"ProposalNotInList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66401,"src":"56005:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56005:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69781,"nodeType":"RevertStatement","src":"55998:36:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":69788,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69784,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"56058:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69785,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56067:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"56058:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":69786,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"56085:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69787,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"56100:8:96","memberName":"Disputed","nodeType":"MemberAccess","referencedDeclaration":66251,"src":"56085:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"56058:50:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69794,"nodeType":"IfStatement","src":"56054:119:96","trueBody":{"id":69793,"nodeType":"Block","src":"56110:63:96","statements":[{"errorCall":{"arguments":[{"id":69790,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"56151:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69789,"name":"ProposalNotDisputed","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66421,"src":"56131:19:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":69791,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56131:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69792,"nodeType":"RevertStatement","src":"56124:38:96"}]}},{"assignments":[69796],"declarations":[{"constant":false,"id":69796,"mutability":"mutable","name":"isTimeOut","nameLocation":"56188:9:96","nodeType":"VariableDeclaration","scope":69992,"src":"56183:14:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69795,"name":"bool","nodeType":"ElementaryTypeName","src":"56183:4:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":69806,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69805,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69797,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"56200:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56206:9:96","memberName":"timestamp","nodeType":"MemberAccess","src":"56200:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":69799,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"56218:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69800,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56227:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"56218:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69801,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56239:16:96","memberName":"disputeTimestamp","nodeType":"MemberAccess","referencedDeclaration":66257,"src":"56218:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"expression":{"id":69802,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"56258:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69803,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56275:20:96","memberName":"defaultRulingTimeout","nodeType":"MemberAccess","referencedDeclaration":66315,"src":"56258:37:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"56218:77:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"56200:95:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"VariableDeclarationStatement","src":"56183:112:96"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69817,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69808,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"56310:10:96","subExpression":{"id":69807,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69796,"src":"56311:9:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69809,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"56324:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56328:6:96","memberName":"sender","nodeType":"MemberAccess","src":"56324:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"expression":{"id":69813,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"56346:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69814,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56363:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"56346:27:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}],"id":69812,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"56338:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69811,"name":"address","nodeType":"ElementaryTypeName","src":"56338:7:96","typeDescriptions":{}}},"id":69815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56338:36:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"56324:50:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"56310:64:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69822,"nodeType":"IfStatement","src":"56306:118:96","trueBody":{"id":69821,"nodeType":"Block","src":"56376:48:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69818,"name":"OnlyArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66417,"src":"56397:14:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69819,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56397:16:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69820,"nodeType":"RevertStatement","src":"56390:23:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":69827,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69823,"name":"isTimeOut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69796,"src":"56438:9:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69826,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69824,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69750,"src":"56451:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":69825,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56462:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"56451:12:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"56438:25:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69887,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69885,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69750,"src":"57205:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":69886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"57216:1:96","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"57205:12:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69915,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69913,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69750,"src":"57562:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":69914,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"57573:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"57562:12:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69972,"nodeType":"IfStatement","src":"57558:819:96","trueBody":{"id":69971,"nodeType":"Block","src":"57576:801:96","statements":[{"expression":{"id":69921,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69916,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"57590:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69918,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"57599:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"57590:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69919,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"57616:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69920,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"57631:8:96","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":66252,"src":"57616:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"57590:49:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":69922,"nodeType":"ExpressionStatement","src":"57590:49:96"},{"expression":{"arguments":[{"id":69926,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"57705:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69927,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"57717:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69928,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57726:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"57717:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69929,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57738:10:96","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":66259,"src":"57717:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69930,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"57750:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57767:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"57750:43:96","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":69923,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"57653:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69925,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57669:18:96","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76970,"src":"57653:34:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69932,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57653:154:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69933,"nodeType":"ExpressionStatement","src":"57653:154:96"},{"expression":{"arguments":[{"id":69937,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"57876:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69938,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"57904:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69939,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57913:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"57904:18:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":69942,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"57948:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":69943,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57966:11:96","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71620,"src":"57948:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$77075_$","typeString":"function () view external returns (contract ISafe)"}},"id":69944,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57948:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":69941,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"57940:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69940,"name":"address","nodeType":"ElementaryTypeName","src":"57940:7:96","typeDescriptions":{}}},"id":69945,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57940:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69951,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69946,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"57998:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69948,"indexExpression":{"id":69947,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"58016:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"57998:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69949,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58048:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"57998:75:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69950,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"58076:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"57998:79:96","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":69934,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"57821:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57837:21:96","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":76981,"src":"57821:37:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69952,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57821:270:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69953,"nodeType":"ExpressionStatement","src":"57821:270:96"},{"expression":{"arguments":[{"id":69957,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"58160:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69958,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"58188:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69959,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58197:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"58188:18:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"expression":{"id":69960,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"58224:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69961,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58233:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"58224:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69962,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58245:10:96","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":66259,"src":"58224:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69963,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"58273:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":69965,"indexExpression":{"id":69964,"name":"currentArbitrableConfigVersion","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66606,"src":"58291:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58273:49:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":69966,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58323:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"58273:75:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"hexValue":"32","id":69967,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"58351:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"58273:79:96","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":69954,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"58105:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69956,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58121:21:96","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":76981,"src":"58105:37:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69969,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58105:261:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69970,"nodeType":"ExpressionStatement","src":"58105:261:96"}]}},"id":69973,"nodeType":"IfStatement","src":"57201:1176:96","trueBody":{"id":69912,"nodeType":"Block","src":"57219:333:96","statements":[{"expression":{"id":69893,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69888,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"57233:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69890,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"57242:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"57233:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69891,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"57259:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69892,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"57274:6:96","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":66247,"src":"57259:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"57233:47:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":69894,"nodeType":"ExpressionStatement","src":"57233:47:96"},{"expression":{"arguments":[{"id":69898,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"57349:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69899,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"57377:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69900,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57386:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"57377:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69901,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57398:10:96","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":66259,"src":"57377:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":69904,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"57434:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":69905,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57452:11:96","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71620,"src":"57434:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$77075_$","typeString":"function () view external returns (contract ISafe)"}},"id":69906,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57434:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":69903,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"57426:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69902,"name":"address","nodeType":"ElementaryTypeName","src":"57426:7:96","typeDescriptions":{}}},"id":69907,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57426:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69908,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"57484:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69909,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57501:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"57484:43:96","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":69895,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"57294:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69897,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57310:21:96","memberName":"withdrawCollateralFor","nodeType":"MemberAccess","referencedDeclaration":76981,"src":"57294:37:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,address,uint256) external"}},"id":69910,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57294:247:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69911,"nodeType":"ExpressionStatement","src":"57294:247:96"}]}},"id":69974,"nodeType":"IfStatement","src":"56434:1943:96","trueBody":{"id":69884,"nodeType":"Block","src":"56465:730:96","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69828,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"56483:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69829,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56500:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"56483:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":69830,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56517:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"56483:35:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69836,"nodeType":"IfStatement","src":"56479:102:96","trueBody":{"id":69835,"nodeType":"Block","src":"56520:61:96","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69832,"name":"DefaultRulingNotSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66429,"src":"56545:19:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69833,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56545:21:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69834,"nodeType":"RevertStatement","src":"56538:28:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69840,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69837,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"56598:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69838,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56615:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"56598:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"31","id":69839,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56632:1:96","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"56598:35:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69849,"nodeType":"IfStatement","src":"56594:121:96","trueBody":{"id":69848,"nodeType":"Block","src":"56635:80:96","statements":[{"expression":{"id":69846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69841,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"56653:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69843,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"56662:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"56653:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69844,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"56679:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69845,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"56694:6:96","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":66247,"src":"56679:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"56653:47:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":69847,"nodeType":"ExpressionStatement","src":"56653:47:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69850,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"56732:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69851,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56749:13:96","memberName":"defaultRuling","nodeType":"MemberAccess","referencedDeclaration":66313,"src":"56732:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"32","id":69852,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"56766:1:96","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"56732:35:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69872,"nodeType":"IfStatement","src":"56728:289:96","trueBody":{"id":69871,"nodeType":"Block","src":"56769:248:96","statements":[{"expression":{"id":69859,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69854,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"56787:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69856,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"56796:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"56787:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69857,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"56813:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":69858,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"56828:8:96","memberName":"Rejected","nodeType":"MemberAccess","referencedDeclaration":66252,"src":"56813:23:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"56787:49:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":69860,"nodeType":"ExpressionStatement","src":"56787:49:96"},{"expression":{"arguments":[{"id":69864,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"56910:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":69865,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"56922:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69866,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56931:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"56922:18:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69867,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"56942:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69868,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"56959:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"56942:42:96","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":69861,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"56854:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69863,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"56870:18:96","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76970,"src":"56854:34:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69869,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"56854:148:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69870,"nodeType":"ExpressionStatement","src":"56854:148:96"}]}},{"expression":{"arguments":[{"id":69876,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69755,"src":"57082:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"expression":{"id":69877,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"57094:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69878,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57103:11:96","memberName":"disputeInfo","nodeType":"MemberAccess","referencedDeclaration":66289,"src":"57094:20:96","typeDescriptions":{"typeIdentifier":"t_struct$_ProposalDisputeInfo_$66260_storage","typeString":"struct ProposalDisputeInfo storage ref"}},"id":69879,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57115:10:96","memberName":"challenger","nodeType":"MemberAccess","referencedDeclaration":66259,"src":"57094:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69880,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"57127:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69881,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"57144:26:96","memberName":"challengerCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66311,"src":"57127:43:96","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":69873,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"57030:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":69875,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"57046:18:96","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76970,"src":"57030:34:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":69882,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"57030:154:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69883,"nodeType":"ExpressionStatement","src":"57030:154:96"}]}},{"expression":{"id":69976,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"--","prefix":false,"src":"58387:14:96","subExpression":{"id":69975,"name":"disputeCount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66602,"src":"58387:12:96","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":69977,"nodeType":"ExpressionStatement","src":"58387:14:96"},{"expression":{"id":69983,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":69978,"name":"proposal","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69762,"src":"58411:8:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage_ptr","typeString":"struct Proposal storage pointer"}},"id":69980,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"58420:21:96","memberName":"lastDisputeCompletion","nodeType":"MemberAccess","referencedDeclaration":66291,"src":"58411:30:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69981,"name":"block","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-4,"src":"58444:5:96","typeDescriptions":{"typeIdentifier":"t_magic_block","typeString":"block"}},"id":69982,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58450:9:96","memberName":"timestamp","nodeType":"MemberAccess","src":"58444:15:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"58411:48:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69984,"nodeType":"ExpressionStatement","src":"58411:48:96"},{"eventCall":{"arguments":[{"expression":{"id":69986,"name":"arbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69769,"src":"58481:16:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_memory_ptr","typeString":"struct ArbitrableConfig memory"}},"id":69987,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58498:10:96","memberName":"arbitrator","nodeType":"MemberAccess","referencedDeclaration":66305,"src":"58481:27:96","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"}},{"id":69988,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69748,"src":"58510:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69989,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69750,"src":"58522:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrator_$76949","typeString":"contract IArbitrator"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":69985,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76836,"src":"58474:6:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrator_$76949_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrator,uint256,uint256)"}},"id":69990,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58474:56:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69991,"nodeType":"EmitStatement","src":"58469:61:96"}]},"baseFunctions":[76844],"functionSelector":"311a6c56","implemented":true,"kind":"function","modifiers":[],"name":"rule","nameLocation":"55657:4:96","overrides":{"id":69752,"nodeType":"OverrideSpecifier","overrides":[],"src":"55716:8:96"},"parameters":{"id":69751,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69748,"mutability":"mutable","name":"_disputeID","nameLocation":"55670:10:96","nodeType":"VariableDeclaration","scope":69993,"src":"55662:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69747,"name":"uint256","nodeType":"ElementaryTypeName","src":"55662:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69750,"mutability":"mutable","name":"_ruling","nameLocation":"55690:7:96","nodeType":"VariableDeclaration","scope":69993,"src":"55682:15:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69749,"name":"uint256","nodeType":"ElementaryTypeName","src":"55682:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"55661:37:96"},"returnParameters":{"id":69753,"nodeType":"ParameterList","parameters":[],"src":"55725:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":70059,"nodeType":"FunctionDefinition","src":"58543:702:96","nodes":[],"body":{"id":70058,"nodeType":"Block","src":"58604:641:96","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"},"id":70004,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":69998,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"58618:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":70000,"indexExpression":{"id":69999,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"58628:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58618:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":70001,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58640:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"58618:36:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":70002,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"58658:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":70003,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"58673:6:96","memberName":"Active","nodeType":"MemberAccess","referencedDeclaration":66247,"src":"58658:21:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"58618:61:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70010,"nodeType":"IfStatement","src":"58614:128:96","trueBody":{"id":70009,"nodeType":"Block","src":"58681:61:96","statements":[{"errorCall":{"arguments":[{"id":70006,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"58720:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":70005,"name":"ProposalNotActive","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66397,"src":"58702:17:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":70007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58702:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70008,"nodeType":"RevertStatement","src":"58695:36:96"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":70011,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"58756:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":70013,"indexExpression":{"id":70012,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"58766:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58756:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":70014,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58778:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"58756:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":70015,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"58791:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70016,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58795:6:96","memberName":"sender","nodeType":"MemberAccess","src":"58791:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"58756:45:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70028,"nodeType":"IfStatement","src":"58752:141:96","trueBody":{"id":70027,"nodeType":"Block","src":"58803:90:96","statements":[{"errorCall":{"arguments":[{"expression":{"baseExpression":{"id":70019,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"58838:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":70021,"indexExpression":{"id":70020,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"58848:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58838:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":70022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58860:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"58838:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":70023,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"58871:3:96","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58875:6:96","memberName":"sender","nodeType":"MemberAccess","src":"58871:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":70018,"name":"OnlySubmitter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66427,"src":"58824:13:96","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":70025,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58824:58:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70026,"nodeType":"RevertStatement","src":"58817:65:96"}]}},{"expression":{"arguments":[{"id":70032,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"58951:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"baseExpression":{"id":70033,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"58975:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":70035,"indexExpression":{"id":70034,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"58985:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"58975:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":70036,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"58997:9:96","memberName":"submitter","nodeType":"MemberAccess","referencedDeclaration":66272,"src":"58975:31:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"baseExpression":{"id":70037,"name":"arbitrableConfigs","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66654,"src":"59020:17:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_ArbitrableConfig_$66316_storage_$","typeString":"mapping(uint256 => struct ArbitrableConfig storage ref)"}},"id":70042,"indexExpression":{"expression":{"baseExpression":{"id":70038,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"59038:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":70040,"indexExpression":{"id":70039,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"59048:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59038:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":70041,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"59060:23:96","memberName":"arbitrableConfigVersion","nodeType":"MemberAccess","referencedDeclaration":66293,"src":"59038:45:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59020:64:96","typeDescriptions":{"typeIdentifier":"t_struct$_ArbitrableConfig_$66316_storage","typeString":"struct ArbitrableConfig storage ref"}},"id":70043,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"59085:25:96","memberName":"submitterCollateralAmount","nodeType":"MemberAccess","referencedDeclaration":66309,"src":"59020:90:96","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":70029,"name":"collateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66628,"src":"58903:15:96","typeDescriptions":{"typeIdentifier":"t_contract$_ICollateralVault_$76982","typeString":"contract ICollateralVault"}},"id":70031,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"58919:18:96","memberName":"withdrawCollateral","nodeType":"MemberAccess","referencedDeclaration":76970,"src":"58903:34:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256) external"}},"id":70044,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"58903:217:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70045,"nodeType":"ExpressionStatement","src":"58903:217:96"},{"expression":{"id":70052,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":70046,"name":"proposals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66636,"src":"59131:9:96","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_struct$_Proposal_$66294_storage_$","typeString":"mapping(uint256 => struct Proposal storage ref)"}},"id":70048,"indexExpression":{"id":70047,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"59141:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59131:21:96","typeDescriptions":{"typeIdentifier":"t_struct$_Proposal_$66294_storage","typeString":"struct Proposal storage ref"}},"id":70049,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"59153:14:96","memberName":"proposalStatus","nodeType":"MemberAccess","referencedDeclaration":66279,"src":"59131:36:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70050,"name":"ProposalStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66253,"src":"59170:14:96","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_ProposalStatus_$66253_$","typeString":"type(enum ProposalStatus)"}},"id":70051,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"59185:9:96","memberName":"Cancelled","nodeType":"MemberAccess","referencedDeclaration":66249,"src":"59170:24:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"src":"59131:63:96","typeDescriptions":{"typeIdentifier":"t_enum$_ProposalStatus_$66253","typeString":"enum ProposalStatus"}},"id":70053,"nodeType":"ExpressionStatement","src":"59131:63:96"},{"eventCall":{"arguments":[{"id":70055,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69995,"src":"59227:10:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":70054,"name":"ProposalCancelled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66535,"src":"59209:17:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":70056,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59209:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70057,"nodeType":"EmitStatement","src":"59204:34:96"}]},"functionSelector":"e0a8f6f5","implemented":true,"kind":"function","modifiers":[],"name":"cancelProposal","nameLocation":"58552:14:96","parameters":{"id":69996,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69995,"mutability":"mutable","name":"proposalId","nameLocation":"58575:10:96","nodeType":"VariableDeclaration","scope":70059,"src":"58567:18:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69994,"name":"uint256","nodeType":"ElementaryTypeName","src":"58567:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"58566:20:96"},"returnParameters":{"id":69997,"nodeType":"ParameterList","parameters":[],"src":"58604:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":70073,"nodeType":"FunctionDefinition","src":"59251:125:96","nodes":[],"body":{"id":70072,"nodeType":"Block","src":"59308:68:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":70065,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66928,"src":"59318:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":70066,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59318:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70067,"nodeType":"ExpressionStatement","src":"59318:17:96"},{"expression":{"arguments":[{"id":70069,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70062,"src":"59361:7:96","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":70068,"name":"_addToAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70153,"src":"59345:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":70070,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59345:24:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70071,"nodeType":"ExpressionStatement","src":"59345:24:96"}]},"functionSelector":"7263cfe2","implemented":true,"kind":"function","modifiers":[],"name":"addToAllowList","nameLocation":"59260:14:96","parameters":{"id":70063,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70062,"mutability":"mutable","name":"members","nameLocation":"59292:7:96","nodeType":"VariableDeclaration","scope":70073,"src":"59275:24:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70060,"name":"address","nodeType":"ElementaryTypeName","src":"59275:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70061,"nodeType":"ArrayTypeName","src":"59275:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"59274:26:96"},"returnParameters":{"id":70064,"nodeType":"ParameterList","parameters":[],"src":"59308:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":70153,"nodeType":"FunctionDefinition","src":"59382:610:96","nodes":[],"body":{"id":70152,"nodeType":"Block","src":"59442:550:96","nodes":[],"statements":[{"assignments":[70080],"declarations":[{"constant":false,"id":70080,"mutability":"mutable","name":"allowlistRole","nameLocation":"59460:13:96","nodeType":"VariableDeclaration","scope":70152,"src":"59452:21:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":70079,"name":"bytes32","nodeType":"ElementaryTypeName","src":"59452:7:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":70088,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":70084,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"59503:11:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":70085,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"59516:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":70082,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"59486:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":70083,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"59490:12:96","memberName":"encodePacked","nodeType":"MemberAccess","src":"59486:16:96","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":70086,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59486:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":70081,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"59476:9:96","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":70087,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59476:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"59452:72:96"},{"condition":{"arguments":[{"id":70091,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70080,"src":"59565:13:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":70094,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"59588:1:96","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":70093,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"59580:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70092,"name":"address","nodeType":"ElementaryTypeName","src":"59580:7:96","typeDescriptions":{}}},"id":70095,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59580:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70089,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"59539:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70090,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59557:7:96","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":51753,"src":"59539:25:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":70096,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59539:52:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70108,"nodeType":"IfStatement","src":"59535:138:96","trueBody":{"id":70107,"nodeType":"Block","src":"59593:80:96","statements":[{"expression":{"arguments":[{"id":70100,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70080,"src":"59636:13:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"hexValue":"30","id":70103,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"59659:1:96","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":70102,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"59651:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70101,"name":"address","nodeType":"ElementaryTypeName","src":"59651:7:96","typeDescriptions":{}}},"id":70104,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59651:10:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70097,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"59607:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70099,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59625:10:96","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":51860,"src":"59607:28:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":70105,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59607:55:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70106,"nodeType":"ExpressionStatement","src":"59607:55:96"}]}},{"body":{"id":70145,"nodeType":"Block","src":"59727:205:96","statements":[{"condition":{"id":70127,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"59745:53:96","subExpression":{"arguments":[{"id":70122,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70080,"src":"59772:13:96","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":70123,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70076,"src":"59787:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70125,"indexExpression":{"id":70124,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70110,"src":"59795:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59787:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70120,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"59746:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70121,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59764:7:96","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":51753,"src":"59746:25:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":70126,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59746:52:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70144,"nodeType":"IfStatement","src":"59741:181:96","trueBody":{"id":70143,"nodeType":"Block","src":"59800:122:96","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":70134,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"59873:11:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":70135,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"59886:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":70132,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"59856:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":70133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"59860:12:96","memberName":"encodePacked","nodeType":"MemberAccess","src":"59856:16:96","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":70136,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59856:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":70131,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"59846:9:96","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":70137,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59846:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":70138,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70076,"src":"59896:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70140,"indexExpression":{"id":70139,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70110,"src":"59904:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"59896:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70128,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"59818:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70130,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59836:9:96","memberName":"grantRole","nodeType":"MemberAccess","referencedDeclaration":51840,"src":"59818:27:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":70141,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59818:89:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70142,"nodeType":"ExpressionStatement","src":"59818:89:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70113,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70110,"src":"59702:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":70114,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70076,"src":"59706:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"59714:6:96","memberName":"length","nodeType":"MemberAccess","src":"59706:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"59702:18:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70146,"initializationExpression":{"assignments":[70110],"declarations":[{"constant":false,"id":70110,"mutability":"mutable","name":"i","nameLocation":"59695:1:96","nodeType":"VariableDeclaration","scope":70146,"src":"59687:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70109,"name":"uint256","nodeType":"ElementaryTypeName","src":"59687:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":70112,"initialValue":{"hexValue":"30","id":70111,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"59699:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"59687:13:96"},"loopExpression":{"expression":{"id":70118,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"59722:3:96","subExpression":{"id":70117,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70110,"src":"59722:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70119,"nodeType":"ExpressionStatement","src":"59722:3:96"},"nodeType":"ForStatement","src":"59682:250:96"},{"eventCall":{"arguments":[{"id":70148,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"59969:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":70149,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70076,"src":"59977:7:96","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":70147,"name":"AllowlistMembersAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66566,"src":"59947:21:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":70150,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"59947:38:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70151,"nodeType":"EmitStatement","src":"59942:43:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addToAllowList","nameLocation":"59391:15:96","parameters":{"id":70077,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70076,"mutability":"mutable","name":"members","nameLocation":"59424:7:96","nodeType":"VariableDeclaration","scope":70153,"src":"59407:24:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70074,"name":"address","nodeType":"ElementaryTypeName","src":"59407:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70075,"nodeType":"ArrayTypeName","src":"59407:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"59406:26:96"},"returnParameters":{"id":70078,"nodeType":"ParameterList","parameters":[],"src":"59442:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":70167,"nodeType":"FunctionDefinition","src":"59998:137:96","nodes":[],"body":{"id":70166,"nodeType":"Block","src":"60062:73:96","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":70159,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66928,"src":"60072:15:96","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":70160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60072:17:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70161,"nodeType":"ExpressionStatement","src":"60072:17:96"},{"expression":{"arguments":[{"id":70163,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70156,"src":"60120:7:96","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":70162,"name":"_removeFromAllowList","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70222,"src":"60099:20:96","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (address[] memory)"}},"id":70164,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60099:29:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70165,"nodeType":"ExpressionStatement","src":"60099:29:96"}]},"functionSelector":"a51312c8","implemented":true,"kind":"function","modifiers":[],"name":"removeFromAllowList","nameLocation":"60007:19:96","parameters":{"id":70157,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70156,"mutability":"mutable","name":"members","nameLocation":"60044:7:96","nodeType":"VariableDeclaration","scope":70167,"src":"60027:24:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70154,"name":"address","nodeType":"ElementaryTypeName","src":"60027:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70155,"nodeType":"ArrayTypeName","src":"60027:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"60026:26:96"},"returnParameters":{"id":70158,"nodeType":"ParameterList","parameters":[],"src":"60062:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70222,"nodeType":"FunctionDefinition","src":"60141:422:96","nodes":[],"body":{"id":70221,"nodeType":"Block","src":"60206:357:96","nodes":[],"statements":[{"body":{"id":70214,"nodeType":"Block","src":"60261:240:96","statements":[{"condition":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":70189,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"60332:11:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":70190,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"60345:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":70187,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"60315:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":70188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"60319:12:96","memberName":"encodePacked","nodeType":"MemberAccess","src":"60315:16:96","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":70191,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60315:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":70186,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"60305:9:96","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":70192,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60305:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":70193,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70170,"src":"60355:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70195,"indexExpression":{"id":70194,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70174,"src":"60363:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"60355:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70184,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"60279:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70185,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60297:7:96","memberName":"hasRole","nodeType":"MemberAccess","referencedDeclaration":51753,"src":"60279:25:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view external returns (bool)"}},"id":70196,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60279:87:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70213,"nodeType":"IfStatement","src":"60275:216:96","trueBody":{"id":70212,"nodeType":"Block","src":"60368:123:96","statements":[{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":70203,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"60442:11:96","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":70204,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"60455:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":70201,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"60425:3:96","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":70202,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"60429:12:96","memberName":"encodePacked","nodeType":"MemberAccess","src":"60425:16:96","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":70205,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60425:37:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":70200,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"60415:9:96","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":70206,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60415:48:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"id":70207,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70170,"src":"60465:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70209,"indexExpression":{"id":70208,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70174,"src":"60473:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"60465:10:96","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70197,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"60386:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70199,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60404:10:96","memberName":"revokeRole","nodeType":"MemberAccess","referencedDeclaration":51860,"src":"60386:28:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":70210,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60386:90:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70211,"nodeType":"ExpressionStatement","src":"60386:90:96"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70180,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70177,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70174,"src":"60236:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":70178,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70170,"src":"60240:7:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":70179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60248:6:96","memberName":"length","nodeType":"MemberAccess","src":"60240:14:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"60236:18:96","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70215,"initializationExpression":{"assignments":[70174],"declarations":[{"constant":false,"id":70174,"mutability":"mutable","name":"i","nameLocation":"60229:1:96","nodeType":"VariableDeclaration","scope":70215,"src":"60221:9:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70173,"name":"uint256","nodeType":"ElementaryTypeName","src":"60221:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":70176,"initialValue":{"hexValue":"30","id":70175,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"60233:1:96","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"60221:13:96"},"loopExpression":{"expression":{"id":70182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"60256:3:96","subExpression":{"id":70181,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70174,"src":"60256:1:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70183,"nodeType":"ExpressionStatement","src":"60256:3:96"},"nodeType":"ForStatement","src":"60216:285:96"},{"eventCall":{"arguments":[{"id":70217,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65571,"src":"60540:6:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":70218,"name":"members","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70170,"src":"60548:7:96","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":70216,"name":"AllowlistMembersRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66559,"src":"60516:23:96","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_array$_t_address_$dyn_memory_ptr_$returns$__$","typeString":"function (uint256,address[] memory)"}},"id":70219,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60516:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70220,"nodeType":"EmitStatement","src":"60511:45:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeFromAllowList","nameLocation":"60150:20:96","parameters":{"id":70171,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70170,"mutability":"mutable","name":"members","nameLocation":"60188:7:96","nodeType":"VariableDeclaration","scope":70222,"src":"60171:24:96","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70168,"name":"address","nodeType":"ElementaryTypeName","src":"60171:7:96","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70169,"nodeType":"ArrayTypeName","src":"60171:9:96","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"60170:26:96"},"returnParameters":{"id":70172,"nodeType":"ParameterList","parameters":[],"src":"60206:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":70244,"nodeType":"FunctionDefinition","src":"60569:168:96","nodes":[],"body":{"id":70243,"nodeType":"Block","src":"60629:108:96","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":70232,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"60671:4:96","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}],"id":70231,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"60663:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70230,"name":"address","nodeType":"ElementaryTypeName","src":"60663:7:96","typeDescriptions":{}}},"id":70233,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60663:13:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70234,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70224,"src":"60678:9:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":70237,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66625,"src":"60697:17:96","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"id":70238,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60715:11:96","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71620,"src":"60697:29:96","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISafe_$77075_$","typeString":"function () view external returns (contract ISafe)"}},"id":70239,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60697:31:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":70236,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"60689:7:96","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70235,"name":"address","nodeType":"ElementaryTypeName","src":"60689:7:96","typeDescriptions":{}}},"id":70240,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60689:40:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70227,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66631,"src":"60639:11:96","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"id":70229,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"60651:11:96","memberName":"addStrategy","nodeType":"MemberAccess","referencedDeclaration":70597,"src":"60639:23:96","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$_t_address_$returns$__$","typeString":"function (address,uint256,address) external"}},"id":70241,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"60639:91:96","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70242,"nodeType":"ExpressionStatement","src":"60639:91:96"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_registerToSybilScorer","nameLocation":"60578:22:96","parameters":{"id":70225,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70224,"mutability":"mutable","name":"threshold","nameLocation":"60609:9:96","nodeType":"VariableDeclaration","scope":70244,"src":"60601:17:96","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70223,"name":"uint256","nodeType":"ElementaryTypeName","src":"60601:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"60600:19:96"},"returnParameters":{"id":70226,"nodeType":"ParameterList","parameters":[],"src":"60629:0:96"},"scope":70249,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":70248,"nodeType":"VariableDeclaration","src":"60743:25:96","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"60763:5:96","scope":70249,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":70245,"name":"uint256","nodeType":"ElementaryTypeName","src":"60743:7:96","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70247,"length":{"hexValue":"3530","id":70246,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"60751:2:96","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"60743:11:96","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":66372,"name":"BaseStrategyUpgradeable","nameLocations":["4171:23:96"],"nodeType":"IdentifierPath","referencedDeclaration":66158,"src":"4171:23:96"},"id":66373,"nodeType":"InheritanceSpecifier","src":"4171:23:96"},{"baseName":{"id":66374,"name":"IArbitrable","nameLocations":["4196:11:96"],"nodeType":"IdentifierPath","referencedDeclaration":76845,"src":"4196:11:96"},"id":66375,"nodeType":"InheritanceSpecifier","src":"4196:11:96"},{"baseName":{"id":66376,"name":"IPointStrategy","nameLocations":["4209:14:96"],"nodeType":"IdentifierPath","referencedDeclaration":66224,"src":"4209:14:96"},"id":66377,"nodeType":"InheritanceSpecifier","src":"4209:14:96"},{"baseName":{"id":66378,"name":"ERC165","nameLocations":["4225:6:96"],"nodeType":"IdentifierPath","referencedDeclaration":57022,"src":"4225:6:96"},"id":66379,"nodeType":"InheritanceSpecifier","src":"4225:6:96"}],"canonicalName":"CVStrategyV0_0","contractDependencies":[],"contractKind":"contract","documentation":{"id":66371,"nodeType":"StructuredDocumentation","src":"4100:44:96","text":"@custom:oz-upgrades-from CVStrategyV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[70249,57022,57228,66224,76845,66158,3089,3317,3106,2969,71181,54969,54622,54271,54281,52200,52993,52449],"name":"CVStrategyV0_0","nameLocation":"4153:14:96","scope":70250,"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,66381,66383,66385,66387,66393,66397,66401,66407,66409,66411,66413,66415,66417,66421,66427,66429,66431,66433,66435,71096]}],"license":"AGPL-3.0-only"},"id":96} \ No newline at end of file diff --git a/pkg/contracts/out/CollateralVault.sol/CollateralVault.json b/pkg/contracts/out/CollateralVault.sol/CollateralVault.json index 03ab61613..d9c5b5be4 100644 --- a/pkg/contracts/out/CollateralVault.sol/CollateralVault.json +++ b/pkg/contracts/out/CollateralVault.sol/CollateralVault.json @@ -1 +1 @@ -{"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"depositCollateral","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"initialize","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proposalCollateral","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"withdrawCollateral","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_user","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"withdrawCollateralFor","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_fromUser","type":"address","internalType":"address"},{"name":"_toUser","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"CollateralDeposited","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"user","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CollateralWithdrawn","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"user","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"isInsufficientAvailableAmount","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"CollateralWithdrawn","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"fromUser","type":"address","indexed":true,"internalType":"address"},{"name":"toUser","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"isInsufficientAvailableAmount","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"error","name":"AlreadyInitialized","inputs":[]},{"type":"error","name":"InsufficientCollateral","inputs":[{"name":"requested","type":"uint256","internalType":"uint256"},{"name":"available","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidAddress","inputs":[]},{"type":"error","name":"NotAuthorized","inputs":[]}],"bytecode":{"object":"0x6080806040523461001b57600160005561053c90816100218239f35b600080fdfe60806040908082526004918236101561001757600080fd5b600091823560e01c908163481fef8a1461031f575080638129fc1c146102db5780638630da1d146102955780638969ab53146101a25780638da5cb5b1461017a576399ea56b01461006757600080fd5b346101765760603660031901126101765782356100826103d4565b6002546001600160a01b03939192916044359185163303610167577fc512525fc7952c6edf42100f0853e94fb1c1f6daf93780cac22b690a36e03724949596506100ca6103ef565b8682948482526001602052828220978116978883526020528282205480839511610158575b508180808089610130958a61014e9a99985260016020528d88842090845260205287832061011e838254610445565b90555af161012a610468565b506104c8565b51938493849081526020810191909152901515604082015260600190565b0390a26001815580f35b955060019350889150816100ef565b5163ea8e4eb560e01b81528690fd5b5080fd5b503461017657816003193601126101765760025490516001600160a01b039091168152602090f35b5034610176576080366003190112610176578235926101bf6103d4565b604435946001600160a01b0380871694929390928588036102915760643591846002541633036102835750867f86b742620d95ff25811b118a7f2dbca2f5f4c869adf0b0d94660965f51c8d769959697986102186103ef565b839585835260016020528383209816978883526020528282205480839511610274575b508180808089610130958a61026a9a99985260016020528d88842090845260205287832061011e838254610445565b0390a36001815580f35b9550600193508991508161023b565b905163ea8e4eb560e01b8152fd5b8680fd5b5082346102d757816003193601126102d75760209282916102b46103d4565b90358252600185528282206001600160a01b039091168252845220549051908152f35b8280fd5b5082346102d757826003193601126102d757600254916001600160a01b0383166103135750506001600160a01b031916331760025580f35b5162dc149f60e41b8152fd5b918091506003193601126102d75783356103376103d4565b60025490936001600160a01b0391821633036103c657506103566103ef565b81855260016020528285209316928385526020528184208054903482018092116103b3577feec2f3feb835e2f2fd44281034b04700a1ddda63dd402949d470a25a7c40b36c94959650558151908152346020820152a26001815580f35b634e487b7160e01b865260118752602486fd5b63ea8e4eb560e01b81528690fd5b602435906001600160a01b03821682036103ea57565b600080fd5b600260005414610400576002600055565b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b9190820391821161045257565b634e487b7160e01b600052601160045260246000fd5b3d156104c3576001600160401b03903d8281116104ad5760405192601f8201601f19908116603f01168401908111848210176104ad5760405282523d6000602084013e565b634e487b7160e01b600052604160045260246000fd5b606090565b156104cf57565b60405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b6044820152606490fdfea26469706673582212201f3342d6415da9973d5868e7c061afecd9998c1382c8f8861211fd9a1a2d10b564736f6c63430008130033","sourceMap":"383:3413:98:-:0;;;;;;;1716:1:62;1821:22;1716:1;383:3413:98;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040908082526004918236101561001757600080fd5b600091823560e01c908163481fef8a1461031f575080638129fc1c146102db5780638630da1d146102955780638969ab53146101a25780638da5cb5b1461017a576399ea56b01461006757600080fd5b346101765760603660031901126101765782356100826103d4565b6002546001600160a01b03939192916044359185163303610167577fc512525fc7952c6edf42100f0853e94fb1c1f6daf93780cac22b690a36e03724949596506100ca6103ef565b8682948482526001602052828220978116978883526020528282205480839511610158575b508180808089610130958a61014e9a99985260016020528d88842090845260205287832061011e838254610445565b90555af161012a610468565b506104c8565b51938493849081526020810191909152901515604082015260600190565b0390a26001815580f35b955060019350889150816100ef565b5163ea8e4eb560e01b81528690fd5b5080fd5b503461017657816003193601126101765760025490516001600160a01b039091168152602090f35b5034610176576080366003190112610176578235926101bf6103d4565b604435946001600160a01b0380871694929390928588036102915760643591846002541633036102835750867f86b742620d95ff25811b118a7f2dbca2f5f4c869adf0b0d94660965f51c8d769959697986102186103ef565b839585835260016020528383209816978883526020528282205480839511610274575b508180808089610130958a61026a9a99985260016020528d88842090845260205287832061011e838254610445565b0390a36001815580f35b9550600193508991508161023b565b905163ea8e4eb560e01b8152fd5b8680fd5b5082346102d757816003193601126102d75760209282916102b46103d4565b90358252600185528282206001600160a01b039091168252845220549051908152f35b8280fd5b5082346102d757826003193601126102d757600254916001600160a01b0383166103135750506001600160a01b031916331760025580f35b5162dc149f60e41b8152fd5b918091506003193601126102d75783356103376103d4565b60025490936001600160a01b0391821633036103c657506103566103ef565b81855260016020528285209316928385526020528184208054903482018092116103b3577feec2f3feb835e2f2fd44281034b04700a1ddda63dd402949d470a25a7c40b36c94959650558151908152346020820152a26001815580f35b634e487b7160e01b865260118752602486fd5b63ea8e4eb560e01b81528690fd5b602435906001600160a01b03821682036103ea57565b600080fd5b600260005414610400576002600055565b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b9190820391821161045257565b634e487b7160e01b600052601160045260246000fd5b3d156104c3576001600160401b03903d8281116104ad5760405192601f8201601f19908116603f01168401908111848210176104ad5760405282523d6000602084013e565b634e487b7160e01b600052604160045260246000fd5b606090565b156104cf57565b60405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b6044820152606490fdfea26469706673582212201f3342d6415da9973d5868e7c061afecd9998c1382c8f8861211fd9a1a2d10b564736f6c63430008130033","sourceMap":"383:3413:98:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;383:3413:98;;;;;;;;:::i;:::-;1288:5;383:3413;-1:-1:-1;;;;;383:3413:98;;;;;;;;;1274:10;:19;1270:72;;2661:79;2227:103:62;;;;;;:::i;:::-;2292:1;;383:3413:98;;;;;;;;;;;;;;;;;;;;;;;2066:42;;2122:25;;2118:367;;383:3413;;;;;;;2611:35;383:3413;;2661:79;383:3413;;;;;;;;;;;;;;;;;;;2494:49;383:3413;;;2494:49;:::i;:::-;383:3413;;2571:30;;;;:::i;:::-;;2611:35;:::i;:::-;383:3413;2661:79;;;;383:3413;;;;;;;;;;;;;;;;;;;;;2661:79;;;;383:3413;;;;;2118:367;2399:25;-1:-1:-1;383:3413:98;;-1:-1:-1;2438:36:98;;-1:-1:-1;2438:36:98;2118:367;;1270:72;383:3413;-1:-1:-1;;;1316:15:98;;383:3413;;1316:15;383:3413;;;;;;;;;;;;;;;;;553:20;383:3413;;;-1:-1:-1;;;;;383:3413:98;;;;;;;;;;;;;;;-1:-1:-1;;383:3413:98;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;383:3413:98;;;;;;;;;;;;;;;;;1288:5;383:3413;;1274:10;:19;1270:72;;2227:103:62;;3695:92:98;2227:103:62;;;;;;:::i;:::-;2292:1;383:3413:98;;;;;;;;;;;;;;;;;;;;;;3094:42;;3150:25;;3146:367;;383:3413;;;;;;;3645:35;383:3413;;3695:92;383:3413;;;;;;;;;;;;;;;;;;;3522:53;383:3413;;;3522:53;:::i;3695:92::-;;;;383:3413;;;;;3146:367;3427:25;-1:-1:-1;383:3413:98;;-1:-1:-1;3466:36:98;;-1:-1:-1;3466:36:98;3146:367;;1270:72;383:3413;;-1:-1:-1;;;1316:15:98;;;383:3413;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;383:3413:98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1432:5;383:3413;;-1:-1:-1;;;;;383:3413:98;;1428:77;;-1:-1:-1;;;;;;;;383:3413:98;1522:10;383:3413;1432:5;383:3413;;;1428:77;383:3413;-1:-1:-1;;;1474:20:98;;;383:3413;;;;;;;;;;;;;;;;:::i;:::-;1288:5;383:3413;;;-1:-1:-1;;;;;383:3413:98;;;1274:10;:19;1270:72;;2227:103:62;;;:::i;:::-;383:3413:98;;;;;;;;;;;;;;;;;;;;;;1696:9;;383:3413;;;;;;;1720:48;383:3413;;;;;;;;;;1696:9;383:3413;;;;1720:48;383:3413;;;;;;-1:-1:-1;;;383:3413:98;;;;;;;;1270:72;-1:-1:-1;;;1316:15:98;;;;;383:3413;;;;-1:-1:-1;;;;;383:3413:98;;;;;;:::o;:::-;;;;2336:287:62;1759:1;2468:7;383:3413:98;2468:19:62;1759:1;;;2468:7;383:3413:98;2336:287:62:o;1759:1::-;383:3413:98;;-1:-1:-1;;;1759:1:62;;;;;;;;;;;;;;;;;;;;383:3413:98;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;383:3413:98;;;;;;;;;;;;;-1:-1:-1;;383:3413:98;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;383:3413:98;;;;:::o;:::-;;;;-1:-1:-1;383:3413:98;;;;;-1:-1:-1;383:3413:98;;;;:::o;:::-;;;;:::o;:::-;;;-1:-1:-1;;;383:3413:98;;;;;;;;;;;1759:1:62;-1:-1:-1;;;1759:1:62;;;383:3413:98;;;","linkReferences":{}},"methodIdentifiers":{"depositCollateral(uint256,address)":"481fef8a","initialize()":"8129fc1c","owner()":"8da5cb5b","proposalCollateral(uint256,address)":"8630da1d","withdrawCollateral(uint256,address,uint256)":"99ea56b0","withdrawCollateralFor(uint256,address,address,uint256)":"8969ab53"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"requested\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"available\",\"type\":\"uint256\"}],\"name\":\"InsufficientCollateral\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotAuthorized\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CollateralDeposited\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"isInsufficientAvailableAmount\",\"type\":\"bool\"}],\"name\":\"CollateralWithdrawn\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"fromUser\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"toUser\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"isInsufficientAvailableAmount\",\"type\":\"bool\"}],\"name\":\"CollateralWithdrawn\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"depositCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"proposalCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_fromUser\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_toUser\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawCollateralFor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CollateralVault.sol\":\"CollateralVault\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"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/contracts/security/ReentrancyGuard.sol\":{\"keccak256\":\"0xa535a5df777d44e945dd24aa43a11e44b024140fc340ad0dfe42acf4002aade1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://41319e7f621f2dc3733511332c4fd032f8e32ad2aa7fd6f665c19741d9941a34\",\"dweb:/ipfs/QmcYR3bd862GD1Bc7jwrU9bGxrhUu5na1oP964bDCu2id1\"]},\"pkg/contracts/src/CollateralVault.sol\":{\"keccak256\":\"0x124fcaebf9233d6b3eabf0979ef0a9f8325e20b34bd733870ffc816d03b9831b\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://e491550a509a3ba4cacbe80008b4d24a9044d8f94554db42f9afd79238d88a51\",\"dweb:/ipfs/QmUYNPQyk7ruHss7k5JCPxG8Q8Jcpwa3RN6W7aQdSWKRap\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"AlreadyInitialized"},{"inputs":[{"internalType":"uint256","name":"requested","type":"uint256"},{"internalType":"uint256","name":"available","type":"uint256"}],"type":"error","name":"InsufficientCollateral"},{"inputs":[],"type":"error","name":"InvalidAddress"},{"inputs":[],"type":"error","name":"NotAuthorized"},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"user","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"CollateralDeposited","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"user","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"bool","name":"isInsufficientAvailableAmount","type":"bool","indexed":false}],"type":"event","name":"CollateralWithdrawn","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"fromUser","type":"address","indexed":true},{"internalType":"address","name":"toUser","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"bool","name":"isInsufficientAvailableAmount","type":"bool","indexed":false}],"type":"event","name":"CollateralWithdrawn","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"address","name":"user","type":"address"}],"stateMutability":"payable","type":"function","name":"depositCollateral"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"address","name":"user","type":"address"}],"stateMutability":"view","type":"function","name":"proposalCollateral","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"withdrawCollateral"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_fromUser","type":"address"},{"internalType":"address","name":"_toUser","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"withdrawCollateralFor"}],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/CollateralVault.sol":"CollateralVault"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"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/contracts/security/ReentrancyGuard.sol":{"keccak256":"0xa535a5df777d44e945dd24aa43a11e44b024140fc340ad0dfe42acf4002aade1","urls":["bzz-raw://41319e7f621f2dc3733511332c4fd032f8e32ad2aa7fd6f665c19741d9941a34","dweb:/ipfs/QmcYR3bd862GD1Bc7jwrU9bGxrhUu5na1oP964bDCu2id1"],"license":"MIT"},"pkg/contracts/src/CollateralVault.sol":{"keccak256":"0x124fcaebf9233d6b3eabf0979ef0a9f8325e20b34bd733870ffc816d03b9831b","urls":["bzz-raw://e491550a509a3ba4cacbe80008b4d24a9044d8f94554db42f9afd79238d88a51","dweb:/ipfs/QmUYNPQyk7ruHss7k5JCPxG8Q8Jcpwa3RN6W7aQdSWKRap"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":54980,"contract":"pkg/contracts/src/CollateralVault.sol:CollateralVault","label":"_status","offset":0,"slot":"0","type":"t_uint256"},{"astId":69460,"contract":"pkg/contracts/src/CollateralVault.sol:CollateralVault","label":"proposalCollateral","offset":0,"slot":"1","type":"t_mapping(t_uint256,t_mapping(t_address,t_uint256))"},{"astId":69462,"contract":"pkg/contracts/src/CollateralVault.sol:CollateralVault","label":"owner","offset":0,"slot":"2","type":"t_address"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"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_mapping(t_address,t_uint256))":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => mapping(address => uint256))","numberOfBytes":"32","value":"t_mapping(t_address,t_uint256)"},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"pkg/contracts/src/CollateralVault.sol","id":69710,"exportedSymbols":{"CollateralVault":[69709],"ICollateralVault":[76171],"ReentrancyGuard":[55034],"ReentrancyGuardUpgradeable":[52534]},"nodeType":"SourceUnit","src":"42:3755:98","nodes":[{"id":69445,"nodeType":"PragmaDirective","src":"42:24:98","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":69446,"nodeType":"ImportDirective","src":"68:62:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/security/ReentrancyGuard.sol","file":"@openzeppelin/contracts/security/ReentrancyGuard.sol","nameLocation":"-1:-1:-1","scope":69710,"sourceUnit":55035,"symbolAliases":[],"unitAlias":""},{"id":69448,"nodeType":"ImportDirective","src":"131:132:98","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","nameLocation":"-1:-1:-1","scope":69710,"sourceUnit":52535,"symbolAliases":[{"foreign":{"id":69447,"name":"ReentrancyGuardUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52534,"src":"139:26:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69450,"nodeType":"ImportDirective","src":"314:67:98","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"./interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":69710,"sourceUnit":76172,"symbolAliases":[{"foreign":{"id":69449,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76171,"src":"322:16:98","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":69709,"nodeType":"ContractDefinition","src":"383:3413:98","nodes":[{"id":69460,"nodeType":"VariableDeclaration","src":"451:96:98","nodes":[],"constant":false,"functionSelector":"8630da1d","mutability":"mutable","name":"proposalCollateral","nameLocation":"529:18:98","scope":69709,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"},"typeName":{"id":69459,"keyName":"proposalId","keyNameLocation":"467:10:98","keyType":{"id":69455,"name":"uint256","nodeType":"ElementaryTypeName","src":"459:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"451:70:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":69458,"keyName":"user","keyNameLocation":"497:4:98","keyType":{"id":69456,"name":"address","nodeType":"ElementaryTypeName","src":"489:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"481:39:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"amount","valueNameLocation":"513:6:98","valueType":{"id":69457,"name":"uint256","nodeType":"ElementaryTypeName","src":"505:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}}},"visibility":"public"},{"id":69462,"nodeType":"VariableDeclaration","src":"553:20:98","nodes":[],"constant":false,"functionSelector":"8da5cb5b","mutability":"mutable","name":"owner","nameLocation":"568:5:98","scope":69709,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69461,"name":"address","nodeType":"ElementaryTypeName","src":"553:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":69470,"nodeType":"EventDefinition","src":"580:84:98","nodes":[],"anonymous":false,"eventSelector":"eec2f3feb835e2f2fd44281034b04700a1ddda63dd402949d470a25a7c40b36c","name":"CollateralDeposited","nameLocation":"586:19:98","parameters":{"id":69469,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69464,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"614:10:98","nodeType":"VariableDeclaration","scope":69470,"src":"606:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69463,"name":"uint256","nodeType":"ElementaryTypeName","src":"606:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69466,"indexed":true,"mutability":"mutable","name":"user","nameLocation":"642:4:98","nodeType":"VariableDeclaration","scope":69470,"src":"626:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69465,"name":"address","nodeType":"ElementaryTypeName","src":"626:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69468,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"656:6:98","nodeType":"VariableDeclaration","scope":69470,"src":"648:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69467,"name":"uint256","nodeType":"ElementaryTypeName","src":"648:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"605:58:98"}},{"id":69480,"nodeType":"EventDefinition","src":"669:134:98","nodes":[],"anonymous":false,"eventSelector":"c512525fc7952c6edf42100f0853e94fb1c1f6daf93780cac22b690a36e03724","name":"CollateralWithdrawn","nameLocation":"675:19:98","parameters":{"id":69479,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69472,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"712:10:98","nodeType":"VariableDeclaration","scope":69480,"src":"704:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69471,"name":"uint256","nodeType":"ElementaryTypeName","src":"704:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69474,"indexed":true,"mutability":"mutable","name":"user","nameLocation":"740:4:98","nodeType":"VariableDeclaration","scope":69480,"src":"724:20:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69473,"name":"address","nodeType":"ElementaryTypeName","src":"724:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69476,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"754:6:98","nodeType":"VariableDeclaration","scope":69480,"src":"746:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69475,"name":"uint256","nodeType":"ElementaryTypeName","src":"746:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69478,"indexed":false,"mutability":"mutable","name":"isInsufficientAvailableAmount","nameLocation":"767:29:98","nodeType":"VariableDeclaration","scope":69480,"src":"762:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69477,"name":"bool","nodeType":"ElementaryTypeName","src":"762:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"694:108:98"}},{"id":69492,"nodeType":"EventDefinition","src":"808:194:98","nodes":[],"anonymous":false,"eventSelector":"86b742620d95ff25811b118a7f2dbca2f5f4c869adf0b0d94660965f51c8d769","name":"CollateralWithdrawn","nameLocation":"814:19:98","parameters":{"id":69491,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69482,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"851:10:98","nodeType":"VariableDeclaration","scope":69492,"src":"843:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69481,"name":"uint256","nodeType":"ElementaryTypeName","src":"843:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69484,"indexed":true,"mutability":"mutable","name":"fromUser","nameLocation":"887:8:98","nodeType":"VariableDeclaration","scope":69492,"src":"871:24:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69483,"name":"address","nodeType":"ElementaryTypeName","src":"871:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69486,"indexed":true,"mutability":"mutable","name":"toUser","nameLocation":"921:6:98","nodeType":"VariableDeclaration","scope":69492,"src":"905:22:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69485,"name":"address","nodeType":"ElementaryTypeName","src":"905:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69488,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"945:6:98","nodeType":"VariableDeclaration","scope":69492,"src":"937:14:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69487,"name":"uint256","nodeType":"ElementaryTypeName","src":"937:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69490,"indexed":false,"mutability":"mutable","name":"isInsufficientAvailableAmount","nameLocation":"966:29:98","nodeType":"VariableDeclaration","scope":69492,"src":"961:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69489,"name":"bool","nodeType":"ElementaryTypeName","src":"961:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"833:168:98"}},{"id":69494,"nodeType":"ErrorDefinition","src":"1008:27:98","nodes":[],"errorSelector":"0dc149f0","name":"AlreadyInitialized","nameLocation":"1014:18:98","parameters":{"id":69493,"nodeType":"ParameterList","parameters":[],"src":"1032:2:98"}},{"id":69496,"nodeType":"ErrorDefinition","src":"1040:22:98","nodes":[],"errorSelector":"ea8e4eb5","name":"NotAuthorized","nameLocation":"1046:13:98","parameters":{"id":69495,"nodeType":"ParameterList","parameters":[],"src":"1059:2:98"}},{"id":69502,"nodeType":"ErrorDefinition","src":"1067:67:98","nodes":[],"errorSelector":"b07e3bc4","name":"InsufficientCollateral","nameLocation":"1073:22:98","parameters":{"id":69501,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69498,"mutability":"mutable","name":"requested","nameLocation":"1104:9:98","nodeType":"VariableDeclaration","scope":69502,"src":"1096:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69497,"name":"uint256","nodeType":"ElementaryTypeName","src":"1096:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69500,"mutability":"mutable","name":"available","nameLocation":"1123:9:98","nodeType":"VariableDeclaration","scope":69502,"src":"1115:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69499,"name":"uint256","nodeType":"ElementaryTypeName","src":"1115:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1095:38:98"}},{"id":69504,"nodeType":"ErrorDefinition","src":"1139:23:98","nodes":[],"errorSelector":"e6c4247b","name":"InvalidAddress","nameLocation":"1145:14:98","parameters":{"id":69503,"nodeType":"ParameterList","parameters":[],"src":"1159:2:98"}},{"id":69517,"nodeType":"ModifierDefinition","src":"1239:120:98","nodes":[],"body":{"id":69516,"nodeType":"Block","src":"1260:99:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":69506,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1274:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69507,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1278:6:98","memberName":"sender","nodeType":"MemberAccess","src":"1274:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":69508,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69462,"src":"1288:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1274:19:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69514,"nodeType":"IfStatement","src":"1270:72:98","trueBody":{"id":69513,"nodeType":"Block","src":"1295:47:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69510,"name":"NotAuthorized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69496,"src":"1316:13:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69511,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1316:15:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69512,"nodeType":"RevertStatement","src":"1309:22:98"}]}},{"id":69515,"nodeType":"PlaceholderStatement","src":"1351:1:98"}]},"name":"onlyOwner","nameLocation":"1248:9:98","parameters":{"id":69505,"nodeType":"ParameterList","parameters":[],"src":"1257:2:98"},"virtual":false,"visibility":"internal"},{"id":69521,"nodeType":"FunctionDefinition","src":"1365:16:98","nodes":[],"body":{"id":69520,"nodeType":"Block","src":"1379:2:98","nodes":[],"statements":[]},"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":69518,"nodeType":"ParameterList","parameters":[],"src":"1376:2:98"},"returnParameters":{"id":69519,"nodeType":"ParameterList","parameters":[],"src":"1379:0:98"},"scope":69709,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":69541,"nodeType":"FunctionDefinition","src":"1387:152:98","nodes":[],"body":{"id":69540,"nodeType":"Block","src":"1418:121:98","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":69529,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69524,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69462,"src":"1432:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":69527,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1449: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":69526,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1441:7:98","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":69525,"name":"address","nodeType":"ElementaryTypeName","src":"1441:7:98","typeDescriptions":{}}},"id":69528,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1441:10:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1432:19:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69534,"nodeType":"IfStatement","src":"1428:77:98","trueBody":{"id":69533,"nodeType":"Block","src":"1453:52:98","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":69530,"name":"AlreadyInitialized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69494,"src":"1474:18:98","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":69531,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1474:20:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69532,"nodeType":"RevertStatement","src":"1467:27:98"}]}},{"expression":{"id":69538,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69535,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69462,"src":"1514:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":69536,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1522:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69537,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1526:6:98","memberName":"sender","nodeType":"MemberAccess","src":"1522:10:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1514:18:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69539,"nodeType":"ExpressionStatement","src":"1514:18:98"}]},"baseFunctions":[76143],"functionSelector":"8129fc1c","implemented":true,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"1396:10:98","parameters":{"id":69522,"nodeType":"ParameterList","parameters":[],"src":"1406:2:98"},"returnParameters":{"id":69523,"nodeType":"ParameterList","parameters":[],"src":"1418:0:98"},"scope":69709,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":69569,"nodeType":"FunctionDefinition","src":"1545:230:98","nodes":[],"body":{"id":69568,"nodeType":"Block","src":"1646:129:98","nodes":[],"statements":[{"expression":{"id":69559,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":69552,"name":"proposalCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69460,"src":"1656:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"}},"id":69555,"indexExpression":{"id":69553,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69543,"src":"1675:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1656:30:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":69556,"indexExpression":{"id":69554,"name":"user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69545,"src":"1687:4:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"1656:36:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"id":69557,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1696:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69558,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1700:5:98","memberName":"value","nodeType":"MemberAccess","src":"1696:9:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1656:49:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69560,"nodeType":"ExpressionStatement","src":"1656:49:98"},{"eventCall":{"arguments":[{"id":69562,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69543,"src":"1740:10:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69563,"name":"user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69545,"src":"1752:4:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":69564,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1758:3:98","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":69565,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1762:5:98","memberName":"value","nodeType":"MemberAccess","src":"1758:9: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":69561,"name":"CollateralDeposited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69470,"src":"1720:19:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":69566,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1720:48:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69567,"nodeType":"EmitStatement","src":"1715:53:98"}]},"baseFunctions":[76150],"functionSelector":"481fef8a","implemented":true,"kind":"function","modifiers":[{"id":69548,"kind":"modifierInvocation","modifierName":{"id":69547,"name":"onlyOwner","nameLocations":["1623:9:98"],"nodeType":"IdentifierPath","referencedDeclaration":69517,"src":"1623:9:98"},"nodeType":"ModifierInvocation","src":"1623:9:98"},{"id":69550,"kind":"modifierInvocation","modifierName":{"id":69549,"name":"nonReentrant","nameLocations":["1633:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":54999,"src":"1633:12:98"},"nodeType":"ModifierInvocation","src":"1633:12:98"}],"name":"depositCollateral","nameLocation":"1554:17:98","parameters":{"id":69546,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69543,"mutability":"mutable","name":"proposalId","nameLocation":"1580:10:98","nodeType":"VariableDeclaration","scope":69569,"src":"1572:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69542,"name":"uint256","nodeType":"ElementaryTypeName","src":"1572:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69545,"mutability":"mutable","name":"user","nameLocation":"1600:4:98","nodeType":"VariableDeclaration","scope":69569,"src":"1592:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69544,"name":"address","nodeType":"ElementaryTypeName","src":"1592:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1571:34:98"},"returnParameters":{"id":69551,"nodeType":"ParameterList","parameters":[],"src":"1646:0:98"},"scope":69709,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":69637,"nodeType":"FunctionDefinition","src":"1781:966:98","nodes":[],"body":{"id":69636,"nodeType":"Block","src":"1894:853:98","nodes":[],"statements":[{"assignments":[69583],"declarations":[{"constant":false,"id":69583,"mutability":"mutable","name":"availableAmount","nameLocation":"1912:15:98","nodeType":"VariableDeclaration","scope":69636,"src":"1904:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69582,"name":"uint256","nodeType":"ElementaryTypeName","src":"1904:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69589,"initialValue":{"baseExpression":{"baseExpression":{"id":69584,"name":"proposalCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69460,"src":"1930:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"}},"id":69586,"indexExpression":{"id":69585,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69571,"src":"1949:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1930:31:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":69588,"indexExpression":{"id":69587,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69573,"src":"1962:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1930:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"1904:64:98"},{"assignments":[69591],"declarations":[{"constant":false,"id":69591,"mutability":"mutable","name":"isInsufficientAvailableAmount","nameLocation":"2071:29:98","nodeType":"VariableDeclaration","scope":69636,"src":"2066:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69590,"name":"bool","nodeType":"ElementaryTypeName","src":"2066:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":69593,"initialValue":{"hexValue":"66616c7365","id":69592,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"2103:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"2066:42:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69596,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69594,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69575,"src":"2122:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":69595,"name":"availableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"2132:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2122:25:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69606,"nodeType":"IfStatement","src":"2118:367:98","trueBody":{"id":69605,"nodeType":"Block","src":"2149:336:98","statements":[{"expression":{"id":69599,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69597,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69575,"src":"2399:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69598,"name":"availableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69583,"src":"2409:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2399:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69600,"nodeType":"ExpressionStatement","src":"2399:25:98"},{"expression":{"id":69603,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69601,"name":"isInsufficientAvailableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69591,"src":"2438:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":69602,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"2470:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"2438:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69604,"nodeType":"ExpressionStatement","src":"2438:36:98"}]}},{"expression":{"id":69613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":69607,"name":"proposalCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69460,"src":"2494:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"}},"id":69610,"indexExpression":{"id":69608,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69571,"src":"2513:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2494:31:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":69611,"indexExpression":{"id":69609,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69573,"src":"2526:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2494:38:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":69612,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69575,"src":"2536:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2494:49:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69614,"nodeType":"ExpressionStatement","src":"2494:49:98"},{"assignments":[69616,null],"declarations":[{"constant":false,"id":69616,"mutability":"mutable","name":"success","nameLocation":"2559:7:98","nodeType":"VariableDeclaration","scope":69636,"src":"2554:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69615,"name":"bool","nodeType":"ElementaryTypeName","src":"2554:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},null],"id":69623,"initialValue":{"arguments":[{"hexValue":"","id":69621,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2598:2:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"id":69617,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69573,"src":"2571:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69618,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2577:4:98","memberName":"call","nodeType":"MemberAccess","src":"2571:10:98","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":69620,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":69619,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69575,"src":"2589:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"2571:26:98","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":69622,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2571:30:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"2553:48:98"},{"expression":{"arguments":[{"id":69625,"name":"success","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69616,"src":"2619:7:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5472616e73666572206661696c6564","id":69626,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2628:17:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_25adaa6d082ce15f901e0d8a3d393e7462ef9edf2e6bc8321fa14d1615b6fc51","typeString":"literal_string \"Transfer failed\""},"value":"Transfer failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_25adaa6d082ce15f901e0d8a3d393e7462ef9edf2e6bc8321fa14d1615b6fc51","typeString":"literal_string \"Transfer failed\""}],"id":69624,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"2611:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":69627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2611:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69628,"nodeType":"ExpressionStatement","src":"2611:35:98"},{"eventCall":{"arguments":[{"id":69630,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69571,"src":"2681:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69631,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69573,"src":"2694:5:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":69632,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69575,"src":"2701:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69633,"name":"isInsufficientAvailableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69591,"src":"2710:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":69629,"name":"CollateralWithdrawn","nodeType":"Identifier","overloadedDeclarations":[69480,69492],"referencedDeclaration":69480,"src":"2661:19:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$_t_bool_$returns$__$","typeString":"function (uint256,address,uint256,bool)"}},"id":69634,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2661:79:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69635,"nodeType":"EmitStatement","src":"2656:84:98"}]},"baseFunctions":[76159],"functionSelector":"99ea56b0","implemented":true,"kind":"function","modifiers":[{"id":69578,"kind":"modifierInvocation","modifierName":{"id":69577,"name":"onlyOwner","nameLocations":["1871:9:98"],"nodeType":"IdentifierPath","referencedDeclaration":69517,"src":"1871:9:98"},"nodeType":"ModifierInvocation","src":"1871:9:98"},{"id":69580,"kind":"modifierInvocation","modifierName":{"id":69579,"name":"nonReentrant","nameLocations":["1881:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":54999,"src":"1881:12:98"},"nodeType":"ModifierInvocation","src":"1881:12:98"}],"name":"withdrawCollateral","nameLocation":"1790:18:98","parameters":{"id":69576,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69571,"mutability":"mutable","name":"_proposalId","nameLocation":"1817:11:98","nodeType":"VariableDeclaration","scope":69637,"src":"1809:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69570,"name":"uint256","nodeType":"ElementaryTypeName","src":"1809:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69573,"mutability":"mutable","name":"_user","nameLocation":"1838:5:98","nodeType":"VariableDeclaration","scope":69637,"src":"1830:13:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69572,"name":"address","nodeType":"ElementaryTypeName","src":"1830:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69575,"mutability":"mutable","name":"_amount","nameLocation":"1853:7:98","nodeType":"VariableDeclaration","scope":69637,"src":"1845:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69574,"name":"uint256","nodeType":"ElementaryTypeName","src":"1845:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1808:53:98"},"returnParameters":{"id":69581,"nodeType":"ParameterList","parameters":[],"src":"1894:0:98"},"scope":69709,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":69708,"nodeType":"FunctionDefinition","src":"2753:1041:98","nodes":[],"body":{"id":69707,"nodeType":"Block","src":"2918:876:98","nodes":[],"statements":[{"assignments":[69653],"declarations":[{"constant":false,"id":69653,"mutability":"mutable","name":"availableAmount","nameLocation":"2936:15:98","nodeType":"VariableDeclaration","scope":69707,"src":"2928:23:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69652,"name":"uint256","nodeType":"ElementaryTypeName","src":"2928:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":69659,"initialValue":{"baseExpression":{"baseExpression":{"id":69654,"name":"proposalCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69460,"src":"2954:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"}},"id":69656,"indexExpression":{"id":69655,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69639,"src":"2973:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2954:31:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":69658,"indexExpression":{"id":69657,"name":"_fromUser","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"2986:9:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2954:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"2928:68:98"},{"assignments":[69661],"declarations":[{"constant":false,"id":69661,"mutability":"mutable","name":"isInsufficientAvailableAmount","nameLocation":"3099:29:98","nodeType":"VariableDeclaration","scope":69707,"src":"3094:34:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69660,"name":"bool","nodeType":"ElementaryTypeName","src":"3094:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":69663,"initialValue":{"hexValue":"66616c7365","id":69662,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3131:5:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"3094:42:98"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":69666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":69664,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69645,"src":"3150:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":69665,"name":"availableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69653,"src":"3160:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3150:25:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69676,"nodeType":"IfStatement","src":"3146:367:98","trueBody":{"id":69675,"nodeType":"Block","src":"3177:336:98","statements":[{"expression":{"id":69669,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69667,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69645,"src":"3427:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":69668,"name":"availableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69653,"src":"3437:15:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3427:25:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69670,"nodeType":"ExpressionStatement","src":"3427:25:98"},{"expression":{"id":69673,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":69671,"name":"isInsufficientAvailableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69661,"src":"3466:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":69672,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3498:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"3466:36:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":69674,"nodeType":"ExpressionStatement","src":"3466:36:98"}]}},{"expression":{"id":69683,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":69677,"name":"proposalCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69460,"src":"3522:18:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"}},"id":69680,"indexExpression":{"id":69678,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69639,"src":"3541:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3522:31:98","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":69681,"indexExpression":{"id":69679,"name":"_fromUser","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"3554:9:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3522:42:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":69682,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69645,"src":"3568:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3522:53:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":69684,"nodeType":"ExpressionStatement","src":"3522:53:98"},{"assignments":[69686,null],"declarations":[{"constant":false,"id":69686,"mutability":"mutable","name":"success","nameLocation":"3591:7:98","nodeType":"VariableDeclaration","scope":69707,"src":"3586:12:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69685,"name":"bool","nodeType":"ElementaryTypeName","src":"3586:4:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},null],"id":69693,"initialValue":{"arguments":[{"hexValue":"","id":69691,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3632:2:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"id":69687,"name":"_toUser","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69643,"src":"3603:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69688,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3611:4:98","memberName":"call","nodeType":"MemberAccess","src":"3603:12:98","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":69690,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":69689,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69645,"src":"3623:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"3603:28:98","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":69692,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3603:32:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"3585:50:98"},{"expression":{"arguments":[{"id":69695,"name":"success","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69686,"src":"3653:7:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5472616e73666572206661696c6564","id":69696,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3662:17:98","typeDescriptions":{"typeIdentifier":"t_stringliteral_25adaa6d082ce15f901e0d8a3d393e7462ef9edf2e6bc8321fa14d1615b6fc51","typeString":"literal_string \"Transfer failed\""},"value":"Transfer failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_25adaa6d082ce15f901e0d8a3d393e7462ef9edf2e6bc8321fa14d1615b6fc51","typeString":"literal_string \"Transfer failed\""}],"id":69694,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3645:7:98","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":69697,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3645:35:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69698,"nodeType":"ExpressionStatement","src":"3645:35:98"},{"eventCall":{"arguments":[{"id":69700,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69639,"src":"3715:11:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69701,"name":"_fromUser","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69641,"src":"3728:9:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":69702,"name":"_toUser","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69643,"src":"3739:7:98","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":69703,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69645,"src":"3748:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":69704,"name":"isInsufficientAvailableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69661,"src":"3757:29:98","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":69699,"name":"CollateralWithdrawn","nodeType":"Identifier","overloadedDeclarations":[69480,69492],"referencedDeclaration":69492,"src":"3695:19:98","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$_t_bool_$returns$__$","typeString":"function (uint256,address,address,uint256,bool)"}},"id":69705,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3695:92:98","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":69706,"nodeType":"EmitStatement","src":"3690:97:98"}]},"baseFunctions":[76170],"functionSelector":"8969ab53","implemented":true,"kind":"function","modifiers":[{"id":69648,"kind":"modifierInvocation","modifierName":{"id":69647,"name":"onlyOwner","nameLocations":["2883:9:98"],"nodeType":"IdentifierPath","referencedDeclaration":69517,"src":"2883:9:98"},"nodeType":"ModifierInvocation","src":"2883:9:98"},{"id":69650,"kind":"modifierInvocation","modifierName":{"id":69649,"name":"nonReentrant","nameLocations":["2901:12:98"],"nodeType":"IdentifierPath","referencedDeclaration":54999,"src":"2901:12:98"},"nodeType":"ModifierInvocation","src":"2901:12:98"}],"name":"withdrawCollateralFor","nameLocation":"2762:21:98","parameters":{"id":69646,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69639,"mutability":"mutable","name":"_proposalId","nameLocation":"2792:11:98","nodeType":"VariableDeclaration","scope":69708,"src":"2784:19:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69638,"name":"uint256","nodeType":"ElementaryTypeName","src":"2784:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":69641,"mutability":"mutable","name":"_fromUser","nameLocation":"2813:9:98","nodeType":"VariableDeclaration","scope":69708,"src":"2805:17:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69640,"name":"address","nodeType":"ElementaryTypeName","src":"2805:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69643,"mutability":"mutable","name":"_toUser","nameLocation":"2832:7:98","nodeType":"VariableDeclaration","scope":69708,"src":"2824:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69642,"name":"address","nodeType":"ElementaryTypeName","src":"2824:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":69645,"mutability":"mutable","name":"_amount","nameLocation":"2849:7:98","nodeType":"VariableDeclaration","scope":69708,"src":"2841:15:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":69644,"name":"uint256","nodeType":"ElementaryTypeName","src":"2841:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2783:74:98"},"returnParameters":{"id":69651,"nodeType":"ParameterList","parameters":[],"src":"2918:0:98"},"scope":69709,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[{"baseName":{"id":69451,"name":"ReentrancyGuard","nameLocations":["411:15:98"],"nodeType":"IdentifierPath","referencedDeclaration":55034,"src":"411:15:98"},"id":69452,"nodeType":"InheritanceSpecifier","src":"411:15:98"},{"baseName":{"id":69453,"name":"ICollateralVault","nameLocations":["428:16:98"],"nodeType":"IdentifierPath","referencedDeclaration":76171,"src":"428:16:98"},"id":69454,"nodeType":"InheritanceSpecifier","src":"428:16:98"}],"canonicalName":"CollateralVault","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[69709,76171,55034],"name":"CollateralVault","nameLocation":"392:15:98","scope":69710,"usedErrors":[69494,69496,69502,69504]}],"license":"AGPL-3.0-only"},"id":98} \ No newline at end of file +{"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"depositCollateral","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"initialize","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"owner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"proposalCollateral","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"amount","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"withdrawCollateral","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_user","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"withdrawCollateralFor","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_fromUser","type":"address","internalType":"address"},{"name":"_toUser","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"CollateralDeposited","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"user","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"CollateralWithdrawn","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"user","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"isInsufficientAvailableAmount","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"CollateralWithdrawn","inputs":[{"name":"proposalId","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"fromUser","type":"address","indexed":true,"internalType":"address"},{"name":"toUser","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"isInsufficientAvailableAmount","type":"bool","indexed":false,"internalType":"bool"}],"anonymous":false},{"type":"error","name":"AlreadyInitialized","inputs":[]},{"type":"error","name":"InsufficientCollateral","inputs":[{"name":"requested","type":"uint256","internalType":"uint256"},{"name":"available","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"InvalidAddress","inputs":[]},{"type":"error","name":"NotAuthorized","inputs":[]}],"bytecode":{"object":"0x6080806040523461001b57600160005561053c90816100218239f35b600080fdfe60806040908082526004918236101561001757600080fd5b600091823560e01c908163481fef8a1461031f575080638129fc1c146102db5780638630da1d146102955780638969ab53146101a25780638da5cb5b1461017a576399ea56b01461006757600080fd5b346101765760603660031901126101765782356100826103d4565b6002546001600160a01b03939192916044359185163303610167577fc512525fc7952c6edf42100f0853e94fb1c1f6daf93780cac22b690a36e03724949596506100ca6103ef565b8682948482526001602052828220978116978883526020528282205480839511610158575b508180808089610130958a61014e9a99985260016020528d88842090845260205287832061011e838254610445565b90555af161012a610468565b506104c8565b51938493849081526020810191909152901515604082015260600190565b0390a26001815580f35b955060019350889150816100ef565b5163ea8e4eb560e01b81528690fd5b5080fd5b503461017657816003193601126101765760025490516001600160a01b039091168152602090f35b5034610176576080366003190112610176578235926101bf6103d4565b604435946001600160a01b0380871694929390928588036102915760643591846002541633036102835750867f86b742620d95ff25811b118a7f2dbca2f5f4c869adf0b0d94660965f51c8d769959697986102186103ef565b839585835260016020528383209816978883526020528282205480839511610274575b508180808089610130958a61026a9a99985260016020528d88842090845260205287832061011e838254610445565b0390a36001815580f35b9550600193508991508161023b565b905163ea8e4eb560e01b8152fd5b8680fd5b5082346102d757816003193601126102d75760209282916102b46103d4565b90358252600185528282206001600160a01b039091168252845220549051908152f35b8280fd5b5082346102d757826003193601126102d757600254916001600160a01b0383166103135750506001600160a01b031916331760025580f35b5162dc149f60e41b8152fd5b918091506003193601126102d75783356103376103d4565b60025490936001600160a01b0391821633036103c657506103566103ef565b81855260016020528285209316928385526020528184208054903482018092116103b3577feec2f3feb835e2f2fd44281034b04700a1ddda63dd402949d470a25a7c40b36c94959650558151908152346020820152a26001815580f35b634e487b7160e01b865260118752602486fd5b63ea8e4eb560e01b81528690fd5b602435906001600160a01b03821682036103ea57565b600080fd5b600260005414610400576002600055565b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b9190820391821161045257565b634e487b7160e01b600052601160045260246000fd5b3d156104c3576001600160401b03903d8281116104ad5760405192601f8201601f19908116603f01168401908111848210176104ad5760405282523d6000602084013e565b634e487b7160e01b600052604160045260246000fd5b606090565b156104cf57565b60405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b6044820152606490fdfea26469706673582212201f3342d6415da9973d5868e7c061afecd9998c1382c8f8861211fd9a1a2d10b564736f6c63430008130033","sourceMap":"383:3413:97:-:0;;;;;;;1716:1:62;1821:22;1716:1;383:3413:97;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040908082526004918236101561001757600080fd5b600091823560e01c908163481fef8a1461031f575080638129fc1c146102db5780638630da1d146102955780638969ab53146101a25780638da5cb5b1461017a576399ea56b01461006757600080fd5b346101765760603660031901126101765782356100826103d4565b6002546001600160a01b03939192916044359185163303610167577fc512525fc7952c6edf42100f0853e94fb1c1f6daf93780cac22b690a36e03724949596506100ca6103ef565b8682948482526001602052828220978116978883526020528282205480839511610158575b508180808089610130958a61014e9a99985260016020528d88842090845260205287832061011e838254610445565b90555af161012a610468565b506104c8565b51938493849081526020810191909152901515604082015260600190565b0390a26001815580f35b955060019350889150816100ef565b5163ea8e4eb560e01b81528690fd5b5080fd5b503461017657816003193601126101765760025490516001600160a01b039091168152602090f35b5034610176576080366003190112610176578235926101bf6103d4565b604435946001600160a01b0380871694929390928588036102915760643591846002541633036102835750867f86b742620d95ff25811b118a7f2dbca2f5f4c869adf0b0d94660965f51c8d769959697986102186103ef565b839585835260016020528383209816978883526020528282205480839511610274575b508180808089610130958a61026a9a99985260016020528d88842090845260205287832061011e838254610445565b0390a36001815580f35b9550600193508991508161023b565b905163ea8e4eb560e01b8152fd5b8680fd5b5082346102d757816003193601126102d75760209282916102b46103d4565b90358252600185528282206001600160a01b039091168252845220549051908152f35b8280fd5b5082346102d757826003193601126102d757600254916001600160a01b0383166103135750506001600160a01b031916331760025580f35b5162dc149f60e41b8152fd5b918091506003193601126102d75783356103376103d4565b60025490936001600160a01b0391821633036103c657506103566103ef565b81855260016020528285209316928385526020528184208054903482018092116103b3577feec2f3feb835e2f2fd44281034b04700a1ddda63dd402949d470a25a7c40b36c94959650558151908152346020820152a26001815580f35b634e487b7160e01b865260118752602486fd5b63ea8e4eb560e01b81528690fd5b602435906001600160a01b03821682036103ea57565b600080fd5b600260005414610400576002600055565b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b9190820391821161045257565b634e487b7160e01b600052601160045260246000fd5b3d156104c3576001600160401b03903d8281116104ad5760405192601f8201601f19908116603f01168401908111848210176104ad5760405282523d6000602084013e565b634e487b7160e01b600052604160045260246000fd5b606090565b156104cf57565b60405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b6044820152606490fdfea26469706673582212201f3342d6415da9973d5868e7c061afecd9998c1382c8f8861211fd9a1a2d10b564736f6c63430008130033","sourceMap":"383:3413:97:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;383:3413:97;;;;;;;;:::i;:::-;1288:5;383:3413;-1:-1:-1;;;;;383:3413:97;;;;;;;;;1274:10;:19;1270:72;;2661:79;2227:103:62;;;;;;:::i;:::-;2292:1;;383:3413:97;;;;;;;;;;;;;;;;;;;;;;;2066:42;;2122:25;;2118:367;;383:3413;;;;;;;2611:35;383:3413;;2661:79;383:3413;;;;;;;;;;;;;;;;;;;2494:49;383:3413;;;2494:49;:::i;:::-;383:3413;;2571:30;;;;:::i;:::-;;2611:35;:::i;:::-;383:3413;2661:79;;;;383:3413;;;;;;;;;;;;;;;;;;;;;2661:79;;;;383:3413;;;;;2118:367;2399:25;-1:-1:-1;383:3413:97;;-1:-1:-1;2438:36:97;;-1:-1:-1;2438:36:97;2118:367;;1270:72;383:3413;-1:-1:-1;;;1316:15:97;;383:3413;;1316:15;383:3413;;;;;;;;;;;;;;;;;553:20;383:3413;;;-1:-1:-1;;;;;383:3413:97;;;;;;;;;;;;;;;-1:-1:-1;;383:3413:97;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;383:3413:97;;;;;;;;;;;;;;;;;1288:5;383:3413;;1274:10;:19;1270:72;;2227:103:62;;3695:92:97;2227:103:62;;;;;;:::i;:::-;2292:1;383:3413:97;;;;;;;;;;;;;;;;;;;;;;3094:42;;3150:25;;3146:367;;383:3413;;;;;;;3645:35;383:3413;;3695:92;383:3413;;;;;;;;;;;;;;;;;;;3522:53;383:3413;;;3522:53;:::i;3695:92::-;;;;383:3413;;;;;3146:367;3427:25;-1:-1:-1;383:3413:97;;-1:-1:-1;3466:36:97;;-1:-1:-1;3466:36:97;3146:367;;1270:72;383:3413;;-1:-1:-1;;;1316:15:97;;;383:3413;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;383:3413:97;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1432:5;383:3413;;-1:-1:-1;;;;;383:3413:97;;1428:77;;-1:-1:-1;;;;;;;;383:3413:97;1522:10;383:3413;1432:5;383:3413;;;1428:77;383:3413;-1:-1:-1;;;1474:20:97;;;383:3413;;;;;;;;;;;;;;;;:::i;:::-;1288:5;383:3413;;;-1:-1:-1;;;;;383:3413:97;;;1274:10;:19;1270:72;;2227:103:62;;;:::i;:::-;383:3413:97;;;;;;;;;;;;;;;;;;;;;;1696:9;;383:3413;;;;;;;1720:48;383:3413;;;;;;;;;;1696:9;383:3413;;;;1720:48;383:3413;;;;;;-1:-1:-1;;;383:3413:97;;;;;;;;1270:72;-1:-1:-1;;;1316:15:97;;;;;383:3413;;;;-1:-1:-1;;;;;383:3413:97;;;;;;:::o;:::-;;;;2336:287:62;1759:1;2468:7;383:3413:97;2468:19:62;1759:1;;;2468:7;383:3413:97;2336:287:62:o;1759:1::-;383:3413:97;;-1:-1:-1;;;1759:1:62;;;;;;;;;;;;;;;;;;;;383:3413:97;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;383:3413:97;;;;;;;;;;;;;-1:-1:-1;;383:3413:97;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;383:3413:97;;;;:::o;:::-;;;;-1:-1:-1;383:3413:97;;;;;-1:-1:-1;383:3413:97;;;;:::o;:::-;;;;:::o;:::-;;;-1:-1:-1;;;383:3413:97;;;;;;;;;;;1759:1:62;-1:-1:-1;;;1759:1:62;;;383:3413:97;;;","linkReferences":{}},"methodIdentifiers":{"depositCollateral(uint256,address)":"481fef8a","initialize()":"8129fc1c","owner()":"8da5cb5b","proposalCollateral(uint256,address)":"8630da1d","withdrawCollateral(uint256,address,uint256)":"99ea56b0","withdrawCollateralFor(uint256,address,address,uint256)":"8969ab53"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"requested\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"available\",\"type\":\"uint256\"}],\"name\":\"InsufficientCollateral\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidAddress\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotAuthorized\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"CollateralDeposited\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"isInsufficientAvailableAmount\",\"type\":\"bool\"}],\"name\":\"CollateralWithdrawn\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"fromUser\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"toUser\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"isInsufficientAvailableAmount\",\"type\":\"bool\"}],\"name\":\"CollateralWithdrawn\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"depositCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"proposalCollateral\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_fromUser\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_toUser\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawCollateralFor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/CollateralVault.sol\":\"CollateralVault\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"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/contracts/security/ReentrancyGuard.sol\":{\"keccak256\":\"0xa535a5df777d44e945dd24aa43a11e44b024140fc340ad0dfe42acf4002aade1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://41319e7f621f2dc3733511332c4fd032f8e32ad2aa7fd6f665c19741d9941a34\",\"dweb:/ipfs/QmcYR3bd862GD1Bc7jwrU9bGxrhUu5na1oP964bDCu2id1\"]},\"pkg/contracts/src/CollateralVault.sol\":{\"keccak256\":\"0x124fcaebf9233d6b3eabf0979ef0a9f8325e20b34bd733870ffc816d03b9831b\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://e491550a509a3ba4cacbe80008b4d24a9044d8f94554db42f9afd79238d88a51\",\"dweb:/ipfs/QmUYNPQyk7ruHss7k5JCPxG8Q8Jcpwa3RN6W7aQdSWKRap\"]},\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"AlreadyInitialized"},{"inputs":[{"internalType":"uint256","name":"requested","type":"uint256"},{"internalType":"uint256","name":"available","type":"uint256"}],"type":"error","name":"InsufficientCollateral"},{"inputs":[],"type":"error","name":"InvalidAddress"},{"inputs":[],"type":"error","name":"NotAuthorized"},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"user","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"CollateralDeposited","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"user","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"bool","name":"isInsufficientAvailableAmount","type":"bool","indexed":false}],"type":"event","name":"CollateralWithdrawn","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256","indexed":false},{"internalType":"address","name":"fromUser","type":"address","indexed":true},{"internalType":"address","name":"toUser","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false},{"internalType":"bool","name":"isInsufficientAvailableAmount","type":"bool","indexed":false}],"type":"event","name":"CollateralWithdrawn","anonymous":false},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"address","name":"user","type":"address"}],"stateMutability":"payable","type":"function","name":"depositCollateral"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[],"stateMutability":"view","type":"function","name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"address","name":"user","type":"address"}],"stateMutability":"view","type":"function","name":"proposalCollateral","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"withdrawCollateral"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_fromUser","type":"address"},{"internalType":"address","name":"_toUser","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"withdrawCollateralFor"}],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/CollateralVault.sol":"CollateralVault"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"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/contracts/security/ReentrancyGuard.sol":{"keccak256":"0xa535a5df777d44e945dd24aa43a11e44b024140fc340ad0dfe42acf4002aade1","urls":["bzz-raw://41319e7f621f2dc3733511332c4fd032f8e32ad2aa7fd6f665c19741d9941a34","dweb:/ipfs/QmcYR3bd862GD1Bc7jwrU9bGxrhUu5na1oP964bDCu2id1"],"license":"MIT"},"pkg/contracts/src/CollateralVault.sol":{"keccak256":"0x124fcaebf9233d6b3eabf0979ef0a9f8325e20b34bd733870ffc816d03b9831b","urls":["bzz-raw://e491550a509a3ba4cacbe80008b4d24a9044d8f94554db42f9afd79238d88a51","dweb:/ipfs/QmUYNPQyk7ruHss7k5JCPxG8Q8Jcpwa3RN6W7aQdSWKRap"],"license":"AGPL-3.0-only"},"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":54980,"contract":"pkg/contracts/src/CollateralVault.sol:CollateralVault","label":"_status","offset":0,"slot":"0","type":"t_uint256"},{"astId":70266,"contract":"pkg/contracts/src/CollateralVault.sol:CollateralVault","label":"proposalCollateral","offset":0,"slot":"1","type":"t_mapping(t_uint256,t_mapping(t_address,t_uint256))"},{"astId":70268,"contract":"pkg/contracts/src/CollateralVault.sol:CollateralVault","label":"owner","offset":0,"slot":"2","type":"t_address"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"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_mapping(t_address,t_uint256))":{"encoding":"mapping","key":"t_uint256","label":"mapping(uint256 => mapping(address => uint256))","numberOfBytes":"32","value":"t_mapping(t_address,t_uint256)"},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"pkg/contracts/src/CollateralVault.sol","id":70516,"exportedSymbols":{"CollateralVault":[70515],"ICollateralVault":[76982],"ReentrancyGuard":[55034],"ReentrancyGuardUpgradeable":[52534]},"nodeType":"SourceUnit","src":"42:3755:97","nodes":[{"id":70251,"nodeType":"PragmaDirective","src":"42:24:97","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":70252,"nodeType":"ImportDirective","src":"68:62:97","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/security/ReentrancyGuard.sol","file":"@openzeppelin/contracts/security/ReentrancyGuard.sol","nameLocation":"-1:-1:-1","scope":70516,"sourceUnit":55035,"symbolAliases":[],"unitAlias":""},{"id":70254,"nodeType":"ImportDirective","src":"131:132:97","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","nameLocation":"-1:-1:-1","scope":70516,"sourceUnit":52535,"symbolAliases":[{"foreign":{"id":70253,"name":"ReentrancyGuardUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52534,"src":"139:26:97","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70256,"nodeType":"ImportDirective","src":"314:67:97","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","file":"./interfaces/ICollateralVault.sol","nameLocation":"-1:-1:-1","scope":70516,"sourceUnit":76983,"symbolAliases":[{"foreign":{"id":70255,"name":"ICollateralVault","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76982,"src":"322:16:97","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70515,"nodeType":"ContractDefinition","src":"383:3413:97","nodes":[{"id":70266,"nodeType":"VariableDeclaration","src":"451:96:97","nodes":[],"constant":false,"functionSelector":"8630da1d","mutability":"mutable","name":"proposalCollateral","nameLocation":"529:18:97","scope":70515,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"},"typeName":{"id":70265,"keyName":"proposalId","keyNameLocation":"467:10:97","keyType":{"id":70261,"name":"uint256","nodeType":"ElementaryTypeName","src":"459:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Mapping","src":"451:70:97","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":70264,"keyName":"user","keyNameLocation":"497:4:97","keyType":{"id":70262,"name":"address","nodeType":"ElementaryTypeName","src":"489:7:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"481:39:97","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"amount","valueNameLocation":"513:6:97","valueType":{"id":70263,"name":"uint256","nodeType":"ElementaryTypeName","src":"505:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}}},"visibility":"public"},{"id":70268,"nodeType":"VariableDeclaration","src":"553:20:97","nodes":[],"constant":false,"functionSelector":"8da5cb5b","mutability":"mutable","name":"owner","nameLocation":"568:5:97","scope":70515,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70267,"name":"address","nodeType":"ElementaryTypeName","src":"553:7:97","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70276,"nodeType":"EventDefinition","src":"580:84:97","nodes":[],"anonymous":false,"eventSelector":"eec2f3feb835e2f2fd44281034b04700a1ddda63dd402949d470a25a7c40b36c","name":"CollateralDeposited","nameLocation":"586:19:97","parameters":{"id":70275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70270,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"614:10:97","nodeType":"VariableDeclaration","scope":70276,"src":"606:18:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70269,"name":"uint256","nodeType":"ElementaryTypeName","src":"606:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70272,"indexed":true,"mutability":"mutable","name":"user","nameLocation":"642:4:97","nodeType":"VariableDeclaration","scope":70276,"src":"626:20:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70271,"name":"address","nodeType":"ElementaryTypeName","src":"626:7:97","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70274,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"656:6:97","nodeType":"VariableDeclaration","scope":70276,"src":"648:14:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70273,"name":"uint256","nodeType":"ElementaryTypeName","src":"648:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"605:58:97"}},{"id":70286,"nodeType":"EventDefinition","src":"669:134:97","nodes":[],"anonymous":false,"eventSelector":"c512525fc7952c6edf42100f0853e94fb1c1f6daf93780cac22b690a36e03724","name":"CollateralWithdrawn","nameLocation":"675:19:97","parameters":{"id":70285,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70278,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"712:10:97","nodeType":"VariableDeclaration","scope":70286,"src":"704:18:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70277,"name":"uint256","nodeType":"ElementaryTypeName","src":"704:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70280,"indexed":true,"mutability":"mutable","name":"user","nameLocation":"740:4:97","nodeType":"VariableDeclaration","scope":70286,"src":"724:20:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70279,"name":"address","nodeType":"ElementaryTypeName","src":"724:7:97","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70282,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"754:6:97","nodeType":"VariableDeclaration","scope":70286,"src":"746:14:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70281,"name":"uint256","nodeType":"ElementaryTypeName","src":"746:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70284,"indexed":false,"mutability":"mutable","name":"isInsufficientAvailableAmount","nameLocation":"767:29:97","nodeType":"VariableDeclaration","scope":70286,"src":"762:34:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70283,"name":"bool","nodeType":"ElementaryTypeName","src":"762:4:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"694:108:97"}},{"id":70298,"nodeType":"EventDefinition","src":"808:194:97","nodes":[],"anonymous":false,"eventSelector":"86b742620d95ff25811b118a7f2dbca2f5f4c869adf0b0d94660965f51c8d769","name":"CollateralWithdrawn","nameLocation":"814:19:97","parameters":{"id":70297,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70288,"indexed":false,"mutability":"mutable","name":"proposalId","nameLocation":"851:10:97","nodeType":"VariableDeclaration","scope":70298,"src":"843:18:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70287,"name":"uint256","nodeType":"ElementaryTypeName","src":"843:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70290,"indexed":true,"mutability":"mutable","name":"fromUser","nameLocation":"887:8:97","nodeType":"VariableDeclaration","scope":70298,"src":"871:24:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70289,"name":"address","nodeType":"ElementaryTypeName","src":"871:7:97","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70292,"indexed":true,"mutability":"mutable","name":"toUser","nameLocation":"921:6:97","nodeType":"VariableDeclaration","scope":70298,"src":"905:22:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70291,"name":"address","nodeType":"ElementaryTypeName","src":"905:7:97","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70294,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"945:6:97","nodeType":"VariableDeclaration","scope":70298,"src":"937:14:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70293,"name":"uint256","nodeType":"ElementaryTypeName","src":"937:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70296,"indexed":false,"mutability":"mutable","name":"isInsufficientAvailableAmount","nameLocation":"966:29:97","nodeType":"VariableDeclaration","scope":70298,"src":"961:34:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70295,"name":"bool","nodeType":"ElementaryTypeName","src":"961:4:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"833:168:97"}},{"id":70300,"nodeType":"ErrorDefinition","src":"1008:27:97","nodes":[],"errorSelector":"0dc149f0","name":"AlreadyInitialized","nameLocation":"1014:18:97","parameters":{"id":70299,"nodeType":"ParameterList","parameters":[],"src":"1032:2:97"}},{"id":70302,"nodeType":"ErrorDefinition","src":"1040:22:97","nodes":[],"errorSelector":"ea8e4eb5","name":"NotAuthorized","nameLocation":"1046:13:97","parameters":{"id":70301,"nodeType":"ParameterList","parameters":[],"src":"1059:2:97"}},{"id":70308,"nodeType":"ErrorDefinition","src":"1067:67:97","nodes":[],"errorSelector":"b07e3bc4","name":"InsufficientCollateral","nameLocation":"1073:22:97","parameters":{"id":70307,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70304,"mutability":"mutable","name":"requested","nameLocation":"1104:9:97","nodeType":"VariableDeclaration","scope":70308,"src":"1096:17:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70303,"name":"uint256","nodeType":"ElementaryTypeName","src":"1096:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70306,"mutability":"mutable","name":"available","nameLocation":"1123:9:97","nodeType":"VariableDeclaration","scope":70308,"src":"1115:17:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70305,"name":"uint256","nodeType":"ElementaryTypeName","src":"1115:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1095:38:97"}},{"id":70310,"nodeType":"ErrorDefinition","src":"1139:23:97","nodes":[],"errorSelector":"e6c4247b","name":"InvalidAddress","nameLocation":"1145:14:97","parameters":{"id":70309,"nodeType":"ParameterList","parameters":[],"src":"1159:2:97"}},{"id":70323,"nodeType":"ModifierDefinition","src":"1239:120:97","nodes":[],"body":{"id":70322,"nodeType":"Block","src":"1260:99:97","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70315,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70312,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1274:3:97","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70313,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1278:6:97","memberName":"sender","nodeType":"MemberAccess","src":"1274:10:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":70314,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70268,"src":"1288:5:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1274:19:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70320,"nodeType":"IfStatement","src":"1270:72:97","trueBody":{"id":70319,"nodeType":"Block","src":"1295:47:97","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70316,"name":"NotAuthorized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70302,"src":"1316:13:97","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70317,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1316:15:97","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70318,"nodeType":"RevertStatement","src":"1309:22:97"}]}},{"id":70321,"nodeType":"PlaceholderStatement","src":"1351:1:97"}]},"name":"onlyOwner","nameLocation":"1248:9:97","parameters":{"id":70311,"nodeType":"ParameterList","parameters":[],"src":"1257:2:97"},"virtual":false,"visibility":"internal"},{"id":70327,"nodeType":"FunctionDefinition","src":"1365:16:97","nodes":[],"body":{"id":70326,"nodeType":"Block","src":"1379:2:97","nodes":[],"statements":[]},"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":70324,"nodeType":"ParameterList","parameters":[],"src":"1376:2:97"},"returnParameters":{"id":70325,"nodeType":"ParameterList","parameters":[],"src":"1379:0:97"},"scope":70515,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":70347,"nodeType":"FunctionDefinition","src":"1387:152:97","nodes":[],"body":{"id":70346,"nodeType":"Block","src":"1418:121:97","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70335,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70330,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70268,"src":"1432:5:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":70333,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1449:1:97","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":70332,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1441:7:97","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70331,"name":"address","nodeType":"ElementaryTypeName","src":"1441:7:97","typeDescriptions":{}}},"id":70334,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1441:10:97","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1432:19:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70340,"nodeType":"IfStatement","src":"1428:77:97","trueBody":{"id":70339,"nodeType":"Block","src":"1453:52:97","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70336,"name":"AlreadyInitialized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70300,"src":"1474:18:97","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70337,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1474:20:97","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70338,"nodeType":"RevertStatement","src":"1467:27:97"}]}},{"expression":{"id":70344,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70341,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70268,"src":"1514:5:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":70342,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1522:3:97","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70343,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1526:6:97","memberName":"sender","nodeType":"MemberAccess","src":"1522:10:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1514:18:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70345,"nodeType":"ExpressionStatement","src":"1514:18:97"}]},"baseFunctions":[76954],"functionSelector":"8129fc1c","implemented":true,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"1396:10:97","parameters":{"id":70328,"nodeType":"ParameterList","parameters":[],"src":"1406:2:97"},"returnParameters":{"id":70329,"nodeType":"ParameterList","parameters":[],"src":"1418:0:97"},"scope":70515,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70375,"nodeType":"FunctionDefinition","src":"1545:230:97","nodes":[],"body":{"id":70374,"nodeType":"Block","src":"1646:129:97","nodes":[],"statements":[{"expression":{"id":70365,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":70358,"name":"proposalCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70266,"src":"1656:18:97","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"}},"id":70361,"indexExpression":{"id":70359,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70349,"src":"1675:10:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1656:30:97","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":70362,"indexExpression":{"id":70360,"name":"user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70351,"src":"1687:4:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"1656:36:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"expression":{"id":70363,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1696:3:97","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70364,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1700:5:97","memberName":"value","nodeType":"MemberAccess","src":"1696:9:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"1656:49:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70366,"nodeType":"ExpressionStatement","src":"1656:49:97"},{"eventCall":{"arguments":[{"id":70368,"name":"proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70349,"src":"1740:10:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":70369,"name":"user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70351,"src":"1752:4:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":70370,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1758:3:97","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70371,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1762:5:97","memberName":"value","nodeType":"MemberAccess","src":"1758:9:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":70367,"name":"CollateralDeposited","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70276,"src":"1720:19:97","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$returns$__$","typeString":"function (uint256,address,uint256)"}},"id":70372,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1720:48:97","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70373,"nodeType":"EmitStatement","src":"1715:53:97"}]},"baseFunctions":[76961],"functionSelector":"481fef8a","implemented":true,"kind":"function","modifiers":[{"id":70354,"kind":"modifierInvocation","modifierName":{"id":70353,"name":"onlyOwner","nameLocations":["1623:9:97"],"nodeType":"IdentifierPath","referencedDeclaration":70323,"src":"1623:9:97"},"nodeType":"ModifierInvocation","src":"1623:9:97"},{"id":70356,"kind":"modifierInvocation","modifierName":{"id":70355,"name":"nonReentrant","nameLocations":["1633:12:97"],"nodeType":"IdentifierPath","referencedDeclaration":54999,"src":"1633:12:97"},"nodeType":"ModifierInvocation","src":"1633:12:97"}],"name":"depositCollateral","nameLocation":"1554:17:97","parameters":{"id":70352,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70349,"mutability":"mutable","name":"proposalId","nameLocation":"1580:10:97","nodeType":"VariableDeclaration","scope":70375,"src":"1572:18:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70348,"name":"uint256","nodeType":"ElementaryTypeName","src":"1572:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70351,"mutability":"mutable","name":"user","nameLocation":"1600:4:97","nodeType":"VariableDeclaration","scope":70375,"src":"1592:12:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70350,"name":"address","nodeType":"ElementaryTypeName","src":"1592:7:97","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1571:34:97"},"returnParameters":{"id":70357,"nodeType":"ParameterList","parameters":[],"src":"1646:0:97"},"scope":70515,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":70443,"nodeType":"FunctionDefinition","src":"1781:966:97","nodes":[],"body":{"id":70442,"nodeType":"Block","src":"1894:853:97","nodes":[],"statements":[{"assignments":[70389],"declarations":[{"constant":false,"id":70389,"mutability":"mutable","name":"availableAmount","nameLocation":"1912:15:97","nodeType":"VariableDeclaration","scope":70442,"src":"1904:23:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70388,"name":"uint256","nodeType":"ElementaryTypeName","src":"1904:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":70395,"initialValue":{"baseExpression":{"baseExpression":{"id":70390,"name":"proposalCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70266,"src":"1930:18:97","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"}},"id":70392,"indexExpression":{"id":70391,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70377,"src":"1949:11:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1930:31:97","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":70394,"indexExpression":{"id":70393,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70379,"src":"1962:5:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1930:38:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"1904:64:97"},{"assignments":[70397],"declarations":[{"constant":false,"id":70397,"mutability":"mutable","name":"isInsufficientAvailableAmount","nameLocation":"2071:29:97","nodeType":"VariableDeclaration","scope":70442,"src":"2066:34:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70396,"name":"bool","nodeType":"ElementaryTypeName","src":"2066:4:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":70399,"initialValue":{"hexValue":"66616c7365","id":70398,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"2103:5:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"2066:42:97"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70400,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70381,"src":"2122:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":70401,"name":"availableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70389,"src":"2132:15:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2122:25:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70412,"nodeType":"IfStatement","src":"2118:367:97","trueBody":{"id":70411,"nodeType":"Block","src":"2149:336:97","statements":[{"expression":{"id":70405,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70403,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70381,"src":"2399:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70404,"name":"availableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70389,"src":"2409:15:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2399:25:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70406,"nodeType":"ExpressionStatement","src":"2399:25:97"},{"expression":{"id":70409,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70407,"name":"isInsufficientAvailableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70397,"src":"2438:29:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":70408,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"2470:4:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"2438:36:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70410,"nodeType":"ExpressionStatement","src":"2438:36:97"}]}},{"expression":{"id":70419,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":70413,"name":"proposalCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70266,"src":"2494:18:97","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"}},"id":70416,"indexExpression":{"id":70414,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70377,"src":"2513:11:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2494:31:97","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":70417,"indexExpression":{"id":70415,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70379,"src":"2526:5:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2494:38:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":70418,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70381,"src":"2536:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2494:49:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70420,"nodeType":"ExpressionStatement","src":"2494:49:97"},{"assignments":[70422,null],"declarations":[{"constant":false,"id":70422,"mutability":"mutable","name":"success","nameLocation":"2559:7:97","nodeType":"VariableDeclaration","scope":70442,"src":"2554:12:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70421,"name":"bool","nodeType":"ElementaryTypeName","src":"2554:4:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},null],"id":70429,"initialValue":{"arguments":[{"hexValue":"","id":70427,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2598:2:97","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"id":70423,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70379,"src":"2571:5:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2577:4:97","memberName":"call","nodeType":"MemberAccess","src":"2571:10:97","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":70426,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":70425,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70381,"src":"2589:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"2571:26:97","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":70428,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2571:30:97","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"2553:48:97"},{"expression":{"arguments":[{"id":70431,"name":"success","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70422,"src":"2619:7:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5472616e73666572206661696c6564","id":70432,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2628:17:97","typeDescriptions":{"typeIdentifier":"t_stringliteral_25adaa6d082ce15f901e0d8a3d393e7462ef9edf2e6bc8321fa14d1615b6fc51","typeString":"literal_string \"Transfer failed\""},"value":"Transfer failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_25adaa6d082ce15f901e0d8a3d393e7462ef9edf2e6bc8321fa14d1615b6fc51","typeString":"literal_string \"Transfer failed\""}],"id":70430,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"2611:7:97","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":70433,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2611:35:97","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70434,"nodeType":"ExpressionStatement","src":"2611:35:97"},{"eventCall":{"arguments":[{"id":70436,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70377,"src":"2681:11:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":70437,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70379,"src":"2694:5:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70438,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70381,"src":"2701:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":70439,"name":"isInsufficientAvailableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70397,"src":"2710:29:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":70435,"name":"CollateralWithdrawn","nodeType":"Identifier","overloadedDeclarations":[70286,70298],"referencedDeclaration":70286,"src":"2661:19:97","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_uint256_$_t_bool_$returns$__$","typeString":"function (uint256,address,uint256,bool)"}},"id":70440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2661:79:97","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70441,"nodeType":"EmitStatement","src":"2656:84:97"}]},"baseFunctions":[76970],"functionSelector":"99ea56b0","implemented":true,"kind":"function","modifiers":[{"id":70384,"kind":"modifierInvocation","modifierName":{"id":70383,"name":"onlyOwner","nameLocations":["1871:9:97"],"nodeType":"IdentifierPath","referencedDeclaration":70323,"src":"1871:9:97"},"nodeType":"ModifierInvocation","src":"1871:9:97"},{"id":70386,"kind":"modifierInvocation","modifierName":{"id":70385,"name":"nonReentrant","nameLocations":["1881:12:97"],"nodeType":"IdentifierPath","referencedDeclaration":54999,"src":"1881:12:97"},"nodeType":"ModifierInvocation","src":"1881:12:97"}],"name":"withdrawCollateral","nameLocation":"1790:18:97","parameters":{"id":70382,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70377,"mutability":"mutable","name":"_proposalId","nameLocation":"1817:11:97","nodeType":"VariableDeclaration","scope":70443,"src":"1809:19:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70376,"name":"uint256","nodeType":"ElementaryTypeName","src":"1809:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70379,"mutability":"mutable","name":"_user","nameLocation":"1838:5:97","nodeType":"VariableDeclaration","scope":70443,"src":"1830:13:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70378,"name":"address","nodeType":"ElementaryTypeName","src":"1830:7:97","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70381,"mutability":"mutable","name":"_amount","nameLocation":"1853:7:97","nodeType":"VariableDeclaration","scope":70443,"src":"1845:15:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70380,"name":"uint256","nodeType":"ElementaryTypeName","src":"1845:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1808:53:97"},"returnParameters":{"id":70387,"nodeType":"ParameterList","parameters":[],"src":"1894:0:97"},"scope":70515,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70514,"nodeType":"FunctionDefinition","src":"2753:1041:97","nodes":[],"body":{"id":70513,"nodeType":"Block","src":"2918:876:97","nodes":[],"statements":[{"assignments":[70459],"declarations":[{"constant":false,"id":70459,"mutability":"mutable","name":"availableAmount","nameLocation":"2936:15:97","nodeType":"VariableDeclaration","scope":70513,"src":"2928:23:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70458,"name":"uint256","nodeType":"ElementaryTypeName","src":"2928:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":70465,"initialValue":{"baseExpression":{"baseExpression":{"id":70460,"name":"proposalCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70266,"src":"2954:18:97","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"}},"id":70462,"indexExpression":{"id":70461,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70445,"src":"2973:11:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2954:31:97","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":70464,"indexExpression":{"id":70463,"name":"_fromUser","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70447,"src":"2986:9:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2954:42:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"2928:68:97"},{"assignments":[70467],"declarations":[{"constant":false,"id":70467,"mutability":"mutable","name":"isInsufficientAvailableAmount","nameLocation":"3099:29:97","nodeType":"VariableDeclaration","scope":70513,"src":"3094:34:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70466,"name":"bool","nodeType":"ElementaryTypeName","src":"3094:4:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"id":70469,"initialValue":{"hexValue":"66616c7365","id":70468,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3131:5:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"nodeType":"VariableDeclarationStatement","src":"3094:42:97"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70472,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70470,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70451,"src":"3150:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":70471,"name":"availableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"3160:15:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3150:25:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70482,"nodeType":"IfStatement","src":"3146:367:97","trueBody":{"id":70481,"nodeType":"Block","src":"3177:336:97","statements":[{"expression":{"id":70475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70473,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70451,"src":"3427:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70474,"name":"availableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70459,"src":"3437:15:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3427:25:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70476,"nodeType":"ExpressionStatement","src":"3427:25:97"},{"expression":{"id":70479,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70477,"name":"isInsufficientAvailableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70467,"src":"3466:29:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":70478,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3498:4:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"3466:36:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70480,"nodeType":"ExpressionStatement","src":"3466:36:97"}]}},{"expression":{"id":70489,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":70483,"name":"proposalCollateral","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70266,"src":"3522:18:97","typeDescriptions":{"typeIdentifier":"t_mapping$_t_uint256_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(uint256 => mapping(address => uint256))"}},"id":70486,"indexExpression":{"id":70484,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70445,"src":"3541:11:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3522:31:97","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":70487,"indexExpression":{"id":70485,"name":"_fromUser","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70447,"src":"3554:9:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3522:42:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":70488,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70451,"src":"3568:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3522:53:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70490,"nodeType":"ExpressionStatement","src":"3522:53:97"},{"assignments":[70492,null],"declarations":[{"constant":false,"id":70492,"mutability":"mutable","name":"success","nameLocation":"3591:7:97","nodeType":"VariableDeclaration","scope":70513,"src":"3586:12:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70491,"name":"bool","nodeType":"ElementaryTypeName","src":"3586:4:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},null],"id":70499,"initialValue":{"arguments":[{"hexValue":"","id":70497,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3632:2:97","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"id":70493,"name":"_toUser","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70449,"src":"3603:7:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70494,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3611:4:97","memberName":"call","nodeType":"MemberAccess","src":"3603:12:97","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":70496,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"id":70495,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70451,"src":"3623:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"3603:28:97","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":70498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3603:32:97","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"3585:50:97"},{"expression":{"arguments":[{"id":70501,"name":"success","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70492,"src":"3653:7:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5472616e73666572206661696c6564","id":70502,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3662:17:97","typeDescriptions":{"typeIdentifier":"t_stringliteral_25adaa6d082ce15f901e0d8a3d393e7462ef9edf2e6bc8321fa14d1615b6fc51","typeString":"literal_string \"Transfer failed\""},"value":"Transfer failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_25adaa6d082ce15f901e0d8a3d393e7462ef9edf2e6bc8321fa14d1615b6fc51","typeString":"literal_string \"Transfer failed\""}],"id":70500,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3645:7:97","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":70503,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3645:35:97","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70504,"nodeType":"ExpressionStatement","src":"3645:35:97"},{"eventCall":{"arguments":[{"id":70506,"name":"_proposalId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70445,"src":"3715:11:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":70507,"name":"_fromUser","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70447,"src":"3728:9:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70508,"name":"_toUser","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70449,"src":"3739:7:97","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70509,"name":"_amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70451,"src":"3748:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":70510,"name":"isInsufficientAvailableAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70467,"src":"3757:29:97","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":70505,"name":"CollateralWithdrawn","nodeType":"Identifier","overloadedDeclarations":[70286,70298],"referencedDeclaration":70298,"src":"3695:19:97","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_uint256_$_t_bool_$returns$__$","typeString":"function (uint256,address,address,uint256,bool)"}},"id":70511,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3695:92:97","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70512,"nodeType":"EmitStatement","src":"3690:97:97"}]},"baseFunctions":[76981],"functionSelector":"8969ab53","implemented":true,"kind":"function","modifiers":[{"id":70454,"kind":"modifierInvocation","modifierName":{"id":70453,"name":"onlyOwner","nameLocations":["2883:9:97"],"nodeType":"IdentifierPath","referencedDeclaration":70323,"src":"2883:9:97"},"nodeType":"ModifierInvocation","src":"2883:9:97"},{"id":70456,"kind":"modifierInvocation","modifierName":{"id":70455,"name":"nonReentrant","nameLocations":["2901:12:97"],"nodeType":"IdentifierPath","referencedDeclaration":54999,"src":"2901:12:97"},"nodeType":"ModifierInvocation","src":"2901:12:97"}],"name":"withdrawCollateralFor","nameLocation":"2762:21:97","parameters":{"id":70452,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70445,"mutability":"mutable","name":"_proposalId","nameLocation":"2792:11:97","nodeType":"VariableDeclaration","scope":70514,"src":"2784:19:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70444,"name":"uint256","nodeType":"ElementaryTypeName","src":"2784:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70447,"mutability":"mutable","name":"_fromUser","nameLocation":"2813:9:97","nodeType":"VariableDeclaration","scope":70514,"src":"2805:17:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70446,"name":"address","nodeType":"ElementaryTypeName","src":"2805:7:97","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70449,"mutability":"mutable","name":"_toUser","nameLocation":"2832:7:97","nodeType":"VariableDeclaration","scope":70514,"src":"2824:15:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70448,"name":"address","nodeType":"ElementaryTypeName","src":"2824:7:97","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70451,"mutability":"mutable","name":"_amount","nameLocation":"2849:7:97","nodeType":"VariableDeclaration","scope":70514,"src":"2841:15:97","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70450,"name":"uint256","nodeType":"ElementaryTypeName","src":"2841:7:97","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2783:74:97"},"returnParameters":{"id":70457,"nodeType":"ParameterList","parameters":[],"src":"2918:0:97"},"scope":70515,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[{"baseName":{"id":70257,"name":"ReentrancyGuard","nameLocations":["411:15:97"],"nodeType":"IdentifierPath","referencedDeclaration":55034,"src":"411:15:97"},"id":70258,"nodeType":"InheritanceSpecifier","src":"411:15:97"},{"baseName":{"id":70259,"name":"ICollateralVault","nameLocations":["428:16:97"],"nodeType":"IdentifierPath","referencedDeclaration":76982,"src":"428:16:97"},"id":70260,"nodeType":"InheritanceSpecifier","src":"428:16:97"}],"canonicalName":"CollateralVault","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[70515,76982,55034],"name":"CollateralVault","nameLocation":"392:15:97","scope":70516,"usedErrors":[70300,70302,70308,70310]}],"license":"AGPL-3.0-only"},"id":97} \ No newline at end of file diff --git a/pkg/contracts/out/DeployPassportScorer.s.sol/DeployPassportScorer.json b/pkg/contracts/out/DeployPassportScorer.s.sol/DeployPassportScorer.json new file mode 100644 index 000000000..edb88d77e --- /dev/null +++ b/pkg/contracts/out/DeployPassportScorer.s.sol/DeployPassportScorer.json @@ -0,0 +1 @@ +{"abi":[{"type":"function","name":"BENEFICIARY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"COUNCIL_SAFE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"CURRENT_NETWORK","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"DECIMALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"ETH_SEPOLIA","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"IS_SCRIPT","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"IS_TEST","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"MINIMUM_STAKE","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":"REGISTRY_FACTORY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SAFE_FACTORY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SAFE_NONCE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"SAFE_PROXY_FACTORY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SAFE_SINGLETON","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SENDER","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"TOKEN","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"WAIT_TIME","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"__createContract","inputs":[{"name":"bytecode","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"_contract","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"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":"_councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"_councilSafeWithOwner","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_safeProxyFactory","type":"address","internalType":"contract SafeProxyFactory"}],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"_councilSafeWithOwner","inputs":[{"name":"_owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"_createSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"_createSafeProxyFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract SafeProxyFactory"}],"stateMutability":"nonpayable"},{"type":"function","name":"_nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"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":"councilMember1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"councilMemberPK","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"councilSafeOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"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":"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":"getDecay","inputs":[{"name":"strategy","type":"address","internalType":"contract CVStrategyV0_0"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"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"}]},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"sybilScorerThreshold","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":"sybilScorerThreshold","type":"uint256","internalType":"uint256"},{"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"},{"type":"function","name":"run","inputs":[{"name":"network","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"run","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"runCurrentNetwork","inputs":[{"name":"networkJson","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"safeHelper","inputs":[{"name":"councilSafe_","type":"address","internalType":"contract ISafe"},{"name":"councilMemberPK_","type":"uint256","internalType":"uint256"},{"name":"to_","type":"address","internalType":"address"},{"name":"data_","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"safeHelper","inputs":[{"name":"to_","type":"address","internalType":"address"},{"name":"value_","type":"uint256","internalType":"uint256"},{"name":"data_","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"safeHelper","inputs":[{"name":"councilSafe_","type":"address","internalType":"contract ISafe"},{"name":"councilMemberPK_","type":"uint256","internalType":"uint256"},{"name":"to_","type":"address","internalType":"address"},{"name":"data_","type":"bytes","internalType":"bytes"},{"name":"value_","type":"uint256","internalType":"uint256"}],"outputs":[],"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":"0x608034620002f757600c805460ff191660019081179091556001600160401b03916040919080830184811182821017620002e15783528181528251916060830183811086821117620002e1578452602e83526020917f516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a4468838501526d6132666a3547656536684a7a535960901b858501528383820152516015558251948511620002e157620000af601654620002fc565b92601f93848111620002a3575b508290848711600114620002235795809173c583789751910e39fd2ddb988ad05567bcd81334969760009262000217575b5050600019600383901b1c191690821b176016555b61010161ffff1960215416176021556024556000602555670de0b6b3a764000060275560018060a01b03199173b05a948b5c1b057b88d381bde3a375efea87ebad836028541617602855614e20602d556200015f602e54620002fc565b818111620001f3575b507f6172627365706f6c696100000000000000000000000000000000000000000014602e55602f546200019b90620002fc565b90808211620001cf575b505050600e667365706f6c696160c81b01602f5560305416176030555161d48e9081620003538239f35b620001ea92602f600052600020910160051c81019062000339565b388080620001a5565b6200021090602e6000528284600020910160051c81019062000339565b3862000168565b015190503880620000ed565b90601f198716916016600052846000209260005b8181106200028d5750918493918973c583789751910e39fd2ddb988ad05567bcd81334999a941062000273575b505050811b0160165562000102565b015160001960f88460031b161c1916905538808062000264565b8284015185559385019392860192860162000237565b620002d09060166000528460002086808a0160051c820192878b10620002d7575b0160051c019062000339565b38620000bc565b92508192620002c4565b634e487b7160e01b600052604160045260246000fd5b600080fd5b90600182811c921680156200032e575b60208310146200031857565b634e487b7160e01b600052602260045260246000fd5b91607f16916200030c565b81811062000345575050565b600081556001016200033956fe608060405260043610156200001357600080fd5b60003560e01c8062b1fad714620005c2578063023a6f4314620005bc578063030e400614620005b65780630522b7db14620005b05780630688b13514620005aa57806308c24f9f14620005a457806308dbbb03146200059e5780630f166ad41462000598578063174eedde14620004a85780631ae726d914620005925780631b96dce6146200058c5780631d8fcc1014620005865780631e7bcb2e14620005805780631ed7831c146200057a5780632ade388014620005745780632e0f2625146200056e5780632f99c6cc1462000568578063352c94a7146200056257806337d1c404146200055c578063388aef5c1462000556578063392f37e914620005505780633e5e3c23146200054a5780633f26479e14620005445780633f7286f4146200053e57806349ef42c114620005385780634bf4ba211462000532578063587c1243146200052c5780635aff599914620005265780635d1222aa14620005205780635d6b4bc2146200051a5780635e2dd44214620005145780636050f2f814620004a257806366d003ac146200050e57806366d9a9a014620005085780636a38dd0a14620005025780636c53db9a14620004fc5780636db5251014620004f657806370a3294414620004f057806374d9284e14620004a8578063759c9a8614620004ea5780637658524d14620004e457806379e62d0d14620004de5780637b2edf3214620004d85780637cbe79ed14620004d25780637f6a80df14620004cc578063829e423f14620004a857806382bfefc814620004c657806385226c8114620004c057806385294f1814620004ba578063861ceb6914620004b4578063896546a114620004ae5780638c7408c414620004a85780638e0d1a5014620004a25780638e3c2493146200049c578063916a17c614620004965780639352fad2146200049057806393892107146200048a578063a0cf0aea1462000484578063a407c67a146200047e578063aa3744bd1462000478578063b3e9b4fd1462000472578063b5508aa9146200046c578063ba414fa61462000466578063bb0504cd1462000460578063c0406226146200045a578063c1f2a6411462000454578063caa12add146200044e578063d1e82b581462000448578063d1f2cd881462000442578063d23727ed146200043c578063d5bee9f51462000436578063da4bf0871462000430578063dac4eb16146200042a578063dac770b31462000424578063e070e0ab146200041e578063e20c9f711462000418578063e99ce9111462000412578063ef0d790f146200040c578063f4d914e61462000406578063f69d511f1462000400578063f8ccbf4714620003fa5763fa7626d414620003f457600080fd5b6200349a565b62003475565b62003434565b62003393565b62003334565b62003205565b6200319c565b620030e9565b62002c8c565b62002c32565b62002b17565b62002ac0565b62002a8f565b62002a35565b620029d9565b620029a8565b62002942565b62002910565b620028f1565b620028c8565b62002828565b6200277b565b620025b8565b620024bd565b6200248c565b62002461565b62002446565b620022de565b620022c0565b62001742565b62000bfd565b62002295565b6200226a565b62002171565b62001fe1565b62001fa3565b62001f78565b62001f22565b62001f04565b62001e09565b62001de9565b62001d91565b62001c59565b62001bf4565b62001bc5565b62001ba7565b6200188c565b6200176d565b62001727565b6200164e565b6200162e565b620015d2565b620015b4565b6200157e565b6200155f565b620014f6565b620014d7565b6200146e565b62001373565b62001353565b620012ea565b6200116d565b62000f9c565b62000f77565b62000edf565b62000d3b565b62000ccb565b62000cad565b62000c53565b62000c1b565b62000be0565b62000bc0565b62000b72565b62000b1c565b62000af1565b62000a86565b620008c7565b620005ec565b6000910312620005d457565b600080fd5b6001600160a01b03909116815260200190565b34620005d4576000806003193601126200073b576200060a62003528565b6200065b604051602081019062000636816200062784876200373e565b03601f1981018352826200082a565b5190206040516001625e79b760e01b0319815260048101919091529081906024820190565b03916020826000805160206200d3b98339815191529481865afa928315620006fa578492839462000704575b50803b156200070057620006b3916040519586809481936318caf8e360e31b835288600484016200376f565b03925af1918215620006fa57620006d892620006dc575b5060405191829182620005d9565b0390f35b80620006ec620006f39262000766565b80620005c8565b38620006ca565b6200369b565b8280fd5b6200072b91945060203d811162000733575b6200072281836200082a565b81019062003757565b923862000687565b503d62000716565b80fd5b6001600160a01b03811603620005d457565b634e487b7160e01b600052604160045260246000fd5b6001600160401b0381116200077a57604052565b62000750565b604081019081106001600160401b038211176200077a57604052565b60c081019081106001600160401b038211176200077a57604052565b602081019081106001600160401b038211176200077a57604052565b608081019081106001600160401b038211176200077a57604052565b610f0081019081106001600160401b038211176200077a57604052565b615a0081019081106001600160401b038211176200077a57604052565b601f909101601f19168101906001600160401b038211908210176200077a57604052565b6001600160401b0381116200077a57601f01601f191660200190565b92919262000878826200084e565b916200088860405193846200082a565b829481845281830111620005d4578281602093846000960137010152565b9080601f83011215620005d457816020620008c4933591016200086a565b90565b34620005d4576080366003190112620005d457600435620008e8816200073e565b60443590620008f7826200073e565b606435906001600160401b038211620005d4576200091e62000956923690600401620008a6565b9060606200092e8284876200b69f565b6040516338d07aa960e21b815260248035600483015281019190915293849081906044820190565b03816000805160206200d3b98339815191525afa918215620006fa57620009d09460209460008091819662000a3b575b5060009291620009a3620009b2926040519889938b85016200b626565b03601f1981018752866200082a565b60405163353b090160e11b815296879586948593600485016200b378565b03926001600160a01b03165af18015620006fa5762000a049160009162000a06575b50620009fd6200b43e565b906200b594565b005b62000a2c915060203d811162000a33575b62000a2381836200082a565b8101906200b35e565b38620009f2565b503d62000a17565b620009a396506000939250620009b2915062000a719060603d811162000a7e575b62000a6881836200082a565b8101906200b5ff565b9750929390915062000986565b503d62000a5c565b34620005d4576000806003193601126200073b5760405162000aa88162000780565b6013815272383937b334b63298afb737ba20a6b2b6b132b960691b60208201526200065b604051602081019062000636816200062784876200373e565b6001600160a01b031690565b34620005d4576000366003190112620005d4576022546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200073b5760405162000b3e8162000780565b600a8152693932b1b4b834b2b73a1960b11b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576040366003190112620005d457602062000bae60043562000b99816200073e565b6024359062000ba8826200073e565b6200b05a565b6040516001600160a01b039091168152f35b34620005d4576000366003190112620005d4576020602754604051908152f35b34620005d4576000366003190112620005d4576020604051308152f35b34620005d4576000366003190112620005d457602060405160008152f35b34620005d4576020366003190112620005d457602062000bae60043562000c42816200073e565b62000c4c62004c38565b906200b05a565b34620005d4576000806003193601126200073b5760405162000c758162000780565b600e81526d383937b334b632992fb7bbb732b960911b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000366003190112620005d457602060405160038152f35b34620005d4576000806003193601126200073b576200060a620035d3565b90815180825260208080930193019160005b82811062000d0a575050505090565b83516001600160a01b03168552938101939281019260010162000cfb565b906020620008c492818152019062000ce9565b34620005d4576000806003193601126200073b5760405180918260195480845260208094019060198452848420935b8582821062000d9a5750505062000d84925003836200082a565b620006d860405192828493845283019062000ce9565b85546001600160a01b031684526001958601958895509301920162000d6a565b60005b83811062000dce5750506000910152565b818101518382015260200162000dbd565b9060209162000dfa8151809281855285808601910162000dba565b601f01601f1916010190565b90815180825260208092019182818360051b82019501936000915b84831062000e325750505050505090565b909192939495848062000e4e83856001950387528a5162000ddf565b980193019301919493929062000e21565b602080820190808352835180925260409283810182858560051b8401019601946000925b85841062000e95575050505050505090565b90919293949596858062000ecd600193603f1986820301885286838d51878060a01b0381511684520151918185820152019062000e06565b99019401940192959493919062000e83565b34620005d4576000806003193601126200073b57602090815462000f038162001260565b9160409362000f15855194856200082a565b8284528082528082208185015b84841062000f3957865180620006d8888262000e5f565b600283600192895162000f4c8162000780565b848060a01b03865416815262000f648587016200386c565b8382015281520192019301929062000f22565b34620005d4576000366003190112620005d4576020604051670de0b6b3a76400008152f35b34620005d4576000366003190112620005d4576030546040516001600160a01b039091168152602090f35b90600182811c9216801562000ff9575b602083101462000fe357565b634e487b7160e01b600052602260045260246000fd5b91607f169162000fd7565b9060009291805491620010178362000fc7565b9182825260019384811690816000146200107e57506001146200103b575b50505050565b90919394506000526020928360002092846000945b8386106200106957505050500101903880808062001035565b80548587018301529401938590820162001050565b9294505050602093945060ff191683830152151560051b0101903880808062001035565b6040519060008260385491620010b88362000fc7565b808352600193808516908115620011375750600114620010e4575b50620010e2925003836200082a565b565b603860009081526000805160206200d39983398151915294602093509091905b8183106200111e575050620010e2935082010138620010d3565b8554888401850152948501948794509183019162001104565b9050620010e294506020925060ff191682840152151560051b82010138620010d3565b906020620008c492818152019062000ddf565b34620005d4576000806003193601126200073b5760405181602f54620011938162000fc7565b80845290600190818116908115620012355750600114620011d7575b620006d884620011c2818803826200082a565b60405191829160208352602083019062000ddf565b602f8352602094507fa813484aef6fb598f9f753daf162068ff39ccea4075cb95e1a30f86995b5b7ee5b828410620012215750505081620006d893620011c29282010193620011af565b805485850187015292850192810162001201565b620006d89650620011c29450602092508593915060ff191682840152151560051b82010193620011af565b6001600160401b0381116200077a5760051b60200190565b81601f82011215620005d457803591620012928362001260565b92620012a260405194856200082a565b808452602092838086019260051b820101928311620005d4578301905b828210620012ce575050505090565b8380918335620012de816200073e565b815201910190620012bf565b34620005d4576060366003190112620005d4576004356200130b816200073e565b602435906200131a826200073e565b604435906001600160401b038211620005d457602092620013446200134b93369060040162001278565b91620044b7565b604051908152f35b34620005d4576000366003190112620005d4576020602d54604051908152f35b34620005d4576000806003193601126200073b576015546040519182816016546200139e8162000fc7565b80845290600190818116908115620014495750600114620013e8575b5050620013ca925003836200082a565b620006d8604051928392835260406020840152604083019062000ddf565b601685527fd833147d7dc355ba459fc788f669e58cfaf9dc25ddcd0702e87d69c7b5124289946020935091905b81831062001430575050620013ca93508201013880620013ba565b8554888401850152948501948794509183019162001415565b915050620013ca94506020925060ff191682840152151560051b8201013880620013ba565b34620005d4576000806003193601126200073b57604051809182601b54808452602080940190601b8452848420935b85828210620014b75750505062000d84925003836200082a565b85546001600160a01b03168452600195860195889550930192016200149d565b34620005d4576000366003190112620005d45760206040516127108152f35b34620005d4576000806003193601126200073b57604051809182601a54808452602080940190601a8452848420935b858282106200153f5750505062000d84925003836200082a565b85546001600160a01b031684526001958601958895509301920162001525565b34620005d4576000366003190112620005d457602062000bae62005c50565b34620005d4576000366003190112620005d457620006d86200159f620034c2565b60405191829160208352602083019062000ce9565b34620005d4576000806003193601126200073b576200060a6200362f565b34620005d4576000806003193601126200073b57604051620015f48162000780565b601081526f726563697069656e744164647265737360801b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000366003190112620005d4576020602554604051908152f35b34620005d4576020366003190112620005d45760046080813562001672816200073e565b6040516302506b8760e41b815292839182906001600160a01b03165afa8015620006fa57600090620016aa575b604051908152602090f35b6080823d8211620016de575b81620016c5608093836200082a565b810103126200073b57506040620006d89101516200169f565b3d9150620016b6565b6020600319820112620005d457600435906001600160401b038211620005d45780602383011215620005d457816024620008c4936004013591016200086a565b34620005d45762000a046200173c36620016e7565b62004350565b34620005d4576000366003190112620005d4576028546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200073b576040516200178f8162000780565b60098152681c9958da5c1a595b9d60ba1b60208201526200065b604051602081019062000636816200062784876200373e565b6001600160e01b0319169052565b602080820190808352835180925260409283810182858560051b840101960194600080935b8685106200180857505050505050505090565b909192939480969798603f198382030186528951826060818885019360018060a01b038151168652015193888382015284518094520192019085905b808210620018675750505090806001929a019501950193969594929190620017f5565b82516001600160e01b03191684528a9493840193909201916001919091019062001844565b34620005d4576000366003190112620005d457601e54620018ad8162001260565b620018bc60405191826200082a565b818152601e60009081529160207f50bb669a95c7b50b7e8a6f09454034b2b14cf2b85c730dca9a539ca82cb6e3508184015b838610620019065760405180620006d88782620017d0565b82604051620019158162000780565b83546001600160a01b0316815260405160018501805480835262001943602084015b92600052602060002090565b906000915b81600784011062001ae757938660029796948294620019ba9460019b9854918482821062001acb575b82821062001aa6575b82821062001a81575b82821062001a5c575b82821062001a37575b82821062001a12575b828210620019ee575b5010620019cd575b50905003826200082a565b83820152815201920195019490620018ee565b620019e49082906001600160e01b031916620017c2565b01869038620019af565b8462001a088f939663ffffffff60e01b87851b16620017c2565b01930184620019a7565b8462001a2d8f939663ffffffff60e01b8760401b16620017c2565b019301846200199e565b8462001a528f939663ffffffff60e01b8760601b16620017c2565b0193018462001995565b8462001a778f939663ffffffff60e01b8760801b16620017c2565b019301846200198c565b8462001a9c8f939663ffffffff60e01b8760a01b16620017c2565b0193018462001983565b8462001ac18f939663ffffffff60e01b8760c01b16620017c2565b019301846200197a565b8462001add8f93968660e01b620017c2565b0193018462001971565b939495509091600161010060089262001b9687548d60e062001b0c8584831b620017c2565b6001600160e01b03199162001b8c90838560c062001b318a850183831b8516620017c2565b62001b8160a062001b4a60408d018686841b16620017c2565b62001b738c868660609260809062001b698582018585851b16620017c2565b01921b16620017c2565b8b01848460401b16620017c2565b8901921b16620017c2565b84019116620017c2565b019401920190889594939262001948565b34620005d4576000806003193601126200073b576200060a62003553565b34620005d4576000366003190112620005d45760215460405160109190911c6001600160a01b03168152602090f35b34620005d4576060366003190112620005d45760043562001c15816200073e565b604435906001600160401b038211620005d45762001c3c62000a04923690600401620008a6565b602154602480549035939160101c6001600160a01b03166200b472565b34620005d4576000806003193601126200073b5762001c77620034c2565b62001c81620035d3565b62001c9e604051602081019062000636816200062784876200373e565b03916020826000805160206200d3b98339815191529481865afa928315620006fa578592839462001d6c575b50803b15620007005762001cf6916040519687809481936318caf8e360e31b835288600484016200376f565b03925af1908115620006fa57620006d89362001d249262001d55575b5062001d1e836200357e565b620035c4565b62001d4862001d3c62001d3662003601565b62003793565b5062001d1e83620035a2565b6040519182918262000d28565b80620006ec62001d659262000766565b3862001d12565b62001d8991945060203d811162000733576200072281836200082a565b923862001cca565b34620005d4576000806003193601126200073b5760405162001db38162000780565b600c81526b1b9bd7dc9958da5c1a595b9d60a21b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000366003190112620005d4576020602454604051908152f35b34620005d4576000806003193601126200073b5762001e27620034c2565b62001e3162003528565b62001e4e604051602081019062000636816200062784876200373e565b03916020826000805160206200d3b98339815191529481865afa928315620006fa578592839462001edf575b50803b15620007005762001ea6916040519687809481936318caf8e360e31b835288600484016200376f565b03925af1908115620006fa57620006d89362001ecd9262001d55575062001d1e836200357e565b62001d4862001d3c62001d3662003553565b62001efc91945060203d811162000733576200072281836200082a565b923862001e7a565b34620005d4576000806003193601126200073b576200060a62003601565b34620005d4576000806003193601126200073b5760405162001f448162000780565b600a81526930b63637afb7bbb732b960b11b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000366003190112620005d457602b546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d4576029546040516001600160a01b039091168152602090f35b906020620008c492818152019062000e06565b34620005d4576000806003193601126200073b57601d54620020038162001260565b9060409262002015845193846200082a565b818352601d815260207f6d4407e7be21f808e6509aa9fa9143369579dd7d760fe20a2c09680fc146134f8185015b8484106200205a57865180620006d8888262001fce565b600183819289516200207a8162002072818962001004565b03826200082a565b81520192019301929062002043565b60031115620005d457565b60c435906004821015620005d457565b60c0906083190112620005d45760405190620020c0826200079c565b81608435620020cf816200073e565b815260a435620020df816200073e565b602082015260c435604082015260e435606082015261010435608082015260a061012435910152565b60c090610103190112620005d4576040519062002125826200079c565b816101043562002135816200073e565b81526101243562002146816200073e565b602082015261014435604082015261016435606082015261018435608082015260a06101a435910152565b34620005d4576101a0366003190112620005d45760043562002193816200073e565b602435620021a1816200073e565b60443591620021b0836200073e565b606435620021be816200073e565b608435620021cc816200073e565b60a43590620021db8262002089565b620021e562002094565b9260c03660e3190112620005d457620006d8966200225a96604051966200220c886200079c565b60e4356200221a816200073e565b8852610104356200222b816200073e565b60208901526101243560408901526101443560608901526101643560808901526101843560a089015262004ad9565b6040519081529081906020820190565b34620005d4576000366003190112620005d457602c546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d4576023546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200073b576200060a6200365d565b34620005d4576000366003190112620005d457601f54620022ff8162001260565b6200230e60405191826200082a565b818152601f60009081529160207fa03837a25210ee280c2113ff4b77ca23440b19d4866cca721c801278fd08d8078184015b838610620023585760405180620006d88782620017d0565b82604051620023678162000780565b83546001600160a01b031681526040516001850180548083526200238e6020840162001937565b906000915b8160078401106200241057938660029796948294620023fd9460019b9854918482821062001acb5782821062001aa65782821062001a815782821062001a5c5782821062001a375782821062001a1257828210620019ee575010620019cd5750905003826200082a565b8382015281520192019501949062002340565b93949550909160016101006008926200243587548d60e062001b0c8584831b620017c2565b019401920190889594939262002393565b34620005d45762000a046200245b36620016e7565b62003c3b565b34620005d4576000366003190112620005d457602a546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d457602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b34620005d4576000806003193601126200073b57620024db620034c2565b620024e56200362f565b62002502604051602081019062000636816200062784876200373e565b03916020826000805160206200d3b98339815191529481865afa928315620006fa578592839462002593575b50803b1562000700576200255a916040519687809481936318caf8e360e31b835288600484016200376f565b03925af1908115620006fa57620006d893620025819262001d55575062001d1e836200357e565b62001d4862001d3c62001d366200365d565b620025b091945060203d811162000733576200072281836200082a565b92386200252e565b34620005d4576000806003193601126200073b57604051620025da8162000780565b600a815269726563697069656e743160b01b60208201526200065b604051602081019062000636816200062784876200373e565b6020906063190112620005d457604051906200262a82620007b8565b6064358252565b634e487b7160e01b600052602160045260246000fd5b600311156200265257565b62002631565b906003821015620026525752565b906004821015620026525752565b610240620008c49260208352620026ad602084018251606080918051845260208101516020850152604081015160408501520151910152565b620026c1602082015160a085019062002658565b620026d5604082015160c085019062002666565b60608101515160e084015260808181015180516001600160a01b03908116610100878101919091526020830151909116610120870152604082015161014087015260608201516101608701529181015161018086015260a001516101a08501529060a08101516001600160a01b03166101c085015260c08101516001600160a01b03166101e085015260e081015161020085015201519161022080820152019062000ce9565b34620005d4576101a0366003190112620005d4576004356200279d816200073e565b60243590620027ac8262002089565b604435906004821015620005d457620027c5366200260e565b92620027d136620020a4565b6101443593906001600160401b038511620005d457620006d895620027ff6200281b96369060040162001278565b92610164359462002810866200073e565b61018435966200475d565b6040519182918262002674565b34620005d4576000806003193601126200073b57601c546200284a8162001260565b906040926200285c845193846200082a565b818352601c815260207f0e4562a10381dec21b205ed72637e6b1b523bdd0e4d4d50af5cd23dd4500a2118185015b848410620028a157865180620006d8888262001fce565b60018381928951620028b98162002072818962001004565b8152019201930192906200288a565b34620005d4576000366003190112620005d4576020620028e7620036a7565b6040519015158152f35b34620005d4576000366003190112620005d457602062000bae62004c38565b34620005d4576000806003193601126200073b576200293f6040516200293681620007b8565b82815262003c3b565b80f35b34620005d45760a0366003190112620005d45760043562002963816200073e565b6044359062002972826200073e565b606435916001600160401b038311620005d4576200299962000a04933690600401620008a6565b9060843592602435906200b472565b34620005d4576000366003190112620005d457602060405173dd4bda7bcda544d6da2aea8ab8b0e63d2f6dc7378152f35b34620005d4576000806003193601126200073b57604051620029fb8162000780565b601081526f3837b7b62fb737ba20a6b0b730b3b2b960811b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000806003193601126200073b5760405162002a578162000780565b600e81526d383937b334b63298afb7bbb732b960911b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000366003190112620005d457602060405173bba817f97f133b87b9b7f1fc0f2c56e9f68d2edf8152f35b34620005d4576000806003193601126200073b5760405162002ae28162000780565b600b81526a1c985b991bdb4818da185960aa1b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000806003193601126200073b5760405162002b398162000780565b600d81526c616c6c6f5f747265617375727960981b602082015262002b70604051602081019062000636816200062784876200373e565b03916020826000805160206200d3b98339815191529481865afa928315620006fa578492839462002c0d575b50803b15620007005762002bc8916040519586809481936318caf8e360e31b835288600484016200376f565b03925af1918215620006fa57620006d89262002bf6575b506040519182916001600160a01b031682620005d9565b80620006ec62002c069262000766565b3862002bdf565b62002c2a91945060203d811162000733576200072281836200082a565b923862002b9c565b34620005d4576000806003193601126200073b5760405162002c548162000780565b600e81526d3932b3b4b9ba393cafb7bbb732b960911b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000806003193601126200073b5760245490604090815163ffa1864960e01b81526020908062002ccb6004968783019190602083019252565b039082816000805160206200d3b98339815191529381855afa8015620006fa5762002d1b918591620030c7575b50602380546001600160a01b0319166001600160a01b0392909216919091179055565b62002d2860235462000ae5565b91813b156200306f5784516318caf8e360e31b8082526001600160a01b03909416878201908152604060208201819052600e908201526d636f756e63696c4d656d6265723160901b6060820152859082908190608001038183875af18015620006fa57620030b0575b5060018060a01b038062002db162002dab6021546200b306565b62000ae5565b161562002dd7575b620006d88662002dcb6021546200b306565b905191829182620005d9565b8062002de262004c38565b62002e1662002df462002dab62005c50565b602680546001600160a01b0319166001600160a01b0392909216919091179055565b16833b15620030ac5786519085825286828062002e68848d830160809160018060a01b0316815260406020820152601060408201526f5361666550726f7879466163746f727960801b60608201520190565b038183895af1908115620006fa5762002eba92859262003095575b5062002e9160265462000ae5565b9062002e9c6200b315565b91898c8c5196879586948593631688f0b960e01b855284016200b331565b03925af1908115620006fa5762002eff93879262003073575b50506021805462010000600160b01b0319169290911660101b62010000600160b01b0316919091179055565b62002f1062002dab6021546200b306565b91813b156200306f5784519081526001600160a01b03909216858301908152604060208201819052600b908201526a636f756e63696c5361666560a81b60608201528391839182908490829060800103925af18015620006fa5762003058575b5062002f7b620034ef565b62002f9762002f8c60235462000ae5565b62001d1e836200357e565b62002fbf62002fa682620035a2565b73f39fd6e51aad88f6f4ce6ab8827279cfffb922669052565b62002fe762002fce82620035b3565b7370997970c51812dc3a010c7d01b50e0d17dc79c89052565b62002ff862002dab6021546200b306565b803b156200070057620030209483855180978195829463b63e800d60e01b845283016200b00d565b03925af1918215620006fa57620006d89262003041575b8080808062002db9565b80620006ec620030519262000766565b3862003037565b80620006ec620030689262000766565b3862002f70565b8380fd5b6200308d9250803d1062000733576200072281836200082a565b388062002ed3565b80620006ec620030a59262000766565b3862002e83565b8580fd5b80620006ec620030c09262000766565b3862002d91565b620030e29150843d861162000733576200072281836200082a565b3862002cf8565b34620005d4576101c0366003190112620005d4576004356200310b816200073e565b602435906200311a826200073e565b6044359062003129826200073e565b6064359262003138846200073e565b60843562003146816200073e565b60a435620031548162002089565b6200315e62002094565b9160203660e3190112620005d457620006d8966200225a96604051956200318587620007b8565b60e4358752620031953662002108565b9762004932565b34620005d4576000806003193601126200073b5760405180918260185480845260208094019060188452848420935b85828210620031e55750505062000d84925003836200082a565b85546001600160a01b0316845260019586019588955093019201620031cb565b34620005d4576080366003190112620005d457606435600160801b62989680608083901b0481811015620032f057600435805b620032aa57620006d86200225a620032a46200329e86620032978962003290620032896200326960243586620046aa565b94620032826200327b6044356200468b565b9162004b2f565b90620046aa565b9162004b42565b9062004afe565b9062004b66565b62004b54565b60801c90565b600191818316620032ce5780620032c19162004b74565b911c90815b909162003238565b915091620032e182620032e89262004b74565b9262004b1f565b9081620032c6565b60405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b34620005d4576000806003193601126200073b57604051620033568162000780565b6013815272383937b334b632992fb737ba20a6b2b6b132b960691b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000806003193601126200073b5760405181602e54620033b98162000fc7565b80845290600190818116908115620012355750600114620033e757620006d884620011c2818803826200082a565b602e8352602094506000805160206200d3f98339815191525b828410620034205750505081620006d893620011c29282010193620011af565b805485850187015292850192810162003400565b34620005d4576020366003190112620005d4576004356001600160401b038111620005d45762000bae6200346f6020923690600401620008a6565b6200afae565b34620005d4576000366003190112620005d457602060ff602154166040519015158152f35b34620005d4576000366003190112620005d457602060ff60215460081c166040519015158152f35b60405190606082016001600160401b038111838210176200077a5760405260028252604082602036910137565b60405190620034fe82620007d4565b600382526060366020840137565b604051906200351b8262000780565b6001825260203681840137565b60405190620035378262000780565b600d82526c706f6f6c5f6d616e616765723160981b6020830152565b60405190620035628262000780565b600d82526c3837b7b62fb6b0b730b3b2b91960991b6020830152565b8051156200358c5760200190565b634e487b7160e01b600052603260045260246000fd5b8051600110156200358c5760400190565b8051600210156200358c5760600190565b6001600160a01b039091169052565b60405190620035e28262000780565b601082526f70726f66696c65315f6d656d6265723160801b6020830152565b60405190620036108262000780565b601082526f383937b334b63298afb6b2b6b132b91960811b6020830152565b604051906200363e8262000780565b601082526f70726f66696c65325f6d656d6265723160801b6020830152565b604051906200366c8262000780565b601082526f383937b334b632992fb6b2b6b132b91960811b6020830152565b90816020910312620005d4575190565b6040513d6000823e3d90fd5b60085460ff168015620036b75790565b50604051630667f9d760e41b81526020816044816000805160206200d3b98339815191528060048301526519985a5b195960d21b60248301525afa908115620006fa5760009162003709575b50151590565b6200372f915060203d811162003736575b6200372681836200082a565b8101906200368b565b3862003703565b503d6200371a565b90620037536020928281519485920162000dba565b0190565b90816020910312620005d45751620008c4816200073e565b6001600160a01b039091168152604060208201819052620008c49291019062000ddf565b906040516020810190620037ad816200062784876200373e565b5190206040516001625e79b760e01b03198152600481018290529091906000805160206200d3b983398151915290602081602481855afa908115620006fa5760009162003849575b508094823b15620005d4576200382692600092836040518096819582946318caf8e360e31b8452600484016200376f565b03925af18015620006fa57620038395750565b80620006ec620010e29262000766565b62003865915060203d811162000733576200072281836200082a565b38620037f5565b9081546200387a8162001260565b926040936200388c855191826200082a565b828152809460208092019260005281600020906000935b858510620038b357505050505050565b60018481928451620038cb8162002072818a62001004565b815201930194019391620038a3565b601f8111620038e7575050565b600090602e825260208220906020601f850160051c8301941062003928575b601f0160051c01915b8281106200391c57505050565b8181556001016200390f565b909250829062003906565b601f811162003940575050565b6000906038825260208220906020601f850160051c8301941062003981575b601f0160051c01915b8281106200397557505050565b81815560010162003968565b90925082906200395f565b80519091906001600160401b0381116200077a57620039b881620039b2602e5462000fc7565b620038da565b602080601f8311600114620039f75750819293600092620039eb575b50508160011b916000199060031b1c191617602e55565b015190503880620039d4565b602e600052601f198316949091906000805160206200d3f9833981519152926000905b87821062003a5557505083600195961062003a3b575b505050811b01602e55565b015160001960f88460031b161c1916905538808062003a30565b8060018596829496860151815501950193019062003a1a565b80519091906001600160401b0381116200077a5762003a9a8162003a9460385462000fc7565b62003933565b602080601f831160011462003ad9575081929360009262003acd575b50508160011b916000199060031b1c191617603855565b01519050388062003ab6565b6038600052601f198316949091906000805160206200d399833981519152926000905b87821062003b3757505083600195961062003b1d575b505050811b01603855565b015160001960f88460031b161c1916905538808062003b12565b8060018596829496860151815501950193019062003afc565b6040519062003b5f8262000780565b60088252670b98da185a5b925960c21b6020830152565b6040519062003b858262000780565b60058252642e6e616d6560d81b6020830152565b6040519062003ba88262000780565b600c82526b1722a72b299729a2a72222a960a11b6020830152565b6040519062003bd28262000780565b60088252676e616d653a20257360c01b6020830152565b6040519062003bf88262000780565b600a82526973656e6465723a20257360b01b6020830152565b6040519062003c208262000780565b600c82526b636861696e4964203a20257360a01b6020830152565b62003c4860285462000ae5565b906000805160206200d3b983398151915290813b15620005d457604051637fec2a8d60e01b815260009384908290819062003c879060048301620005d9565b038183875af18015620006fa5762003dd7575b50805162003dc5575b5062003d9362003cb2620041e0565b62003cda62003cd562003cce62003cc862003b50565b6200409e565b8362003e17565b603755565b62003cfd62003cf762003cf062003cc862003b76565b8362003ee8565b62003a6e565b62003d3c62003d1a62003d1362003cc862003b99565b8362003f54565b602880546001600160a01b0319166001600160a01b0392909216919091179055565b62003d5b62003d4a62003bc3565b62003d54620010a2565b9062004020565b62003d7c62003d6c60285462000ae5565b62003d7662003be9565b6200404b565b6200173c60375462003d8d62003c11565b62003fbd565b803b1562003dc1578190600460405180948193633b756e9b60e11b83525af18015620006fa57620038395750565b5080fd5b62003dd0906200398c565b3862003ca3565b80620006ec62003de79262000766565b3862003c9a565b909162003e08620008c49360408452604084019062000ddf565b91602081840391015262000ddf565b6040516356eef15b60e11b8152916020918391829162003e3c91906004840162003dee565b03816000805160206200d3b98339815191525afa908115620006fa5760009162003e64575090565b620008c4915060203d811162003736576200372681836200082a565b602081830312620005d4578051906001600160401b038211620005d4570181601f82011215620005d457805162003eb7816200084e565b9262003ec760405194856200082a565b81845260208284010111620005d457620008c4916020808501910162000dba565b6040516309389f5960e31b8152916000918391829162003f0d91906004840162003dee565b03816000805160206200d3b98339815191525afa908115620006fa5760009162003f35575090565b620008c4913d8091833e62003f4b81836200082a565b81019062003e80565b604051631e19e65760e01b8152916020918391829162003f7991906004840162003dee565b03816000805160206200d3b98339815191525afa908115620006fa5760009162003fa1575090565b620008c4915060203d811162000733576200072281836200082a565b6200400562003ff091620010e293604051938492632d839cb360e21b602085015260406024850152606484019062000ddf565b90604483015203601f1981018352826200082a565b600080916020815191016a636f6e736f6c652e6c6f675afa50565b9062004005620010e29262000627604051938492634b5c427760e01b60208501526024840162003dee565b620040056200407e91620010e29360405193849263319af33360e01b602085015260406024850152606484019062000ddf565b6001600160a01b0391909116604483015203601f1981018352826200082a565b604051600091602e5491620040b38362000fc7565b93848252602094858301946001908181169081600014620041c2575060011462004184575b50509181620040f4620008c4959362004161979503826200082a565b6200414e60396040518095620041318883019575242e6e6574776f726b735b3f28402e6e616d653d3d2760501b8752518092603685019062000dba565b81016227295d60e81b60368201520360198101865201846200082a565b6040519586935180928686019062000dba565b8201620041778251809386808501910162000dba565b010380845201826200082a565b9150602e60005285600020916000925b828410620041ae575050508101840181620040f4620040d8565b805485850189015292870192810162004194565b60ff191687525050151560051b82018501905081620040f4620040d8565b604051636c98507360e11b81526000906000805160206200d3b9833981519152908281600481855afa8015620006fa576200429f9284928392620042ce575b50620042836043604051846200424082965180926020808601910162000dba565b81017f2f706b672f636f6e7472616374732f636f6e6669672f6e6574776f726b732e6a60208201526239b7b760e91b60408201520360238101855201836200082a565b60405180809581946360f9bb1160e01b8352600483016200115a565b03915afa918215620006fa578092620042b757505090565b620008c492503d8091833e62003f4b81836200082a565b620042e69192503d8085833e62003f4b81836200082a565b90386200421f565b60405190620042fd8262000780565b60118252701722a72b2997282927ac2cafa7aba722a960791b6020830152565b604051906200432c8262000780565b601582527402732bb902830b9b9b837b93a1029b1b7b932b91d1605d1b6020830152565b6200436a906200436362003cc8620042ee565b9062003f54565b6040516001600160401b039190611836808201848111838210176200077a5782916200bb63833903906000f0918215620006fa5760405163485cc95560e01b602082015273a718aca8eb8f01ecfe929bf16c19e562b57b053b60248201526001600160a01b03929092166044808401919091528252620043ec6064836200082a565b604051916104109081840192848410908411176200077a57839262004423926200b75385396001600160a01b03958616906200376f565b03906000f0908115620006fa57620010e2911662003d766200431d565b620044986020620008c495936002845260a082850152600e60a08501526d506f6f6c2050726f66696c65203160901b60c085015260e06040850152805160e08501520151604061010084015261012083019062000ddf565b6001600160a01b03909316606082015280830360809091015262000ce9565b9160175415620044cb575b50505060175490565b6200452f926020926000604051620044e38162000780565b60018152604051620044f58162000780565b600c81526b506f6f6c50726f66696c653160a01b8782015281870152604051633a92f65f60e01b8152968795869485936004850162004440565b03926001600160a01b03165af18015620006fa57620045579160009162004560575b50601755565b388080620044c2565b6200457c915060203d811162003736576200372681836200082a565b3862004551565b604051906200459282620007b8565b60008252565b60405190620045a7826200079c565b8160a06000918281528260208201528260408201528260608201528260808201520152565b604051610120810191906001600160401b038311818410176200077a576101006060918460405280946200460081620007d4565b60009081815281610140840152816101608401528161018084015282528060208301528060408301526200463362004583565b848301526200464162004598565b60808301528060a08301528060c083015260e08201520152565b6003821015620026525752565b6004821015620026525752565b634e487b7160e01b600052601160045260246000fd5b906298968091828102928184041490151715620046a457565b62004675565b81810292918115918404141715620046a457565b95949392916200471862004722926200470e620046da620045cc565b99629895b760408c510152621e84808b515261271060208c5101526702c68af0bb14000060608c51015260a08b01620035c4565b602089016200465b565b6040870162004668565b600060c0860152600060e08601528051156200474b575b60608501526080840152610100830152565b680ad78ebc5ac6200000815262004739565b620047d292620047be60a09a999596979893620047b4620047c89462004782620045cc565b9d8e629895b7604082510152621e84808151526127106020825101526702c68af0bb14000060608251015201620035c4565b60208c016200465b565b60408a0162004668565b60c08801620035c4565b60e08601528051156200474b5760608501526080840152610100830152565b91959492939082526200482060018060a01b039485602098168885015260e0604085015260e084019062000ddf565b9360609116818301526000608083015281840360a0830152601554845260408685015260009360165490620048558262000fc7565b918260408301526001908181169081600014620048d657506001146200488f575b50505050620008c493945060c081840391015262000ce9565b9293955090601660005287600020926000935b828510620048c257505050620008c4959650010191849338808062004876565b8054848601870152938901938101620048a2565b60ff1916858401525096975087965090151560051b01019250620008c438808062004876565b90816020910312620005d45751620008c48162002089565b156200491c57565b634e487b7160e01b600052600160045260246000fd5b92949597620049e6976200495593929a99886200494e6200350c565b94620046be565b9062004960620034c2565b90620049713062001d1e846200357e565b620049813362001d1e84620035a2565b6001600160a01b039473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee948a91879182811662004acd575b5090620049cb85600093620049c460285462000ae5565b90620044b7565b62004a1360405196620049f58860209e8f9b8c830162002674565b03601f1981018a52896200082a565b6040516370803ea560e11b8152998a988997889560048701620047f1565b0393165af18015620006fa57849160009162004aab575b5095600460405180948193631a8ecfcb60e11b8352165afa908115620006fa57620010e29360009262004a77575b505062004a658262002647565b62004a708162002647565b1462004914565b62004a9b9250803d1062004aa3575b62004a9281836200082a565b810190620048fc565b388062004a58565b503d62004a86565b62004ac69150823d841162003736576200372681836200082a565b3862004a2a565b9650620049cb620049ad565b94929091620008c4979694926040519662004af488620007b8565b6000885262004932565b811562004b09570490565b634e487b7160e01b600052601260045260246000fd5b600019810191908211620046a457565b600160801b90810391908211620046a457565b9062989680918203918211620046a457565b6001607f1b810191908210620046a457565b91908201809211620046a457565b90600160801b80831162004be25781101562004b9e576200329e620032a491620008c493620046aa565b60405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b60405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608490fd5b73bba817f97f133b87b9b7f1fc0f2c56e9f68d2edf803b620008c45750620008c462002dab60405162004c6b81620007f0565b610ede81527f608060405234801561001057600080fd5b50610ebe806100206000396000f3fe60208201527f608060405234801561001057600080fd5b50600436106100625760003560e01c60408201527f80631688f0b9146100675780632500510e1461017657806353e5d9351461024360608201527f57806361b69abd146102c6578063addacc0f146103cb578063d18af54d14610460808201527f4e575b600080fd5b61014a6004803603606081101561007d57600080fd5b810160a082015266e96f9fdffe6f6e642420200d5d60da1b0360c08201527f9190803590602001906401000000008111156100ba57600080fd5b820183602060e08201527f820111156100cc57600080fd5b803590602001918460018302840111640100006101008201527d831117156100ee57600080fd5b91908080601f01602080910402602001606101208201527f40519081016040528093929190818152602001838380828437600081840152606101408201527f1f19601f8201169050808301925050505050505091929192908035906020019061016082015260017024a46414141418415f5596d8101460209d607a1b036101808201527ae97ead9fdffe6eafaf9fbfae7f6efc6f0ca49efde89ffb7fc9fc9f196101a08201526001731820440558406315d800203f56e0406420200d5d60621b036101c082015277e96f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffffffff7eee196101e08201527f156101c957600080fd5b8201836020820111156101db57600080fd5b803590606102008201527f2001918460018302840111640100000000831117156101fd57600080fd5b90916102208201527f92939192939080359060200190929190505050610624565b604051808273ffff6102408201526de97ead9fdffe6eafaf9fbfae7f6e196102608201527f0390f35b61024b610751565b60405180806020018281038252838181518152606102808201527f200191508051906020019080838360005b8381101561028b57808201518184016102a08201527f52602081019050610270565b50505050905090810190601f1680156102b857806102c08201527f820380516001836020036101000a031916815260200191505b509250505060406102e08201527f5180910390f35b61039f600480360360408110156102dc57600080fd5b81019061030082015267e96f9fdffe6f6d6f6320200d5d60e21b036103208201527f908035906020019064010000000081111561031957600080fd5b8201836020826103408201527f01111561032b57600080fd5b80359060200191846001830284011164010000006103608201527e8311171561034d57600080fd5b91908080601f0160208091040260200160406103808201527f519081016040528093929190818152602001838380828437600081840152601f6103a08201527f19601f82011690508083019250505050505050919291929050505061077c565b6103c082015265e97ead9fdfff6518101460209d60d21b036103e08201527f91505060405180910390f35b6103d3610861565b6040518080602001828103826104008201527f5283818151815260200191508051906020019080838360005b838110156104136104208201527f5780820151818401526020810190506103f8565b50505050905090810190601f6104408201527f1680156104405780820380516001836020036101000a031916815260200191506104608201527f5b509250505060405180910390f35b610551600480360360808110156104645761048082015260016b1800203f56e0406420200d5d60a21b036104a08201527f169060200190929190803590602001906401000000008111156104a1576000806104c08201527ffd5b8201836020820111156104b357600080fd5b8035906020019184600183026104e08201527f840111640100000000831117156104d557600080fd5b91908080601f016020806105008201527f91040260200160405190810160405280939291908181526020018383808284376105208201527f600081840152601f19601f82011690508083019250505050505050919291929061054082015260016c200d641808006424a464200d5d609a1b03610560820152763a5be7f7ff9bdb5b9bebebebe7bddcea6927efeb9fdf6360421b1961058082015273e97ead9fdffe6eafaf9fbfae7f6efc6f0ca49fff196105a08201527f61058a848484610a3b565b90506000835111156105b2576000806000855160206105c08201527f87016000865af114156105b157600080fd5b5b7f4f51faf6c4561ff95f0676576105e08201527fe43439f0f856d97c04d9ec9070a6199ad418e2358185604051808373ffffffff610600820152673a5fab67f7ff9f6360421b1961062082015273e97ead9fdffe6dafafaf9fbfae7f6efc6f5e6c6d196106408201527f505050565b60006106758585858080601f0160208091040260200160405190816106608201527f016040528093929190818152602001838380828437600081840152601f19601f6106808201527f8201169050808301925050505050505084610a3b565b905080604051602001806106a082015269e99f9fe47ead9febfe6f61209d60f21b036106c08201527802828302028b01040c18181c0a948302029302028bf8461bcd603d1b6106e08201526a81526004018080602001826107008201527f8103825283818151815260200191508051906020019080838360005b838110156107208201527f6107165780820151818401526020810190506106fb565b5050505090509081016107408201527f90601f1680156107435780820380516001836020036101000a031916815260206107608201527f0191505b509250505060405180910390fd5b60606040518060200161076390616107808201527f0bde565b6020820181038252601f19601f82011660405250905090565b6000826107a082015260016e1810145841e2e41842f79596e0209d608a1b036107c08201527ce97ead9fdffe6eafaf9fbfae7f6efc6f9fff0f7fea7fea9ef838a8c29f196107e08201527e803e3d6000fd5b5090506000825111156107f05760008060008451602086016108008201527f6000865af114156107ef57600080fd5b5b7f4f51faf6c4561ff95f067657e4346108208201527f39f0f856d97c04d9ec9070a6199ad418e2358184604051808373ffffffffffff610840820152673a5fab67f7ff9f6360521b1961086082015275e97ead9fdffe6dafafaf9fbfae7f6efc6f5e6d6eafaf196108808201527f565b60606040518060200161087390610beb565b6020820181038252601f19606108a08201527f1f82011660405250905090565b600080838360405160200180838152602001826108c08201526ae99f9fe47ead9febfe6db0601d60fa1b036108e08201527f50506040516020818303038152906040528051906020012060001c90506108e761090082015260016c21a1a0d8415f5596e45418001d609a1b0361092082015267e9eb9ef5cda87d8c623a5f2360e21b01196109408201526be99ce1ad4ae77c7777779fbf19610960820152600172146158ffffffffc5983806e05498010060215d606a1b03610980820152673a5fab67f7ff9ee3608a1b196109a08201527ce97ead9fdffe7f9fdffe7c7ead9fdffe7d7efc7dad7b7e7eae7ead9fdf196109c08201527f0191508051906020019080838360005b838110156109ca5780820151818401526109e08201527f6020810190506109af565b50505050905090810190601f1680156109f7578082610a008201527f0380516001836020036101000a031916815260200191505b5095505050505050610a208201527f600060405180830381600087803b158015610a1957600080fd5b505af1158015610a408201527f610a2d573d6000803e3d6000fd5b505050505b50949350505050565b60008083610a608201527f8051906020012083604051602001808381526020018281526020019250505060610a808201527f4051602081830303815290604052805190602001209050600060405180602001610aa08201527f610a8890610bde565b6020820181038252601f19601f820116604052508673ff610ac08201526ce99fbfae9fdffe7f7c7fae6f9f19610ae08201527f2001908083835b60208310610ae9578051825260208201915060208101905060610b008201527f2083039250610ac6565b6001836020036101000a038019825116818451168082610b208201527f1785525050505050509050018281526020019250505060405160208183030381610b4082015260017514a4181014a4142060546098080058003d649418001d60521b03610b60820152623a5f23609a1b19610b8082015260016e074f5f54f7a15544fdfd7407b9e43360851b0319610ba0820152738152600401808060200182810382526013815260610bc0820152760800601fd0dc99585d194c8818d85b1b0819985a5b1959604a1b610be08201527b81525060200191505060405180910390fd5b50509392505050565b61610c008201527f01e680610bf883390190565b60ab80610dde8339019056fe6080604052348015610c208201527f61001057600080fd5b506040516101e63803806101e683398181016040526020610c408201527f81101561003357600080fd5b8101908080519060200190929190505050600073610c60820152623a5fa3604a1b19610c8082015274e9ebea9eff35a89fbfae80f73c865fffffffffffff19610ca08201526981526004018080602001610cc08201527f828103825260228152602001806101c460229139604001915050604051809103610ce082015260016e243f56e018002018404002a055205d608a1b03610d0082015262e9fde8653f79ba5bdf2360ba1b0119610d2082015260017624155414182ae018404658000e58003cff98201810149d604a1b03610d408201526001684fffd5f4c02cf35bc960611b0319610d608201526f60003514156050578060005260206000610d808201527ff35b3660008037600080366000845af43d6000803e60008114156070573d6000610da08201527ffd5b3d6000f3fea2646970667358221220d1429297349653a4918076d650332d610dc08201527fe1a1068c5f3e07c5c82360c277770b955264736f6c63430007060033496e7661610de08201527f6c69642073696e676c65746f6e20616464726573732070726f76696465646080610e00820152679fffabe98059e6b8631810149d60e21b03610e2082015262600035603760f91b01610e408201527f14156050578060005260206000f35b3660008037600080366000845af43d6000610e608201527f803e60008114156070573d6000fd5b3d6000f3fea2646970667358221220d142610e808201527f9297349653a4918076d650332de1a1068c5f3e07c5c82360c277770b95526473610ea08201527f6f6c63430007060033a26469706673582212200c75fe2196b9f752c82794253f610ec08201527f2ebce0d821afef5997e1d5a35ec316ce592f6664736f6c634300070600330000610ee08201526200afae565b73dd4bda7bcda544d6da2aea8ab8b0e63d2f6dc737803b620008c45750620008c462002dab60405162005c83816200080d565b6159d781527f608060405234801561001057600080fd5b5060016004819055506159ae80620060208201527e296000396000f3fe6080604052600436106101dc5760003560e01c8063affe60408201527fd0e011610102578063e19a9dd911610095578063f08a032311610064578063f060608201527f8a032314611647578063f698da2514611698578063f8dc5dd9146116c357806360808201527fffa1ad741461173e57610231565b8063e19a9dd91461139b578063e318b52b1460a08201527f6113ec578063e75235b81461147d578063e86637db146114a857610231565b8060c08201527f63cc2f8452116100d1578063cc2f8452146110e8578063d4d9bdcd146111b55760e08201527f8063d8d11f78146111f0578063e009cfde1461132a57610231565b8063affed06101008201527fe014610d94578063b4faba0914610dbf578063b63e800d14610ea7578063c4ca6101208201527f3a9c1461101757610231565b80635624b25b1161017a5780636a7612021161016101408201527f495780636a761202146109945780637d83297414610b50578063934f3a1114616101608201527f0bbf578063a0e67e2b14610d2857610231565b80635624b25b146107fb5780636101808201527f5ae6bd37146108b9578063610b592514610908578063694e80c31461095957616101a08201527f0231565b80632f54bf6e116101b65780632f54bf6e146104d35780633408e4706101c08201527f1461053a578063468721a7146105655780635229073f1461067a57610231565b6101e08201527f80630d582f131461029e57806312fb68e0146102f95780632d9ad53d1461046c61020082015260016c15d8408c5596cd98408c55ccdd609a1b036102208201527fff167f3d0ce9bfc3ed7d6862dbb28b2dea94561fe714a1b4d019aa8af39730d16102408201527fad7c3d346040518082815260200191505060405180910390a2005b34801561026102608201527f3d57600080fd5b5060007f6c9a6c4a39284e37ed1cf53d337577d14212a4870f6102808201527fb976a4366c693b939918d560001b905080548061027257600080f35b366000806102a08201527f373360601b365260008060143601600080855af13d6000803e80610299573d606102c08201527efd5b3d6000f35b3480156102aa57600080fd5b506102f760048036036040816102e082015260017104055840b055d800203f56e0406420200d5d60721b0361030082015279e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafafaf9ee831a9196103208201527f5b005b34801561030557600080fd5b5061046a6004803603608081101561031c6103408201527f57600080fd5b81019080803590602001909291908035906020019064010000006103608201527e81111561034357600080fd5b82018360208201111561035557600080fd5b806103808201527f35906020019184600183028401116401000000008311171561037757600080fd6103a08201527f5b91908080601f016020809104026020016040519081016040528093929190816103c08201527f8152602001838380828437600081840152601f19601f820116905080830192506103e08201527f5050505050509192919290803590602001906401000000008111156103da57606104008201527e80fd5b8201836020820111156103ec57600080fd5b803590602001918460016104208201527f83028401116401000000008311171561040e57600080fd5b91908080601f01606104408201527f20809104026020016040519081016040528093929190818152602001838380826104608201527f8437600081840152601f19601f820116905080830192505050505050509192916104808201527f929080359060200190929190505050611bbe565b005b348015610478576000806104a08201527ffd5b506104bb6004803603602081101561048f57600080fd5b810190808035736104c08201526be96f9fdffe6f6d6e6fafafaf196104e082018190527f612440565b60405180821515815260200191505060405180910390f35b3480156105008301527f6104df57600080fd5b50610522600480360360208110156104f657600080fd5b61052083015264e96f9fdfff6620406420200d5d60ca1b036105408301527f90929190505050612512565b60405180821515815260200191505060405180916105608301527f0390f35b34801561054657600080fd5b5061054f6125e4565b604051808281526105808301527f60200191505060405180910390f35b34801561057157600080fd5b50610662606105a083015260017801200d80d82020440558416215d800203f56e0406420200d5d603a1b036105c083015272e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6f196105e08301527f803590602001906401000000008111156105cf57600080fd5b820183602082016106008301527b11156105e157600080fd5b803590602001918460018302840111640160201b6106208301527f8311171561060357600080fd5b91908080601f016020809104026020016040516106408301526000805160206200d3d98339815191526106608301527f601f820116905080830192505050505050509192919290803560ff16906020016106808301527f909291905050506125f1565b60405180821515815260200191505060405180916106a08301527f0390f35b34801561068657600080fd5b506107776004803603608081101561066106c083015260016d2755d800203f56e0406420200d5d60921b036106e08301527de96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffff196107008301527d8111156106e457600080fd5b8201836020820111156106f657600080fd5b6107208301527f80359060200191846001830284011164010000000083111715610718576000806107408301527ffd5b91908080601f0160208091040260200160405190810160405280939291906107608301527f818152602001838380828437600081840152601f19601f8201169050808301926107808301527f505050505050509192919290803560ff1690602001909291905050506127d7566107a08301527f5b604051808315158152602001806020018281038252838181518152602001916107c08301527f508051906020019080838360005b838110156107bf57808201518184015260206107e08301527f810190506107a4565b50505050905090810190601f1680156107ec57808203806108008301527f516001836020036101000a031916815260200191505b509350505050604051806108208301527f910390f35b34801561080757600080fd5b5061083e60048036036040811015616108408301527f081e57600080fd5b8101908080359060200190929190803590602001909291906108608301527f50505061280d565b6040518080602001828103825283818151815260200191506108808301527f8051906020019080838360005b8381101561087e5780820151818401526020816108a08301527f019050610863565b50505050905090810190601f1680156108ab5780820380516108c08301527f6001836020036101000a031916815260200191505b50925050506040518091036108e08301527f90f35b3480156108c557600080fd5b506108f2600480360360208110156108dc6109008301527f57600080fd5b8101908080359060200190929190505050612894565b604051806109208301527f82815260200191505060405180910390f35b34801561091457600080fd5b50616109408301527f09576004803603602081101561092b57600080fd5b81019080803573ffffffff6109608301526fe96f9fdffe6f6d6e6fafafaf9ed753a9196109808301527f5b005b34801561096557600080fd5b506109926004803603602081101561097c6109a08301527f57600080fd5b8101908080359060200190929190505050612c3e565b005b610b6109c08301527f3860048036036101408110156109ab57600080fd5b81019080803573ffffffff6109e08301526fe96f9fdffe6f6d6e6f7fca6f9fdffe6f19610a0083018190527f929190803590602001906401000000008111156109f257600080fd5b82018360610a208401527f2082011115610a0457600080fd5b803590602001918460018302840111640100610a408401527c83111715610a2657600080fd5b9091929391929390803560ff16906020610a608401527f0190929190803590602001909291908035906020019092919080359060200190610a8084015265e96f9fdffe706524a464200d5d60d21b03610aa08401819052610ac08401527f92919080359060200190640100000000811115610ab257600080fd5b82018360610ae08401527f2082011115610ac457600080fd5b803590602001918460018302840111640100610b008401527c83111715610ae657600080fd5b91908080601f01602080910402602001610b208401527f6040519081016040528093929190818152602001838380828437600081840152610b408401527f601f19601f820116905080830192505050505050509192919290505050612d78610b608401527f565b60405180821515815260200191505060405180910390f35b348015610b5c610b808401527f57600080fd5b50610ba960048036036040811015610b7357600080fd5b810190610ba084015267e96f9fdffe6f6d6f6320200d5d60e21b03610bc08401527f90803590602001909291905050506132b5565b60405180828152602001915050610be08401527f60405180910390f35b348015610bcb57600080fd5b50610d2660048036036060610c008401527f811015610be257600080fd5b8101908080359060200190929190803590602001610c208401527f90640100000000811115610c0957600080fd5b820183602082011115610c1b57610c408401527f600080fd5b80359060200191846001830284011164010000000083111715610c610c608401527f3d57600080fd5b91908080601f01602080910402602001604051908101604052610c808401527f8093929190818152602001838380828437600081840152601f19601f82011690610ca08401527f5080830192505050505050509192919290803590602001906401000000008111610cc08401527f15610ca057600080fd5b820183602082011115610cb257600080fd5b80359060610ce08401527f200191846001830284011164010000000083111715610cd457600080fd5b9190610d008401527f8080601f01602080910402602001604051908101604052809392919081815260610d208401527f2001838380828437600081840152601f19601f82011690508083019250505050610d408401527f50505091929192905050506132da565b005b348015610d3457600080fd5b5061610d608401527f0d3d613369565b60405180806020018281038252838181518152602001915080610d808401527f51906020019060200280838360005b83811015610d8057808201518184015260610da08401527f2081019050610d65565b505050509050019250505060405180910390f35b3480610dc08401527f15610da057600080fd5b50610da9613512565b60405180828152602001915050610de08401527f60405180910390f35b348015610dcb57600080fd5b50610ea560048036036040610e0084015260017220440558437895d800203f56e0406420200d5d606a1b03610e2084015278e96f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffffffff7eeeea19610e408401527f610e1f57600080fd5b820183602082011115610e3157600080fd5b8035906020610e608401527f0191846001830284011164010000000083111715610e5357600080fd5b919080610e808401526000805160206200d439833981519152610ea08401526000805160206200d419833981519152610ec08401527f50509192919290505050613518565b005b348015610eb357600080fd5b506110610ee08401527f156004803603610100811015610ecb57600080fd5b8101908080359060200190610f008401527f640100000000811115610ee857600080fd5b820183602082011115610efa5760610f208401527e80fd5b80359060200191846020830284011164010000000083111715610f1c610f408401527f57600080fd5b909192939192939080359060200190929190803573ffffffffff610f6084015270e96f9fdffe6f6d6e6f7fca6f9fdffe6f9b19610f808401527f0100000000811115610f6757600080fd5b820183602082011115610f79576000610fa08401527f80fd5b80359060200191846001830284011164010000000083111715610f9b57610fc084015260016f1800203f56e42464a4e464a4e4200d5d60821b03610fe08401526b3a5be7f7ff9bdb5b9bdff2a360821b19611000840152753a5be7f7ff9bdb5b9bdff29be7f7ff9bdb5b9bdff2a360321b1961102084015271e96f9fdffe6f6d6e6fafafaf9ecac5a9a4ff196110408401527f5b34801561102357600080fd5b506110d26004803603608081101561103a576061106084015260ea69203f56e0406420200d5d60aa1b036110808401527f90602001909291908035906020019092919080359060200190640100000000816110a08401527f111561108157600080fd5b82018360208201111561109357600080fd5b8035906110c08401527f602001918460018302840111640100000000831117156110b557600080fd5b906110e08401527f91929391929390803560ff1690602001909291905050506136f8565b604051806111008401527f82815260200191505060405180910390f35b3480156110f457600080fd5b50616111208401527f11416004803603604081101561110b57600080fd5b81019080803573ffffffff61114084015261116083015260017424a464141414184e081596d81014602018080060dd605a1b0361118083015276e97ead9fdffe7d7efc7dad7b7e7eae7ead9fdffe6eaf7f196111a08301527f51906020019060200280838360005b838110156111a0578082015181840152606111c08301527f2081019050611185565b50505050905001935050505060405180910390f35b346111e08301527f80156111c157600080fd5b506111ee600480360360208110156111d8576000806112008301527ffd5b8101908080359060200190929190505050613a12565b005b3480156111fc6112208301527f57600080fd5b50611314600480360361014081101561121457600080fd5b810161124083015266e96f9fdffe6f6e642420200d5d60da1b036112608301527f9190803590602001909291908035906020019064010000000081111561125b576112808301527f600080fd5b82018360208201111561126d57600080fd5b8035906020019184606112a08301527f0183028401116401000000008311171561128f57600080fd5b909192939192936112c08301527f90803560ff1690602001909291908035906020019092919080359060200190926112e083015260016e2464200d641808006424a464200d5d608a1b036113008301526b3a5be7f7ff9bdb5b9bdff2a3608a1b196113208301527ce96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafafaf9ec44ea9a49fbf196113408301527f518082815260200191505060405180910390f35b34801561133657600080fd5b6113608301527f506113996004803603604081101561134d57600080fd5b81019080803573ffff6113808301526de96f9fdffe6f6d6e6f7fca8c0000196113a08301526de96f9fdffe6f6d6e6fafafaf9ec4196113c08301527fde565b005b3480156113a757600080fd5b506113ea60048036036020811015616113e083015260016e04ef95d800203f56e0406420200d5d608a1b036114008301527ce96f9fdffe6f6d6e6fafafaf9ec090a9a4ffa4cb7fea9eec07a89fff7f196114208301527ffd5b5061147b6004803603606081101561140f57600080fd5b810190808035736114408301526be96f9fdffe6f6d6e6f7fca8c1961146083018190526114808301526114a08201527f613ff3565b005b34801561148957600080fd5b50611492614665565b604051806114c08201527f82815260200191505060405180910390f35b3480156114b457600080fd5b50616114e08201527f15cc60048036036101408110156114cc57600080fd5b81019080803573ffffff6115008201526ee96f9fdffe6f6d6e6f7fca6f9fdffe196115208201527f909291908035906020019064010000000081111561151357600080fd5b8201836115408201527f60208201111561152557600080fd5b80359060200191846001830284011164016115608201527b8311171561154757600080fd5b9091929391929390803560ff1690606115808201527f20019092919080359060200190929190803590602001909291908035906020016115a082015264e96f9fdfff662424a464200d5d60ca1b036115c082018190526115e08201527f909291908035906020019092919050505061466f565b604051808060200182816116008201527f03825283818151815260200191508051906020019080838360005b83811015616116208201527f160c5780820151818401526020810190506115f1565b505050509050908101906116408201527f601f1680156116395780820380516001836020036101000a03191681526020016116608201527f91505b509250505060405180910390f35b34801561165357600080fd5b5061166116808201527f966004803603602081101561166a57600080fd5b81019080803573ffffffffff6116a082015270e96f9fdffe6f6d6e6fafafaf9eb7e8a9a4196116c08201527e5b3480156116a457600080fd5b506116ad614878565b6040518082815260206116e08201527f0191505060405180910390f35b3480156116cf57600080fd5b5061173c6004806117008201526001760d80d8182044055845b995d800203f56e0406420200d5d604a1b036117208201526b3a5be7f7ff9bdb5b9bdff2a3604a1b1961174082015274e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafaf196117608201527f506148f6565b005b34801561174a57600080fd5b50611753614d29565b6040516117808201527f80806020018281038252838181518152602001915080519060200190808383606117a08201527e5b83811015611793578082015181840152602081019050611778565b5050506117c08201527f50905090810190601f1680156117c05780820380516001836020036101000a036117e08201527f1916815260200191505b509250505060405180910390f35b6117d6614d62565b61180082015268e97d8c0000000000016218001d60ea1b036118208201526c3a7afa9ffaa7b9efea2be7ffa3602a1b19611840820152623a5f6360721b196118608201526c3a7afaa91ffaa7b9e1ea2bf3e3606a1b1961188082015261e9eb623a5f6360b21b01196118a08201526caadb08c752bb02028bf8461bcd60951b6118c082015275815260040180806020018281038252600581526020016118e082015266807f475332303360c81b611900820152600174205494180800645414181014602440e43f56d8001d604a1b03611920820152663a67ff67ffdee360721b1961194082015263e97ead9f613a6360c21b01196119608201526001760800642054980800580008180024152418404002a4011d604a1b03611980820152613a63609a1b196119a082015260016d074f5cf730a544fdfd7407b9e433608d1b03196119c0820152748152600401808060200182810382526005815260206119e082015266601fd1d4cc8c0d60c21b611a008201527c81525060200191505060405180910390fd5b60026000600173ffffffff611a20820152613a6360721b19611a40820181905279e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb19611a608301526ae99ffd9fff7b8c00000001601d60fa1b03611a80830152611aa082015279e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c0019611ac0820152653f79ba5bdf23603a1b19611ae08201526d3a7f7a1beaabdfa7ff67ffe7ffa3602a1b19611b00820152613a63607a1b19611b208201527ae97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c000019611b40820152653f79ba5bdf2360421b19611b6082015273e9fde86faaaf9ffc9fff7eab7f6d6e6f9ffefe6e19611b808201527f905055507f9465fa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa611ba082015260016b1fd82cba89a098101460209d60a21b03611bc08201527f16815260200191505060405180910390a18060045414611bba57611bb981612c611be08201527f3e565b5b5050565b611bd2604182614e0590919063ffffffff16565b82511015611c008201526b0308e242bb02028bf8461bcd60a51b611c208201527781526004018080602001828103825260058152602001807f611c4082015264047533032360dc1b611c608201527f81525060200191505060405180910390fd5b6000808060008060005b86811015611c808201527f61243457611c648882614e3f565b80945081955082965050505060008460ff16611ca08201527f141561206d578260001c9450611c96604188614e0590919063ffffffff16565b611cc08201527104130000e080ab08e872bb02028bf8461bcd60751b611ce082015271815260040180806020018281038252600581611d0082018190526a52602001807f475330323160a81b611d208301527981525060200191505060405180910390fd5b8751611d27602084611d408301527f60001c614e6e90919063ffffffff16565b1115611d9b576040517f08c379a000611d60830152648152600401611d80830152774040301000c14081c1293002c0a9301000c03fa3a998191960411b611da08301526c81525060200191505060405180611dc08301527f910390fd5b60006020838a01015190508851611dd182611dc360208760001c61611de08301527f4e6e90919063ffffffff16565b614e6e90919063ffffffff16565b1115611e45611e008301526802bb02028bf8461bcd60bd1b611e208301527a81526004018080602001828103825260058152602001807f475330611e408301526281525061323360f01b01611e608301527f60200191505060405180910390fd5b60606020848b010190506320c13b0b60e0611e8083015261e6ea6106df60f21b03611ea083015269e99cdf3ec4f4727b9fc06121dd60f21b03611ec08301527f518363ffffffff1660e01b815260040180806020018060200183810383528581611ee08301527f8151815260200191508051906020019080838360005b83811015611ee7578082611f008301527f015181840152602081019050611ecc565b50505050905090810190601f168015611f208301527f611f145780820380516001836020036101000a031916815260200191505b5083611f408301527f8103825284818151815260200191508051906020019080838360005b83811015611f608301527f611f4d578082015181840152602081019050611f32565b505050509050908101611f808301527f90601f168015611f7a5780820380516001836020036101000a03191681526020611fa08301527f0191505b5094505050505060206040518083038186803b158015611f99576000611fc08301527f80fd5b505afa158015611fad573d6000803e3d6000fd5b505050506040513d60611fe08301527f20811015611fc357600080fd5b81019080805190602001909291905050507bff61200083015264e6e9eb9edf19612020830152690332bb02028bf8461bcd60b51b6120408301527981526004018080602001828103825260058152602001807f4753612060830152618152620c0c8d60ea1b016120808301527f5060200191505060405180910390fd5b50506122b2565b60018460ff161415616120a083015260ea6a086055e09800072514211d60aa1b036120c083015269e9eb7f9edef5a8afa000610cdd60f21b036120e083015265e98c00000001651802180021dd60d21b036121008301526fe97ead9fdffe6f7ead9fdffe9fffdf9f196121208301527e8c81526020019081526020016000205414155b61217c576040517f08c379a0612140830152638152600461216083015278018080602001828103825260058152602001807f475330323560381b6121808301526b8152506020019150506040516121a08301527f80910390fd5b6122b1565b601e8460ff1611156122495760018a6040516020016121c08301527f80807f19457468657265756d205369676e6564204d6573736167653a0a3332006121e08301527c815250601c0182815260200191505060405160208183030381529060406122008301527f52805190602001206004860385856040516000815260200160405260405180856122208301527f81526020018460ff1681526020018381526020018281526020019450505050506122408301527f6020604051602081039080840390855afa158015612238573d6000803e3d60006122608301527ffd5b5050506020604051035194506122b0565b60018a858585604051600081526122808301527f602001604052604051808581526020018460ff168152602001838152602001826122a08301527f81526020019450505050506020604051602081039080840390855afa158015616122c08301527f22a3573d6000803e3d6000fd5b5050506020604051035194505b5b5b8573ffff6122e0830152623a5ea3605a1b196123008301526b3a7b9ffaa7b721aa2be7ffe3605a1b19612320830152663a67ff67ffde2360821b1961234083015265e97ead9fdffe613a6360d21b0119612360830152600174242054980800580008180024152418404002a4011d605a1b0361238083015260e9613a6360aa1b01196123a083015260016c050556e0055848ec95d418005d609a1b036123c083015267e9ebeaa49edbdba8623a5ea360e21b01196123e0830152670302028bf8461bcd60c51b6124008301527b81526004018080602001828103825260058152602001807f475330326124208301526381525060601b60f91b016124408301527f200191505060405180910390fd5b8495508080600101915050611c52565b505061246083015260016d14141414141414141596d800205d60921b0361248083015265e9ebea7fea9e633a67ffa360d21b01196124a083015264e99ffea000660942d5d418001d60ca1b036124c08301526001613a6360421b0161211d60f21b036124e083015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f1961250083015264e98c0000016618404002a4011d60ca1b036125208301526ee9ebeaa46faf6e6fafa9a49fff9ffe196125408301526001623a5f6360421b01601d60fa1b036125608301526c3a7afa9ffaa7b688aa2be7ffe3603a1b19612580830152663a67ff67ffdee360621b196125a083015261e97e613a6360b21b01196125c083015260017814980800642054980800580008180024152418404002a4011d603a1b036125e0830152613a63608a1b196126008301527ce9ebeaa46faf6e6fafa9a49fff7fb96faf7f6eafaf6fa9a49fff9ffe8c19612620830152623a7323604a1b196126408301526c3a7afa9ffaa7b650ea2be7ffe360421b19612660830152663a67ffa7fff323606a1b1961268083015262e97ead613a6360ba1b01196126a0830152600177180800642054980800580008180024152418404002a4011d60421b036126c0830152613a6360921b196126e083015260016f074f5f5524f6c68d44fdfd7407b9e43360751b03196127008301526127208201526a14980800601fd1d4cc4c0d60aa1b6127408201527981525060200191505060405180910390fd5b61273b858585855a61276082015260016e1853a35596e41420055849e2d5ccdd608a1b036127808201527ce980976a3ec99b55b098d774da285de28555cb6e91caa04649051f5ec6196127a08201526001762a4216fb2e181014581014602440e4289849f3d596ccdd604a1b036127c082015274e980532d378fd7fbed7024f24d44b6092ed822fe7e196127e08201527fc13fd45dbfe16de0930e2bd37560405160405180910390a25b949350505050566128008201527f5b600060606127e7868686866125f1565b915060405160203d0181016040523d6128208201527f81523d6000602083013e8091505094509492505050565b606060006020830267612840820152777eee7fea9ed7d4a89fff7f02a4af9fbfae6f7f7dad7f9fe0196128608201527f01601f19166020018201604052801561285e57816020016001820280368337806128808201527f820191505090505b50905060005b8381101561288957808501548060208302606128a08201527f2085010152508080600101915050612864565b508091505092915050565b60076128c08201527f6020528060005260406000206000915090505481565b6128b4614d62565b60006128e08201526001623a5fa360421b01601d60fa1b036129008201526c3a7afa9ffaa7b5b86a2be7ffa3603a1b19612920820152623a5fa360821b1961294082015260016f074f5f5524f6b37d44fdfd7407b9e43360651b03196129608201526f8152600401808060200182810382526061298082018190526c058152602001807f475331303160981b6129a08301527781525060200191505060405180910390fd5b600073ffffff6129c08301819052663a67ffa7ffdf2360421b196129e0840152613a6360921b19612a0084018190527de97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb8c00000019612a20850152613a63606a1b19612a4085015260016d074f5cf6ab7544fdfd7407b9e433605d1b0319612a608501526e815260040180806020018281038252612a808501526d3002c0a9301000c03fa3a998981960911b612aa08501527681525060200191505060405180910390fd5b6001600060612ac08501526001613a6360421b01605d60f21b03612ae085015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f19612b0085015264e99ffea0006618404002a4011d60ca1b03612b208501526001613a6360421b016120dd60f21b03612b4085015273e97ead9fdffe6f7ead9fdffe9fffdf9fff9efeff19612b6085015266fde6e96f7c8c016402a055205d60da1b03612b808501526ce9fde86faaaf7f9ffe9fff9ffe19612ba08501526001613a63604a1b01601d60fa1b03612bc0850181905274e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff519612be086015267fde6e96f7c8c0001632055205d60e21b03612c008601526de9fde86faaaf801320c5c10015a819612c208601527f83a3c4c2140e677577666428d44ed9d474a0b3a4c9943f844081604051808273612c408601526be97ead9fdffe6eafaf9fbfae19612c608601527f80910390a150565b612c46614d62565b600354811115612cbe576040517f08c3612c808601526181526103cd60f51b01612ca08601527a6004018080602001828103825260058152602001807f475332303160281b612cc08601526981525060200191505060612ce08601527802028c04881c87eadb000c0880ab0969aabb02028bf8461bcd603d1b612d008601526a8152600401808060200182612d208601819052714081c1293002c0a9301000c03fa3a999181960711b612d408701527281525060200191505060405180910390fd5b80612d608701527f6004819055507f610f7ff2b304ae8903c3de74c60c6ab1f7d6226b3f52c51619612d808701527f05bb5ad4039c936004546040518082815260200191505060405180910390a150612da08701527f565b6000806000612d928e8e8e8e8e8e8e8e8e8e60055461466f565b90506005612dc08701527f6000815480929190600101919050555080805190602001209150612dbb828286612de0870152600174184cb69596d41800184b719853b65596e41418001d605a1b03612e00870152623a5fa360a21b19612e2087015263e99c8a10670585184beb15e01d60c21b03612e408701527fbb528f8f8f8f8f8f8f8f8f8f8f336040518d63ffffffff1660e01b8152600401612e6087015268e97ead9fdffe737eae6220235d60ea1b03612e808701527f602001806020018a6001811115612e6957fe5b81526020018981526020018881612ea087015260016b1498080061e054980800619d60a21b03612ec087015263e97eada06705a054980800615d60c21b03612ee087015263e97eada067080060180800611d60c21b03612f008701527f200183810383528d8d82818152602001925080828437600081840152601f1960612f208701527f1f82011690508083019250505083810382528581815181526020019150805190612f408701527f6020019080838360005b83811015612f3b578082015181840152602081019050612f608701527f612f20565b50505050905090810190601f168015612f68578082038051600183612f808701527f6020036101000a031916815260200191505b509e505050505050505050505050612fa08701527f505050600060405180830381600087803b158015612f9357600080fd5b505af1612fc08701527f158015612fa7573d6000803e3d6000fd5b505050505b6101f4612fd36109c48b612fe08701527f01603f60408d0281612fc457fe5b04614f0a90919063ffffffff16565b015a106130008701526bab09824abb02028bf8461bcd609d1b6130208701527681526004018080602001828103825260058152602001806130408701526507f47533031360d41b6130608701527e81525060200191505060405180910390fd5b60005a90506130b28f8f8f8f806130808701526000805160206200d4398339815191526130a08701526000805160206200d4198339815191526130c08701527f50508e60008d146130a7578e6130ad565b6109c45a035b614e8d565b935061306130e08701527fc75a82614f2490919063ffffffff16565b905083806130d6575060008a14155b613100870152770403098712ba83000440a0aadb098aa2bb02028bf8461bcd60451b6131208701526b81526004018080602001828161314087018190527003825260058152602001807f475330313360781b6131608801527381525060200191505060405180910390fd5b60006131808801527f8089111561316e5761316b828b8b8b8b614f44565b90505b84156131b8577f446131a08801527f2e715f626346e8c54381002da614f62bee8d27386535b2521ec8540898556e846131c08801527f82604051808381526020018281526020019250505060405180910390a16131f86131e08801527f565b7f23428b18acfb3ea64b08dc0c1d296ea9c09702c09083ca5272e64d115b6132008801527f687d23848260405180838152602001828152602001925050506040518091039061322088015264e97e8c0001662856d41418001d60ca1b03613240880152673a7ae7b356ea1fe360321b1961326088015271e99c6cd8ec977c7a9fbfae7c9c00000000e9196132808801527f60e01b81526004018083815260200182151581526020019250505060006040516132a08801527f80830381600087803b15801561328b57600080fd5b505af115801561329f573d6132c08801527f6000803e3d6000fd5b505050505b50509b9a5050505050505050505050565b606132e08801527f08602052816000526040600020602052806000526040600020600091509150506133008801527a02a40ab2db00030022a482830004088b099ababb02028bf8461bcd602d1b613320880152688152600401808060206133408801527301828103825260058152602001807f475330303160601b6133608801527081525060200191505060405180910390fd6133808801527f5b61336384848484611bbe565b50505050565b6060600060035467ffffffffff6133a08801527c7eee7fea9ecc79a89fff7f02a4af9fbfae6f7f7dad7f9fdffd9fdffe7d196133c08801527f0160405280156133b55781602001602082028036833780820191505090505b506133e088015260016b24141800201800980018005d60a21b0361340088015269e97ead9fdffe6f7eada061059d60f21b036134208801526001700800580008180024152418404002a4011d607a1b03613440880152663a5bebe927ffa360a21b1961346088015268e9eb9ecaf6a87f7c7d6205a05d60ea1b0361348088015260017220546044184d1815ff96d8080098080040641d606a1b036134a088015260e9633a5bdfa360aa1b01196134c088015261e98d692054941418009800209d60b21b036134e08801526be97ead9fdffe6f7ead9fdffe1961350088015260016e180008180024152418404002a4011d608a1b036135208801527ce96faf7e7f9ffefe6dafaf9ecbe0a9a47d6cafafafaf6fa9a49ffaab7e196135408801527f565b600080825160208401855af4806000523d6020523d600060403e60403d016135608801527f6000fd5b6135858a8a80806020026020016040519081016040528093929190816135808801527f8152602001838360200280828437600081840152601f19601f820116905080836135a08801526001706494141414141414225854529596d8001d60721b036135c088015262e9eb9e623a5ee360ba1b01196135e08801527f35c3576135c28461564a565b5b6136118787878080601f0160208091040260206136008801527f01604051908101604052809392919081815260200183838082843760008184016136208801527f52601f19601f82011690508083019250505050505050615679565b6000821115613640880152600176184d8ad5d84d8a609800180061a15853d11596d416ccdd604a1b0361366088015274e980ebe2079759cce50ad71c737c4855fc123e6419196136808801527f6e37ae67f9285bf4f8e3c6a1a88b8b8b8b8960405180806020018581526020016136a088015269e97ead9fdffe7c8c000161211d60f21b036136c08801526de97ead9fdffe7d7efc7dad78787d196136e08801527f818152602001925060200280828437600081840152601f19601f8201169050806137008801527f830192505050965050505050505060405180910390a2505050505050505050506137208801527f565b6000805a905061374f878787878080601f016020809104026020016040516137408801526000805160206200d3d98339815191526137608801527f601f82011690508083019250505050505050865a614e8d565b613758576000806137808801527ffd5b60005a8203905080604051602001808281526020019150506040516020816137a0880152700418181c0a948302029302028bf8461bcd607d1b6137c088015272815260040180806020018281038252838181516137e08801527f815260200191508051906020019080838360005b838110156137e557808201516138008801527f818401526020810190506137ca565b50505050905090810190601f16801561386138208801527f125780820380516001836020036101000a031916815260200191505b50925050613840880152677eee7fea9ec7c4a96f0a0c080a301220721fab6c0c0c00104d60831b036138608801527f600080fd5b5060405190808252806020026020018201604052801561386a57816138808801527f602001602082028036833780820191505090505b5091506000806001600087736138a0880152613a6360521b196138c088015275e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efe196138e088015266e96fafa49fff8d6302a4011d60da1b03613900880152623a5fa3604a1b1961392088018190526c3a7afa9ffaa7b1b0aa2be7ffa360421b19613940890152623a5fa3608a1b1961396089018190527ce9ebeaa47fea9ec6b7a8af7b7defa4ea9ec5fca87f7b7c7eae7eef9ec6196139808a015260016c1695ff96d8080098080040641d609a1b036139a08a015266e97eadafaf9ffe633a5bdfa360da1b01196139c08a015267e98c000000000001631800209d60e21b036139e08a015271e97ead9fdffe6f7ead9fdffe9fffdf9fff6f19613a008a015262e96fb068152418404002a4011d60ba1b03613a208a01527f81806001019250506138d3565b80925081845250509250929050565b600073ff613a408a0152663a67ff67fff32360321b19613a608a0152613a6360821b19613a808a018190527be97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb8c0019613aa08b0152613a63605a1b19613ac08b015260016e074f5f54f6275d44fdfd7407b9e43360451b0319613ae08b0152613b008a01939093526f3825260058152602001807f475330333607c1b613b208a01527381525060200191505060405180910390fd5b6001613b408a015265e98c0000000165180218000cdd60d21b03613b608a01526fe97ead9fdffe6f7ead9fdffe9fffdf9f19613b808a015260017420e054980800642054980800580008206415540cdd60521b03613ba08a015275e97e800d5f14ea9b8d2ebbfdaa4f283e1e633f8eea2e19613bc08a01527f051fe605b0dce69acfec884d9c60405160405180910390a350565b6000613bc6613be08a01527f8c8c8c8c8c8c8c8c8c8c8c61466f565b8051906020012090509b9a5050505050613c008a01526001721414141414141596d84ef99853589596d8001d606a1b03613c208a015261e9eb623a5fa360b21b0119613c408a015260ea6a056005584f1415d418005d60aa1b03613c608a015269e9ebeaa49ec33da89fc061205d60f21b03613c808a015265028bf8461bcd60d51b613ca08a018190527d81526004018080602001828103825260058152602001807f475331303100613cc08b015265815250602001613ce08b0181905260016d245414181014602440e43f56e01d60921b03613d008c015262e98c00663a67ffa7ffdee360ba1b0119613d208c01526ce97ead9fdffe6f7ead9fdffe9f19613d408c015260016c08180024152418404002a4011d60921b03613d608c015267e9eb9ec23da89fbf613a6360e21b0119613d808c0152613da08b01919091527d81526004018080602001828103825260058152602001807f475331303300613dc08b0152613de08a0152600171245414181014602440e43f56d8005800209d60721b03613e008a015263e97ead9f613a6360c21b0119613e208a018190526001760800642054980800580008180024152418404002a4011d604a1b03613e408b0152663a67ffa7ffdee360721b19613e608b0152613e808a01526001740800642054980800580008180018404002a055205d605a1b03613ea08a0152653f79ba5bdf23608a1b19613ec08a01526d3a7f7a1beaabe7ffe7ffa7ffdf23607a1b19613ee08a015264e97ead9fdf613a6360ca1b0119613f008a0152600172642054980800580008180018404002a055205d60621b03613f208a0152653f79ba5bdf2360921b19613f408a01527de9fde86faaaf80554b05d4b9c0a7e4d4cd34c481c48fb4631c833df64a0419613f608a015260016f135df964eb3901509da058101460209d60821b03613f808a01527be97ead9fdffe6eafaf9fbfae7f6efc6f5eafafa9a49ec0889eb29da919613fa08a01527f5b60007f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbda4f558613fc08a01527fc93c34c860001b90508181557f1151116914515bc0891ff9047a6cb32cf90254613fe08a01526001731be0c199266f3e2e8cf48d4fe8a098101460209d60621b036140008a015277e97ead9fdffe6eafaf9fbfae7f6efc6f5eafafa9a49ec004196140208a015263e97e8c01671853589596d8001d60c21b036140408a01526ce9ebea7fea9ebf9aa8af9ffe8c196140608a01526140808901919091526c3a7afaa91ffaa7afd8aa2bf3e360421b196140a08901526140c088015260016f074f5f5524f5f78544fdfd7407b9e433606d1b03196140e08801527081526004018080602001828103825260056141008801526b8152602001807f475332303360a01b6141208801527881525060200191505060405180910390fd5b600073ffffffff614140880152663a67ff67ffdf23604a1b19614160880152613a63609a1b196141808801527a3a5fab67f7ff9bdfab67f7ffa7fff7e7ffdbeadbe7bfbffd5bfee360221b196141a0880152613a6360721b196141c0880181905260016d074f5cf5ef7d44fdfd7407b9e43360651b03196141e08901526142008801969096526c016054980800601fd1d4cc8c0d609a1b614220880152614240870194909452623a5f6360621b196142608701526c3a7afa9ffaa7af616a2be7ffa3605a1b19614280870152623a5f6360a21b196142a08701526eb0a0aadb0a1762bb02028bf8461bcd60851b6142c08701527381526004018080602001828103825260058152606142e08701819052682001807f475332303360b81b614300880152600173205494180800645414181014602440e43f56e05d60421b03614320880152663a67ff67ffdea3606a1b1961434088015262e97ead613a6360ba1b0119614360880152600177180800642054980800580008180024152418404002a4011d60421b036143808801526143a087019390935260016d074f5cf5e09d44fdfd7407b9e43360851b03196143c08701526143e0860192909252682001807f475332303560b81b6144008601527b81525060200191505060405180910390fd5b600260008373ffffffff614420860152614440850184905279e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb1961446086018190526ae99ffd9fff7c8c00000001601d60fa1b036144808701526144a0860185905279e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c00196144c0870152653f79ba5bdf23603a1b196144e08701526c3a7f7a1beaabdfe7ff67ffdea360321b196145008701526145208601939093527be97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c00000019614540860152653f79ba5bdf23604a1b196145608601526d3a7f7a1beaabe7ffe7ff67ffdee3603a1b19614580860152613a63608a1b196145a0860152783a5fab67f7ff9bdfab67f7ffa7fff7e7ffe7bfbffd5faadfa360221b196145c0860152653f79ba5bdf2360521b196145e086015275e9fde86faaaf80072b603ad67ed16583a3af1963df0f196146008601526001773733036e3ea57262f16332693c704a67abe098101460209d60421b0361462086015273e97ead9fdffe6eafaf9fbfae7f6efc6f5e806b9a196146408601527ffa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa7f60b2ea26816061466086015266e97ead9fdffe6f64101460209d60da1b036146808601527f505060405180910390a1505050565b6000600454905090565b606060007fbb836146a08601527f10d486368db6bd6f849402fdd73ad53d316b5a4b2644ad6efe0f941286d860006146c08601527f1b8d8d8d8d6040518083838082843780830192505050925050506040518091036146e08601526001772408232323232323231810145808006023205498080062dd60421b0361470086015273e97ead9fdffe757ead9fdffe767ead9fdffe779f196147208601527f0181111561470057fe5b8152602001878152602001868152602001858152602061474086015268e97ead9fdffe7c8c0161611d60ea1b036147608601526ce97ead9fdffe7d7ead9fdffe64196147808601527f50505050505050505050505060405160208183030381529060405280519060206147a08601527f01209050601960f81b600160f81b61478c614878565b8360405160200180857e6147c086015260e6196147e0860152600167168152600101847f60c01b0361480086015278e6e97ead9ffefe7c7ead9fdffe7d7ead9fdffe6bafafafafaf196148208601527f6040516020818303038152906040529150509b9a5050505050505050505050566148408601527f5b61481f614d62565b6148288161564a565b7f5ac6c46c93c8d0e53714ba3b536148608601527fdb3e7c046da994313d7ed0d192028bc7c228b081604051808273ffffffffffff61488086015271e97ead9fdffe6eafaf9fbfae7f6efc6f5eaf196148a08601527f565b60007f47e79534a245952e8b16893a336b85a3d9ea9fa8c573f3d803afb96148c08601527f2a7946921860001b6148a66125e4565b306040516020018084815260200183816148e086015265e97ead9fdfff6514980800609d60d21b036149008601527f935050505060405160208183030381529060405280519060200120905090565b6149208601527f6148fe614d62565b806001600354031015614979576040517f08c379a00000006149408601526681526004018080614960860181905275602001828103825260058152602001807f475332303160501b61498087018190526e8152506020019150506040518091036149a0880181905265e97d8c00000165243f56d8001d60d21b036149c08901526ee9ebea7fea9eb61ca8af9ffe8c0000196149e0890152623a5f63605a1b19614a0089015260016f074f5f5524f5ad5544fdfd7407b9e433603d1b0319614a20890152614a408801859052718103825260058152602001807f475332303360701b614a608901527281525060200191505060405180910390fd5b81614a808901526ae99ffd9fff7a8c00000001601d60fa1b03614aa0890152614ac0880196909652614ae0870194909452614b0086019190915260016d074f5cf5a55544fdfd7407b9e433603d1b0319614b20860152614b40850191909152718103825260058152602001807f475332303560701b614b608501527281525060200191505060405180910390fd5b60614b8085015266e98c000000000163980020dd60da1b03614ba085015270e97ead9fdffe6f7ead9fdffe9fffdf9fff19614bc0850181905261e9a06924152418404002a4011d60b21b03614be086015266e98c0000000001639800215d60da1b03614c00860152614c2085015263fde6e9706718404002a055205d60c21b03614c4085015269e9fde86faaaf9fff9ffe6120dd60f21b03614c6085015267e98c000000000001631800211d60e21b03614c8085015271e97ead9fdffe6f7ead9fdffe9fffdf9fff9e19614ca085015264fde6e96f7d654002a055205d60ca1b03614cc08501526ae9fde86faaaf9ffc9fff7f601d60fa1b03614ce08501527f54809291906001900391905055507ff8d49fc529812e9a7c5c50e69c20f0dccc614d00850152600175036e3ea57262f16332693c704a67abe098101460209d60521b03614d2085015275e97ead9fdffe6eafaf9fbfae7f6efc6f5e7f9ffbabeb19614d408501527f614d2457614d2381612c3e565b5b505050565b60405180604001604052806005614d608501526a081526020017f312e332e360ac1b614d80850152600167205494205596cc1d60921b03614da085015266e9eb9eb1fca89f623a732360da1b0119614dc08501526602028bf8461bcd60cd1b614de08501527c81526004018080602001828103825260058152602001807f4753303331614e00850152648152506020614e208501527f0191505060405180910390fd5b565b600080831415614e185760009050614e39614e408501527f565b6000828402905082848281614e2957fe5b0414614e3457600080fd5b8091614e608501527f50505b92915050565b6000806000836041026020810186015192506040810186614e808501527f0151915060ff60418201870151169350509250925092565b6000808284019050614ea08501527f83811015614e8357600080fd5b8091505092915050565b600060018081111561614ec08501527f4e9b57fe5b836001811115614ea757fe5b1415614ec057600080855160208701614ee08501527f8986f49050614ed0565b600080855160208701888a87f190505b959450505050614f008501527f50565b6000807f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbd614f208501527fa4f558c93c34c860001b9050805491505090565b600081831015614f1a578161614f408501527f4f1c565b825b905092915050565b600082821115614f3357600080fd5b600082614f608501526001732100e4142024541424a454141596d8002018001d60621b03614f8085015260e9623a5f2360aa1b0119614fa0850152600171051853e055e09853e0d596cc96e41418001d60721b03614fc085015262e9ebea623a5ee360ba1b0119614fe08501527f61509b57614fed3a8610614fca573a614fcc565b855b614fdf888a614e6e90916150008501527f9063ffffffff16565b614e0590919063ffffffff16565b91508073ffffffffff61502085015270e99ef7037c6f7eeafd6f9fbfae9fff9fbf1961504085015279028c04181c0c2c44478c9a828282830a84b2bb02028bf8461bcd60351b615060850152698152600401808060200161508085015272828103825260058152602001807f475330313160681b6150a08501527181525060200191505060405180910390fd5b6150c08501527f615140565b6150c0856150b2888a614e6e90919063ffffffff16565b614e05906150e08501527f919063ffffffff16565b91506150cd8482846158b4565b61513f576040517f08615100850152608162061bcd60ed1b016151208501527b29300200c040301000c14081c1293002c0a9301000c03fa3a998189960211b615140850152688152506020019150506151608501527f60405180910390fd5b5b5095945050505050565b6000600454146151c257604061518085015265028bf8461bcd60d51b6151a08501527d81526004018080602001828103825260058152602001807f4753323030006151c0850152658152506020016151e08501527f91505060405180910390fd5b8151811115615239576040517f08c379a0000000615200850152615220840152615240830152615260820152730487eadb000c0880ab0a9582bb02028bf8461bcd60651b6152808201526f815260040180806020018281038252606152a08201526c02c0a9301000c03fa3a999181960991b6152c08201527781525060200191505060405180910390fd5b6000600190506152e08201527f60005b83518110156155b65760008482815181106152d057fe5b60200260200161530082015264e97e8c00016554641418001d60ca1b036153208201526de9ebea7fea9eacbba8af9ffe8c0019615340820152623a5fa360521b196153608201526c3a7afaa91ffaa7ab20ea2bf3e3604a1b19615380820152623a5fa360921b196153a08201526c3a7afaa91ffaa7ab12ea2bdfe3608a1b196153c082015265e9ebeaa49eab623a5f2360d21b01196153e0820152690132bb02028bf8461bcd60b51b6154008201527981526004018080602001828103825260058152602001807f47536154208201526181526232303360e81b0161544082015260017214180800645414181014602440e43f56d8001d606a1b03615460820152663a67ff67ffdf2360921b1961548082015267e97ead9fdffe6f7e613a6360e21b01196154a082015260017214980800580008180024152418404002a4011d606a1b036154c082015262e9eb9e613a6360ba1b01196154e08201526a02a93abb02028bf8461bcd60ad1b6155008201527881526004018080602001828103825260058152602001807f4761552082015260816314cc8c0d60e21b016155408201526001771494180800645414181014602440e43f56e018009800215d60421b03615560820152613a6360921b19615580820152783a5fab67f7ff9bdfab67f7ffa7fff7e7ffe7bfbffd5faadfa3602a1b196155a0820152653f79ba5bdf23605a1b196155c082015276e9fde86faaaf7f6dafaf7f7f9ffefe6eafaf9ead46a9a4196155e082015262e98c01681418005800980020dd60ba1b036156008201526ce97ead9fdffe6f7ead9fdffe9f1961562082015260016a08180018404002a055205d60a21b0361564082015265e9fde86faab0648645a420dd60d21b036156608201527f825160038190555081600481905550505050565b60007f6c9a6c4a39284e37ed6156808201527f1cf53d337577d14212a4870fb976a4366c693b939918d560001b9050818155506156a082015265e99ffe9fffa065141596d8001d60d21b036156c08201526001613a6360421b01605d60f21b036156e082015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f1961570082015264e98c0000016618404002a4011d60ca1b036157208201526ee9eb9ea884a89fbfae80f73c865fff196157408201526481526004016157608201527708080602001828103825260058152602001807f47533130360441b6157808201526c815250602001915050604051806157a082015260016c2440e43f56d80060180018005d609a1b036157c082015268e97ead9fdffe6f7ead613a6360ea1b01196157e082015260016f180800580008180018404002a055205d60821b0361580082015261e9fd653f79ba5bdf2360b21b011961582082015264e97d8c00016605e4155418001d60ca1b036158408201526de9eb9ea74fa89ea7c27d9fff7c9f19615860820152710ad30a746ab2db0ac57abb02028bf8461bcd606d1b6158808201527081526004018080602001828103825260056158a08201526b08152602001807f47533030360a41b6158c08201527881525060200191505060405180910390fd5b5b5050565b60006158e08201526001702018ea41672ee1211810145809006020dd607a1b036159008201527ae97ead9fdffe7d7ead9fdffe6dafafaf9fbfae9fdf7e7cfcfc7ead1961592082015260016e24181014a4183806d808208060145f608a1b03615940820152747c7e7ce9e87cadafafafaf6faf9fdf9fff7dae9fdf196159608201527f84016000896127105a03f13d6000811461595b576020811461596357600093506159808201527f61596e565b81935061596e565b600051158215171593505b50505093925050506159a08201527f56fea26469706673582212203874bcf92e1722cc7bfa0cef1a0985cf0dc3485b6159c082015276a0663db3747ccdf1605df53464736f6c6343000706003360481b6159e08201525b6025546000198114620046a45760010190816025556020815191016000f590813f156200afd757565b60405162461bcd60e51b815260206004820152600e60248201526d1b081b9bdd0819195c1b1bde595960921b6044820152606490fd5b91906200b0239061010080855284019062000ce9565b6001602084015260e06020600092836040870152858103606087015283815201938260808201528260a08201528260c08201520152565b9060018060a01b0390816200b07562002dab60225462000ae5565b16156200b08d575b505050620008c460225462000ae5565b8116156200b238575b506200b0a862002dab60225462000ae5565b906000805160206200d3b9833981519152803b15620005d457604080516318caf8e360e31b8082526001600160a01b039590951660048201526024810191909152600f60448201526e31b7bab731b4b629b0b332a0b2323960891b606482015260009390848160848183875af18015620006fa576200b221575b50813b156200306f57604080519182526001600160a01b03841660048301526024820152601060448201526f31b7bab731b4b629b0b332a7bbb732b960811b60648201529083908290608490829084905af18015620006fa576200b20a575b506200b19c6200b1906200350c565b9162001d1e836200357e565b6200b1ad62002dab60225462000ae5565b90813b15620007005782916200b1da9160405194858094819363b63e800d60e01b8352600483016200b00d565b03925af18015620006fa576200b1f3575b80806200b07d565b80620006ec6200b2039262000766565b386200b1eb565b80620006ec6200b21a9262000766565b386200b181565b80620006ec6200b2319262000766565b386200b122565b60009060206200b2a06200b24f62002dab62005c50565b836200b25a62004c38565b604051631688f0b960e01b81526001600160a01b039093166004840152606060248401526000606484015260036044840152919586939190921691839182906084820190565b03925af18015620006fa576200b2dc926000916200b2e3575b5060228054919092166001600160a01b03166001600160a01b0319909116179055565b386200b096565b6200b2ff915060203d811162000733576200072281836200082a565b386200b2b9565b60101c6001600160a01b031690565b604051906200b3248262000780565b6001825260006020830152565b92916200b35960409160039360018060a01b0316865260606020870152606086019062000ddf565b930152565b90816020910312620005d457518015158103620005d45790565b620008c4939160018060a01b031681526200b3a760009384602084015261014080604085015283019062000ddf565b928060608301528060808301528060a08301528060c08301528060e083015261010082015261012081840391015262000ddf565b92620008c494926200b4089260018060a01b03168552602085015261014080604086015284019062000ddf565b9160008060608301528060808301528060a08301528060c08301528060e083015261010082015261012081840391015262000ddf565b604051906200b44d8262000780565b6016825275195e1958d51c985b9cd858dd1a5bdb8819985a5b195960521b6020830152565b909360606200b4b1959493946200b48b8486886200b69f565b6040516338d07aa960e21b81526004810192909252602482015295869081906044820190565b03816000805160206200d3b98339815191525afa938415620006fa5760008080966200b556575b6020969750600092916200b4f96200b508926040519a8b938b85016200b626565b03601f1981018952886200082a565b6200b52a6040519788968795869463353b090160e11b8652600486016200b3db565b03926001600160a01b03165af18015620006fa57620010e29160009162000a065750620009fd6200b43e565b5050602094506000906200b5086200b5826200b4f99860603d811162000a7e5762000a6881836200082a565b9199909198505091925050866200b4d8565b6000805160206200d3b983398151915291823b15620005d4576200b5e19260009260405180958194829363a34edc0360e01b84521515600484015260406024840152604483019062000ddf565b03915afa8015620006fa576200b5f45750565b620010e29062000766565b90816060910312620005d457805160ff81168103620005d457916040602083015192015190565b91604193918352602083015260ff60f81b9060f81b1660408201520190565b610120919493929460018060a01b031681526200b67660009586602084015261014080604085015283019062000ddf565b948060608301528060808301528060a08301528060c08301528060e08301526101008201520152565b60405163057ff68760e51b8152602093919290916001600160a01b03168483600481845afa918215620006fa576200b6fb9486946000946200b72e575b50604051631b1a23ef60e31b815295869485938493600485016200b645565b03915afa918215620006fa576000926200b71457505090565b620008c49250803d1062003736576200372681836200082a565b6200b74a919450853d871162003736576200372681836200082a565b92386200b6dc56fe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c6343000813003360a0806040523461003157306080526117ff9081610037823960805181818161087b0152818161099c0152610ed80152f35b600080fdfe6080604081815260048036101561001557600080fd5b600092833560e01c908163025313a21461123c575080631413d4c014611204578063175188e8146110e45780633659cfe614610eb157806339ebf82314610e5b5780633d47683014610de757806342a987a014610db0578063485cc95514610c0c5780634f1ef2861461092357806352d1902d14610866578063642ce76b14610729578063715018a6146106db5780638da5cb5b146106ad5780638df8b2fe1461068057806398575188146105e9578063c4d66de814610572578063d80ea5a014610430578063f2fde38b1461039f578063fc2ebdd1146101a25763feec7145146100ff57600080fd5b3461019e578160031936011261019e57610117611261565b602435916001600160a01b0391908261012e611641565b1633148015610191575b156101835750916020918361016d7f8b9ed475f52a60fa276f21d6848c06cbb59ebfcd26e8b8de2753c3e12a493ea795611599565b169384865260668352818187205551908152a280f35b8451637d7b71b560e01b8152fd5b5082606554163314610138565b8280fd5b50903461019e57606036600319011261019e576101bd611261565b60443592602435926001600160a01b038086169391929084870361039b578351631800f90560e21b8152838216976020949091858186818d5afa908115610391578b91610364575b508380610210611641565b16331491821561035a575b821561034d575b50508015610340575b8015610325575b15610315579061024461024992611599565b611599565b868852606783528388209081541591821592610302575b50506102f457509181866060947f9b1a157188de9a0bd2e7995d72aaba244d9bd012ddf3ae3d4f492135175070cb96945161029a81611292565b858152818101908382526001858201918783528b8652606785528686209051815501915115159060ff835491610100600160a81b03905160081b1692169060018060a81b031916171790558251948552840152820152a280f35b825163c45546f760e01b8152fd5b6001015460081c16151590503880610260565b855163e3b6914b60e01b81528490fd5b50888a5260678552826001878c20015460081c163314610232565b508260655416331461022b565b9091501633148338610222565b338c14925061021b565b6103849150863d881161038a575b61037c81836112c3565b8101906115bb565b38610205565b503d610372565b87513d8d823e3d90fd5b8780fd5b503461019e57602036600319011261019e576103b9611261565b916103c2611301565b6001600160a01b038316156103de57836103db84611360565b80f35b906020608492519162461bcd60e51b8352820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152fd5b50903461019e5760208060031936011261056e5761044c611261565b8251631800f90560e21b81526001600160a01b03828116959190848284818a5afa918215610564578892610545575b5080610485611641565b16331491821561053b575b821561052e575b50811561051f575b8115610503575b50156104f55750600192916104bc606792611599565b84865252832001805460ff191660011790557f652f053fc39779b70b29678135ade972fcb79966fc68fcb77c996b1aa4fd9afb8280a280f35b835163e3b6914b60e01b8152fd5b9050858752606784526001858820015460081c163314386104a6565b8091506065541633149061049f565b8192501633149038610497565b3388149250610490565b61055d919250853d871161038a5761037c81836112c3565b903861047b565b86513d8a823e3d90fd5b8380fd5b503461019e57602036600319011261019e5761058c611261565b9160ff845460081c16156105a457836103db84611360565b906020608492519162461bcd60e51b8352820152602b602482015260008051602061172a83398151915260448201526a6e697469616c697a696e6760a81b6064820152fd5b503461019e57602036600319011261019e57610603611261565b6001600160a01b039182610615611641565b1633148015610673575b15610665575090816106318593611599565b169182825260666020528120557fe9dce8c992623ce791725b21e857e33248d1f190a25b5168313420eebdaae99d8280a280f35b8351637d7b71b560e01b8152fd5b508260655416331461061f565b5050346106a957816003193601126106a95760655490516001600160a01b039091168152602090f35b5080fd5b5050346106a957816003193601126106a9576020906106ca611641565b90516001600160a01b039091168152f35b83346107265780600319360112610726576106f4611301565b603380546001600160a01b0319811690915581906001600160a01b031660008051602061174a8339815191528280a380f35b80fd5b508290346106a957826003193601126106a957610744611261565b8351631800f90560e21b815290936001600160a01b03808616936020936024359392858284818a5afa91821561085c57889261083d575b5080610785611641565b163314918215610833575b8215610826575b508115610817575b81156107fb575b50156107ed57506107d97f40ba4d5d9facd2fda74e22251d1638576e05a30482470363c7c87a7b5b298c09949596611599565b84865260678352818187205551908152a280f35b905163e3b6914b60e01b8152fd5b9050858752606785526001838820015460081c163314886107a6565b8091506065541633149061079f565b8192501633149089610797565b3388149250610790565b610855919250863d881161038a5761037c81836112c3565b908961077b565b84513d8a823e3d90fd5b508234610726578060031936011261072657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036108c0576020825160008051602061170a8339815191528152f35b6020608492519162461bcd60e51b8352820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152fd5b50908060031936011261019e57610938611261565b906024908135906001600160401b038211610c085736602383011215610c085781850135610965816112e6565b610971835191826112c3565b81815287602094858301933688828401011161019e5780888893018637830101526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116906109ca30831415611397565b6109e760008051602061170a8339815191529282845416146113e6565b6109ef611641565b8133911603610be1576000805160206116ca8339815191525460ff1615610a2157505050505050506103db9150611435565b87929394959697169085516352d1902d60e01b815287818b81865afa8b9181610bae575b50610a9157865162461bcd60e51b8152808b01899052602e818b01526000805160206117aa83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b989294989791939703610b6c575050610aa982611435565b60008051602061176a8339815191528780a285845115801590610b64575b610ad5575b50505050505080f35b80610b4e96845196610ae688611292565b602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b868901525190845af4913d15610b5a573d610b40610b37826112e6565b925192836112c3565b81528681943d92013e6114c5565b50388080808085610acc565b50606092506114c5565b506001610ac7565b845162461bcd60e51b815291820186905260299082015260008051602061178a8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508881813d8311610bda575b610bc681836112c3565b81010312610bd657519038610a45565b8b80fd5b503d610bbc565b888760449287610bef611641565b90519363163678e960e01b855233908501521690820152fd5b8580fd5b503461019e578160031936011261019e57610c25611261565b610c2d61127c565b84549260ff8460081c161593848095610da3575b8015610d8c575b15610d325760ff198116600117875584610d21575b5060ff865460081c1615610cdc5750610c7590611360565b610c7e81611599565b606580546001600160a01b0319166001600160a01b0392909216919091179055610ca6575080f35b60207f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989161ff001984541684555160018152a180f35b608490602086519162461bcd60e51b8352820152602b602482015260008051602061172a83398151915260448201526a6e697469616c697a696e6760a81b6064820152fd5b61ffff191661010117865538610c5d565b855162461bcd60e51b8152602081840152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b158015610c485750600160ff821614610c48565b50600160ff821610610c41565b5050346106a957806003193601126106a957602090610dde610dd0611261565b610dd861127c565b906115da565b90519015158152f35b833461072657602036600319011261072657610e01611261565b610e09611301565b610e1281611599565b606580546001600160a01b039283166001600160a01b0319821681179092559091167f5117c6c457d7b27a4cb68df40b118f157ac1f1ba81f8a571d189f829d74fbc868380a380f35b5050346106a95760203660031901126106a9576060916001600160a01b039190819083610e86611261565b1681526067602052209160018354930154825193845260ff81161515602085015260081c1690820152f35b50903461019e5760208060031936011261056e57610ecd611261565b916001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116610f0530821415611397565b610f2260008051602061170a8339815191529183835416146113e6565b610f2a611641565b82339116036110bd578251848101929091906001600160401b038411838510176110aa578385528883526000805160206116ca8339815191525460ff1615610f7c575050505050506103db9150611435565b869293949596169085516352d1902d60e01b815287818a81865afa8a9181611077575b50610fec57865162461bcd60e51b8152808a01899052602e60248201526000805160206117aa83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b979192939695949703611034575061100382611435565b60008051602061176a8339815191528780a28584511580159061102d57610ad55750505050505080f35b5080610ac7565b835162461bcd60e51b81529081018590526029602482015260008051602061178a8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508881813d83116110a3575b61108f81836112c3565b8101031261109f57519038610f9f565b8a80fd5b503d611085565b634e487b7160e01b895260418852602489fd5b60448683856110ca611641565b90519263163678e960e01b84523390840152166024820152fd5b50903461019e5760208060031936011261056e57611100611261565b8251631800f90560e21b81526001600160a01b03828116959190848284818a5afa9182156105645788926111e5575b5080611139611641565b1633149182156111db575b82156111ce575b5081156111bf575b81156111a3575b50156104f557509160676001926111718795611599565b85855252822082815501557f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea48280a280f35b9050858752606784526001858820015460081c1633143861115a565b80915060655416331490611153565b819250163314903861114b565b3388149250611144565b6111fd919250853d871161038a5761037c81836112c3565b903861112f565b5050346106a95760203660031901126106a95760209181906001600160a01b0361122c611261565b1681526066845220549051908152f35b8490346106a957816003193601126106a9576033546001600160a01b03168152602090f35b600435906001600160a01b038216820361127757565b600080fd5b602435906001600160a01b038216820361127757565b606081019081106001600160401b038211176112ad57604052565b634e487b7160e01b600052604160045260246000fd5b601f909101601f19168101906001600160401b038211908210176112ad57604052565b6001600160401b0381116112ad57601f01601f191660200190565b611309611641565b336001600160a01b039091160361131c57565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602061174a833981519152600080a3565b1561139e57565b60405162461bcd60e51b815260206004820152602c60248201526000805160206116ea83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b156113ed57565b60405162461bcd60e51b815260206004820152602c60248201526000805160206116ea83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b1561146a5760008051602061170a83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b9192901561152757508151156114d9575090565b3b156114e25790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b82519091501561153a5750805190602001fd5b6040519062461bcd60e51b82528160208060048301528251908160248401526000935b828510611580575050604492506000838284010152601f80199101168101030190fd5b848101820151868601604401529381019385935061155d565b6001600160a01b0316156115a957565b60405163d92e233d60e01b8152600490fd5b9081602091031261127757516001600160a01b03811681036112775790565b9060018060a01b038092166000526066602052816040600020549116600052606760205260406000209160405161161081611292565b6040600185549586845201549260ff841615938415602085015260081c1691015261163a57101590565b5050600190565b6033546001600160a01b0390811690813b61165a575090565b604051638da5cb5b60e01b8152602081600481865afa91829160009361168a575b5050611685575090565b905090565b602093919293813d82116116c1575b816116a6602093836112c3565b810103126106a957519182168203610726575090388061167b565b3d915061169956fe4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc496e697469616c697a61626c653a20636f6e7472616374206973206e6f7420698be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b45524331393637557067726164653a20756e737570706f727465642070726f7845524331393637557067726164653a206e657720696d706c656d656e74617469a264697066735822122090453e44fa69fefae757d018fe317928cf51401c7897c3475408a45934d6a9f864736f6c6343000813003338395c5dceade9603479b177b68959049485df8aa97b39f3533039af5f4561990000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d9081016040528093929190818152602001838380828437600081840152601f1937fa166cbdbfbb1561ccd9ea985ec0218b5e68502e230525f544285b2bdf3d7e01838380828437600081840152601f19601f820116905080830192505050505080601f0160208091040260200160405190810160405280939291908181526020a264697066735822122037274ebf0e77c41e185b903785e86f752af1c2b7ae6ba34e13ffc0ba86fa0c3a64736f6c63430008130033","sourceMap":"257:1548:94:-:0;;;;3166:4:19;257:1548:94;;-1:-1:-1;;257:1548:94;3166:4:19;257:1548:94;;;;;;-1:-1:-1;;;;;257:1548:94;;;3166:4:19;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;671:82:111;;;;257:1548:94;;671:82:111;257:1548:94;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;2401:42:93;257:1548:94;;-1:-1:-1;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;;;;;;;;;;;;;;824:4:17;257:1548:94;;;824:4:17;257:1548:94;821:1:112;257:1548:94;-1:-1:-1;852:1:112;257:1548:94;1848:7:93;;257:1548:94;;;;;;;;1886:42:93;257:1548:94;1886:42:93;257:1548:94;;;1886:42:93;257:1548:94;2266:5:93;;257:1548:94;;;;;:::i;:::-;;;;;;;-1:-1:-1;257:1548:94;;;2356:9:93;257:1548:94;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;2356:9:93;257:1548:94;2401:42:93;257:1548:94;;;2401:42:93;257:1548:94;;;;;;;;;;;;2356:9:93;-1:-1:-1;257:1548:94;-1:-1:-1;257:1548:94;;;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;257:1548:94;;;-1:-1:-1;257:1548:94;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;-1:-1:-1;257:1548:94;;-1:-1:-1;257:1548:94;;-1:-1:-1;257:1548:94;;;;;;;;;;;;2401:42:93;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;257:1548:94;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;257:1548:94;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610156200001357600080fd5b60003560e01c8062b1fad714620005c2578063023a6f4314620005bc578063030e400614620005b65780630522b7db14620005b05780630688b13514620005aa57806308c24f9f14620005a457806308dbbb03146200059e5780630f166ad41462000598578063174eedde14620004a85780631ae726d914620005925780631b96dce6146200058c5780631d8fcc1014620005865780631e7bcb2e14620005805780631ed7831c146200057a5780632ade388014620005745780632e0f2625146200056e5780632f99c6cc1462000568578063352c94a7146200056257806337d1c404146200055c578063388aef5c1462000556578063392f37e914620005505780633e5e3c23146200054a5780633f26479e14620005445780633f7286f4146200053e57806349ef42c114620005385780634bf4ba211462000532578063587c1243146200052c5780635aff599914620005265780635d1222aa14620005205780635d6b4bc2146200051a5780635e2dd44214620005145780636050f2f814620004a257806366d003ac146200050e57806366d9a9a014620005085780636a38dd0a14620005025780636c53db9a14620004fc5780636db5251014620004f657806370a3294414620004f057806374d9284e14620004a8578063759c9a8614620004ea5780637658524d14620004e457806379e62d0d14620004de5780637b2edf3214620004d85780637cbe79ed14620004d25780637f6a80df14620004cc578063829e423f14620004a857806382bfefc814620004c657806385226c8114620004c057806385294f1814620004ba578063861ceb6914620004b4578063896546a114620004ae5780638c7408c414620004a85780638e0d1a5014620004a25780638e3c2493146200049c578063916a17c614620004965780639352fad2146200049057806393892107146200048a578063a0cf0aea1462000484578063a407c67a146200047e578063aa3744bd1462000478578063b3e9b4fd1462000472578063b5508aa9146200046c578063ba414fa61462000466578063bb0504cd1462000460578063c0406226146200045a578063c1f2a6411462000454578063caa12add146200044e578063d1e82b581462000448578063d1f2cd881462000442578063d23727ed146200043c578063d5bee9f51462000436578063da4bf0871462000430578063dac4eb16146200042a578063dac770b31462000424578063e070e0ab146200041e578063e20c9f711462000418578063e99ce9111462000412578063ef0d790f146200040c578063f4d914e61462000406578063f69d511f1462000400578063f8ccbf4714620003fa5763fa7626d414620003f457600080fd5b6200349a565b62003475565b62003434565b62003393565b62003334565b62003205565b6200319c565b620030e9565b62002c8c565b62002c32565b62002b17565b62002ac0565b62002a8f565b62002a35565b620029d9565b620029a8565b62002942565b62002910565b620028f1565b620028c8565b62002828565b6200277b565b620025b8565b620024bd565b6200248c565b62002461565b62002446565b620022de565b620022c0565b62001742565b62000bfd565b62002295565b6200226a565b62002171565b62001fe1565b62001fa3565b62001f78565b62001f22565b62001f04565b62001e09565b62001de9565b62001d91565b62001c59565b62001bf4565b62001bc5565b62001ba7565b6200188c565b6200176d565b62001727565b6200164e565b6200162e565b620015d2565b620015b4565b6200157e565b6200155f565b620014f6565b620014d7565b6200146e565b62001373565b62001353565b620012ea565b6200116d565b62000f9c565b62000f77565b62000edf565b62000d3b565b62000ccb565b62000cad565b62000c53565b62000c1b565b62000be0565b62000bc0565b62000b72565b62000b1c565b62000af1565b62000a86565b620008c7565b620005ec565b6000910312620005d457565b600080fd5b6001600160a01b03909116815260200190565b34620005d4576000806003193601126200073b576200060a62003528565b6200065b604051602081019062000636816200062784876200373e565b03601f1981018352826200082a565b5190206040516001625e79b760e01b0319815260048101919091529081906024820190565b03916020826000805160206200d3b98339815191529481865afa928315620006fa578492839462000704575b50803b156200070057620006b3916040519586809481936318caf8e360e31b835288600484016200376f565b03925af1918215620006fa57620006d892620006dc575b5060405191829182620005d9565b0390f35b80620006ec620006f39262000766565b80620005c8565b38620006ca565b6200369b565b8280fd5b6200072b91945060203d811162000733575b6200072281836200082a565b81019062003757565b923862000687565b503d62000716565b80fd5b6001600160a01b03811603620005d457565b634e487b7160e01b600052604160045260246000fd5b6001600160401b0381116200077a57604052565b62000750565b604081019081106001600160401b038211176200077a57604052565b60c081019081106001600160401b038211176200077a57604052565b602081019081106001600160401b038211176200077a57604052565b608081019081106001600160401b038211176200077a57604052565b610f0081019081106001600160401b038211176200077a57604052565b615a0081019081106001600160401b038211176200077a57604052565b601f909101601f19168101906001600160401b038211908210176200077a57604052565b6001600160401b0381116200077a57601f01601f191660200190565b92919262000878826200084e565b916200088860405193846200082a565b829481845281830111620005d4578281602093846000960137010152565b9080601f83011215620005d457816020620008c4933591016200086a565b90565b34620005d4576080366003190112620005d457600435620008e8816200073e565b60443590620008f7826200073e565b606435906001600160401b038211620005d4576200091e62000956923690600401620008a6565b9060606200092e8284876200b69f565b6040516338d07aa960e21b815260248035600483015281019190915293849081906044820190565b03816000805160206200d3b98339815191525afa918215620006fa57620009d09460209460008091819662000a3b575b5060009291620009a3620009b2926040519889938b85016200b626565b03601f1981018752866200082a565b60405163353b090160e11b815296879586948593600485016200b378565b03926001600160a01b03165af18015620006fa5762000a049160009162000a06575b50620009fd6200b43e565b906200b594565b005b62000a2c915060203d811162000a33575b62000a2381836200082a565b8101906200b35e565b38620009f2565b503d62000a17565b620009a396506000939250620009b2915062000a719060603d811162000a7e575b62000a6881836200082a565b8101906200b5ff565b9750929390915062000986565b503d62000a5c565b34620005d4576000806003193601126200073b5760405162000aa88162000780565b6013815272383937b334b63298afb737ba20a6b2b6b132b960691b60208201526200065b604051602081019062000636816200062784876200373e565b6001600160a01b031690565b34620005d4576000366003190112620005d4576022546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200073b5760405162000b3e8162000780565b600a8152693932b1b4b834b2b73a1960b11b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576040366003190112620005d457602062000bae60043562000b99816200073e565b6024359062000ba8826200073e565b6200b05a565b6040516001600160a01b039091168152f35b34620005d4576000366003190112620005d4576020602754604051908152f35b34620005d4576000366003190112620005d4576020604051308152f35b34620005d4576000366003190112620005d457602060405160008152f35b34620005d4576020366003190112620005d457602062000bae60043562000c42816200073e565b62000c4c62004c38565b906200b05a565b34620005d4576000806003193601126200073b5760405162000c758162000780565b600e81526d383937b334b632992fb7bbb732b960911b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000366003190112620005d457602060405160038152f35b34620005d4576000806003193601126200073b576200060a620035d3565b90815180825260208080930193019160005b82811062000d0a575050505090565b83516001600160a01b03168552938101939281019260010162000cfb565b906020620008c492818152019062000ce9565b34620005d4576000806003193601126200073b5760405180918260195480845260208094019060198452848420935b8582821062000d9a5750505062000d84925003836200082a565b620006d860405192828493845283019062000ce9565b85546001600160a01b031684526001958601958895509301920162000d6a565b60005b83811062000dce5750506000910152565b818101518382015260200162000dbd565b9060209162000dfa8151809281855285808601910162000dba565b601f01601f1916010190565b90815180825260208092019182818360051b82019501936000915b84831062000e325750505050505090565b909192939495848062000e4e83856001950387528a5162000ddf565b980193019301919493929062000e21565b602080820190808352835180925260409283810182858560051b8401019601946000925b85841062000e95575050505050505090565b90919293949596858062000ecd600193603f1986820301885286838d51878060a01b0381511684520151918185820152019062000e06565b99019401940192959493919062000e83565b34620005d4576000806003193601126200073b57602090815462000f038162001260565b9160409362000f15855194856200082a565b8284528082528082208185015b84841062000f3957865180620006d8888262000e5f565b600283600192895162000f4c8162000780565b848060a01b03865416815262000f648587016200386c565b8382015281520192019301929062000f22565b34620005d4576000366003190112620005d4576020604051670de0b6b3a76400008152f35b34620005d4576000366003190112620005d4576030546040516001600160a01b039091168152602090f35b90600182811c9216801562000ff9575b602083101462000fe357565b634e487b7160e01b600052602260045260246000fd5b91607f169162000fd7565b9060009291805491620010178362000fc7565b9182825260019384811690816000146200107e57506001146200103b575b50505050565b90919394506000526020928360002092846000945b8386106200106957505050500101903880808062001035565b80548587018301529401938590820162001050565b9294505050602093945060ff191683830152151560051b0101903880808062001035565b6040519060008260385491620010b88362000fc7565b808352600193808516908115620011375750600114620010e4575b50620010e2925003836200082a565b565b603860009081526000805160206200d39983398151915294602093509091905b8183106200111e575050620010e2935082010138620010d3565b8554888401850152948501948794509183019162001104565b9050620010e294506020925060ff191682840152151560051b82010138620010d3565b906020620008c492818152019062000ddf565b34620005d4576000806003193601126200073b5760405181602f54620011938162000fc7565b80845290600190818116908115620012355750600114620011d7575b620006d884620011c2818803826200082a565b60405191829160208352602083019062000ddf565b602f8352602094507fa813484aef6fb598f9f753daf162068ff39ccea4075cb95e1a30f86995b5b7ee5b828410620012215750505081620006d893620011c29282010193620011af565b805485850187015292850192810162001201565b620006d89650620011c29450602092508593915060ff191682840152151560051b82010193620011af565b6001600160401b0381116200077a5760051b60200190565b81601f82011215620005d457803591620012928362001260565b92620012a260405194856200082a565b808452602092838086019260051b820101928311620005d4578301905b828210620012ce575050505090565b8380918335620012de816200073e565b815201910190620012bf565b34620005d4576060366003190112620005d4576004356200130b816200073e565b602435906200131a826200073e565b604435906001600160401b038211620005d457602092620013446200134b93369060040162001278565b91620044b7565b604051908152f35b34620005d4576000366003190112620005d4576020602d54604051908152f35b34620005d4576000806003193601126200073b576015546040519182816016546200139e8162000fc7565b80845290600190818116908115620014495750600114620013e8575b5050620013ca925003836200082a565b620006d8604051928392835260406020840152604083019062000ddf565b601685527fd833147d7dc355ba459fc788f669e58cfaf9dc25ddcd0702e87d69c7b5124289946020935091905b81831062001430575050620013ca93508201013880620013ba565b8554888401850152948501948794509183019162001415565b915050620013ca94506020925060ff191682840152151560051b8201013880620013ba565b34620005d4576000806003193601126200073b57604051809182601b54808452602080940190601b8452848420935b85828210620014b75750505062000d84925003836200082a565b85546001600160a01b03168452600195860195889550930192016200149d565b34620005d4576000366003190112620005d45760206040516127108152f35b34620005d4576000806003193601126200073b57604051809182601a54808452602080940190601a8452848420935b858282106200153f5750505062000d84925003836200082a565b85546001600160a01b031684526001958601958895509301920162001525565b34620005d4576000366003190112620005d457602062000bae62005c50565b34620005d4576000366003190112620005d457620006d86200159f620034c2565b60405191829160208352602083019062000ce9565b34620005d4576000806003193601126200073b576200060a6200362f565b34620005d4576000806003193601126200073b57604051620015f48162000780565b601081526f726563697069656e744164647265737360801b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000366003190112620005d4576020602554604051908152f35b34620005d4576020366003190112620005d45760046080813562001672816200073e565b6040516302506b8760e41b815292839182906001600160a01b03165afa8015620006fa57600090620016aa575b604051908152602090f35b6080823d8211620016de575b81620016c5608093836200082a565b810103126200073b57506040620006d89101516200169f565b3d9150620016b6565b6020600319820112620005d457600435906001600160401b038211620005d45780602383011215620005d457816024620008c4936004013591016200086a565b34620005d45762000a046200173c36620016e7565b62004350565b34620005d4576000366003190112620005d4576028546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200073b576040516200178f8162000780565b60098152681c9958da5c1a595b9d60ba1b60208201526200065b604051602081019062000636816200062784876200373e565b6001600160e01b0319169052565b602080820190808352835180925260409283810182858560051b840101960194600080935b8685106200180857505050505050505090565b909192939480969798603f198382030186528951826060818885019360018060a01b038151168652015193888382015284518094520192019085905b808210620018675750505090806001929a019501950193969594929190620017f5565b82516001600160e01b03191684528a9493840193909201916001919091019062001844565b34620005d4576000366003190112620005d457601e54620018ad8162001260565b620018bc60405191826200082a565b818152601e60009081529160207f50bb669a95c7b50b7e8a6f09454034b2b14cf2b85c730dca9a539ca82cb6e3508184015b838610620019065760405180620006d88782620017d0565b82604051620019158162000780565b83546001600160a01b0316815260405160018501805480835262001943602084015b92600052602060002090565b906000915b81600784011062001ae757938660029796948294620019ba9460019b9854918482821062001acb575b82821062001aa6575b82821062001a81575b82821062001a5c575b82821062001a37575b82821062001a12575b828210620019ee575b5010620019cd575b50905003826200082a565b83820152815201920195019490620018ee565b620019e49082906001600160e01b031916620017c2565b01869038620019af565b8462001a088f939663ffffffff60e01b87851b16620017c2565b01930184620019a7565b8462001a2d8f939663ffffffff60e01b8760401b16620017c2565b019301846200199e565b8462001a528f939663ffffffff60e01b8760601b16620017c2565b0193018462001995565b8462001a778f939663ffffffff60e01b8760801b16620017c2565b019301846200198c565b8462001a9c8f939663ffffffff60e01b8760a01b16620017c2565b0193018462001983565b8462001ac18f939663ffffffff60e01b8760c01b16620017c2565b019301846200197a565b8462001add8f93968660e01b620017c2565b0193018462001971565b939495509091600161010060089262001b9687548d60e062001b0c8584831b620017c2565b6001600160e01b03199162001b8c90838560c062001b318a850183831b8516620017c2565b62001b8160a062001b4a60408d018686841b16620017c2565b62001b738c868660609260809062001b698582018585851b16620017c2565b01921b16620017c2565b8b01848460401b16620017c2565b8901921b16620017c2565b84019116620017c2565b019401920190889594939262001948565b34620005d4576000806003193601126200073b576200060a62003553565b34620005d4576000366003190112620005d45760215460405160109190911c6001600160a01b03168152602090f35b34620005d4576060366003190112620005d45760043562001c15816200073e565b604435906001600160401b038211620005d45762001c3c62000a04923690600401620008a6565b602154602480549035939160101c6001600160a01b03166200b472565b34620005d4576000806003193601126200073b5762001c77620034c2565b62001c81620035d3565b62001c9e604051602081019062000636816200062784876200373e565b03916020826000805160206200d3b98339815191529481865afa928315620006fa578592839462001d6c575b50803b15620007005762001cf6916040519687809481936318caf8e360e31b835288600484016200376f565b03925af1908115620006fa57620006d89362001d249262001d55575b5062001d1e836200357e565b620035c4565b62001d4862001d3c62001d3662003601565b62003793565b5062001d1e83620035a2565b6040519182918262000d28565b80620006ec62001d659262000766565b3862001d12565b62001d8991945060203d811162000733576200072281836200082a565b923862001cca565b34620005d4576000806003193601126200073b5760405162001db38162000780565b600c81526b1b9bd7dc9958da5c1a595b9d60a21b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000366003190112620005d4576020602454604051908152f35b34620005d4576000806003193601126200073b5762001e27620034c2565b62001e3162003528565b62001e4e604051602081019062000636816200062784876200373e565b03916020826000805160206200d3b98339815191529481865afa928315620006fa578592839462001edf575b50803b15620007005762001ea6916040519687809481936318caf8e360e31b835288600484016200376f565b03925af1908115620006fa57620006d89362001ecd9262001d55575062001d1e836200357e565b62001d4862001d3c62001d3662003553565b62001efc91945060203d811162000733576200072281836200082a565b923862001e7a565b34620005d4576000806003193601126200073b576200060a62003601565b34620005d4576000806003193601126200073b5760405162001f448162000780565b600a81526930b63637afb7bbb732b960b11b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000366003190112620005d457602b546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d4576029546040516001600160a01b039091168152602090f35b906020620008c492818152019062000e06565b34620005d4576000806003193601126200073b57601d54620020038162001260565b9060409262002015845193846200082a565b818352601d815260207f6d4407e7be21f808e6509aa9fa9143369579dd7d760fe20a2c09680fc146134f8185015b8484106200205a57865180620006d8888262001fce565b600183819289516200207a8162002072818962001004565b03826200082a565b81520192019301929062002043565b60031115620005d457565b60c435906004821015620005d457565b60c0906083190112620005d45760405190620020c0826200079c565b81608435620020cf816200073e565b815260a435620020df816200073e565b602082015260c435604082015260e435606082015261010435608082015260a061012435910152565b60c090610103190112620005d4576040519062002125826200079c565b816101043562002135816200073e565b81526101243562002146816200073e565b602082015261014435604082015261016435606082015261018435608082015260a06101a435910152565b34620005d4576101a0366003190112620005d45760043562002193816200073e565b602435620021a1816200073e565b60443591620021b0836200073e565b606435620021be816200073e565b608435620021cc816200073e565b60a43590620021db8262002089565b620021e562002094565b9260c03660e3190112620005d457620006d8966200225a96604051966200220c886200079c565b60e4356200221a816200073e565b8852610104356200222b816200073e565b60208901526101243560408901526101443560608901526101643560808901526101843560a089015262004ad9565b6040519081529081906020820190565b34620005d4576000366003190112620005d457602c546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d4576023546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200073b576200060a6200365d565b34620005d4576000366003190112620005d457601f54620022ff8162001260565b6200230e60405191826200082a565b818152601f60009081529160207fa03837a25210ee280c2113ff4b77ca23440b19d4866cca721c801278fd08d8078184015b838610620023585760405180620006d88782620017d0565b82604051620023678162000780565b83546001600160a01b031681526040516001850180548083526200238e6020840162001937565b906000915b8160078401106200241057938660029796948294620023fd9460019b9854918482821062001acb5782821062001aa65782821062001a815782821062001a5c5782821062001a375782821062001a1257828210620019ee575010620019cd5750905003826200082a565b8382015281520192019501949062002340565b93949550909160016101006008926200243587548d60e062001b0c8584831b620017c2565b019401920190889594939262002393565b34620005d45762000a046200245b36620016e7565b62003c3b565b34620005d4576000366003190112620005d457602a546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d457602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b34620005d4576000806003193601126200073b57620024db620034c2565b620024e56200362f565b62002502604051602081019062000636816200062784876200373e565b03916020826000805160206200d3b98339815191529481865afa928315620006fa578592839462002593575b50803b1562000700576200255a916040519687809481936318caf8e360e31b835288600484016200376f565b03925af1908115620006fa57620006d893620025819262001d55575062001d1e836200357e565b62001d4862001d3c62001d366200365d565b620025b091945060203d811162000733576200072281836200082a565b92386200252e565b34620005d4576000806003193601126200073b57604051620025da8162000780565b600a815269726563697069656e743160b01b60208201526200065b604051602081019062000636816200062784876200373e565b6020906063190112620005d457604051906200262a82620007b8565b6064358252565b634e487b7160e01b600052602160045260246000fd5b600311156200265257565b62002631565b906003821015620026525752565b906004821015620026525752565b610240620008c49260208352620026ad602084018251606080918051845260208101516020850152604081015160408501520151910152565b620026c1602082015160a085019062002658565b620026d5604082015160c085019062002666565b60608101515160e084015260808181015180516001600160a01b03908116610100878101919091526020830151909116610120870152604082015161014087015260608201516101608701529181015161018086015260a001516101a08501529060a08101516001600160a01b03166101c085015260c08101516001600160a01b03166101e085015260e081015161020085015201519161022080820152019062000ce9565b34620005d4576101a0366003190112620005d4576004356200279d816200073e565b60243590620027ac8262002089565b604435906004821015620005d457620027c5366200260e565b92620027d136620020a4565b6101443593906001600160401b038511620005d457620006d895620027ff6200281b96369060040162001278565b92610164359462002810866200073e565b61018435966200475d565b6040519182918262002674565b34620005d4576000806003193601126200073b57601c546200284a8162001260565b906040926200285c845193846200082a565b818352601c815260207f0e4562a10381dec21b205ed72637e6b1b523bdd0e4d4d50af5cd23dd4500a2118185015b848410620028a157865180620006d8888262001fce565b60018381928951620028b98162002072818962001004565b8152019201930192906200288a565b34620005d4576000366003190112620005d4576020620028e7620036a7565b6040519015158152f35b34620005d4576000366003190112620005d457602062000bae62004c38565b34620005d4576000806003193601126200073b576200293f6040516200293681620007b8565b82815262003c3b565b80f35b34620005d45760a0366003190112620005d45760043562002963816200073e565b6044359062002972826200073e565b606435916001600160401b038311620005d4576200299962000a04933690600401620008a6565b9060843592602435906200b472565b34620005d4576000366003190112620005d457602060405173dd4bda7bcda544d6da2aea8ab8b0e63d2f6dc7378152f35b34620005d4576000806003193601126200073b57604051620029fb8162000780565b601081526f3837b7b62fb737ba20a6b0b730b3b2b960811b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000806003193601126200073b5760405162002a578162000780565b600e81526d383937b334b63298afb7bbb732b960911b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000366003190112620005d457602060405173bba817f97f133b87b9b7f1fc0f2c56e9f68d2edf8152f35b34620005d4576000806003193601126200073b5760405162002ae28162000780565b600b81526a1c985b991bdb4818da185960aa1b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000806003193601126200073b5760405162002b398162000780565b600d81526c616c6c6f5f747265617375727960981b602082015262002b70604051602081019062000636816200062784876200373e565b03916020826000805160206200d3b98339815191529481865afa928315620006fa578492839462002c0d575b50803b15620007005762002bc8916040519586809481936318caf8e360e31b835288600484016200376f565b03925af1918215620006fa57620006d89262002bf6575b506040519182916001600160a01b031682620005d9565b80620006ec62002c069262000766565b3862002bdf565b62002c2a91945060203d811162000733576200072281836200082a565b923862002b9c565b34620005d4576000806003193601126200073b5760405162002c548162000780565b600e81526d3932b3b4b9ba393cafb7bbb732b960911b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000806003193601126200073b5760245490604090815163ffa1864960e01b81526020908062002ccb6004968783019190602083019252565b039082816000805160206200d3b98339815191529381855afa8015620006fa5762002d1b918591620030c7575b50602380546001600160a01b0319166001600160a01b0392909216919091179055565b62002d2860235462000ae5565b91813b156200306f5784516318caf8e360e31b8082526001600160a01b03909416878201908152604060208201819052600e908201526d636f756e63696c4d656d6265723160901b6060820152859082908190608001038183875af18015620006fa57620030b0575b5060018060a01b038062002db162002dab6021546200b306565b62000ae5565b161562002dd7575b620006d88662002dcb6021546200b306565b905191829182620005d9565b8062002de262004c38565b62002e1662002df462002dab62005c50565b602680546001600160a01b0319166001600160a01b0392909216919091179055565b16833b15620030ac5786519085825286828062002e68848d830160809160018060a01b0316815260406020820152601060408201526f5361666550726f7879466163746f727960801b60608201520190565b038183895af1908115620006fa5762002eba92859262003095575b5062002e9160265462000ae5565b9062002e9c6200b315565b91898c8c5196879586948593631688f0b960e01b855284016200b331565b03925af1908115620006fa5762002eff93879262003073575b50506021805462010000600160b01b0319169290911660101b62010000600160b01b0316919091179055565b62002f1062002dab6021546200b306565b91813b156200306f5784519081526001600160a01b03909216858301908152604060208201819052600b908201526a636f756e63696c5361666560a81b60608201528391839182908490829060800103925af18015620006fa5762003058575b5062002f7b620034ef565b62002f9762002f8c60235462000ae5565b62001d1e836200357e565b62002fbf62002fa682620035a2565b73f39fd6e51aad88f6f4ce6ab8827279cfffb922669052565b62002fe762002fce82620035b3565b7370997970c51812dc3a010c7d01b50e0d17dc79c89052565b62002ff862002dab6021546200b306565b803b156200070057620030209483855180978195829463b63e800d60e01b845283016200b00d565b03925af1918215620006fa57620006d89262003041575b8080808062002db9565b80620006ec620030519262000766565b3862003037565b80620006ec620030689262000766565b3862002f70565b8380fd5b6200308d9250803d1062000733576200072281836200082a565b388062002ed3565b80620006ec620030a59262000766565b3862002e83565b8580fd5b80620006ec620030c09262000766565b3862002d91565b620030e29150843d861162000733576200072281836200082a565b3862002cf8565b34620005d4576101c0366003190112620005d4576004356200310b816200073e565b602435906200311a826200073e565b6044359062003129826200073e565b6064359262003138846200073e565b60843562003146816200073e565b60a435620031548162002089565b6200315e62002094565b9160203660e3190112620005d457620006d8966200225a96604051956200318587620007b8565b60e4358752620031953662002108565b9762004932565b34620005d4576000806003193601126200073b5760405180918260185480845260208094019060188452848420935b85828210620031e55750505062000d84925003836200082a565b85546001600160a01b0316845260019586019588955093019201620031cb565b34620005d4576080366003190112620005d457606435600160801b62989680608083901b0481811015620032f057600435805b620032aa57620006d86200225a620032a46200329e86620032978962003290620032896200326960243586620046aa565b94620032826200327b6044356200468b565b9162004b2f565b90620046aa565b9162004b42565b9062004afe565b9062004b66565b62004b54565b60801c90565b600191818316620032ce5780620032c19162004b74565b911c90815b909162003238565b915091620032e182620032e89262004b74565b9262004b1f565b9081620032c6565b60405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b34620005d4576000806003193601126200073b57604051620033568162000780565b6013815272383937b334b632992fb737ba20a6b2b6b132b960691b60208201526200065b604051602081019062000636816200062784876200373e565b34620005d4576000806003193601126200073b5760405181602e54620033b98162000fc7565b80845290600190818116908115620012355750600114620033e757620006d884620011c2818803826200082a565b602e8352602094506000805160206200d3f98339815191525b828410620034205750505081620006d893620011c29282010193620011af565b805485850187015292850192810162003400565b34620005d4576020366003190112620005d4576004356001600160401b038111620005d45762000bae6200346f6020923690600401620008a6565b6200afae565b34620005d4576000366003190112620005d457602060ff602154166040519015158152f35b34620005d4576000366003190112620005d457602060ff60215460081c166040519015158152f35b60405190606082016001600160401b038111838210176200077a5760405260028252604082602036910137565b60405190620034fe82620007d4565b600382526060366020840137565b604051906200351b8262000780565b6001825260203681840137565b60405190620035378262000780565b600d82526c706f6f6c5f6d616e616765723160981b6020830152565b60405190620035628262000780565b600d82526c3837b7b62fb6b0b730b3b2b91960991b6020830152565b8051156200358c5760200190565b634e487b7160e01b600052603260045260246000fd5b8051600110156200358c5760400190565b8051600210156200358c5760600190565b6001600160a01b039091169052565b60405190620035e28262000780565b601082526f70726f66696c65315f6d656d6265723160801b6020830152565b60405190620036108262000780565b601082526f383937b334b63298afb6b2b6b132b91960811b6020830152565b604051906200363e8262000780565b601082526f70726f66696c65325f6d656d6265723160801b6020830152565b604051906200366c8262000780565b601082526f383937b334b632992fb6b2b6b132b91960811b6020830152565b90816020910312620005d4575190565b6040513d6000823e3d90fd5b60085460ff168015620036b75790565b50604051630667f9d760e41b81526020816044816000805160206200d3b98339815191528060048301526519985a5b195960d21b60248301525afa908115620006fa5760009162003709575b50151590565b6200372f915060203d811162003736575b6200372681836200082a565b8101906200368b565b3862003703565b503d6200371a565b90620037536020928281519485920162000dba565b0190565b90816020910312620005d45751620008c4816200073e565b6001600160a01b039091168152604060208201819052620008c49291019062000ddf565b906040516020810190620037ad816200062784876200373e565b5190206040516001625e79b760e01b03198152600481018290529091906000805160206200d3b983398151915290602081602481855afa908115620006fa5760009162003849575b508094823b15620005d4576200382692600092836040518096819582946318caf8e360e31b8452600484016200376f565b03925af18015620006fa57620038395750565b80620006ec620010e29262000766565b62003865915060203d811162000733576200072281836200082a565b38620037f5565b9081546200387a8162001260565b926040936200388c855191826200082a565b828152809460208092019260005281600020906000935b858510620038b357505050505050565b60018481928451620038cb8162002072818a62001004565b815201930194019391620038a3565b601f8111620038e7575050565b600090602e825260208220906020601f850160051c8301941062003928575b601f0160051c01915b8281106200391c57505050565b8181556001016200390f565b909250829062003906565b601f811162003940575050565b6000906038825260208220906020601f850160051c8301941062003981575b601f0160051c01915b8281106200397557505050565b81815560010162003968565b90925082906200395f565b80519091906001600160401b0381116200077a57620039b881620039b2602e5462000fc7565b620038da565b602080601f8311600114620039f75750819293600092620039eb575b50508160011b916000199060031b1c191617602e55565b015190503880620039d4565b602e600052601f198316949091906000805160206200d3f9833981519152926000905b87821062003a5557505083600195961062003a3b575b505050811b01602e55565b015160001960f88460031b161c1916905538808062003a30565b8060018596829496860151815501950193019062003a1a565b80519091906001600160401b0381116200077a5762003a9a8162003a9460385462000fc7565b62003933565b602080601f831160011462003ad9575081929360009262003acd575b50508160011b916000199060031b1c191617603855565b01519050388062003ab6565b6038600052601f198316949091906000805160206200d399833981519152926000905b87821062003b3757505083600195961062003b1d575b505050811b01603855565b015160001960f88460031b161c1916905538808062003b12565b8060018596829496860151815501950193019062003afc565b6040519062003b5f8262000780565b60088252670b98da185a5b925960c21b6020830152565b6040519062003b858262000780565b60058252642e6e616d6560d81b6020830152565b6040519062003ba88262000780565b600c82526b1722a72b299729a2a72222a960a11b6020830152565b6040519062003bd28262000780565b60088252676e616d653a20257360c01b6020830152565b6040519062003bf88262000780565b600a82526973656e6465723a20257360b01b6020830152565b6040519062003c208262000780565b600c82526b636861696e4964203a20257360a01b6020830152565b62003c4860285462000ae5565b906000805160206200d3b983398151915290813b15620005d457604051637fec2a8d60e01b815260009384908290819062003c879060048301620005d9565b038183875af18015620006fa5762003dd7575b50805162003dc5575b5062003d9362003cb2620041e0565b62003cda62003cd562003cce62003cc862003b50565b6200409e565b8362003e17565b603755565b62003cfd62003cf762003cf062003cc862003b76565b8362003ee8565b62003a6e565b62003d3c62003d1a62003d1362003cc862003b99565b8362003f54565b602880546001600160a01b0319166001600160a01b0392909216919091179055565b62003d5b62003d4a62003bc3565b62003d54620010a2565b9062004020565b62003d7c62003d6c60285462000ae5565b62003d7662003be9565b6200404b565b6200173c60375462003d8d62003c11565b62003fbd565b803b1562003dc1578190600460405180948193633b756e9b60e11b83525af18015620006fa57620038395750565b5080fd5b62003dd0906200398c565b3862003ca3565b80620006ec62003de79262000766565b3862003c9a565b909162003e08620008c49360408452604084019062000ddf565b91602081840391015262000ddf565b6040516356eef15b60e11b8152916020918391829162003e3c91906004840162003dee565b03816000805160206200d3b98339815191525afa908115620006fa5760009162003e64575090565b620008c4915060203d811162003736576200372681836200082a565b602081830312620005d4578051906001600160401b038211620005d4570181601f82011215620005d457805162003eb7816200084e565b9262003ec760405194856200082a565b81845260208284010111620005d457620008c4916020808501910162000dba565b6040516309389f5960e31b8152916000918391829162003f0d91906004840162003dee565b03816000805160206200d3b98339815191525afa908115620006fa5760009162003f35575090565b620008c4913d8091833e62003f4b81836200082a565b81019062003e80565b604051631e19e65760e01b8152916020918391829162003f7991906004840162003dee565b03816000805160206200d3b98339815191525afa908115620006fa5760009162003fa1575090565b620008c4915060203d811162000733576200072281836200082a565b6200400562003ff091620010e293604051938492632d839cb360e21b602085015260406024850152606484019062000ddf565b90604483015203601f1981018352826200082a565b600080916020815191016a636f6e736f6c652e6c6f675afa50565b9062004005620010e29262000627604051938492634b5c427760e01b60208501526024840162003dee565b620040056200407e91620010e29360405193849263319af33360e01b602085015260406024850152606484019062000ddf565b6001600160a01b0391909116604483015203601f1981018352826200082a565b604051600091602e5491620040b38362000fc7565b93848252602094858301946001908181169081600014620041c2575060011462004184575b50509181620040f4620008c4959362004161979503826200082a565b6200414e60396040518095620041318883019575242e6e6574776f726b735b3f28402e6e616d653d3d2760501b8752518092603685019062000dba565b81016227295d60e81b60368201520360198101865201846200082a565b6040519586935180928686019062000dba565b8201620041778251809386808501910162000dba565b010380845201826200082a565b9150602e60005285600020916000925b828410620041ae575050508101840181620040f4620040d8565b805485850189015292870192810162004194565b60ff191687525050151560051b82018501905081620040f4620040d8565b604051636c98507360e11b81526000906000805160206200d3b9833981519152908281600481855afa8015620006fa576200429f9284928392620042ce575b50620042836043604051846200424082965180926020808601910162000dba565b81017f2f706b672f636f6e7472616374732f636f6e6669672f6e6574776f726b732e6a60208201526239b7b760e91b60408201520360238101855201836200082a565b60405180809581946360f9bb1160e01b8352600483016200115a565b03915afa918215620006fa578092620042b757505090565b620008c492503d8091833e62003f4b81836200082a565b620042e69192503d8085833e62003f4b81836200082a565b90386200421f565b60405190620042fd8262000780565b60118252701722a72b2997282927ac2cafa7aba722a960791b6020830152565b604051906200432c8262000780565b601582527402732bb902830b9b9b837b93a1029b1b7b932b91d1605d1b6020830152565b6200436a906200436362003cc8620042ee565b9062003f54565b6040516001600160401b039190611836808201848111838210176200077a5782916200bb63833903906000f0918215620006fa5760405163485cc95560e01b602082015273a718aca8eb8f01ecfe929bf16c19e562b57b053b60248201526001600160a01b03929092166044808401919091528252620043ec6064836200082a565b604051916104109081840192848410908411176200077a57839262004423926200b75385396001600160a01b03958616906200376f565b03906000f0908115620006fa57620010e2911662003d766200431d565b620044986020620008c495936002845260a082850152600e60a08501526d506f6f6c2050726f66696c65203160901b60c085015260e06040850152805160e08501520151604061010084015261012083019062000ddf565b6001600160a01b03909316606082015280830360809091015262000ce9565b9160175415620044cb575b50505060175490565b6200452f926020926000604051620044e38162000780565b60018152604051620044f58162000780565b600c81526b506f6f6c50726f66696c653160a01b8782015281870152604051633a92f65f60e01b8152968795869485936004850162004440565b03926001600160a01b03165af18015620006fa57620045579160009162004560575b50601755565b388080620044c2565b6200457c915060203d811162003736576200372681836200082a565b3862004551565b604051906200459282620007b8565b60008252565b60405190620045a7826200079c565b8160a06000918281528260208201528260408201528260608201528260808201520152565b604051610120810191906001600160401b038311818410176200077a576101006060918460405280946200460081620007d4565b60009081815281610140840152816101608401528161018084015282528060208301528060408301526200463362004583565b848301526200464162004598565b60808301528060a08301528060c083015260e08201520152565b6003821015620026525752565b6004821015620026525752565b634e487b7160e01b600052601160045260246000fd5b906298968091828102928184041490151715620046a457565b62004675565b81810292918115918404141715620046a457565b95949392916200471862004722926200470e620046da620045cc565b99629895b760408c510152621e84808b515261271060208c5101526702c68af0bb14000060608c51015260a08b01620035c4565b602089016200465b565b6040870162004668565b600060c0860152600060e08601528051156200474b575b60608501526080840152610100830152565b680ad78ebc5ac6200000815262004739565b620047d292620047be60a09a999596979893620047b4620047c89462004782620045cc565b9d8e629895b7604082510152621e84808151526127106020825101526702c68af0bb14000060608251015201620035c4565b60208c016200465b565b60408a0162004668565b60c08801620035c4565b60e08601528051156200474b5760608501526080840152610100830152565b91959492939082526200482060018060a01b039485602098168885015260e0604085015260e084019062000ddf565b9360609116818301526000608083015281840360a0830152601554845260408685015260009360165490620048558262000fc7565b918260408301526001908181169081600014620048d657506001146200488f575b50505050620008c493945060c081840391015262000ce9565b9293955090601660005287600020926000935b828510620048c257505050620008c4959650010191849338808062004876565b8054848601870152938901938101620048a2565b60ff1916858401525096975087965090151560051b01019250620008c438808062004876565b90816020910312620005d45751620008c48162002089565b156200491c57565b634e487b7160e01b600052600160045260246000fd5b92949597620049e6976200495593929a99886200494e6200350c565b94620046be565b9062004960620034c2565b90620049713062001d1e846200357e565b620049813362001d1e84620035a2565b6001600160a01b039473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee948a91879182811662004acd575b5090620049cb85600093620049c460285462000ae5565b90620044b7565b62004a1360405196620049f58860209e8f9b8c830162002674565b03601f1981018a52896200082a565b6040516370803ea560e11b8152998a988997889560048701620047f1565b0393165af18015620006fa57849160009162004aab575b5095600460405180948193631a8ecfcb60e11b8352165afa908115620006fa57620010e29360009262004a77575b505062004a658262002647565b62004a708162002647565b1462004914565b62004a9b9250803d1062004aa3575b62004a9281836200082a565b810190620048fc565b388062004a58565b503d62004a86565b62004ac69150823d841162003736576200372681836200082a565b3862004a2a565b9650620049cb620049ad565b94929091620008c4979694926040519662004af488620007b8565b6000885262004932565b811562004b09570490565b634e487b7160e01b600052601260045260246000fd5b600019810191908211620046a457565b600160801b90810391908211620046a457565b9062989680918203918211620046a457565b6001607f1b810191908210620046a457565b91908201809211620046a457565b90600160801b80831162004be25781101562004b9e576200329e620032a491620008c493620046aa565b60405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b60405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608490fd5b73bba817f97f133b87b9b7f1fc0f2c56e9f68d2edf803b620008c45750620008c462002dab60405162004c6b81620007f0565b610ede81527f608060405234801561001057600080fd5b50610ebe806100206000396000f3fe60208201527f608060405234801561001057600080fd5b50600436106100625760003560e01c60408201527f80631688f0b9146100675780632500510e1461017657806353e5d9351461024360608201527f57806361b69abd146102c6578063addacc0f146103cb578063d18af54d14610460808201527f4e575b600080fd5b61014a6004803603606081101561007d57600080fd5b810160a082015266e96f9fdffe6f6e642420200d5d60da1b0360c08201527f9190803590602001906401000000008111156100ba57600080fd5b820183602060e08201527f820111156100cc57600080fd5b803590602001918460018302840111640100006101008201527d831117156100ee57600080fd5b91908080601f01602080910402602001606101208201527f40519081016040528093929190818152602001838380828437600081840152606101408201527f1f19601f8201169050808301925050505050505091929192908035906020019061016082015260017024a46414141418415f5596d8101460209d607a1b036101808201527ae97ead9fdffe6eafaf9fbfae7f6efc6f0ca49efde89ffb7fc9fc9f196101a08201526001731820440558406315d800203f56e0406420200d5d60621b036101c082015277e96f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffffffff7eee196101e08201527f156101c957600080fd5b8201836020820111156101db57600080fd5b803590606102008201527f2001918460018302840111640100000000831117156101fd57600080fd5b90916102208201527f92939192939080359060200190929190505050610624565b604051808273ffff6102408201526de97ead9fdffe6eafaf9fbfae7f6e196102608201527f0390f35b61024b610751565b60405180806020018281038252838181518152606102808201527f200191508051906020019080838360005b8381101561028b57808201518184016102a08201527f52602081019050610270565b50505050905090810190601f1680156102b857806102c08201527f820380516001836020036101000a031916815260200191505b509250505060406102e08201527f5180910390f35b61039f600480360360408110156102dc57600080fd5b81019061030082015267e96f9fdffe6f6d6f6320200d5d60e21b036103208201527f908035906020019064010000000081111561031957600080fd5b8201836020826103408201527f01111561032b57600080fd5b80359060200191846001830284011164010000006103608201527e8311171561034d57600080fd5b91908080601f0160208091040260200160406103808201527f519081016040528093929190818152602001838380828437600081840152601f6103a08201527f19601f82011690508083019250505050505050919291929050505061077c565b6103c082015265e97ead9fdfff6518101460209d60d21b036103e08201527f91505060405180910390f35b6103d3610861565b6040518080602001828103826104008201527f5283818151815260200191508051906020019080838360005b838110156104136104208201527f5780820151818401526020810190506103f8565b50505050905090810190601f6104408201527f1680156104405780820380516001836020036101000a031916815260200191506104608201527f5b509250505060405180910390f35b610551600480360360808110156104645761048082015260016b1800203f56e0406420200d5d60a21b036104a08201527f169060200190929190803590602001906401000000008111156104a1576000806104c08201527ffd5b8201836020820111156104b357600080fd5b8035906020019184600183026104e08201527f840111640100000000831117156104d557600080fd5b91908080601f016020806105008201527f91040260200160405190810160405280939291908181526020018383808284376105208201527f600081840152601f19601f82011690508083019250505050505050919291929061054082015260016c200d641808006424a464200d5d609a1b03610560820152763a5be7f7ff9bdb5b9bebebebe7bddcea6927efeb9fdf6360421b1961058082015273e97ead9fdffe6eafaf9fbfae7f6efc6f0ca49fff196105a08201527f61058a848484610a3b565b90506000835111156105b2576000806000855160206105c08201527f87016000865af114156105b157600080fd5b5b7f4f51faf6c4561ff95f0676576105e08201527fe43439f0f856d97c04d9ec9070a6199ad418e2358185604051808373ffffffff610600820152673a5fab67f7ff9f6360421b1961062082015273e97ead9fdffe6dafafaf9fbfae7f6efc6f5e6c6d196106408201527f505050565b60006106758585858080601f0160208091040260200160405190816106608201527f016040528093929190818152602001838380828437600081840152601f19601f6106808201527f8201169050808301925050505050505084610a3b565b905080604051602001806106a082015269e99f9fe47ead9febfe6f61209d60f21b036106c08201527802828302028b01040c18181c0a948302029302028bf8461bcd603d1b6106e08201526a81526004018080602001826107008201527f8103825283818151815260200191508051906020019080838360005b838110156107208201527f6107165780820151818401526020810190506106fb565b5050505090509081016107408201527f90601f1680156107435780820380516001836020036101000a031916815260206107608201527f0191505b509250505060405180910390fd5b60606040518060200161076390616107808201527f0bde565b6020820181038252601f19601f82011660405250905090565b6000826107a082015260016e1810145841e2e41842f79596e0209d608a1b036107c08201527ce97ead9fdffe6eafaf9fbfae7f6efc6f9fff0f7fea7fea9ef838a8c29f196107e08201527e803e3d6000fd5b5090506000825111156107f05760008060008451602086016108008201527f6000865af114156107ef57600080fd5b5b7f4f51faf6c4561ff95f067657e4346108208201527f39f0f856d97c04d9ec9070a6199ad418e2358184604051808373ffffffffffff610840820152673a5fab67f7ff9f6360521b1961086082015275e97ead9fdffe6dafafaf9fbfae7f6efc6f5e6d6eafaf196108808201527f565b60606040518060200161087390610beb565b6020820181038252601f19606108a08201527f1f82011660405250905090565b600080838360405160200180838152602001826108c08201526ae99f9fe47ead9febfe6db0601d60fa1b036108e08201527f50506040516020818303038152906040528051906020012060001c90506108e761090082015260016c21a1a0d8415f5596e45418001d609a1b0361092082015267e9eb9ef5cda87d8c623a5f2360e21b01196109408201526be99ce1ad4ae77c7777779fbf19610960820152600172146158ffffffffc5983806e05498010060215d606a1b03610980820152673a5fab67f7ff9ee3608a1b196109a08201527ce97ead9fdffe7f9fdffe7c7ead9fdffe7d7efc7dad7b7e7eae7ead9fdf196109c08201527f0191508051906020019080838360005b838110156109ca5780820151818401526109e08201527f6020810190506109af565b50505050905090810190601f1680156109f7578082610a008201527f0380516001836020036101000a031916815260200191505b5095505050505050610a208201527f600060405180830381600087803b158015610a1957600080fd5b505af1158015610a408201527f610a2d573d6000803e3d6000fd5b505050505b50949350505050565b60008083610a608201527f8051906020012083604051602001808381526020018281526020019250505060610a808201527f4051602081830303815290604052805190602001209050600060405180602001610aa08201527f610a8890610bde565b6020820181038252601f19601f820116604052508673ff610ac08201526ce99fbfae9fdffe7f7c7fae6f9f19610ae08201527f2001908083835b60208310610ae9578051825260208201915060208101905060610b008201527f2083039250610ac6565b6001836020036101000a038019825116818451168082610b208201527f1785525050505050509050018281526020019250505060405160208183030381610b4082015260017514a4181014a4142060546098080058003d649418001d60521b03610b60820152623a5f23609a1b19610b8082015260016e074f5f54f7a15544fdfd7407b9e43360851b0319610ba0820152738152600401808060200182810382526013815260610bc0820152760800601fd0dc99585d194c8818d85b1b0819985a5b1959604a1b610be08201527b81525060200191505060405180910390fd5b50509392505050565b61610c008201527f01e680610bf883390190565b60ab80610dde8339019056fe6080604052348015610c208201527f61001057600080fd5b506040516101e63803806101e683398181016040526020610c408201527f81101561003357600080fd5b8101908080519060200190929190505050600073610c60820152623a5fa3604a1b19610c8082015274e9ebea9eff35a89fbfae80f73c865fffffffffffff19610ca08201526981526004018080602001610cc08201527f828103825260228152602001806101c460229139604001915050604051809103610ce082015260016e243f56e018002018404002a055205d608a1b03610d0082015262e9fde8653f79ba5bdf2360ba1b0119610d2082015260017624155414182ae018404658000e58003cff98201810149d604a1b03610d408201526001684fffd5f4c02cf35bc960611b0319610d608201526f60003514156050578060005260206000610d808201527ff35b3660008037600080366000845af43d6000803e60008114156070573d6000610da08201527ffd5b3d6000f3fea2646970667358221220d1429297349653a4918076d650332d610dc08201527fe1a1068c5f3e07c5c82360c277770b955264736f6c63430007060033496e7661610de08201527f6c69642073696e676c65746f6e20616464726573732070726f76696465646080610e00820152679fffabe98059e6b8631810149d60e21b03610e2082015262600035603760f91b01610e408201527f14156050578060005260206000f35b3660008037600080366000845af43d6000610e608201527f803e60008114156070573d6000fd5b3d6000f3fea2646970667358221220d142610e808201527f9297349653a4918076d650332de1a1068c5f3e07c5c82360c277770b95526473610ea08201527f6f6c63430007060033a26469706673582212200c75fe2196b9f752c82794253f610ec08201527f2ebce0d821afef5997e1d5a35ec316ce592f6664736f6c634300070600330000610ee08201526200afae565b73dd4bda7bcda544d6da2aea8ab8b0e63d2f6dc737803b620008c45750620008c462002dab60405162005c83816200080d565b6159d781527f608060405234801561001057600080fd5b5060016004819055506159ae80620060208201527e296000396000f3fe6080604052600436106101dc5760003560e01c8063affe60408201527fd0e011610102578063e19a9dd911610095578063f08a032311610064578063f060608201527f8a032314611647578063f698da2514611698578063f8dc5dd9146116c357806360808201527fffa1ad741461173e57610231565b8063e19a9dd91461139b578063e318b52b1460a08201527f6113ec578063e75235b81461147d578063e86637db146114a857610231565b8060c08201527f63cc2f8452116100d1578063cc2f8452146110e8578063d4d9bdcd146111b55760e08201527f8063d8d11f78146111f0578063e009cfde1461132a57610231565b8063affed06101008201527fe014610d94578063b4faba0914610dbf578063b63e800d14610ea7578063c4ca6101208201527f3a9c1461101757610231565b80635624b25b1161017a5780636a7612021161016101408201527f495780636a761202146109945780637d83297414610b50578063934f3a1114616101608201527f0bbf578063a0e67e2b14610d2857610231565b80635624b25b146107fb5780636101808201527f5ae6bd37146108b9578063610b592514610908578063694e80c31461095957616101a08201527f0231565b80632f54bf6e116101b65780632f54bf6e146104d35780633408e4706101c08201527f1461053a578063468721a7146105655780635229073f1461067a57610231565b6101e08201527f80630d582f131461029e57806312fb68e0146102f95780632d9ad53d1461046c61020082015260016c15d8408c5596cd98408c55ccdd609a1b036102208201527fff167f3d0ce9bfc3ed7d6862dbb28b2dea94561fe714a1b4d019aa8af39730d16102408201527fad7c3d346040518082815260200191505060405180910390a2005b34801561026102608201527f3d57600080fd5b5060007f6c9a6c4a39284e37ed1cf53d337577d14212a4870f6102808201527fb976a4366c693b939918d560001b905080548061027257600080f35b366000806102a08201527f373360601b365260008060143601600080855af13d6000803e80610299573d606102c08201527efd5b3d6000f35b3480156102aa57600080fd5b506102f760048036036040816102e082015260017104055840b055d800203f56e0406420200d5d60721b0361030082015279e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafafaf9ee831a9196103208201527f5b005b34801561030557600080fd5b5061046a6004803603608081101561031c6103408201527f57600080fd5b81019080803590602001909291908035906020019064010000006103608201527e81111561034357600080fd5b82018360208201111561035557600080fd5b806103808201527f35906020019184600183028401116401000000008311171561037757600080fd6103a08201527f5b91908080601f016020809104026020016040519081016040528093929190816103c08201527f8152602001838380828437600081840152601f19601f820116905080830192506103e08201527f5050505050509192919290803590602001906401000000008111156103da57606104008201527e80fd5b8201836020820111156103ec57600080fd5b803590602001918460016104208201527f83028401116401000000008311171561040e57600080fd5b91908080601f01606104408201527f20809104026020016040519081016040528093929190818152602001838380826104608201527f8437600081840152601f19601f820116905080830192505050505050509192916104808201527f929080359060200190929190505050611bbe565b005b348015610478576000806104a08201527ffd5b506104bb6004803603602081101561048f57600080fd5b810190808035736104c08201526be96f9fdffe6f6d6e6fafafaf196104e082018190527f612440565b60405180821515815260200191505060405180910390f35b3480156105008301527f6104df57600080fd5b50610522600480360360208110156104f657600080fd5b61052083015264e96f9fdfff6620406420200d5d60ca1b036105408301527f90929190505050612512565b60405180821515815260200191505060405180916105608301527f0390f35b34801561054657600080fd5b5061054f6125e4565b604051808281526105808301527f60200191505060405180910390f35b34801561057157600080fd5b50610662606105a083015260017801200d80d82020440558416215d800203f56e0406420200d5d603a1b036105c083015272e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6f196105e08301527f803590602001906401000000008111156105cf57600080fd5b820183602082016106008301527b11156105e157600080fd5b803590602001918460018302840111640160201b6106208301527f8311171561060357600080fd5b91908080601f016020809104026020016040516106408301526000805160206200d3d98339815191526106608301527f601f820116905080830192505050505050509192919290803560ff16906020016106808301527f909291905050506125f1565b60405180821515815260200191505060405180916106a08301527f0390f35b34801561068657600080fd5b506107776004803603608081101561066106c083015260016d2755d800203f56e0406420200d5d60921b036106e08301527de96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffff196107008301527d8111156106e457600080fd5b8201836020820111156106f657600080fd5b6107208301527f80359060200191846001830284011164010000000083111715610718576000806107408301527ffd5b91908080601f0160208091040260200160405190810160405280939291906107608301527f818152602001838380828437600081840152601f19601f8201169050808301926107808301527f505050505050509192919290803560ff1690602001909291905050506127d7566107a08301527f5b604051808315158152602001806020018281038252838181518152602001916107c08301527f508051906020019080838360005b838110156107bf57808201518184015260206107e08301527f810190506107a4565b50505050905090810190601f1680156107ec57808203806108008301527f516001836020036101000a031916815260200191505b509350505050604051806108208301527f910390f35b34801561080757600080fd5b5061083e60048036036040811015616108408301527f081e57600080fd5b8101908080359060200190929190803590602001909291906108608301527f50505061280d565b6040518080602001828103825283818151815260200191506108808301527f8051906020019080838360005b8381101561087e5780820151818401526020816108a08301527f019050610863565b50505050905090810190601f1680156108ab5780820380516108c08301527f6001836020036101000a031916815260200191505b50925050506040518091036108e08301527f90f35b3480156108c557600080fd5b506108f2600480360360208110156108dc6109008301527f57600080fd5b8101908080359060200190929190505050612894565b604051806109208301527f82815260200191505060405180910390f35b34801561091457600080fd5b50616109408301527f09576004803603602081101561092b57600080fd5b81019080803573ffffffff6109608301526fe96f9fdffe6f6d6e6fafafaf9ed753a9196109808301527f5b005b34801561096557600080fd5b506109926004803603602081101561097c6109a08301527f57600080fd5b8101908080359060200190929190505050612c3e565b005b610b6109c08301527f3860048036036101408110156109ab57600080fd5b81019080803573ffffffff6109e08301526fe96f9fdffe6f6d6e6f7fca6f9fdffe6f19610a0083018190527f929190803590602001906401000000008111156109f257600080fd5b82018360610a208401527f2082011115610a0457600080fd5b803590602001918460018302840111640100610a408401527c83111715610a2657600080fd5b9091929391929390803560ff16906020610a608401527f0190929190803590602001909291908035906020019092919080359060200190610a8084015265e96f9fdffe706524a464200d5d60d21b03610aa08401819052610ac08401527f92919080359060200190640100000000811115610ab257600080fd5b82018360610ae08401527f2082011115610ac457600080fd5b803590602001918460018302840111640100610b008401527c83111715610ae657600080fd5b91908080601f01602080910402602001610b208401527f6040519081016040528093929190818152602001838380828437600081840152610b408401527f601f19601f820116905080830192505050505050509192919290505050612d78610b608401527f565b60405180821515815260200191505060405180910390f35b348015610b5c610b808401527f57600080fd5b50610ba960048036036040811015610b7357600080fd5b810190610ba084015267e96f9fdffe6f6d6f6320200d5d60e21b03610bc08401527f90803590602001909291905050506132b5565b60405180828152602001915050610be08401527f60405180910390f35b348015610bcb57600080fd5b50610d2660048036036060610c008401527f811015610be257600080fd5b8101908080359060200190929190803590602001610c208401527f90640100000000811115610c0957600080fd5b820183602082011115610c1b57610c408401527f600080fd5b80359060200191846001830284011164010000000083111715610c610c608401527f3d57600080fd5b91908080601f01602080910402602001604051908101604052610c808401527f8093929190818152602001838380828437600081840152601f19601f82011690610ca08401527f5080830192505050505050509192919290803590602001906401000000008111610cc08401527f15610ca057600080fd5b820183602082011115610cb257600080fd5b80359060610ce08401527f200191846001830284011164010000000083111715610cd457600080fd5b9190610d008401527f8080601f01602080910402602001604051908101604052809392919081815260610d208401527f2001838380828437600081840152601f19601f82011690508083019250505050610d408401527f50505091929192905050506132da565b005b348015610d3457600080fd5b5061610d608401527f0d3d613369565b60405180806020018281038252838181518152602001915080610d808401527f51906020019060200280838360005b83811015610d8057808201518184015260610da08401527f2081019050610d65565b505050509050019250505060405180910390f35b3480610dc08401527f15610da057600080fd5b50610da9613512565b60405180828152602001915050610de08401527f60405180910390f35b348015610dcb57600080fd5b50610ea560048036036040610e0084015260017220440558437895d800203f56e0406420200d5d606a1b03610e2084015278e96f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffffffff7eeeea19610e408401527f610e1f57600080fd5b820183602082011115610e3157600080fd5b8035906020610e608401527f0191846001830284011164010000000083111715610e5357600080fd5b919080610e808401526000805160206200d439833981519152610ea08401526000805160206200d419833981519152610ec08401527f50509192919290505050613518565b005b348015610eb357600080fd5b506110610ee08401527f156004803603610100811015610ecb57600080fd5b8101908080359060200190610f008401527f640100000000811115610ee857600080fd5b820183602082011115610efa5760610f208401527e80fd5b80359060200191846020830284011164010000000083111715610f1c610f408401527f57600080fd5b909192939192939080359060200190929190803573ffffffffff610f6084015270e96f9fdffe6f6d6e6f7fca6f9fdffe6f9b19610f808401527f0100000000811115610f6757600080fd5b820183602082011115610f79576000610fa08401527f80fd5b80359060200191846001830284011164010000000083111715610f9b57610fc084015260016f1800203f56e42464a4e464a4e4200d5d60821b03610fe08401526b3a5be7f7ff9bdb5b9bdff2a360821b19611000840152753a5be7f7ff9bdb5b9bdff29be7f7ff9bdb5b9bdff2a360321b1961102084015271e96f9fdffe6f6d6e6fafafaf9ecac5a9a4ff196110408401527f5b34801561102357600080fd5b506110d26004803603608081101561103a576061106084015260ea69203f56e0406420200d5d60aa1b036110808401527f90602001909291908035906020019092919080359060200190640100000000816110a08401527f111561108157600080fd5b82018360208201111561109357600080fd5b8035906110c08401527f602001918460018302840111640100000000831117156110b557600080fd5b906110e08401527f91929391929390803560ff1690602001909291905050506136f8565b604051806111008401527f82815260200191505060405180910390f35b3480156110f457600080fd5b50616111208401527f11416004803603604081101561110b57600080fd5b81019080803573ffffffff61114084015261116083015260017424a464141414184e081596d81014602018080060dd605a1b0361118083015276e97ead9fdffe7d7efc7dad7b7e7eae7ead9fdffe6eaf7f196111a08301527f51906020019060200280838360005b838110156111a0578082015181840152606111c08301527f2081019050611185565b50505050905001935050505060405180910390f35b346111e08301527f80156111c157600080fd5b506111ee600480360360208110156111d8576000806112008301527ffd5b8101908080359060200190929190505050613a12565b005b3480156111fc6112208301527f57600080fd5b50611314600480360361014081101561121457600080fd5b810161124083015266e96f9fdffe6f6e642420200d5d60da1b036112608301527f9190803590602001909291908035906020019064010000000081111561125b576112808301527f600080fd5b82018360208201111561126d57600080fd5b8035906020019184606112a08301527f0183028401116401000000008311171561128f57600080fd5b909192939192936112c08301527f90803560ff1690602001909291908035906020019092919080359060200190926112e083015260016e2464200d641808006424a464200d5d608a1b036113008301526b3a5be7f7ff9bdb5b9bdff2a3608a1b196113208301527ce96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafafaf9ec44ea9a49fbf196113408301527f518082815260200191505060405180910390f35b34801561133657600080fd5b6113608301527f506113996004803603604081101561134d57600080fd5b81019080803573ffff6113808301526de96f9fdffe6f6d6e6f7fca8c0000196113a08301526de96f9fdffe6f6d6e6fafafaf9ec4196113c08301527fde565b005b3480156113a757600080fd5b506113ea60048036036020811015616113e083015260016e04ef95d800203f56e0406420200d5d608a1b036114008301527ce96f9fdffe6f6d6e6fafafaf9ec090a9a4ffa4cb7fea9eec07a89fff7f196114208301527ffd5b5061147b6004803603606081101561140f57600080fd5b810190808035736114408301526be96f9fdffe6f6d6e6f7fca8c1961146083018190526114808301526114a08201527f613ff3565b005b34801561148957600080fd5b50611492614665565b604051806114c08201527f82815260200191505060405180910390f35b3480156114b457600080fd5b50616114e08201527f15cc60048036036101408110156114cc57600080fd5b81019080803573ffffff6115008201526ee96f9fdffe6f6d6e6f7fca6f9fdffe196115208201527f909291908035906020019064010000000081111561151357600080fd5b8201836115408201527f60208201111561152557600080fd5b80359060200191846001830284011164016115608201527b8311171561154757600080fd5b9091929391929390803560ff1690606115808201527f20019092919080359060200190929190803590602001909291908035906020016115a082015264e96f9fdfff662424a464200d5d60ca1b036115c082018190526115e08201527f909291908035906020019092919050505061466f565b604051808060200182816116008201527f03825283818151815260200191508051906020019080838360005b83811015616116208201527f160c5780820151818401526020810190506115f1565b505050509050908101906116408201527f601f1680156116395780820380516001836020036101000a03191681526020016116608201527f91505b509250505060405180910390f35b34801561165357600080fd5b5061166116808201527f966004803603602081101561166a57600080fd5b81019080803573ffffffffff6116a082015270e96f9fdffe6f6d6e6fafafaf9eb7e8a9a4196116c08201527e5b3480156116a457600080fd5b506116ad614878565b6040518082815260206116e08201527f0191505060405180910390f35b3480156116cf57600080fd5b5061173c6004806117008201526001760d80d8182044055845b995d800203f56e0406420200d5d604a1b036117208201526b3a5be7f7ff9bdb5b9bdff2a3604a1b1961174082015274e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafaf196117608201527f506148f6565b005b34801561174a57600080fd5b50611753614d29565b6040516117808201527f80806020018281038252838181518152602001915080519060200190808383606117a08201527e5b83811015611793578082015181840152602081019050611778565b5050506117c08201527f50905090810190601f1680156117c05780820380516001836020036101000a036117e08201527f1916815260200191505b509250505060405180910390f35b6117d6614d62565b61180082015268e97d8c0000000000016218001d60ea1b036118208201526c3a7afa9ffaa7b9efea2be7ffa3602a1b19611840820152623a5f6360721b196118608201526c3a7afaa91ffaa7b9e1ea2bf3e3606a1b1961188082015261e9eb623a5f6360b21b01196118a08201526caadb08c752bb02028bf8461bcd60951b6118c082015275815260040180806020018281038252600581526020016118e082015266807f475332303360c81b611900820152600174205494180800645414181014602440e43f56d8001d604a1b03611920820152663a67ff67ffdee360721b1961194082015263e97ead9f613a6360c21b01196119608201526001760800642054980800580008180024152418404002a4011d604a1b03611980820152613a63609a1b196119a082015260016d074f5cf730a544fdfd7407b9e433608d1b03196119c0820152748152600401808060200182810382526005815260206119e082015266601fd1d4cc8c0d60c21b611a008201527c81525060200191505060405180910390fd5b60026000600173ffffffff611a20820152613a6360721b19611a40820181905279e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb19611a608301526ae99ffd9fff7b8c00000001601d60fa1b03611a80830152611aa082015279e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c0019611ac0820152653f79ba5bdf23603a1b19611ae08201526d3a7f7a1beaabdfa7ff67ffe7ffa3602a1b19611b00820152613a63607a1b19611b208201527ae97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c000019611b40820152653f79ba5bdf2360421b19611b6082015273e9fde86faaaf9ffc9fff7eab7f6d6e6f9ffefe6e19611b808201527f905055507f9465fa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa611ba082015260016b1fd82cba89a098101460209d60a21b03611bc08201527f16815260200191505060405180910390a18060045414611bba57611bb981612c611be08201527f3e565b5b5050565b611bd2604182614e0590919063ffffffff16565b82511015611c008201526b0308e242bb02028bf8461bcd60a51b611c208201527781526004018080602001828103825260058152602001807f611c4082015264047533032360dc1b611c608201527f81525060200191505060405180910390fd5b6000808060008060005b86811015611c808201527f61243457611c648882614e3f565b80945081955082965050505060008460ff16611ca08201527f141561206d578260001c9450611c96604188614e0590919063ffffffff16565b611cc08201527104130000e080ab08e872bb02028bf8461bcd60751b611ce082015271815260040180806020018281038252600581611d0082018190526a52602001807f475330323160a81b611d208301527981525060200191505060405180910390fd5b8751611d27602084611d408301527f60001c614e6e90919063ffffffff16565b1115611d9b576040517f08c379a000611d60830152648152600401611d80830152774040301000c14081c1293002c0a9301000c03fa3a998191960411b611da08301526c81525060200191505060405180611dc08301527f910390fd5b60006020838a01015190508851611dd182611dc360208760001c61611de08301527f4e6e90919063ffffffff16565b614e6e90919063ffffffff16565b1115611e45611e008301526802bb02028bf8461bcd60bd1b611e208301527a81526004018080602001828103825260058152602001807f475330611e408301526281525061323360f01b01611e608301527f60200191505060405180910390fd5b60606020848b010190506320c13b0b60e0611e8083015261e6ea6106df60f21b03611ea083015269e99cdf3ec4f4727b9fc06121dd60f21b03611ec08301527f518363ffffffff1660e01b815260040180806020018060200183810383528581611ee08301527f8151815260200191508051906020019080838360005b83811015611ee7578082611f008301527f015181840152602081019050611ecc565b50505050905090810190601f168015611f208301527f611f145780820380516001836020036101000a031916815260200191505b5083611f408301527f8103825284818151815260200191508051906020019080838360005b83811015611f608301527f611f4d578082015181840152602081019050611f32565b505050509050908101611f808301527f90601f168015611f7a5780820380516001836020036101000a03191681526020611fa08301527f0191505b5094505050505060206040518083038186803b158015611f99576000611fc08301527f80fd5b505afa158015611fad573d6000803e3d6000fd5b505050506040513d60611fe08301527f20811015611fc357600080fd5b81019080805190602001909291905050507bff61200083015264e6e9eb9edf19612020830152690332bb02028bf8461bcd60b51b6120408301527981526004018080602001828103825260058152602001807f4753612060830152618152620c0c8d60ea1b016120808301527f5060200191505060405180910390fd5b50506122b2565b60018460ff161415616120a083015260ea6a086055e09800072514211d60aa1b036120c083015269e9eb7f9edef5a8afa000610cdd60f21b036120e083015265e98c00000001651802180021dd60d21b036121008301526fe97ead9fdffe6f7ead9fdffe9fffdf9f196121208301527e8c81526020019081526020016000205414155b61217c576040517f08c379a0612140830152638152600461216083015278018080602001828103825260058152602001807f475330323560381b6121808301526b8152506020019150506040516121a08301527f80910390fd5b6122b1565b601e8460ff1611156122495760018a6040516020016121c08301527f80807f19457468657265756d205369676e6564204d6573736167653a0a3332006121e08301527c815250601c0182815260200191505060405160208183030381529060406122008301527f52805190602001206004860385856040516000815260200160405260405180856122208301527f81526020018460ff1681526020018381526020018281526020019450505050506122408301527f6020604051602081039080840390855afa158015612238573d6000803e3d60006122608301527ffd5b5050506020604051035194506122b0565b60018a858585604051600081526122808301527f602001604052604051808581526020018460ff168152602001838152602001826122a08301527f81526020019450505050506020604051602081039080840390855afa158015616122c08301527f22a3573d6000803e3d6000fd5b5050506020604051035194505b5b5b8573ffff6122e0830152623a5ea3605a1b196123008301526b3a7b9ffaa7b721aa2be7ffe3605a1b19612320830152663a67ff67ffde2360821b1961234083015265e97ead9fdffe613a6360d21b0119612360830152600174242054980800580008180024152418404002a4011d605a1b0361238083015260e9613a6360aa1b01196123a083015260016c050556e0055848ec95d418005d609a1b036123c083015267e9ebeaa49edbdba8623a5ea360e21b01196123e0830152670302028bf8461bcd60c51b6124008301527b81526004018080602001828103825260058152602001807f475330326124208301526381525060601b60f91b016124408301527f200191505060405180910390fd5b8495508080600101915050611c52565b505061246083015260016d14141414141414141596d800205d60921b0361248083015265e9ebea7fea9e633a67ffa360d21b01196124a083015264e99ffea000660942d5d418001d60ca1b036124c08301526001613a6360421b0161211d60f21b036124e083015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f1961250083015264e98c0000016618404002a4011d60ca1b036125208301526ee9ebeaa46faf6e6fafa9a49fff9ffe196125408301526001623a5f6360421b01601d60fa1b036125608301526c3a7afa9ffaa7b688aa2be7ffe3603a1b19612580830152663a67ff67ffdee360621b196125a083015261e97e613a6360b21b01196125c083015260017814980800642054980800580008180024152418404002a4011d603a1b036125e0830152613a63608a1b196126008301527ce9ebeaa46faf6e6fafa9a49fff7fb96faf7f6eafaf6fa9a49fff9ffe8c19612620830152623a7323604a1b196126408301526c3a7afa9ffaa7b650ea2be7ffe360421b19612660830152663a67ffa7fff323606a1b1961268083015262e97ead613a6360ba1b01196126a0830152600177180800642054980800580008180024152418404002a4011d60421b036126c0830152613a6360921b196126e083015260016f074f5f5524f6c68d44fdfd7407b9e43360751b03196127008301526127208201526a14980800601fd1d4cc4c0d60aa1b6127408201527981525060200191505060405180910390fd5b61273b858585855a61276082015260016e1853a35596e41420055849e2d5ccdd608a1b036127808201527ce980976a3ec99b55b098d774da285de28555cb6e91caa04649051f5ec6196127a08201526001762a4216fb2e181014581014602440e4289849f3d596ccdd604a1b036127c082015274e980532d378fd7fbed7024f24d44b6092ed822fe7e196127e08201527fc13fd45dbfe16de0930e2bd37560405160405180910390a25b949350505050566128008201527f5b600060606127e7868686866125f1565b915060405160203d0181016040523d6128208201527f81523d6000602083013e8091505094509492505050565b606060006020830267612840820152777eee7fea9ed7d4a89fff7f02a4af9fbfae6f7f7dad7f9fe0196128608201527f01601f19166020018201604052801561285e57816020016001820280368337806128808201527f820191505090505b50905060005b8381101561288957808501548060208302606128a08201527f2085010152508080600101915050612864565b508091505092915050565b60076128c08201527f6020528060005260406000206000915090505481565b6128b4614d62565b60006128e08201526001623a5fa360421b01601d60fa1b036129008201526c3a7afa9ffaa7b5b86a2be7ffa3603a1b19612920820152623a5fa360821b1961294082015260016f074f5f5524f6b37d44fdfd7407b9e43360651b03196129608201526f8152600401808060200182810382526061298082018190526c058152602001807f475331303160981b6129a08301527781525060200191505060405180910390fd5b600073ffffff6129c08301819052663a67ffa7ffdf2360421b196129e0840152613a6360921b19612a0084018190527de97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb8c00000019612a20850152613a63606a1b19612a4085015260016d074f5cf6ab7544fdfd7407b9e433605d1b0319612a608501526e815260040180806020018281038252612a808501526d3002c0a9301000c03fa3a998981960911b612aa08501527681525060200191505060405180910390fd5b6001600060612ac08501526001613a6360421b01605d60f21b03612ae085015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f19612b0085015264e99ffea0006618404002a4011d60ca1b03612b208501526001613a6360421b016120dd60f21b03612b4085015273e97ead9fdffe6f7ead9fdffe9fffdf9fff9efeff19612b6085015266fde6e96f7c8c016402a055205d60da1b03612b808501526ce9fde86faaaf7f9ffe9fff9ffe19612ba08501526001613a63604a1b01601d60fa1b03612bc0850181905274e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff519612be086015267fde6e96f7c8c0001632055205d60e21b03612c008601526de9fde86faaaf801320c5c10015a819612c208601527f83a3c4c2140e677577666428d44ed9d474a0b3a4c9943f844081604051808273612c408601526be97ead9fdffe6eafaf9fbfae19612c608601527f80910390a150565b612c46614d62565b600354811115612cbe576040517f08c3612c808601526181526103cd60f51b01612ca08601527a6004018080602001828103825260058152602001807f475332303160281b612cc08601526981525060200191505060612ce08601527802028c04881c87eadb000c0880ab0969aabb02028bf8461bcd603d1b612d008601526a8152600401808060200182612d208601819052714081c1293002c0a9301000c03fa3a999181960711b612d408701527281525060200191505060405180910390fd5b80612d608701527f6004819055507f610f7ff2b304ae8903c3de74c60c6ab1f7d6226b3f52c51619612d808701527f05bb5ad4039c936004546040518082815260200191505060405180910390a150612da08701527f565b6000806000612d928e8e8e8e8e8e8e8e8e8e60055461466f565b90506005612dc08701527f6000815480929190600101919050555080805190602001209150612dbb828286612de0870152600174184cb69596d41800184b719853b65596e41418001d605a1b03612e00870152623a5fa360a21b19612e2087015263e99c8a10670585184beb15e01d60c21b03612e408701527fbb528f8f8f8f8f8f8f8f8f8f8f336040518d63ffffffff1660e01b8152600401612e6087015268e97ead9fdffe737eae6220235d60ea1b03612e808701527f602001806020018a6001811115612e6957fe5b81526020018981526020018881612ea087015260016b1498080061e054980800619d60a21b03612ec087015263e97eada06705a054980800615d60c21b03612ee087015263e97eada067080060180800611d60c21b03612f008701527f200183810383528d8d82818152602001925080828437600081840152601f1960612f208701527f1f82011690508083019250505083810382528581815181526020019150805190612f408701527f6020019080838360005b83811015612f3b578082015181840152602081019050612f608701527f612f20565b50505050905090810190601f168015612f68578082038051600183612f808701527f6020036101000a031916815260200191505b509e505050505050505050505050612fa08701527f505050600060405180830381600087803b158015612f9357600080fd5b505af1612fc08701527f158015612fa7573d6000803e3d6000fd5b505050505b6101f4612fd36109c48b612fe08701527f01603f60408d0281612fc457fe5b04614f0a90919063ffffffff16565b015a106130008701526bab09824abb02028bf8461bcd609d1b6130208701527681526004018080602001828103825260058152602001806130408701526507f47533031360d41b6130608701527e81525060200191505060405180910390fd5b60005a90506130b28f8f8f8f806130808701526000805160206200d4398339815191526130a08701526000805160206200d4198339815191526130c08701527f50508e60008d146130a7578e6130ad565b6109c45a035b614e8d565b935061306130e08701527fc75a82614f2490919063ffffffff16565b905083806130d6575060008a14155b613100870152770403098712ba83000440a0aadb098aa2bb02028bf8461bcd60451b6131208701526b81526004018080602001828161314087018190527003825260058152602001807f475330313360781b6131608801527381525060200191505060405180910390fd5b60006131808801527f8089111561316e5761316b828b8b8b8b614f44565b90505b84156131b8577f446131a08801527f2e715f626346e8c54381002da614f62bee8d27386535b2521ec8540898556e846131c08801527f82604051808381526020018281526020019250505060405180910390a16131f86131e08801527f565b7f23428b18acfb3ea64b08dc0c1d296ea9c09702c09083ca5272e64d115b6132008801527f687d23848260405180838152602001828152602001925050506040518091039061322088015264e97e8c0001662856d41418001d60ca1b03613240880152673a7ae7b356ea1fe360321b1961326088015271e99c6cd8ec977c7a9fbfae7c9c00000000e9196132808801527f60e01b81526004018083815260200182151581526020019250505060006040516132a08801527f80830381600087803b15801561328b57600080fd5b505af115801561329f573d6132c08801527f6000803e3d6000fd5b505050505b50509b9a5050505050505050505050565b606132e08801527f08602052816000526040600020602052806000526040600020600091509150506133008801527a02a40ab2db00030022a482830004088b099ababb02028bf8461bcd602d1b613320880152688152600401808060206133408801527301828103825260058152602001807f475330303160601b6133608801527081525060200191505060405180910390fd6133808801527f5b61336384848484611bbe565b50505050565b6060600060035467ffffffffff6133a08801527c7eee7fea9ecc79a89fff7f02a4af9fbfae6f7f7dad7f9fdffd9fdffe7d196133c08801527f0160405280156133b55781602001602082028036833780820191505090505b506133e088015260016b24141800201800980018005d60a21b0361340088015269e97ead9fdffe6f7eada061059d60f21b036134208801526001700800580008180024152418404002a4011d607a1b03613440880152663a5bebe927ffa360a21b1961346088015268e9eb9ecaf6a87f7c7d6205a05d60ea1b0361348088015260017220546044184d1815ff96d8080098080040641d606a1b036134a088015260e9633a5bdfa360aa1b01196134c088015261e98d692054941418009800209d60b21b036134e08801526be97ead9fdffe6f7ead9fdffe1961350088015260016e180008180024152418404002a4011d608a1b036135208801527ce96faf7e7f9ffefe6dafaf9ecbe0a9a47d6cafafafaf6fa9a49ffaab7e196135408801527f565b600080825160208401855af4806000523d6020523d600060403e60403d016135608801527f6000fd5b6135858a8a80806020026020016040519081016040528093929190816135808801527f8152602001838360200280828437600081840152601f19601f820116905080836135a08801526001706494141414141414225854529596d8001d60721b036135c088015262e9eb9e623a5ee360ba1b01196135e08801527f35c3576135c28461564a565b5b6136118787878080601f0160208091040260206136008801527f01604051908101604052809392919081815260200183838082843760008184016136208801527f52601f19601f82011690508083019250505050505050615679565b6000821115613640880152600176184d8ad5d84d8a609800180061a15853d11596d416ccdd604a1b0361366088015274e980ebe2079759cce50ad71c737c4855fc123e6419196136808801527f6e37ae67f9285bf4f8e3c6a1a88b8b8b8b8960405180806020018581526020016136a088015269e97ead9fdffe7c8c000161211d60f21b036136c08801526de97ead9fdffe7d7efc7dad78787d196136e08801527f818152602001925060200280828437600081840152601f19601f8201169050806137008801527f830192505050965050505050505060405180910390a2505050505050505050506137208801527f565b6000805a905061374f878787878080601f016020809104026020016040516137408801526000805160206200d3d98339815191526137608801527f601f82011690508083019250505050505050865a614e8d565b613758576000806137808801527ffd5b60005a8203905080604051602001808281526020019150506040516020816137a0880152700418181c0a948302029302028bf8461bcd607d1b6137c088015272815260040180806020018281038252838181516137e08801527f815260200191508051906020019080838360005b838110156137e557808201516138008801527f818401526020810190506137ca565b50505050905090810190601f16801561386138208801527f125780820380516001836020036101000a031916815260200191505b50925050613840880152677eee7fea9ec7c4a96f0a0c080a301220721fab6c0c0c00104d60831b036138608801527f600080fd5b5060405190808252806020026020018201604052801561386a57816138808801527f602001602082028036833780820191505090505b5091506000806001600087736138a0880152613a6360521b196138c088015275e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efe196138e088015266e96fafa49fff8d6302a4011d60da1b03613900880152623a5fa3604a1b1961392088018190526c3a7afa9ffaa7b1b0aa2be7ffa360421b19613940890152623a5fa3608a1b1961396089018190527ce9ebeaa47fea9ec6b7a8af7b7defa4ea9ec5fca87f7b7c7eae7eef9ec6196139808a015260016c1695ff96d8080098080040641d609a1b036139a08a015266e97eadafaf9ffe633a5bdfa360da1b01196139c08a015267e98c000000000001631800209d60e21b036139e08a015271e97ead9fdffe6f7ead9fdffe9fffdf9fff6f19613a008a015262e96fb068152418404002a4011d60ba1b03613a208a01527f81806001019250506138d3565b80925081845250509250929050565b600073ff613a408a0152663a67ff67fff32360321b19613a608a0152613a6360821b19613a808a018190527be97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb8c0019613aa08b0152613a63605a1b19613ac08b015260016e074f5f54f6275d44fdfd7407b9e43360451b0319613ae08b0152613b008a01939093526f3825260058152602001807f475330333607c1b613b208a01527381525060200191505060405180910390fd5b6001613b408a015265e98c0000000165180218000cdd60d21b03613b608a01526fe97ead9fdffe6f7ead9fdffe9fffdf9f19613b808a015260017420e054980800642054980800580008206415540cdd60521b03613ba08a015275e97e800d5f14ea9b8d2ebbfdaa4f283e1e633f8eea2e19613bc08a01527f051fe605b0dce69acfec884d9c60405160405180910390a350565b6000613bc6613be08a01527f8c8c8c8c8c8c8c8c8c8c8c61466f565b8051906020012090509b9a5050505050613c008a01526001721414141414141596d84ef99853589596d8001d606a1b03613c208a015261e9eb623a5fa360b21b0119613c408a015260ea6a056005584f1415d418005d60aa1b03613c608a015269e9ebeaa49ec33da89fc061205d60f21b03613c808a015265028bf8461bcd60d51b613ca08a018190527d81526004018080602001828103825260058152602001807f475331303100613cc08b015265815250602001613ce08b0181905260016d245414181014602440e43f56e01d60921b03613d008c015262e98c00663a67ffa7ffdee360ba1b0119613d208c01526ce97ead9fdffe6f7ead9fdffe9f19613d408c015260016c08180024152418404002a4011d60921b03613d608c015267e9eb9ec23da89fbf613a6360e21b0119613d808c0152613da08b01919091527d81526004018080602001828103825260058152602001807f475331303300613dc08b0152613de08a0152600171245414181014602440e43f56d8005800209d60721b03613e008a015263e97ead9f613a6360c21b0119613e208a018190526001760800642054980800580008180024152418404002a4011d604a1b03613e408b0152663a67ffa7ffdee360721b19613e608b0152613e808a01526001740800642054980800580008180018404002a055205d605a1b03613ea08a0152653f79ba5bdf23608a1b19613ec08a01526d3a7f7a1beaabe7ffe7ffa7ffdf23607a1b19613ee08a015264e97ead9fdf613a6360ca1b0119613f008a0152600172642054980800580008180018404002a055205d60621b03613f208a0152653f79ba5bdf2360921b19613f408a01527de9fde86faaaf80554b05d4b9c0a7e4d4cd34c481c48fb4631c833df64a0419613f608a015260016f135df964eb3901509da058101460209d60821b03613f808a01527be97ead9fdffe6eafaf9fbfae7f6efc6f5eafafa9a49ec0889eb29da919613fa08a01527f5b60007f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbda4f558613fc08a01527fc93c34c860001b90508181557f1151116914515bc0891ff9047a6cb32cf90254613fe08a01526001731be0c199266f3e2e8cf48d4fe8a098101460209d60621b036140008a015277e97ead9fdffe6eafaf9fbfae7f6efc6f5eafafa9a49ec004196140208a015263e97e8c01671853589596d8001d60c21b036140408a01526ce9ebea7fea9ebf9aa8af9ffe8c196140608a01526140808901919091526c3a7afaa91ffaa7afd8aa2bf3e360421b196140a08901526140c088015260016f074f5f5524f5f78544fdfd7407b9e433606d1b03196140e08801527081526004018080602001828103825260056141008801526b8152602001807f475332303360a01b6141208801527881525060200191505060405180910390fd5b600073ffffffff614140880152663a67ff67ffdf23604a1b19614160880152613a63609a1b196141808801527a3a5fab67f7ff9bdfab67f7ffa7fff7e7ffdbeadbe7bfbffd5bfee360221b196141a0880152613a6360721b196141c0880181905260016d074f5cf5ef7d44fdfd7407b9e43360651b03196141e08901526142008801969096526c016054980800601fd1d4cc8c0d609a1b614220880152614240870194909452623a5f6360621b196142608701526c3a7afa9ffaa7af616a2be7ffa3605a1b19614280870152623a5f6360a21b196142a08701526eb0a0aadb0a1762bb02028bf8461bcd60851b6142c08701527381526004018080602001828103825260058152606142e08701819052682001807f475332303360b81b614300880152600173205494180800645414181014602440e43f56e05d60421b03614320880152663a67ff67ffdea3606a1b1961434088015262e97ead613a6360ba1b0119614360880152600177180800642054980800580008180024152418404002a4011d60421b036143808801526143a087019390935260016d074f5cf5e09d44fdfd7407b9e43360851b03196143c08701526143e0860192909252682001807f475332303560b81b6144008601527b81525060200191505060405180910390fd5b600260008373ffffffff614420860152614440850184905279e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb1961446086018190526ae99ffd9fff7c8c00000001601d60fa1b036144808701526144a0860185905279e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c00196144c0870152653f79ba5bdf23603a1b196144e08701526c3a7f7a1beaabdfe7ff67ffdea360321b196145008701526145208601939093527be97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c00000019614540860152653f79ba5bdf23604a1b196145608601526d3a7f7a1beaabe7ffe7ff67ffdee3603a1b19614580860152613a63608a1b196145a0860152783a5fab67f7ff9bdfab67f7ffa7fff7e7ffe7bfbffd5faadfa360221b196145c0860152653f79ba5bdf2360521b196145e086015275e9fde86faaaf80072b603ad67ed16583a3af1963df0f196146008601526001773733036e3ea57262f16332693c704a67abe098101460209d60421b0361462086015273e97ead9fdffe6eafaf9fbfae7f6efc6f5e806b9a196146408601527ffa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa7f60b2ea26816061466086015266e97ead9fdffe6f64101460209d60da1b036146808601527f505060405180910390a1505050565b6000600454905090565b606060007fbb836146a08601527f10d486368db6bd6f849402fdd73ad53d316b5a4b2644ad6efe0f941286d860006146c08601527f1b8d8d8d8d6040518083838082843780830192505050925050506040518091036146e08601526001772408232323232323231810145808006023205498080062dd60421b0361470086015273e97ead9fdffe757ead9fdffe767ead9fdffe779f196147208601527f0181111561470057fe5b8152602001878152602001868152602001858152602061474086015268e97ead9fdffe7c8c0161611d60ea1b036147608601526ce97ead9fdffe7d7ead9fdffe64196147808601527f50505050505050505050505060405160208183030381529060405280519060206147a08601527f01209050601960f81b600160f81b61478c614878565b8360405160200180857e6147c086015260e6196147e0860152600167168152600101847f60c01b0361480086015278e6e97ead9ffefe7c7ead9fdffe7d7ead9fdffe6bafafafafaf196148208601527f6040516020818303038152906040529150509b9a5050505050505050505050566148408601527f5b61481f614d62565b6148288161564a565b7f5ac6c46c93c8d0e53714ba3b536148608601527fdb3e7c046da994313d7ed0d192028bc7c228b081604051808273ffffffffffff61488086015271e97ead9fdffe6eafaf9fbfae7f6efc6f5eaf196148a08601527f565b60007f47e79534a245952e8b16893a336b85a3d9ea9fa8c573f3d803afb96148c08601527f2a7946921860001b6148a66125e4565b306040516020018084815260200183816148e086015265e97ead9fdfff6514980800609d60d21b036149008601527f935050505060405160208183030381529060405280519060200120905090565b6149208601527f6148fe614d62565b806001600354031015614979576040517f08c379a00000006149408601526681526004018080614960860181905275602001828103825260058152602001807f475332303160501b61498087018190526e8152506020019150506040518091036149a0880181905265e97d8c00000165243f56d8001d60d21b036149c08901526ee9ebea7fea9eb61ca8af9ffe8c0000196149e0890152623a5f63605a1b19614a0089015260016f074f5f5524f5ad5544fdfd7407b9e433603d1b0319614a20890152614a408801859052718103825260058152602001807f475332303360701b614a608901527281525060200191505060405180910390fd5b81614a808901526ae99ffd9fff7a8c00000001601d60fa1b03614aa0890152614ac0880196909652614ae0870194909452614b0086019190915260016d074f5cf5a55544fdfd7407b9e433603d1b0319614b20860152614b40850191909152718103825260058152602001807f475332303560701b614b608501527281525060200191505060405180910390fd5b60614b8085015266e98c000000000163980020dd60da1b03614ba085015270e97ead9fdffe6f7ead9fdffe9fffdf9fff19614bc0850181905261e9a06924152418404002a4011d60b21b03614be086015266e98c0000000001639800215d60da1b03614c00860152614c2085015263fde6e9706718404002a055205d60c21b03614c4085015269e9fde86faaaf9fff9ffe6120dd60f21b03614c6085015267e98c000000000001631800211d60e21b03614c8085015271e97ead9fdffe6f7ead9fdffe9fffdf9fff9e19614ca085015264fde6e96f7d654002a055205d60ca1b03614cc08501526ae9fde86faaaf9ffc9fff7f601d60fa1b03614ce08501527f54809291906001900391905055507ff8d49fc529812e9a7c5c50e69c20f0dccc614d00850152600175036e3ea57262f16332693c704a67abe098101460209d60521b03614d2085015275e97ead9fdffe6eafaf9fbfae7f6efc6f5e7f9ffbabeb19614d408501527f614d2457614d2381612c3e565b5b505050565b60405180604001604052806005614d608501526a081526020017f312e332e360ac1b614d80850152600167205494205596cc1d60921b03614da085015266e9eb9eb1fca89f623a732360da1b0119614dc08501526602028bf8461bcd60cd1b614de08501527c81526004018080602001828103825260058152602001807f4753303331614e00850152648152506020614e208501527f0191505060405180910390fd5b565b600080831415614e185760009050614e39614e408501527f565b6000828402905082848281614e2957fe5b0414614e3457600080fd5b8091614e608501527f50505b92915050565b6000806000836041026020810186015192506040810186614e808501527f0151915060ff60418201870151169350509250925092565b6000808284019050614ea08501527f83811015614e8357600080fd5b8091505092915050565b600060018081111561614ec08501527f4e9b57fe5b836001811115614ea757fe5b1415614ec057600080855160208701614ee08501527f8986f49050614ed0565b600080855160208701888a87f190505b959450505050614f008501527f50565b6000807f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbd614f208501527fa4f558c93c34c860001b9050805491505090565b600081831015614f1a578161614f408501527f4f1c565b825b905092915050565b600082821115614f3357600080fd5b600082614f608501526001732100e4142024541424a454141596d8002018001d60621b03614f8085015260e9623a5f2360aa1b0119614fa0850152600171051853e055e09853e0d596cc96e41418001d60721b03614fc085015262e9ebea623a5ee360ba1b0119614fe08501527f61509b57614fed3a8610614fca573a614fcc565b855b614fdf888a614e6e90916150008501527f9063ffffffff16565b614e0590919063ffffffff16565b91508073ffffffffff61502085015270e99ef7037c6f7eeafd6f9fbfae9fff9fbf1961504085015279028c04181c0c2c44478c9a828282830a84b2bb02028bf8461bcd60351b615060850152698152600401808060200161508085015272828103825260058152602001807f475330313160681b6150a08501527181525060200191505060405180910390fd5b6150c08501527f615140565b6150c0856150b2888a614e6e90919063ffffffff16565b614e05906150e08501527f919063ffffffff16565b91506150cd8482846158b4565b61513f576040517f08615100850152608162061bcd60ed1b016151208501527b29300200c040301000c14081c1293002c0a9301000c03fa3a998189960211b615140850152688152506020019150506151608501527f60405180910390fd5b5b5095945050505050565b6000600454146151c257604061518085015265028bf8461bcd60d51b6151a08501527d81526004018080602001828103825260058152602001807f4753323030006151c0850152658152506020016151e08501527f91505060405180910390fd5b8151811115615239576040517f08c379a0000000615200850152615220840152615240830152615260820152730487eadb000c0880ab0a9582bb02028bf8461bcd60651b6152808201526f815260040180806020018281038252606152a08201526c02c0a9301000c03fa3a999181960991b6152c08201527781525060200191505060405180910390fd5b6000600190506152e08201527f60005b83518110156155b65760008482815181106152d057fe5b60200260200161530082015264e97e8c00016554641418001d60ca1b036153208201526de9ebea7fea9eacbba8af9ffe8c0019615340820152623a5fa360521b196153608201526c3a7afaa91ffaa7ab20ea2bf3e3604a1b19615380820152623a5fa360921b196153a08201526c3a7afaa91ffaa7ab12ea2bdfe3608a1b196153c082015265e9ebeaa49eab623a5f2360d21b01196153e0820152690132bb02028bf8461bcd60b51b6154008201527981526004018080602001828103825260058152602001807f47536154208201526181526232303360e81b0161544082015260017214180800645414181014602440e43f56d8001d606a1b03615460820152663a67ff67ffdf2360921b1961548082015267e97ead9fdffe6f7e613a6360e21b01196154a082015260017214980800580008180024152418404002a4011d606a1b036154c082015262e9eb9e613a6360ba1b01196154e08201526a02a93abb02028bf8461bcd60ad1b6155008201527881526004018080602001828103825260058152602001807f4761552082015260816314cc8c0d60e21b016155408201526001771494180800645414181014602440e43f56e018009800215d60421b03615560820152613a6360921b19615580820152783a5fab67f7ff9bdfab67f7ffa7fff7e7ffe7bfbffd5faadfa3602a1b196155a0820152653f79ba5bdf23605a1b196155c082015276e9fde86faaaf7f6dafaf7f7f9ffefe6eafaf9ead46a9a4196155e082015262e98c01681418005800980020dd60ba1b036156008201526ce97ead9fdffe6f7ead9fdffe9f1961562082015260016a08180018404002a055205d60a21b0361564082015265e9fde86faab0648645a420dd60d21b036156608201527f825160038190555081600481905550505050565b60007f6c9a6c4a39284e37ed6156808201527f1cf53d337577d14212a4870fb976a4366c693b939918d560001b9050818155506156a082015265e99ffe9fffa065141596d8001d60d21b036156c08201526001613a6360421b01605d60f21b036156e082015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f1961570082015264e98c0000016618404002a4011d60ca1b036157208201526ee9eb9ea884a89fbfae80f73c865fff196157408201526481526004016157608201527708080602001828103825260058152602001807f47533130360441b6157808201526c815250602001915050604051806157a082015260016c2440e43f56d80060180018005d609a1b036157c082015268e97ead9fdffe6f7ead613a6360ea1b01196157e082015260016f180800580008180018404002a055205d60821b0361580082015261e9fd653f79ba5bdf2360b21b011961582082015264e97d8c00016605e4155418001d60ca1b036158408201526de9eb9ea74fa89ea7c27d9fff7c9f19615860820152710ad30a746ab2db0ac57abb02028bf8461bcd606d1b6158808201527081526004018080602001828103825260056158a08201526b08152602001807f47533030360a41b6158c08201527881525060200191505060405180910390fd5b5b5050565b60006158e08201526001702018ea41672ee1211810145809006020dd607a1b036159008201527ae97ead9fdffe7d7ead9fdffe6dafafaf9fbfae9fdf7e7cfcfc7ead1961592082015260016e24181014a4183806d808208060145f608a1b03615940820152747c7e7ce9e87cadafafafaf6faf9fdf9fff7dae9fdf196159608201527f84016000896127105a03f13d6000811461595b576020811461596357600093506159808201527f61596e565b81935061596e565b600051158215171593505b50505093925050506159a08201527f56fea26469706673582212203874bcf92e1722cc7bfa0cef1a0985cf0dc3485b6159c082015276a0663db3747ccdf1605df53464736f6c6343000706003360481b6159e08201525b6025546000198114620046a45760010190816025556020815191016000f590813f156200afd757565b60405162461bcd60e51b815260206004820152600e60248201526d1b081b9bdd0819195c1b1bde595960921b6044820152606490fd5b91906200b0239061010080855284019062000ce9565b6001602084015260e06020600092836040870152858103606087015283815201938260808201528260a08201528260c08201520152565b9060018060a01b0390816200b07562002dab60225462000ae5565b16156200b08d575b505050620008c460225462000ae5565b8116156200b238575b506200b0a862002dab60225462000ae5565b906000805160206200d3b9833981519152803b15620005d457604080516318caf8e360e31b8082526001600160a01b039590951660048201526024810191909152600f60448201526e31b7bab731b4b629b0b332a0b2323960891b606482015260009390848160848183875af18015620006fa576200b221575b50813b156200306f57604080519182526001600160a01b03841660048301526024820152601060448201526f31b7bab731b4b629b0b332a7bbb732b960811b60648201529083908290608490829084905af18015620006fa576200b20a575b506200b19c6200b1906200350c565b9162001d1e836200357e565b6200b1ad62002dab60225462000ae5565b90813b15620007005782916200b1da9160405194858094819363b63e800d60e01b8352600483016200b00d565b03925af18015620006fa576200b1f3575b80806200b07d565b80620006ec6200b2039262000766565b386200b1eb565b80620006ec6200b21a9262000766565b386200b181565b80620006ec6200b2319262000766565b386200b122565b60009060206200b2a06200b24f62002dab62005c50565b836200b25a62004c38565b604051631688f0b960e01b81526001600160a01b039093166004840152606060248401526000606484015260036044840152919586939190921691839182906084820190565b03925af18015620006fa576200b2dc926000916200b2e3575b5060228054919092166001600160a01b03166001600160a01b0319909116179055565b386200b096565b6200b2ff915060203d811162000733576200072281836200082a565b386200b2b9565b60101c6001600160a01b031690565b604051906200b3248262000780565b6001825260006020830152565b92916200b35960409160039360018060a01b0316865260606020870152606086019062000ddf565b930152565b90816020910312620005d457518015158103620005d45790565b620008c4939160018060a01b031681526200b3a760009384602084015261014080604085015283019062000ddf565b928060608301528060808301528060a08301528060c08301528060e083015261010082015261012081840391015262000ddf565b92620008c494926200b4089260018060a01b03168552602085015261014080604086015284019062000ddf565b9160008060608301528060808301528060a08301528060c08301528060e083015261010082015261012081840391015262000ddf565b604051906200b44d8262000780565b6016825275195e1958d51c985b9cd858dd1a5bdb8819985a5b195960521b6020830152565b909360606200b4b1959493946200b48b8486886200b69f565b6040516338d07aa960e21b81526004810192909252602482015295869081906044820190565b03816000805160206200d3b98339815191525afa938415620006fa5760008080966200b556575b6020969750600092916200b4f96200b508926040519a8b938b85016200b626565b03601f1981018952886200082a565b6200b52a6040519788968795869463353b090160e11b8652600486016200b3db565b03926001600160a01b03165af18015620006fa57620010e29160009162000a065750620009fd6200b43e565b5050602094506000906200b5086200b5826200b4f99860603d811162000a7e5762000a6881836200082a565b9199909198505091925050866200b4d8565b6000805160206200d3b983398151915291823b15620005d4576200b5e19260009260405180958194829363a34edc0360e01b84521515600484015260406024840152604483019062000ddf565b03915afa8015620006fa576200b5f45750565b620010e29062000766565b90816060910312620005d457805160ff81168103620005d457916040602083015192015190565b91604193918352602083015260ff60f81b9060f81b1660408201520190565b610120919493929460018060a01b031681526200b67660009586602084015261014080604085015283019062000ddf565b948060608301528060808301528060a08301528060c08301528060e08301526101008201520152565b60405163057ff68760e51b8152602093919290916001600160a01b03168483600481845afa918215620006fa576200b6fb9486946000946200b72e575b50604051631b1a23ef60e31b815295869485938493600485016200b645565b03915afa918215620006fa576000926200b71457505090565b620008c49250803d1062003736576200372681836200082a565b6200b74a919450853d871162003736576200372681836200082a565b92386200b6dc56fe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c6343000813003360a0806040523461003157306080526117ff9081610037823960805181818161087b0152818161099c0152610ed80152f35b600080fdfe6080604081815260048036101561001557600080fd5b600092833560e01c908163025313a21461123c575080631413d4c014611204578063175188e8146110e45780633659cfe614610eb157806339ebf82314610e5b5780633d47683014610de757806342a987a014610db0578063485cc95514610c0c5780634f1ef2861461092357806352d1902d14610866578063642ce76b14610729578063715018a6146106db5780638da5cb5b146106ad5780638df8b2fe1461068057806398575188146105e9578063c4d66de814610572578063d80ea5a014610430578063f2fde38b1461039f578063fc2ebdd1146101a25763feec7145146100ff57600080fd5b3461019e578160031936011261019e57610117611261565b602435916001600160a01b0391908261012e611641565b1633148015610191575b156101835750916020918361016d7f8b9ed475f52a60fa276f21d6848c06cbb59ebfcd26e8b8de2753c3e12a493ea795611599565b169384865260668352818187205551908152a280f35b8451637d7b71b560e01b8152fd5b5082606554163314610138565b8280fd5b50903461019e57606036600319011261019e576101bd611261565b60443592602435926001600160a01b038086169391929084870361039b578351631800f90560e21b8152838216976020949091858186818d5afa908115610391578b91610364575b508380610210611641565b16331491821561035a575b821561034d575b50508015610340575b8015610325575b15610315579061024461024992611599565b611599565b868852606783528388209081541591821592610302575b50506102f457509181866060947f9b1a157188de9a0bd2e7995d72aaba244d9bd012ddf3ae3d4f492135175070cb96945161029a81611292565b858152818101908382526001858201918783528b8652606785528686209051815501915115159060ff835491610100600160a81b03905160081b1692169060018060a81b031916171790558251948552840152820152a280f35b825163c45546f760e01b8152fd5b6001015460081c16151590503880610260565b855163e3b6914b60e01b81528490fd5b50888a5260678552826001878c20015460081c163314610232565b508260655416331461022b565b9091501633148338610222565b338c14925061021b565b6103849150863d881161038a575b61037c81836112c3565b8101906115bb565b38610205565b503d610372565b87513d8d823e3d90fd5b8780fd5b503461019e57602036600319011261019e576103b9611261565b916103c2611301565b6001600160a01b038316156103de57836103db84611360565b80f35b906020608492519162461bcd60e51b8352820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152fd5b50903461019e5760208060031936011261056e5761044c611261565b8251631800f90560e21b81526001600160a01b03828116959190848284818a5afa918215610564578892610545575b5080610485611641565b16331491821561053b575b821561052e575b50811561051f575b8115610503575b50156104f55750600192916104bc606792611599565b84865252832001805460ff191660011790557f652f053fc39779b70b29678135ade972fcb79966fc68fcb77c996b1aa4fd9afb8280a280f35b835163e3b6914b60e01b8152fd5b9050858752606784526001858820015460081c163314386104a6565b8091506065541633149061049f565b8192501633149038610497565b3388149250610490565b61055d919250853d871161038a5761037c81836112c3565b903861047b565b86513d8a823e3d90fd5b8380fd5b503461019e57602036600319011261019e5761058c611261565b9160ff845460081c16156105a457836103db84611360565b906020608492519162461bcd60e51b8352820152602b602482015260008051602061172a83398151915260448201526a6e697469616c697a696e6760a81b6064820152fd5b503461019e57602036600319011261019e57610603611261565b6001600160a01b039182610615611641565b1633148015610673575b15610665575090816106318593611599565b169182825260666020528120557fe9dce8c992623ce791725b21e857e33248d1f190a25b5168313420eebdaae99d8280a280f35b8351637d7b71b560e01b8152fd5b508260655416331461061f565b5050346106a957816003193601126106a95760655490516001600160a01b039091168152602090f35b5080fd5b5050346106a957816003193601126106a9576020906106ca611641565b90516001600160a01b039091168152f35b83346107265780600319360112610726576106f4611301565b603380546001600160a01b0319811690915581906001600160a01b031660008051602061174a8339815191528280a380f35b80fd5b508290346106a957826003193601126106a957610744611261565b8351631800f90560e21b815290936001600160a01b03808616936020936024359392858284818a5afa91821561085c57889261083d575b5080610785611641565b163314918215610833575b8215610826575b508115610817575b81156107fb575b50156107ed57506107d97f40ba4d5d9facd2fda74e22251d1638576e05a30482470363c7c87a7b5b298c09949596611599565b84865260678352818187205551908152a280f35b905163e3b6914b60e01b8152fd5b9050858752606785526001838820015460081c163314886107a6565b8091506065541633149061079f565b8192501633149089610797565b3388149250610790565b610855919250863d881161038a5761037c81836112c3565b908961077b565b84513d8a823e3d90fd5b508234610726578060031936011261072657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036108c0576020825160008051602061170a8339815191528152f35b6020608492519162461bcd60e51b8352820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152fd5b50908060031936011261019e57610938611261565b906024908135906001600160401b038211610c085736602383011215610c085781850135610965816112e6565b610971835191826112c3565b81815287602094858301933688828401011161019e5780888893018637830101526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116906109ca30831415611397565b6109e760008051602061170a8339815191529282845416146113e6565b6109ef611641565b8133911603610be1576000805160206116ca8339815191525460ff1615610a2157505050505050506103db9150611435565b87929394959697169085516352d1902d60e01b815287818b81865afa8b9181610bae575b50610a9157865162461bcd60e51b8152808b01899052602e818b01526000805160206117aa83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b989294989791939703610b6c575050610aa982611435565b60008051602061176a8339815191528780a285845115801590610b64575b610ad5575b50505050505080f35b80610b4e96845196610ae688611292565b602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b868901525190845af4913d15610b5a573d610b40610b37826112e6565b925192836112c3565b81528681943d92013e6114c5565b50388080808085610acc565b50606092506114c5565b506001610ac7565b845162461bcd60e51b815291820186905260299082015260008051602061178a8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508881813d8311610bda575b610bc681836112c3565b81010312610bd657519038610a45565b8b80fd5b503d610bbc565b888760449287610bef611641565b90519363163678e960e01b855233908501521690820152fd5b8580fd5b503461019e578160031936011261019e57610c25611261565b610c2d61127c565b84549260ff8460081c161593848095610da3575b8015610d8c575b15610d325760ff198116600117875584610d21575b5060ff865460081c1615610cdc5750610c7590611360565b610c7e81611599565b606580546001600160a01b0319166001600160a01b0392909216919091179055610ca6575080f35b60207f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989161ff001984541684555160018152a180f35b608490602086519162461bcd60e51b8352820152602b602482015260008051602061172a83398151915260448201526a6e697469616c697a696e6760a81b6064820152fd5b61ffff191661010117865538610c5d565b855162461bcd60e51b8152602081840152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b158015610c485750600160ff821614610c48565b50600160ff821610610c41565b5050346106a957806003193601126106a957602090610dde610dd0611261565b610dd861127c565b906115da565b90519015158152f35b833461072657602036600319011261072657610e01611261565b610e09611301565b610e1281611599565b606580546001600160a01b039283166001600160a01b0319821681179092559091167f5117c6c457d7b27a4cb68df40b118f157ac1f1ba81f8a571d189f829d74fbc868380a380f35b5050346106a95760203660031901126106a9576060916001600160a01b039190819083610e86611261565b1681526067602052209160018354930154825193845260ff81161515602085015260081c1690820152f35b50903461019e5760208060031936011261056e57610ecd611261565b916001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116610f0530821415611397565b610f2260008051602061170a8339815191529183835416146113e6565b610f2a611641565b82339116036110bd578251848101929091906001600160401b038411838510176110aa578385528883526000805160206116ca8339815191525460ff1615610f7c575050505050506103db9150611435565b869293949596169085516352d1902d60e01b815287818a81865afa8a9181611077575b50610fec57865162461bcd60e51b8152808a01899052602e60248201526000805160206117aa83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b979192939695949703611034575061100382611435565b60008051602061176a8339815191528780a28584511580159061102d57610ad55750505050505080f35b5080610ac7565b835162461bcd60e51b81529081018590526029602482015260008051602061178a8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508881813d83116110a3575b61108f81836112c3565b8101031261109f57519038610f9f565b8a80fd5b503d611085565b634e487b7160e01b895260418852602489fd5b60448683856110ca611641565b90519263163678e960e01b84523390840152166024820152fd5b50903461019e5760208060031936011261056e57611100611261565b8251631800f90560e21b81526001600160a01b03828116959190848284818a5afa9182156105645788926111e5575b5080611139611641565b1633149182156111db575b82156111ce575b5081156111bf575b81156111a3575b50156104f557509160676001926111718795611599565b85855252822082815501557f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea48280a280f35b9050858752606784526001858820015460081c1633143861115a565b80915060655416331490611153565b819250163314903861114b565b3388149250611144565b6111fd919250853d871161038a5761037c81836112c3565b903861112f565b5050346106a95760203660031901126106a95760209181906001600160a01b0361122c611261565b1681526066845220549051908152f35b8490346106a957816003193601126106a9576033546001600160a01b03168152602090f35b600435906001600160a01b038216820361127757565b600080fd5b602435906001600160a01b038216820361127757565b606081019081106001600160401b038211176112ad57604052565b634e487b7160e01b600052604160045260246000fd5b601f909101601f19168101906001600160401b038211908210176112ad57604052565b6001600160401b0381116112ad57601f01601f191660200190565b611309611641565b336001600160a01b039091160361131c57565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602061174a833981519152600080a3565b1561139e57565b60405162461bcd60e51b815260206004820152602c60248201526000805160206116ea83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b156113ed57565b60405162461bcd60e51b815260206004820152602c60248201526000805160206116ea83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b1561146a5760008051602061170a83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b9192901561152757508151156114d9575090565b3b156114e25790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b82519091501561153a5750805190602001fd5b6040519062461bcd60e51b82528160208060048301528251908160248401526000935b828510611580575050604492506000838284010152601f80199101168101030190fd5b848101820151868601604401529381019385935061155d565b6001600160a01b0316156115a957565b60405163d92e233d60e01b8152600490fd5b9081602091031261127757516001600160a01b03811681036112775790565b9060018060a01b038092166000526066602052816040600020549116600052606760205260406000209160405161161081611292565b6040600185549586845201549260ff841615938415602085015260081c1691015261163a57101590565b5050600190565b6033546001600160a01b0390811690813b61165a575090565b604051638da5cb5b60e01b8152602081600481865afa91829160009361168a575b5050611685575090565b905090565b602093919293813d82116116c1575b816116a6602093836112c3565b810103126106a957519182168203610726575090388061167b565b3d915061169956fe4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc496e697469616c697a61626c653a20636f6e7472616374206973206e6f7420698be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b45524331393637557067726164653a20756e737570706f727465642070726f7845524331393637557067726164653a206e657720696d706c656d656e74617469a264697066735822122090453e44fa69fefae757d018fe317928cf51401c7897c3475408a45934d6a9f864736f6c6343000813003338395c5dceade9603479b177b68959049485df8aa97b39f3533039af5f4561990000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d9081016040528093929190818152602001838380828437600081840152601f1937fa166cbdbfbb1561ccd9ea985ec0218b5e68502e230525f544285b2bdf3d7e01838380828437600081840152601f19601f820116905080830192505050505080601f0160208091040260200160405190810160405280939291908181526020a264697066735822122037274ebf0e77c41e185b903785e86f752af1c2b7ae6ba34e13ffc0ba86fa0c3a64736f6c63430008130033","sourceMap":"257:1548:94:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;;;;;;:::o;:::-;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;20344:19:20;257:1548:94;;20303:22:20;;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;20303:22:20;;;;;;;;;:::i;:::-;257:1548:94;20293:33:20;;257:1548:94;;-1:-1:-1;;;;;;20344:19:20;;257:1548:94;20344:19:20;;257:1548:94;;;;;;;;;;;;20344:19:20;;257:1548:94;20303:22:20;257:1548:94;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;257:1548:94;20373:20:20;;;;;;;257:1548:94;;;192:59:18;;;;;;;;;20373:20:20;;;257:1548:94;20373:20:20;;;:::i;:::-;;;;;;;;;;257:1548:94;20373:20:20;;;257:1548:94;;;;;;;;;:::i;:::-;;;;20373:20:20;;;;;;:::i;:::-;;;:::i;:::-;;;;;;:::i;:::-;257:1548:94;;;20344:19:20;;;;;20303:22;20344:19;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;:::o;:::-;;:::i;:::-;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;:::o;:::-;20303:22:20;257:1548:94;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;257:1548:94;;;;20303:22:20;257:1548:94;-1:-1:-1;;257:1548:94;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;257:1548:94;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;257:1548:94;;;;;59408:60:112;257:1548:94;;;;;;:::i;:::-;59434:33:112;59408:60;59434:33;;;;;:::i;:::-;257:1548:94;;-1:-1:-1;;;59408:60:112;;257:1548:94;;;;59408:60:112;;257:1548:94;;;;;;;;;;;;;;;;;59408:60:112;;;-1:-1:-1;;;;;;;;;;;59408:60:112;;;;;;;60164:147;59408:60;59491:25;59408:60;59858:1;;;;59408:60;;;257:1548:94;;59858:1:112;257:1548:94;;59491:25:112;;257:1548:94;;;59491:25:112;;;;;;;:::i;:::-;;20303:22:20;;59491:25:112;;;;;;:::i;:::-;257:1548:94;;-1:-1:-1;;;60164:147:112;;257:1548:94;;;;;;;;60164:147:112;;;:::i;:::-;;;-1:-1:-1;;;;;257:1548:94;60164:147:112;;;;;;60140:219;60164:147;59858:1;60164:147;;;257:1548:94;;;;:::i;:::-;60140:219:112;;:::i;:::-;257:1548:94;60164:147:112;;;;59491:25;60164:147;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;59408:60;59491:25;59408:60;;59858:1;59408:60;;;59491:25;59408:60;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;-1:-1:-1;59408:60:112;;;;-1:-1:-1;59408:60:112;;;;;;;257:1548:94;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;-1:-1:-1;;;;;257:1548:94;;:::o;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;718:28:112;257:1548:94;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;1817:38:93;257:1548:94;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;306:4:15;257:1548:94;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;975:74:112;257:1548:94;;;;;:::i;:::-;1022:25:112;;:::i;:::-;975:74;;:::i;257:1548:94:-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;2563:16:22;257:1548:94;;;;;;;;;2563:16:22;257:1548:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20303:22:20;257:1548:94;-1:-1:-1;;257:1548:94;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;3485:19:22;257:1548:94;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;817:8:111;257:1548:94;;;;;;;;;-1:-1:-1;;257:1548:94;;;;2372:71:93;257:1548:94;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;257:1548:94;;;;-1:-1:-1;257:1548:94;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;257:1548:94;4206:51:93;257:1548:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:::o;:::-;4206:51:93;-1:-1:-1;257:1548:94;;;-1:-1:-1;;;;;;;;;;;257:1548:94;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;2328:37:93;257:1548:94;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;2328:37:93;257:1548:94;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;2239:32:93;257:1548:94;;;;;;;;;;;;;;;;;;;;644:109:111;257:1548:94;;;;;;644:109:111;257:1548:94;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;644:109:111;257:1548:94;;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3331:16:22;257:1548:94;;;;;;;;;3331:16:22;257:1548:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;874:7:111;257:1548:94;;;;;;;;;;;;;;;;;;;;;3038:18:22;257:1548:94;;;;;;;;;3038:18:22;257:1548:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;;1426:16:15;;:::i;:::-;257:1548:94;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;;828:25:112;257:1548:94;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;6469:19:111;257:1548:94;;;;;:::i;:::-;;;-1:-1:-1;;;6469:19:111;;257:1548:94;;;;;-1:-1:-1;;;;;257:1548:94;6469:19:111;;;;;;-1:-1:-1;6469:19:111;;;257:1548:94;;;;;;;;;6469:19:111;;;;;;;;;;;;;;;:::i;:::-;;;257:1548:94;;;;;;;;;661:63:23;6469:19:111;;;;;-1:-1:-1;6469:19:111;;257:1548:94;;-1:-1:-1;;257:1548:94;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;1862:66:93;257:1548:94;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;-1:-1:-1;;;;;;257:1548:94;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;2883:26:22;257:1548:94;;;;:::i;:::-;;;;;;;:::i;:::-;;;;2883:26:22;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;192:59:18;257:1548:94;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;;;;257:1548:94;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;257:1548:94;192:59:18;;257:1548:94;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;257:1548:94;192:59:18;;257:1548:94;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;;;;257:1548:94;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;257:1548:94;192:59:18;;257:1548:94;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;;;;257:1548:94;:::i;:::-;;;;;;;;192:59:18;257:1548:94;192:59:18;;;;;;257:1548:94;:::i;:::-;;;;;;;;;;;;;;;;;;;;;192:59:18;;257:1548:94;192:59:18;;;;257:1548:94;:::i;:::-;-1:-1:-1;;;;;;257:1548:94;;;;192:59:18;;257:1548:94;;;;192:59:18;;;;;257:1548:94;:::i;:::-;;;;;;;192:59:18;;;;;257:1548:94;:::i;:::-;;;;;;192:59:18;;257:1548:94;;;;;192:59:18;;;;;257:1548:94;:::i;:::-;;192:59:18;;;257:1548:94;:::i;:::-;;;192:59:18;;257:1548:94;192:59:18;;257:1548:94;:::i;:::-;;;192:59:18;;;257:1548:94;:::i;:::-;;;192:59:18;;257:1548:94;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;689:23:112;257:1548:94;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;257:1548:94;;;;;59668:6:112;257:1548:94;;;;;;:::i;:::-;59626:11:112;257:1548:94;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;59668:6:112;:::i;257:1548:94:-;;;;;;;;;;;;;2900:16:15;;:::i;:::-;257:1548:94;;:::i;:::-;20344:19:20;257:1548:94;;20303:22:20;;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;20344:19:20:-;;257:1548:94;20303:22:20;257:1548:94;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;257:1548:94;20373:20:20;;;;;;;257:1548:94;;;192:59:18;;;;;;;;;20373:20:20;;;257:1548:94;20373:20:20;;;:::i;:::-;;;;;;;;;;257:1548:94;20373:20:20;2926:32:15;20373:20:20;;;257:1548:94;2926:32:15;;;;:::i;:::-;;:::i;:::-;2968;20537:20:20;257:1548:94;;:::i;:::-;20537:20:20;:::i;:::-;2968:32:15;;;;:::i;:::-;257:1548:94;;;;;;;:::i;20373:20:20:-;;;;;;:::i;:::-;;;;20344:19;;;;;20303:22;20344:19;;;;;;;;;:::i;:::-;;;;;257:1548:94;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;;788:34:112;257:1548:94;;;;;;;;;;;;;;;;;;;;2094:16:15;;:::i;:::-;257:1548:94;;:::i;:::-;20344:19:20;257:1548:94;;20303:22:20;;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;20344:19:20:-;;257:1548:94;20303:22:20;257:1548:94;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;257:1548:94;20373:20:20;;;;;;;257:1548:94;;;192:59:18;;;;;;;;;20373:20:20;;;257:1548:94;20373:20:20;;;:::i;:::-;;;;;;;;;;257:1548:94;20373:20:20;2120:29:15;20373:20:20;;;2120:29:15;;;;:::i;:::-;2159;20537:20:20;257:1548:94;;:::i;20344:19:20:-;;;;;20303:22;20344:19;;;;;;;;;:::i;:::-;;;;;257:1548:94;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;2049:33:93;257:1548:94;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;1934:20:93;257:1548:94;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2707:18:22;257:1548:94;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;2707:18:22;257:1548:94;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;257:1548:94;;;:::o;:::-;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;:::i;:::-;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;2201:31:93;257:1548:94;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;753:29:112;257:1548:94;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;3190:18:22;257:1548:94;;;;:::i;:::-;;;;;;;:::i;:::-;;;;3190:18:22;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;192:59:18;;257:1548:94;192:59:18;;;;257:1548:94;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;1988:27:93;257:1548:94;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;4445:42:9;257:1548:94;;;;;;;;;;;;;;;;3712:16:15;;:::i;:::-;257:1548:94;;:::i;:::-;20344:19:20;257:1548:94;;20303:22:20;;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;20344:19:20:-;;257:1548:94;20303:22:20;257:1548:94;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;257:1548:94;20373:20:20;;;;;;;257:1548:94;;;192:59:18;;;;;;;;;20373:20:20;;;257:1548:94;20373:20:20;;;:::i;:::-;;;;;;;;;;257:1548:94;20373:20:20;3738:32:15;20373:20:20;;;3738:32:15;;;;:::i;:::-;3780;20537:20:20;257:1548:94;;:::i;20344:19:20:-;;;;;20303:22;20344:19;;;;;;;;;:::i;:::-;;;;;257:1548:94;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;-1:-1:-1;257:1548:94;;;:::o;:::-;;:::i;:::-;;;;;;;;;:::o;:::-;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;2273:18:22;257:1548:94;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;2273:18:22;257:1548:94;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;:::i;:::-;;;;;;;;;;;;;3811:3:93;257:1548:94;;;;;:::i;:::-;;;;3811:3:93;:::i;:::-;257:1548:94;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;;;;596:42:112;257:1548:94;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;;;;507:42:112;257:1548:94;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;20344:19:20:-;;257:1548:94;;;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;257:1548:94;20373:20:20;;;;;;;257:1548:94;;;192:59:18;;;;;;;;;20373:20:20;;;257:1548:94;20373:20:20;;;:::i;:::-;;;;;;;;;;257:1548:94;20373:20:20;;;257:1548:94;-1:-1:-1;257:1548:94;;;;;-1:-1:-1;;;;;257:1548:94;;;:::i;20373:20:20:-;;;;;;:::i;:::-;;;;20344:19;;;;;257:1548:94;20344:19:20;;;;;;;;;:::i;:::-;;;;;257:1548:94;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;;;;;;;;;;;;;57360:15:112;257:1548:94;;;;;;192:59:18;;;57352:24:112;;;257:1548:94;;57352:24:112;257:1548:94;57352:24:112;;;;257:1548:94;;;;;;;;57352:24:112;;257:1548:94;;;-1:-1:-1;;;;;;;;;;;57352:24:112;;;;;;;;;57335:41;57352:24;;;;;257:1548:94;-1:-1:-1;57335:41:112;1590:14:16;;-1:-1:-1;;;;;;1590:14:16;-1:-1:-1;;;;;257:1548:94;;;;1590:14:16;;;;;;;57335:41:112;257:1548:94;57335:41:112;257:1548:94;;:::i;:::-;57386:42:112;;;;;;257:1548:94;;-1:-1:-1;;;57386:42:112;;;-1:-1:-1;;;;;257:1548:94;;;57386:42:112;;;257:1548:94;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;192:59:18;;257:1548:94;;;;;;57386:42:112;;;;;;;;;;;;257:1548:94;;;;;;;;57443:20:112;257:1548:94;57451:11:112;257:1548:94;;:::i;:::-;57443:20:112;:::i;:::-;257:1548:94;57443:34:112;57439:1248;;257:1548:94;;;;57451:11:112;257:1548:94;;:::i;:::-;;;;;;;;:::i;57439:1248:112:-;57516:25;;;:::i;:::-;57556:39;57573:22;57581:13;;:::i;57573:22::-;57556:39;1590:14:16;;-1:-1:-1;;;;;;1590:14:16;-1:-1:-1;;;;;257:1548:94;;;;1590:14:16;;;;;;;57556:39:112;257:1548:94;57609:42:112;;;;;257:1548:94;;57609:42:112;;;;;;;;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;57609:42:112;;;;;;;;;;;;57827:77;57609:42;;;;;57439:1248;257:1548:94;;57556:39:112;257:1548:94;;:::i;:::-;;;;:::i;:::-;;;;;;192:59:18;;;;;;;;;;57827:77:112;;;;;:::i;:::-;;;;;;;;;;57919:40;57827:77;;;;;57439:1248;-1:-1:-1;;57451:11:112;257:1548:94;;-1:-1:-1;;;;;;257:1548:94;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;57919:40:112;58131:20;257:1548:94;57451:11:112;257:1548:94;;:::i;58131:20:112:-;58122:45;;;;;;257:1548:94;;58122:45:112;;;-1:-1:-1;;;;;257:1548:94;;;58122:45:112;;;257:1548:94;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;58122:45:112;;;;;;;;;;57439:1248;58243:16;;;:::i;:::-;58309:35;257:1548:94;57335:41:112;257:1548:94;;:::i;:::-;58309:35:112;;;:::i;:::-;58358:63;;;;:::i;:::-;58378:42;257:1548:94;;;58358:63:112;58435;;;;:::i;:::-;58455:42;257:1548:94;;;58435:63:112;58548:17;257:1548:94;57451:11:112;257:1548:94;;:::i;58548:17:112:-;:92;;;;;;257:1548:94;;;;192:59:18;;;;;;;;;58548:92:112;;;;;:::i;:::-;;;;;;;;;;257:1548:94;58548:92:112;;;57439:1248;;;;;;;58548:92;;;;;;:::i;:::-;;;;58122:45;;;;;;:::i;:::-;;;;;257:1548:94;;;57827:77:112;;;;;;-1:-1:-1;57827:77:112;;;;;;:::i;:::-;;;;;57609:42;;;;;;:::i;:::-;;;;;257:1548:94;;;57386:42:112;;;;;;:::i;:::-;;;;57352:24;;;;;;;;;;;;;;:::i;:::-;;;;257:1548:94;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;:::i;:::-;;;:::i;:::-;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;2421:18:22;257:1548:94;;;;;;;;;2421:18:22;257:1548:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;-1:-1:-1;;;1058:7:111;257:1548:94;1590:14:16;;;257:1548:94;5621:12:111;;;257:1548:94;;;;;5724:17:111;5758:5;;;257:1548:94;6248:103:111;6249:94;6250:82;257:1548:94;6277:54:111;257:1548:94;6321:9:111;6278:38;6251:21;257:1548:94;;6251:21:111;;:::i;:::-;257:1548:94;6296:19:111;6278:14;257:1548:94;;6278:14:111;:::i;:::-;6296:19;;:::i;:::-;6278:38;;:::i;:::-;6321:9;;:::i;:::-;6277:54;;:::i;:::-;6250:82;;:::i;:::-;6249:94;:::i;:::-;257:1548:94;;964:8:111;;5751:215;257:1548:94;;5783:5:111;;;5787:1;;5817:10;;;;:::i;:::-;257:1548:94;;5779:177:111;;;5751:215;;;;5779:177;5901:16;;;;;5935:6;5901:16;;:::i;:::-;5935:6;;:::i;:::-;5779:177;;;;257:1548:94;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;20344:19:20;257:1548:94;;;20303:22:20;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;2278:44:93;257:1548:94;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2278:44:93;257:1548:94;;;;-1:-1:-1;;;;;;;;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;257:1548:94;;;;;;800:28:17;257:1548:94;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;1016:26:29;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;1440:1:15;257:1548:94;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;681:1:112;257:1548:94;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;3604:1:111;257:1548:94;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;:::o;:::-;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;2977:1:15;257:1548:94;;;;;;;:::o;:::-;;;58442:1:112;257:1548:94;;;;;;;:::o;:::-;-1:-1:-1;;;;;257:1548:94;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;:::o;192:59:18:-;;;;;;;;;;;:::o;:::-;257:1548:94;;192:59:18;;;;;;;1243:204;1302:7;257:1548:94;;;;;;;1325:14:18;:::o;1298:143::-;257:1548:94;;;192:59:18;;;1377:39;;;257:1548:94;192:59:18;257:1548:94;-1:-1:-1;;;;;;;;;;;1377:39:18;;;;257:1548:94;192:59:18;;;;;;257:1548:94;1377:39:18;;;;;;;-1:-1:-1;1377:39:18;;;1298:143;1377:53;;;1370:60;:::o;1377:39::-;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;257:1548:94;;;;;;;;;;;;;:::i;:::-;;;:::o;291:59:20:-;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;257:1548:94;;;;;291:59:20;;;;;;;;;;;;;:::i;20158:242::-;;257:1548:94;;20303:22:20;;;257:1548:94;20303:22:20;257:1548:94;;;;;:::i;20303:22:20:-;257:1548:94;20293:33:20;;257:1548:94;;-1:-1:-1;;;;;;20344:19:20;;;;;257:1548:94;;;20293:33:20;;;-1:-1:-1;;;;;;;;;;;257:1548:94;20303:22:20;257:1548:94;;;;20344:19:20;;;;;;;-1:-1:-1;20344:19:20;;;20158:242;20337:26;;20373:20;;;;;;;257:1548:94;-1:-1:-1;257:1548:94;;;;192:59:18;;;;;;;;;20373:20:20;;20344:19;20373:20;;;:::i;:::-;;;;;;;;;;;20158:242;:::o;20373:20::-;;;;;;:::i;20344:19::-;;;;20303:22;20344:19;;;;;;;;;:::i;:::-;;;;257:1548:94;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;257:1548:94;;-1:-1:-1;257:1548:94;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;1590:14:16;;;;;;;;:::o;:::-;-1:-1:-1;257:1548:94;4052:25:93;257:1548:94;;;;;1590:14:16;257:1548:94;1590:14:16;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;-1:-1:-1;1590:14:16;;;;;;;;;;;;:::o;:::-;-1:-1:-1;257:1548:94;4206:51:93;257:1548:94;;;;;1590:14:16;257:1548:94;1590:14:16;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;-1:-1:-1;1590:14:16;;;;;257:1548:94;;1590:14:16;;;-1:-1:-1;;;;;1590:14:16;;;;;;;4052:25:93;1590:14:16;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;257:1548:94;1590:14:16;;;4052:25:93;1590:14:16;:::o;:::-;;;;-1:-1:-1;1590:14:16;;;;;4052:25:93;257:1548:94;;-1:-1:-1;;1590:14:16;;;20303:22:20;;;-1:-1:-1;;;;;;;;;;;1590:14:16;;;;;;;;;;;;257:1548:94;1590:14:16;;;;;;;;;;;;4052:25:93;1590:14:16;:::o;:::-;;;;;;;;;;257:1548:94;1590:14:16;;;;;;;;;;;257:1548:94;1590:14:16;;;;;;;;;;;;;;;;;;;257:1548:94;;1590:14:16;;;-1:-1:-1;;;;;1590:14:16;;;;;;;4206:51:93;1590:14:16;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;257:1548:94;1590:14:16;;;4206:51:93;1590:14:16;:::o;:::-;;;;-1:-1:-1;1590:14:16;;;;;4206:51:93;257:1548:94;;-1:-1:-1;;1590:14:16;;;20303:22:20;;;-1:-1:-1;;;;;;;;;;;1590:14:16;;;;;;;;;;;;257:1548:94;1590:14:16;;;;;;;;;;;;4206:51:93;1590:14:16;:::o;:::-;;;;;;;;;;257:1548:94;1590:14:16;;;;;;;;;;;257:1548:94;1590:14:16;;;;;;;;;;;;;;;;;;;257:1548:94;;;;;;:::i;:::-;1590:14:16;257:1548:94;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;257:1548:94;;;;;;:::i;:::-;1590:14:16;257:1548:94;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;257:1548:94;;;;;;:::i;:::-;1590:14:16;257:1548:94;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;257:1548:94;;;;;;:::i;:::-;1590:14:16;257:1548:94;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;257:1548:94;;;;;;:::i;:::-;1590:14:16;257:1548:94;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;257:1548:94;;;;;;:::i;:::-;1590:14:16;257:1548:94;;-1:-1:-1;;;1590:14:16;;;;:::o;3903:12267:93:-;257:1548:94;2732:6:93;257:1548:94;;:::i;:::-;;-1:-1:-1;;;;;;;;;;;3964:31:93;;;;;;257:1548:94;;-1:-1:-1;;;3964:31:93;;;;;;257:1548:94;;;;3964:31:93;;;;;;:::i;:::-;;;;;;;;;;;;;3903:12267;257:1548:94;;;4006:82:93;;3903:12267;4119:16;4489:4;4119:16;;:::i;:::-;4146:50;4156:40;4170:25;1590:14:16;;:::i;:::-;4170:25:93;:::i;:::-;4156:40;;:::i;:::-;4146:50;1590:14:16;;4146:50:93;1590:14:16;4218:39:93;4234:22;1590:14:16;;:::i;4234:22:93:-;4218:39;;:::i;:::-;1590:14:16;:::i;:::-;4267:56:93;4276:47;4293:29;1590:14:16;;:::i;4293:29:93:-;4276:47;;:::i;:::-;2732:6;1590:14:16;;-1:-1:-1;;;;;;1590:14:16;-1:-1:-1;;;;;257:1548:94;;;;1590:14:16;;;;;;;4267:56:93;4334:35;1590:14:16;;:::i;:::-;257:1548:94;;:::i;:::-;4334:35:93;;:::i;:::-;4379:34;257:1548:94;2732:6:93;257:1548:94;;:::i;:::-;1590:14:16;;:::i;:::-;4379:34:93;:::i;:::-;4423:37;4146:50;257:1548:94;1590:14:16;;:::i;:::-;4423:37:93;:::i;4489:4::-;16145:18;;;;;257:1548:94;;3964:31:93;257:1548:94;;192:59:18;;;;;;;16145:18:93;;;;;;;;;;3903:12267;:::o;16145:18::-;257:1548:94;;;4006:82:93;1590:14:16;;;:::i;:::-;4006:82:93;;;3964:31;;;;;;:::i;:::-;;;;661:63:23;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;878:140::-;257:1548:94;;-1:-1:-1;;;984:27:23;;257:1548:94;984:27:23;;257:1548:94;;;;984:27:23;;878:140;984:27;;;;:::i;:::-;;;-1:-1:-1;;;;;;;;;;;984:27:23;;;;;;;-1:-1:-1;984:27:23;;;977:34;878:140;:::o;984:27::-;;;;;;;;;;;;;;:::i;257:1548:94:-;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;1817:150:23:-;257:1548:94;;-1:-1:-1;;;1931:29:23;;257:1548:94;1931:29:23;;257:1548:94;;;;1931:29:23;;1817:150;1931:29;;;;:::i;:::-;;;-1:-1:-1;;;;;;;;;;;1931:29:23;;;;;;;;;;;1924:36;1817:150;:::o;1931:29::-;;;;;;;;;;;;:::i;:::-;;;;;:::i;2141:146::-;257:1548:94;;-1:-1:-1;;;2250:30:23;;257:1548:94;2250:30:23;;257:1548:94;;;;2250:30:23;;2141:146;2250:30;;;;:::i;:::-;;;-1:-1:-1;;;;;;;;;;;2250:30:23;;;;;;;-1:-1:-1;2250:30:23;;;2243:37;2141:146;:::o;2250:30::-;;;;;;;;;;;;;;:::i;7546:145:32:-;7629:54;257:1548:94;7546:145:32;257:1548:94;7546:145:32;257:1548:94;;7629:54:32;;;;;;;;;;257:1548:94;7629:54:32;;;257:1548:94;;;;;;:::i;:::-;;;;;;7629:54:32;20303:22:20;;7629:54:32;;;;;;:::i;:::-;1222:159;1007:380;;1222:159;257:1548:94;;1222:159:32;;591:42;1222:159;;;1007:380::o;7846:150::-;;7935:53;257:1548:94;7846:150:32;7935:53;257:1548:94;;7935:53:32;;;;;;;;;;;;;;:::i;8147:145::-;8230:54;257:1548:94;8147:145:32;257:1548:94;8147:145:32;257:1548:94;;8230:54:32;;;;;;;;;;257:1548:94;8230:54:32;;;257:1548:94;;;;;;:::i;:::-;-1:-1:-1;;;;;257:1548:94;;;;;;;;8230:54:32;-1:-1:-1;;8230:54:32;;;;;;:::i;3078:305:93:-;257:1548:94;;-1:-1:-1;257:1548:94;3200:15:93;257:1548:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;3200:15:93;-1:-1:-1;257:1548:94;;-1:-1:-1;257:1548:94;;-1:-1:-1;257:1548:94;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;257:1548:94;;;;3389:276:93;257:1548:94;;-1:-1:-1;;;3484:16:93;;;;-1:-1:-1;;;;;;;;;;;257:1548:94;3484:16:93;257:1548:94;3484:16:93;257:1548:94;;3484:16:93;;;;;;3620:17;3484:16;;;;;;;3389:276;257:1548:94;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;:::i;:::-;;;192:59:18;;;;;;;;3620:17:93;;3484:16;3620:17;;;:::i;:::-;;;;;;;;;;;;;;3647:11;;3389:276;:::o;3620:17::-;;;;;;;;;;;;;:::i;3484:16::-;;;;;;;;;;;;;;:::i;:::-;;;;;257:1548:94;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;:::o;342:1461::-;443:59;342:1461;467:34;257:1548;;:::i;467:34::-;443:59;;:::i;:::-;257:1548;;-1:-1:-1;;;;;257:1548:94;747:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;257:1548;;-1:-1:-1;;;786:101:94;;;;534:42;786:101;;;257:1548;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;786:101;;;257:1548;;786:101;:::i;:::-;257:1548;;705:196;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;705:196;:::i;:::-;;;747:20;705:196;;;;;;922:55;257:1548;;;;:::i;:::-;;;;;;1457:1:111;257:1548:94;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;:::i;1180:437:111:-;;1352:16;257:1548:94;1352:30:111;1348:230;;1180:437;257:1548:94;;;1352:16:111;257:1548:94;1180:437:111;:::o;1348:230::-;1417:150;257:1548:94;;;-1:-1:-1;257:1548:94;;;;;:::i;:::-;1498:1:111;257:1548:94;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;1478:48:111;;;257:1548:94;;;-1:-1:-1;;;1417:150:111;;257:1548:94;;;;;;;1417:150:111;;;;:::i;:::-;;;-1:-1:-1;;;;;257:1548:94;1417:150:111;;;;;;1398:169;1417:150;-1:-1:-1;1417:150:111;;;1348:230;1398:169;1352:16;1590:14:16;;1398:169:111;1348:230;;;;;1417:150;;;;257:1548:94;1417:150:111;;;;;;;;;:::i;:::-;;;;257:1548:94;;;;;;;:::i;:::-;-1:-1:-1;257:1548:94;;:::o;:::-;;;;;;;:::i;:::-;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;1058:7:111;257:1548:94;;;;;;;;;;;;;;;:::o;:::-;;:::i;:::-;;;;;;;;;;;;;;;;:::o;1623:1400:111:-;;;;;;2445:34;2489:32;1623:1400;2391:44;257:1548:94;;:::i;:::-;2085:15:111;257:1548:94;2085:21:111;:15;;:21;257:1548:94;;2166:15:111;;257:1548:94;;2246:22:111;:15;;:22;257:1548:94;2207:9:111;2328:34;:15;;:34;257:1548:94;2391:24:111;;;:44;:::i;:::-;2246:22;2445:19;;:34;:::i;:::-;2085:21;2489:18;;:32;:::i;:::-;257:1548:94;2531:18:111;;;257:1548:94;;2573:27:111;;;257:1548:94;;;2638:26:111;2634:182;;1623:1400;2328:34;2825:18;;:32;2867:23;;;:42;2974:23;;;:42;1623:1400::o;2634:182::-;257:1548:94;;;2634:182:111;;1623:1400;2531:32;1623:1400;2445:34;2391:24;1623:1400;;;;;;;2391:44;2489:32;1623:1400;257:1548:94;;:::i;:::-;2085:15:111;;257:1548:94;2085:21:111;:15;;:21;257:1548:94;;2166:15:111;;257:1548:94;;2246:22:111;:15;;:22;257:1548:94;2207:9:111;2328:34;:15;;:34;257:1548:94;2391:24:111;:44;:::i;:::-;2246:22;2445:19;;:34;:::i;:::-;2085:21;2489:18;;:32;:::i;:::-;2531:18;;;:32;:::i;:::-;2573:27;;;257:1548:94;;;2638:26:111;2634:182;;2328:34;2825:18;;:32;2867:23;;;:42;2974:23;;;:42;1623:1400::o;257:1548:94:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;3616:1:111;257:1548:94;;;;;;;;;;;4404:8:111;257:1548:94;;;;;;;;3616:1:111;257:1548:94;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;3616:1:111;257:1548:94;;3616:1:111;257:1548:94;;3616:1:111;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;-1:-1:-1;257:1548:94;;-1:-1:-1;257:1548:94;;-1:-1:-1;257:1548:94;;;;;;;;-1:-1:-1;257:1548:94;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;;3029:1511:111;;;;;4337:18;3029:1511;3490:141;3029:1511;;;;3590:16;;;:::i;:::-;3490:141;;:::i;:::-;3676:16;;;:::i;:::-;3730:4;3702:33;3730:4;3702:33;;;:::i;:::-;3745:39;3773:10;3745:39;;;:::i;:::-;-1:-1:-1;;;;;257:1548:94;4445:42:9;;4034:23:111;;257:1548:94;;;;;4067:64:111;;3029:1511;257:1548:94;;4237:55:111;257:1548:94;3616:1:111;257:1548:94;;2732:6:93;257:1548:94;;:::i;:::-;4237:55:111;;:::i;:::-;4149:301;257:1548:94;;4337:18:111;;;;;;;;;;;:::i;:::-;;20303:22:20;;4337:18:111;;;;;;:::i;:::-;257:1548:94;;-1:-1:-1;;;4149:301:111;;257:1548:94;;;;;;;4149:301:111;;;;:::i;:::-;;257:1548:94;;4149:301:111;;;;;;;;3616:1;4149:301;;;3029:1511;4140:310;257:1548:94;4149:301:111;257:1548:94;;192:59:18;;;;;;;4468:48:111;;257:1548:94;4468:48:111;;;;;;;4461:72;4468:48;3616:1;4468:48;;;3029:1511;257:1548:94;;;;;:::i;:::-;;;;:::i;:::-;4468:64:111;4461:72;:::i;4468:48::-;;;;;;-1:-1:-1;4468:48:111;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;4149:301;;;;;;;;;;;;;;:::i;:::-;;;;4067:64;4106:14;-1:-1:-1;4237:55:111;4067:64;;4546:578;;;;;4870:247;4546:578;;;;257:1548:94;;;;;;:::i;:::-;-1:-1:-1;257:1548:94;;4870:247:111;:::i;257:1548:94:-;;;;;;;:::o;:::-;;;;;;;;;;;;1014:8:111;-1:-1:-1;;1014:8:111;;;;;;;;:::o;:::-;-1:-1:-1;;;1014:8:111;;;;;;;;;:::o;:::-;;1058:7;1014:8;;;;;;;;:::o;:::-;-1:-1:-1;;;1014:8:111;;;;;-1:-1:-1;1014:8:111;;:::o;:::-;;;;;;;;;;:::o;5250:269::-;;-1:-1:-1;;;5346:13:111;;;257:1548:94;;5422:12:111;;257:1548:94;;;5486:7:111;5485:19;5486:7;5484:28;5486:7;;:::i;257:1548:94:-;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;1170:7994:112;507:42;1702:19:73;;1249:100:112;;257:1548:94;1452:7705:112;1482:7665;257:1548:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1482:7665:112;:::i;9170:46249::-;596:42;1702:19:73;;9225:92:112;;257:1548:94;9333:46079:112;9351:46051;257:1548:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;;;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;257:1548:94;;;;-1:-1:-1;;;;;;;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;257:1548:94;;;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;;;;;257:1548:94;;;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;;;;;;;257:1548:94;;;;-1:-1:-1;;;;;;;;;;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;;257:1548:94;;;;;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;;;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;;;;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;;;;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;55425:396:112;55541:8;257:1548:94;-1:-1:-1;;257:1548:94;;;;;;1590:14:16;;55541:8:112;1590:14:16;55559:158:112;;;;;1590:14:16;55559:158:112;;;;55734:8;257:1548:94;;55425:396:112:o;257:1548:94:-;;;-1:-1:-1;;;257:1548:94;;55559:158:112;257:1548:94;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;;;;;;:::i;:::-;58365:1:112;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;56023:1145:112:-;;257:1548:94;;;;;;;56247:25:112;257:1548:94;56255:16:112;257:1548:94;;:::i;56247:25:112:-;257:1548:94;56247:39:112;56243:886;;56023:1145;257:1548:94;;;;56255:16:112;257:1548:94;;:::i;56243:886:112:-;257:1548:94;;56306:49:112;56302:481;;56243:886;257:1548:94;56806:25:112;257:1548:94;56255:16:112;257:1548:94;;:::i;56806:25:112:-;257:1548:94;-1:-1:-1;;;;;;;;;;;56797:54:112;;;;;257:1548:94;;;-1:-1:-1;;;56797:54:112;;;-1:-1:-1;;;;;257:1548:94;;;;56797:54:112;;;257:1548:94;;;;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;-1:-1:-1;;192:59:18;-1:-1:-1;257:1548:94;;;-1:-1:-1;56797:54:112;;;;;;;;;56243:886;56865:45;;;;;;257:1548:94;;;56865:45:112;;;-1:-1:-1;;;;;257:1548:94;;56797:54:112;56865:45;;257:1548:94;;;;;;;;;;-1:-1:-1;;;257:1548:94;;;;;;;;;;;;;;;56865:45:112;;;;;;;;56243:886;56950:16;56980:27;56950:16;;:::i;:::-;56980:27;;;;:::i;:::-;57021:22;257:1548:94;56255:16:112;257:1548:94;;:::i;57021:22:112:-;:97;;;;;;257:1548:94;;57021:97:112;257:1548:94;;;192:59:18;;;;;;;;;57021:97:112;;56797:54;57021:97;;;:::i;:::-;;;;;;;;;;;56243:886;;;;;57021:97;;;;;;:::i;:::-;;;;56865:45;;;;;;:::i;:::-;;;;56797:54;;;;;;:::i;:::-;;;;56302:481;56284:1;56417:13;56616:88;;56409:22;56417:13;;:::i;56409:22::-;56532:25;;;:::i;:::-;257:1548:94;;-1:-1:-1;;;56616:88:112;;-1:-1:-1;;;;;257:1548:94;;;56616:88:112;;;257:1548:94;;;;;;-1:-1:-1;257:1548:94;;;;681:1:112;257:1548:94;;;;;;;;;;;;;;;;;;;;;;56616:88:112;;;;;;;;;56723:45;56616:88;56284:1;56616:88;;;56302:481;-1:-1:-1;56255:16:112;1590:14:16;;257:1548:94;;;;-1:-1:-1;;;;;257:1548:94;-1:-1:-1;;;;;;1590:14:16;;;;;;;56723:45:112;56302:481;;;56616:88;;;;;;;;;;;;;;:::i;:::-;;;;257:1548:94;;;-1:-1:-1;;;;;257:1548:94;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;257:1548:94;;;;:::o;:::-;;;;;;681:1:112;257:1548:94;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;59858:1:112;257:1548:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;257:1548:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;257:1548:94;;;;:::o;59873:493:112:-;;;59408:60;;59873:493;;;;59434:33;;;;;:::i;:::-;257:1548:94;;-1:-1:-1;;;59408:60:112;;;;;257:1548:94;;;;;;;;;;;;;;;;;;59408:60:112;;;-1:-1:-1;;;;;;;;;;;59408:60:112;;;;;;;-1:-1:-1;;;59408:60:112;;;59873:493;59491:25;257:1548:94;;;-1:-1:-1;257:1548:94;;59491:25:112;;257:1548:94;;;59491:25:112;;;;;;;:::i;:::-;;20303:22:20;;59491:25:112;;;;;;:::i;:::-;60164:147;257:1548:94;;192:59:18;;;;;;;;;;60164:147:112;;59408:60;60164:147;;;:::i;:::-;;;-1:-1:-1;;;;;257:1548:94;60164:147:112;;;;;;60140:219;60164:147;-1:-1:-1;60164:147:112;;;257:1548:94;;;:::i;59408:60:112:-;;;59491:25;59408:60;;-1:-1:-1;59408:60:112;59491:25;59408:60;59491:25;59408:60;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;1689:113:18;-1:-1:-1;;;;;;;;;;;1771:24:18;;;;;;257:1548:94;;1771:24:18;257:1548:94;;;192:59:18;;;;;;;;;1771:24;;257:1548:94;;1771:24:18;;;257:1548:94;;;;;;;;;;;:::i;:::-;1771:24:18;;;;;;;;;;1689:113;:::o;1771:24::-;;;;:::i;257:1548:94:-;;;;;;;;;;;;;;;;;;;;;;;192:59:18;257:1548:94;;192:59:18;257:1548:94;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;58912:1:112;257:1548:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;58727:295:112:-;257:1548:94;;-1:-1:-1;;;58985:20:112;;;;58727:295;;257:1548:94;;-1:-1:-1;;;;;257:1548:94;58985:20:112;257:1548:94;58985:20:112;257:1548:94;;58985:20:112;;;;;;;58853:162;58985:20;;;58912:1;58985:20;;;58727:295;-1:-1:-1;257:1548:94;;-1:-1:-1;;;58853:162:112;;257:1548:94;;;;;;;58985:20:112;58853:162;;;:::i;:::-;;;;;;;;;;58912:1;58853:162;;;58844:171;;58727:295;:::o;58853:162::-;;;;;;-1:-1:-1;58853:162:112;;;;;;:::i;58985:20::-;;;;;;;;;;;;;;;:::i;:::-;;;;","linkReferences":{}},"methodIdentifiers":{"BENEFICIARY()":"2f99c6cc","COUNCIL_SAFE()":"93892107","CURRENT_NETWORK()":"f4d914e6","DECIMALS()":"2e0f2625","ETH_SEPOLIA()":"352c94a7","IS_SCRIPT()":"f8ccbf47","IS_TEST()":"fa7626d4","MINIMUM_STAKE()":"08dbbb03","NATIVE()":"a0cf0aea","PERCENTAGE_SCALE()":"3f26479e","REGISTRY_FACTORY()":"861ceb69","SAFE_FACTORY()":"d23727ed","SAFE_NONCE()":"1d8fcc10","SAFE_PROXY_FACTORY()":"7f6a80df","SAFE_SINGLETON()":"caa12add","SENDER()":"6050f2f8","TOKEN()":"82bfefc8","WAIT_TIME()":"388aef5c","__createContract(bytes)":"f69d511f","_calculateConviction(uint256,uint256,uint256,uint256)":"e99ce911","_councilSafe()":"dac770b3","_councilSafeWithOwner(address)":"1ae726d9","_councilSafeWithOwner(address,address)":"08c24f9f","_createSafe()":"49ef42c1","_createSafeProxyFactory()":"bb0504cd","_nonce()":"5d1222aa","allo_owner()":"7cbe79ed","allo_treasury()":"da4bf087","councilMember1()":"896546a1","councilMemberPK()":"7658524d","councilSafe()":"6c53db9a","councilSafeOwner()":"0522b7db","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","excludeArtifacts()":"b5508aa9","excludeContracts()":"e20c9f71","excludeSenders()":"1ed7831c","failed()":"ba414fa6","getDecay(address)":"5d6b4bc2","getParams(address,uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address[],address,uint256)":"b3e9b4fd","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","run()":"c0406226","run(string)":"9352fad2","runCurrentNetwork(string)":"5e2dd442","safeHelper(address,uint256,address,bytes)":"023a6f43","safeHelper(address,uint256,address,bytes,uint256)":"c1f2a641","safeHelper(address,uint256,bytes)":"6db52510","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\":\"BENEFICIARY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"COUNCIL_SAFE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"CURRENT_NETWORK\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DECIMALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ETH_SEPOLIA\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"IS_SCRIPT\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MINIMUM_STAKE\",\"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\":[],\"name\":\"REGISTRY_FACTORY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAFE_FACTORY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAFE_NONCE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAFE_PROXY_FACTORY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAFE_SINGLETON\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SENDER\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"TOKEN\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"WAIT_TIME\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"bytecode\",\"type\":\"bytes\"}],\"name\":\"__createContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"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\":\"_councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"contract SafeProxyFactory\",\"name\":\"_safeProxyFactory\",\"type\":\"address\"}],\"name\":\"_councilSafeWithOwner\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"_councilSafeWithOwner\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_createSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_createSafeProxyFactory\",\"outputs\":[{\"internalType\":\"contract SafeProxyFactory\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"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\":\"councilMember1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilMemberPK\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafeOwner\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"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\":[],\"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\":[{\"internalType\":\"contract CVStrategyV0_0\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"getDecay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"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\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"}],\"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\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"},{\"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\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"network\",\"type\":\"string\"}],\"name\":\"run\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"run\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"networkJson\",\"type\":\"string\"}],\"name\":\"runCurrentNetwork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"councilSafe_\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"councilMemberPK_\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to_\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data_\",\"type\":\"bytes\"}],\"name\":\"safeHelper\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to_\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value_\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data_\",\"type\":\"bytes\"}],\"name\":\"safeHelper\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"councilSafe_\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"councilMemberPK_\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to_\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data_\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value_\",\"type\":\"uint256\"}],\"name\":\"safeHelper\",\"outputs\":[],\"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\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/script/DeployPassportScorer.s.sol\":\"DeployPassportScorer\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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/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/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/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/forge-std/src/Base.sol\":{\"keccak256\":\"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224\",\"dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK\"]},\"lib/forge-std/src/Script.sol\":{\"keccak256\":\"0x2315be74cc2826f9da401bea3da46a10ad6a6efdf73176d79160b453286d0ed2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af0d4dc826911d6cb4d6272ed5cbdb6950e1476141cca328e178b808d848789c\",\"dweb:/ipfs/QmV2ytjUEkV84VtdMs1nZqQTBoVE987cHboQMpiha5yo3e\"]},\"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/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/security/ReentrancyGuard.sol\":{\"keccak256\":\"0xa535a5df777d44e945dd24aa43a11e44b024140fc340ad0dfe42acf4002aade1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://41319e7f621f2dc3733511332c4fd032f8e32ad2aa7fd6f665c19741d9941a34\",\"dweb:/ipfs/QmcYR3bd862GD1Bc7jwrU9bGxrhUu5na1oP964bDCu2id1\"]},\"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/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/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/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/script/BaseMultiChain.s.sol\":{\"keccak256\":\"0x7e3b004da48a01739df6db978aa97578f7928f4c1fa6edf1d73ec2afce78a651\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://3e5c4b1fe8734c02704c7f380508db43c6e0fd44baf689d7d55d58c55ef65ca2\",\"dweb:/ipfs/Qmdix9ZLwMsFrcaJAFbKPwcBD1AW9hnUoazSp7hJJCWr2n\"]},\"pkg/contracts/script/DeployPassportScorer.s.sol\":{\"keccak256\":\"0x961783d3bc480f4bebe4689736a3b8679bade04987db27eff8876b6f5b615a94\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://d056a8570c4786c639df83cd6099a4d9062501557ee12ebdfd1895380b0fa570\",\"dweb:/ipfs/QmRPVPE5JYjBpNYx7fAS6XPmmmjzZH4zqsRedNCjXVAqUA\"]},\"pkg/contracts/script/GV2ERC20.sol\":{\"keccak256\":\"0x72e3d7c5f055490e976b03abf0b7773b5cefd7e305021d0ea83cba3e142118f9\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://3f19911b75ab3e0d2d41f5d9f4754f21d78b500905da3342b61bc54e502d4c97\",\"dweb:/ipfs/QmU4zPrrTWQY3eUYegHZzLjs2jyRgGtgyZp4J2ZQxj8Vp2\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a\",\"dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy\"]},\"pkg/contracts/src/CollateralVault.sol\":{\"keccak256\":\"0x124fcaebf9233d6b3eabf0979ef0a9f8325e20b34bd733870ffc816d03b9831b\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://e491550a509a3ba4cacbe80008b4d24a9044d8f94554db42f9afd79238d88a51\",\"dweb:/ipfs/QmUYNPQyk7ruHss7k5JCPxG8Q8Jcpwa3RN6W7aQdSWKRap\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f\",\"dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9\"]},\"pkg/contracts/src/SafeArbitrator.sol\":{\"keccak256\":\"0xc725d683ef1b5d978e79dfc887996a5348e2f0264abe228a84d63460aa141f71\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://51ec050f375c048649b23d56118a402f2116ad430eaf9f57442c5f8a020da860\",\"dweb:/ipfs/QmdJyCfviijA9e2pJ1kdPQoZVy8iPfumFmSnfaxhuL5R12\"]},\"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\":\"0xf4f9aa98b756909c0627bb7995b8c2c56d9fa809060bdfdff347eb9ebcc89e68\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://8c8b7498e1fbe6c276eccecf971539a239a215977b33885cde898cd7498fe6f5\",\"dweb:/ipfs/QmNf3FiwJiF64L3WGRWpGPGHAFkxXQuhLnHkKZ2WZjGUtH\"]},\"pkg/contracts/test/shared/SafeSetup.sol\":{\"keccak256\":\"0x47fd1bc0ce492f856f4f1cb6d7c95f3ce649431367e3370fd50a7fce4baeaee8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a6996b30b78ded1502865d96ae9d794106e521b5d176fb187bc200aa4a65f18b\",\"dweb:/ipfs/QmY8YVD7uXUsQfSSXtb6mmKbGTyScXSPJ9DZdEvbmN5m73\"]}},\"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":"BENEFICIARY","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_SAFE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"CURRENT_NETWORK","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DECIMALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"ETH_SEPOLIA","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"IS_SCRIPT","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"IS_TEST","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MINIMUM_STAKE","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":[],"stateMutability":"view","type":"function","name":"REGISTRY_FACTORY","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SAFE_FACTORY","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SAFE_NONCE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SAFE_PROXY_FACTORY","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SAFE_SINGLETON","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SENDER","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"TOKEN","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"WAIT_TIME","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes","name":"bytecode","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"__createContract","outputs":[{"internalType":"address","name":"_contract","type":"address"}]},{"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":"_councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"contract SafeProxyFactory","name":"_safeProxyFactory","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"_councilSafeWithOwner","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"_councilSafeWithOwner","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"_createSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"_createSafeProxyFactory","outputs":[{"internalType":"contract SafeProxyFactory","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_nonce","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":[],"stateMutability":"view","type":"function","name":"councilMember1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilMemberPK","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafeOwner","outputs":[{"internalType":"contract ISafe","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":[],"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":[{"internalType":"contract CVStrategyV0_0","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getDecay","outputs":[{"internalType":"uint256","name":"","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"}]},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"uint256","name":"sybilScorerThreshold","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":"uint256","name":"sybilScorerThreshold","type":"uint256"},{"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"}]},{"inputs":[{"internalType":"string","name":"network","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"run"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"run"},{"inputs":[{"internalType":"string","name":"networkJson","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"runCurrentNetwork"},{"inputs":[{"internalType":"contract ISafe","name":"councilSafe_","type":"address"},{"internalType":"uint256","name":"councilMemberPK_","type":"uint256"},{"internalType":"address","name":"to_","type":"address"},{"internalType":"bytes","name":"data_","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"safeHelper"},{"inputs":[{"internalType":"address","name":"to_","type":"address"},{"internalType":"uint256","name":"value_","type":"uint256"},{"internalType":"bytes","name":"data_","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"safeHelper"},{"inputs":[{"internalType":"contract ISafe","name":"councilSafe_","type":"address"},{"internalType":"uint256","name":"councilMemberPK_","type":"uint256"},{"internalType":"address","name":"to_","type":"address"},{"internalType":"bytes","name":"data_","type":"bytes"},{"internalType":"uint256","name":"value_","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"safeHelper"},{"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":{"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/script/DeployPassportScorer.s.sol":"DeployPassportScorer"},"evmVersion":"paris","libraries":{},"viaIR":true},"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/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/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/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/forge-std/src/Base.sol":{"keccak256":"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c","urls":["bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224","dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK"],"license":"MIT"},"lib/forge-std/src/Script.sol":{"keccak256":"0x2315be74cc2826f9da401bea3da46a10ad6a6efdf73176d79160b453286d0ed2","urls":["bzz-raw://af0d4dc826911d6cb4d6272ed5cbdb6950e1476141cca328e178b808d848789c","dweb:/ipfs/QmV2ytjUEkV84VtdMs1nZqQTBoVE987cHboQMpiha5yo3e"],"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/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/security/ReentrancyGuard.sol":{"keccak256":"0xa535a5df777d44e945dd24aa43a11e44b024140fc340ad0dfe42acf4002aade1","urls":["bzz-raw://41319e7f621f2dc3733511332c4fd032f8e32ad2aa7fd6f665c19741d9941a34","dweb:/ipfs/QmcYR3bd862GD1Bc7jwrU9bGxrhUu5na1oP964bDCu2id1"],"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/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/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/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/script/BaseMultiChain.s.sol":{"keccak256":"0x7e3b004da48a01739df6db978aa97578f7928f4c1fa6edf1d73ec2afce78a651","urls":["bzz-raw://3e5c4b1fe8734c02704c7f380508db43c6e0fd44baf689d7d55d58c55ef65ca2","dweb:/ipfs/Qmdix9ZLwMsFrcaJAFbKPwcBD1AW9hnUoazSp7hJJCWr2n"],"license":"UNLICENSED"},"pkg/contracts/script/DeployPassportScorer.s.sol":{"keccak256":"0x961783d3bc480f4bebe4689736a3b8679bade04987db27eff8876b6f5b615a94","urls":["bzz-raw://d056a8570c4786c639df83cd6099a4d9062501557ee12ebdfd1895380b0fa570","dweb:/ipfs/QmRPVPE5JYjBpNYx7fAS6XPmmmjzZH4zqsRedNCjXVAqUA"],"license":"UNLICENSED"},"pkg/contracts/script/GV2ERC20.sol":{"keccak256":"0x72e3d7c5f055490e976b03abf0b7773b5cefd7e305021d0ea83cba3e142118f9","urls":["bzz-raw://3f19911b75ab3e0d2d41f5d9f4754f21d78b500905da3342b61bc54e502d4c97","dweb:/ipfs/QmU4zPrrTWQY3eUYegHZzLjs2jyRgGtgyZp4J2ZQxj8Vp2"],"license":"AGPL-3.0-only"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4","urls":["bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a","dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CollateralVault.sol":{"keccak256":"0x124fcaebf9233d6b3eabf0979ef0a9f8325e20b34bd733870ffc816d03b9831b","urls":["bzz-raw://e491550a509a3ba4cacbe80008b4d24a9044d8f94554db42f9afd79238d88a51","dweb:/ipfs/QmUYNPQyk7ruHss7k5JCPxG8Q8Jcpwa3RN6W7aQdSWKRap"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19","urls":["bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f","dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9"],"license":"AGPL-3.0-only"},"pkg/contracts/src/SafeArbitrator.sol":{"keccak256":"0xc725d683ef1b5d978e79dfc887996a5348e2f0264abe228a84d63460aa141f71","urls":["bzz-raw://51ec050f375c048649b23d56118a402f2116ad430eaf9f57442c5f8a020da860","dweb:/ipfs/QmdJyCfviijA9e2pJ1kdPQoZVy8iPfumFmSnfaxhuL5R12"],"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"},"pkg/contracts/test/CVStrategyHelpers.sol":{"keccak256":"0xf4f9aa98b756909c0627bb7995b8c2c56d9fa809060bdfdff347eb9ebcc89e68","urls":["bzz-raw://8c8b7498e1fbe6c276eccecf971539a239a215977b33885cde898cd7498fe6f5","dweb:/ipfs/QmNf3FiwJiF64L3WGRWpGPGHAFkxXQuhLnHkKZ2WZjGUtH"],"license":"AGPL-3.0-or-later"},"pkg/contracts/test/shared/SafeSetup.sol":{"keccak256":"0x47fd1bc0ce492f856f4f1cb6d7c95f3ce649431367e3370fd50a7fce4baeaee8","urls":["bzz-raw://a6996b30b78ded1502865d96ae9d794106e521b5d176fb187bc200aa4a65f18b","dweb:/ipfs/QmY8YVD7uXUsQfSSXtb6mmKbGTyScXSPJ9DZdEvbmN5m73"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":5088,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"stdstore","offset":0,"slot":"0","type":"t_struct(StdStorage)12493_storage"},{"astId":5284,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_failed","offset":0,"slot":"8","type":"t_bool"},{"astId":7785,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"stdChainsInitialized","offset":1,"slot":"8","type":"t_bool"},{"astId":7806,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"chains","offset":0,"slot":"9","type":"t_mapping(t_string_memory_ptr,t_struct(Chain)7801_storage)"},{"astId":7810,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"defaultRpcUrls","offset":0,"slot":"10","type":"t_mapping(t_string_memory_ptr,t_string_storage)"},{"astId":7814,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"idToAlias","offset":0,"slot":"11","type":"t_mapping(t_uint256,t_string_storage)"},{"astId":7817,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"fallbackToDefaultRpcUrls","offset":0,"slot":"12","type":"t_bool"},{"astId":8575,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"gasMeteringOff","offset":1,"slot":"12","type":"t_bool"},{"astId":10612,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"stdstore","offset":0,"slot":"13","type":"t_struct(StdStorage)12493_storage"},{"astId":73618,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"metadata","offset":0,"slot":"21","type":"t_struct(Metadata)3098_storage"},{"astId":73630,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_poolProfileId1_","offset":0,"slot":"23","type":"t_bytes32"},{"astId":11480,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_excludedContracts","offset":0,"slot":"24","type":"t_array(t_address)dyn_storage"},{"astId":11483,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_excludedSenders","offset":0,"slot":"25","type":"t_array(t_address)dyn_storage"},{"astId":11486,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_targetedContracts","offset":0,"slot":"26","type":"t_array(t_address)dyn_storage"},{"astId":11489,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_targetedSenders","offset":0,"slot":"27","type":"t_array(t_address)dyn_storage"},{"astId":11492,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_excludedArtifacts","offset":0,"slot":"28","type":"t_array(t_string_storage)dyn_storage"},{"astId":11495,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_targetedArtifacts","offset":0,"slot":"29","type":"t_array(t_string_storage)dyn_storage"},{"astId":11499,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_targetedArtifactSelectors","offset":0,"slot":"30","type":"t_array(t_struct(FuzzSelector)11471_storage)dyn_storage"},{"astId":11503,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_targetedSelectors","offset":0,"slot":"31","type":"t_array(t_struct(FuzzSelector)11471_storage)dyn_storage"},{"astId":11507,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_targetedInterfaces","offset":0,"slot":"32","type":"t_array(t_struct(FuzzInterface)11477_storage)dyn_storage"},{"astId":5139,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"IS_SCRIPT","offset":0,"slot":"33","type":"t_bool"},{"astId":17092,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"IS_TEST","offset":1,"slot":"33","type":"t_bool"},{"astId":74197,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"councilSafe","offset":2,"slot":"33","type":"t_contract(ISafe)73571"},{"astId":74200,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"councilSafeOwner","offset":0,"slot":"34","type":"t_contract(ISafe)73571"},{"astId":74202,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"councilMember1","offset":0,"slot":"35","type":"t_address"},{"astId":74205,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"councilMemberPK","offset":0,"slot":"36","type":"t_uint256"},{"astId":74208,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_nonce","offset":0,"slot":"37","type":"t_uint256"},{"astId":74210,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_safeSingleton","offset":0,"slot":"38","type":"t_address"},{"astId":63984,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"MINIMUM_STAKE","offset":0,"slot":"39","type":"t_uint256"},{"astId":63987,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"SENDER","offset":0,"slot":"40","type":"t_address"},{"astId":63989,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"TOKEN","offset":0,"slot":"41","type":"t_address"},{"astId":63991,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"COUNCIL_SAFE","offset":0,"slot":"42","type":"t_address"},{"astId":63993,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"SAFE_PROXY_FACTORY","offset":0,"slot":"43","type":"t_address"},{"astId":63995,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"REGISTRY_FACTORY","offset":0,"slot":"44","type":"t_address"},{"astId":63998,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"WAIT_TIME","offset":0,"slot":"45","type":"t_uint256"},{"astId":64001,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"CURRENT_NETWORK","offset":0,"slot":"46","type":"t_string_storage"},{"astId":64004,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"ETH_SEPOLIA","offset":0,"slot":"47","type":"t_string_storage"},{"astId":64007,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"BENEFICIARY","offset":0,"slot":"48","type":"t_address"},{"astId":64009,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"councilMemberPKEnv","offset":0,"slot":"49","type":"t_uint256"},{"astId":64011,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"allo_proxy","offset":0,"slot":"50","type":"t_address"},{"astId":64014,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"allo","offset":0,"slot":"51","type":"t_contract(Allo)1390"},{"astId":64017,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"token","offset":0,"slot":"52","type":"t_contract(GV2ERC20)64600"},{"astId":64020,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"arbitrator","offset":0,"slot":"53","type":"t_contract(IArbitrator)73445"},{"astId":64023,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"sybilScorer","offset":0,"slot":"54","type":"t_contract(ISybilScorer)69653"},{"astId":64025,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"chainId","offset":0,"slot":"55","type":"t_uint256"},{"astId":64027,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"chainName","offset":0,"slot":"56","type":"t_string_storage"}],"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)11477_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzInterface[]","numberOfBytes":"32","base":"t_struct(FuzzInterface)11477_storage"},"t_array(t_struct(FuzzSelector)11471_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzSelector[]","numberOfBytes":"32","base":"t_struct(FuzzSelector)11471_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(Allo)1390":{"encoding":"inplace","label":"contract Allo","numberOfBytes":"20"},"t_contract(GV2ERC20)64600":{"encoding":"inplace","label":"contract GV2ERC20","numberOfBytes":"20"},"t_contract(IArbitrator)73445":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ISafe)73571":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_contract(ISybilScorer)69653":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)12468_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)12468_storage))"},"t_mapping(t_bytes32,t_struct(FindData)12468_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)12468_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)12468_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)12468_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)7801_storage)":{"encoding":"mapping","key":"t_string_memory_ptr","label":"mapping(string => struct StdChains.Chain)","numberOfBytes":"32","value":"t_struct(Chain)7801_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)7801_storage":{"encoding":"inplace","label":"struct StdChains.Chain","numberOfBytes":"128","members":[{"astId":7794,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"name","offset":0,"slot":"0","type":"t_string_storage"},{"astId":7796,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"chainId","offset":0,"slot":"1","type":"t_uint256"},{"astId":7798,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"chainAlias","offset":0,"slot":"2","type":"t_string_storage"},{"astId":7800,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"rpcUrl","offset":0,"slot":"3","type":"t_string_storage"}]},"t_struct(FindData)12468_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":12461,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":12463,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":12465,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":12467,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"found","offset":0,"slot":"3","type":"t_bool"}]},"t_struct(FuzzInterface)11477_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzInterface","numberOfBytes":"64","members":[{"astId":11473,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":11476,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"artifacts","offset":0,"slot":"1","type":"t_array(t_string_storage)dyn_storage"}]},"t_struct(FuzzSelector)11471_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzSelector","numberOfBytes":"64","members":[{"astId":11467,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":11470,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"selectors","offset":0,"slot":"1","type":"t_array(t_bytes4)dyn_storage"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(StdStorage)12493_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":12477,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"finds","offset":0,"slot":"0","type":"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)12468_storage)))"},{"astId":12480,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":12482,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":12484,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":12486,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":12488,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":12490,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":12492,"contract":"pkg/contracts/script/DeployPassportScorer.s.sol:DeployPassportScorer","label":"_calldata","offset":0,"slot":"7","type":"t_bytes_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"pkg/contracts/script/DeployPassportScorer.s.sol","id":64378,"exportedSymbols":{"Accounts":[5026],"Allo":[1390],"ArbitrableConfig":[65377],"BaseMultiChain":[64301],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[65219],"CVParams":[65386],"CVStrategyHelpers":[74173],"CVStrategyInitializeParamsV0_0":[65406],"CVStrategyInitializeParamsV0_1":[65431],"CVStrategyV0_0":[69310],"Clone":[3002],"CollateralVault":[69576],"CreateProposal":[65306],"DeployPassportScorer":[64377],"ERC165":[57022],"ERC1967Proxy":[54318],"ERC20":[55747],"Enum":[73587],"GV2ERC20":[64600],"IAllo":[2610],"IArbitrable":[73341],"IArbitrator":[73445],"ICollateralVault":[73478],"IERC165":[57228],"IERC20":[55825],"IPointStrategy":[65285],"IRegistry":[2802],"ISybilScorer":[69653],"Math":[58094],"Metadata":[3098],"Native":[3106],"OwnableUpgradeable":[52200],"PassportScorer":[70125],"PointSystem":[65294],"PointSystemConfig":[65363],"Proposal":[65355],"ProposalDisputeInfo":[65321],"ProposalStatus":[65314],"ProposalSupport":[65360],"ProposalType":[65289],"Registry":[2295],"RegistryCommunityV0_0":[72497],"RegistryFactoryV0_0":[72867],"Safe":[73571],"SafeArbitrator":[73263],"SafeProxyFactory":[73583],"SafeSetup":[74811],"Script":[5140],"ScriptBase":[5101],"SignedMath":[58199],"StdChains":[8543],"StdCheatsSafe":[10603],"StdStorage":[12493],"StdStyle":[15663],"StdUtils":[17041],"Strings":[56998],"UUPSUpgradeable":[54969],"Upgrades":[60473],"VmSafe":[20168],"console":[28807],"console2":[36932],"safeconsole":[51657],"stdJson":[12313],"stdMath":[12455],"stdStorageSafe":[13847]},"nodeType":"SourceUnit","src":"39:1767:94","nodes":[{"id":64303,"nodeType":"PragmaDirective","src":"39:24:94","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":64304,"nodeType":"ImportDirective","src":"65:32:94","nodes":[],"absolutePath":"pkg/contracts/script/BaseMultiChain.s.sol","file":"./BaseMultiChain.s.sol","nameLocation":"-1:-1:-1","scope":64378,"sourceUnit":64302,"symbolAliases":[],"unitAlias":""},{"id":64305,"nodeType":"ImportDirective","src":"98:30:94","nodes":[],"absolutePath":"lib/forge-std/src/Script.sol","file":"forge-std/Script.sol","nameLocation":"-1:-1:-1","scope":64378,"sourceUnit":5141,"symbolAliases":[],"unitAlias":""},{"id":64307,"nodeType":"ImportDirective","src":"129:57:94","nodes":[],"absolutePath":"pkg/contracts/src/PassportScorer.sol","file":"../src/PassportScorer.sol","nameLocation":"-1:-1:-1","scope":64378,"sourceUnit":70126,"symbolAliases":[{"foreign":{"id":64306,"name":"PassportScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70125,"src":"137:14:94","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":64309,"nodeType":"ImportDirective","src":"187:68:94","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../src/CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":64378,"sourceUnit":69311,"symbolAliases":[{"foreign":{"id":64308,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69310,"src":"195:14:94","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":64377,"nodeType":"ContractDefinition","src":"257:1548:94","nodes":[{"id":64314,"nodeType":"UsingForDirective","src":"311:25:94","nodes":[],"global":false,"libraryName":{"id":64312,"name":"stdJson","nameLocations":["317:7:94"],"nodeType":"IdentifierPath","referencedDeclaration":12313,"src":"317:7:94"},"typeName":{"id":64313,"name":"string","nodeType":"ElementaryTypeName","src":"329:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}}},{"id":64376,"nodeType":"FunctionDefinition","src":"342:1461:94","nodes":[],"body":{"id":64375,"nodeType":"Block","src":"412:1391:94","nodes":[],"statements":[{"assignments":[64321],"declarations":[{"constant":false,"id":64321,"mutability":"mutable","name":"proxyOwner","nameLocation":"430:10:94","nodeType":"VariableDeclaration","scope":64375,"src":"422:18:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64320,"name":"address","nodeType":"ElementaryTypeName","src":"422:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64328,"initialValue":{"arguments":[{"arguments":[{"hexValue":"2e454e56532e50524f58595f4f574e4552","id":64325,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"481:19:94","typeDescriptions":{"typeIdentifier":"t_stringliteral_0caa942d41d192d8525c581b68c0e2d161a57fe49b2c098f1d2c0d53c9e59ed4","typeString":"literal_string \".ENVS.PROXY_OWNER\""},"value":".ENVS.PROXY_OWNER"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0caa942d41d192d8525c581b68c0e2d161a57fe49b2c098f1d2c0d53c9e59ed4","typeString":"literal_string \".ENVS.PROXY_OWNER\""}],"id":64324,"name":"getKeyNetwork","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64120,"src":"467:13:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$returns$_t_string_memory_ptr_$","typeString":"function (string memory) view returns (string memory)"}},"id":64326,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"467:34:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":64322,"name":"networkJson","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64316,"src":"443:11:94","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":64323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"455:11:94","memberName":"readAddress","nodeType":"MemberAccess","referencedDeclaration":11907,"src":"443:23:94","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_address_$attached_to$_t_string_memory_ptr_$","typeString":"function (string memory,string memory) pure returns (address)"}},"id":64327,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"443:59:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"422:80:94"},{"assignments":[64330],"declarations":[{"constant":false,"id":64330,"mutability":"mutable","name":"listManager","nameLocation":"520:11:94","nodeType":"VariableDeclaration","scope":64375,"src":"512:19:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64329,"name":"address","nodeType":"ElementaryTypeName","src":"512:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64332,"initialValue":{"hexValue":"307841373138414341384562386630314563664539323942463136633139653536324235376230353362","id":64331,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"534:42:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"value":"0xA718ACA8Eb8f01EcfE929BF16c19e562B57b053b"},"nodeType":"VariableDeclarationStatement","src":"512:64:94"},{"assignments":[64334],"declarations":[{"constant":false,"id":64334,"mutability":"mutable","name":"sender","nameLocation":"594:6:94","nodeType":"VariableDeclaration","scope":64375,"src":"586:14:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64333,"name":"address","nodeType":"ElementaryTypeName","src":"586:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64336,"initialValue":{"hexValue":"307862303541393438423563316230353742383844333831624465334133373545664541383745624144","id":64335,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"603:42:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"value":"0xb05A948B5c1b057B88D381bDe3A375EfEA87EbAD"},"nodeType":"VariableDeclarationStatement","src":"586:59:94"},{"assignments":[64338],"declarations":[{"constant":false,"id":64338,"mutability":"mutable","name":"newPassportScorer","nameLocation":"664:17:94","nodeType":"VariableDeclaration","scope":64375,"src":"656:25:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64337,"name":"address","nodeType":"ElementaryTypeName","src":"656:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64367,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":64348,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"747:18:94","typeDescriptions":{"typeIdentifier":"t_function_creation_nonpayable$__$returns$_t_contract$_PassportScorer_$70125_$","typeString":"function () returns (contract PassportScorer)"},"typeName":{"id":64347,"nodeType":"UserDefinedTypeName","pathNode":{"id":64346,"name":"PassportScorer","nameLocations":["751:14:94"],"nodeType":"IdentifierPath","referencedDeclaration":70125,"src":"751:14:94"},"referencedDeclaration":70125,"src":"751:14:94","typeDescriptions":{"typeIdentifier":"t_contract$_PassportScorer_$70125","typeString":"contract PassportScorer"}}},"id":64349,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"747:20:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_PassportScorer_$70125","typeString":"contract PassportScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_PassportScorer_$70125","typeString":"contract PassportScorer"}],"id":64345,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"739:7:94","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":64344,"name":"address","nodeType":"ElementaryTypeName","src":"739:7:94","typeDescriptions":{}}},"id":64350,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"739:29:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":64353,"name":"PassportScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70125,"src":"809:14:94","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_PassportScorer_$70125_$","typeString":"type(contract PassportScorer)"}},"id":64354,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"824:10:94","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":69868,"src":"809:25:94","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function PassportScorer.initialize(address,address)"}},"id":64355,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"835:8:94","memberName":"selector","nodeType":"MemberAccess","src":"809:34:94","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":64358,"name":"listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64330,"src":"853:11:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64357,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"845:7:94","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":64356,"name":"address","nodeType":"ElementaryTypeName","src":"845:7:94","typeDescriptions":{}}},"id":64359,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"845:20:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":64362,"name":"proxyOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64321,"src":"875:10:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64361,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"867:7:94","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":64360,"name":"address","nodeType":"ElementaryTypeName","src":"867:7:94","typeDescriptions":{}}},"id":64363,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"867:19:94","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"}],"expression":{"id":64351,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"786:3:94","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64352,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"790:18:94","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"786:22:94","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":64364,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"786:101:94","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":64343,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"705:16:94","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$54318_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":64342,"nodeType":"UserDefinedTypeName","pathNode":{"id":64341,"name":"ERC1967Proxy","nameLocations":["709:12:94"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"709:12:94"},"referencedDeclaration":54318,"src":"709:12:94","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}},"id":64365,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"705:196:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}],"id":64340,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"684:7:94","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":64339,"name":"address","nodeType":"ElementaryTypeName","src":"684:7:94","typeDescriptions":{}}},"id":64366,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"684:227:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"656:255:94"},{"expression":{"arguments":[{"hexValue":"4e65772050617373706f72742053636f7265723a20","id":64371,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"934:23:94","typeDescriptions":{"typeIdentifier":"t_stringliteral_227c47bbc695366fbae63b0d407930b062491c0d3f417879de836263b85e5da9","typeString":"literal_string \"New Passport Scorer: \""},"value":"New Passport Scorer: "},{"id":64372,"name":"newPassportScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64338,"src":"959:17:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_227c47bbc695366fbae63b0d407930b062491c0d3f417879de836263b85e5da9","typeString":"literal_string \"New Passport Scorer: \""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":64368,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28807,"src":"922:7:94","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_console_$28807_$","typeString":"type(library console)"}},"id":64370,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"930:3:94","memberName":"log","nodeType":"MemberAccess","referencedDeclaration":21502,"src":"922:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (string memory,address) view"}},"id":64373,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"922:55:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":64374,"nodeType":"ExpressionStatement","src":"922:55:94"}]},"baseFunctions":[64167],"functionSelector":"5e2dd442","implemented":true,"kind":"function","modifiers":[],"name":"runCurrentNetwork","nameLocation":"351:17:94","overrides":{"id":64318,"nodeType":"OverrideSpecifier","overrides":[],"src":"403:8:94"},"parameters":{"id":64317,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64316,"mutability":"mutable","name":"networkJson","nameLocation":"383:11:94","nodeType":"VariableDeclaration","scope":64376,"src":"369:25:94","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":64315,"name":"string","nodeType":"ElementaryTypeName","src":"369:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"368:27:94"},"returnParameters":{"id":64319,"nodeType":"ParameterList","parameters":[],"src":"412:0:94"},"scope":64377,"stateMutability":"nonpayable","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":64310,"name":"BaseMultiChain","nameLocations":["290:14:94"],"nodeType":"IdentifierPath","referencedDeclaration":64301,"src":"290:14:94"},"id":64311,"nodeType":"InheritanceSpecifier","src":"290:14:94"}],"canonicalName":"DeployPassportScorer","contractDependencies":[54318,70125],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[64377,64301,74811,17093,5140,17041,11721,74173,5026,11396,10603,8543,7761,5092,5101,5089,3106],"name":"DeployPassportScorer","nameLocation":"266:20:94","scope":64378,"usedErrors":[]}],"license":"UNLICENSED"},"id":94} \ No newline at end of file diff --git a/pkg/contracts/out/DeploySafeArbitrator.s.sol/DeploySafeArbitrator.json b/pkg/contracts/out/DeploySafeArbitrator.s.sol/DeploySafeArbitrator.json deleted file mode 100644 index c9395edc2..000000000 --- a/pkg/contracts/out/DeploySafeArbitrator.s.sol/DeploySafeArbitrator.json +++ /dev/null @@ -1 +0,0 @@ -{"abi":[{"type":"function","name":"BENEFICIARY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"COUNCIL_SAFE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"CURRENT_NETWORK","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"DECIMALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"ETH_SEPOLIA","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"IS_SCRIPT","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"IS_TEST","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"MINIMUM_STAKE","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":"REGISTRY_FACTORY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SAFE_FACTORY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SAFE_NONCE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"SAFE_PROXY_FACTORY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SAFE_SINGLETON","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SENDER","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"TOKEN","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"WAIT_TIME","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"__createContract","inputs":[{"name":"bytecode","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"_contract","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"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":"_councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"_councilSafeWithOwner","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_safeProxyFactory","type":"address","internalType":"contract SafeProxyFactory"}],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"_councilSafeWithOwner","inputs":[{"name":"_owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"_createSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"_createSafeProxyFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract SafeProxyFactory"}],"stateMutability":"nonpayable"},{"type":"function","name":"_nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"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":"councilMember1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"councilMemberPK","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"councilSafeOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"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":"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":"getDecay","inputs":[{"name":"strategy","type":"address","internalType":"contract CVStrategyV0_0"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"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"}]},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"sybilScorerThreshold","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":"sybilScorerThreshold","type":"uint256","internalType":"uint256"},{"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"},{"type":"function","name":"run","inputs":[{"name":"network","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"run","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"runCurrentNetwork","inputs":[{"name":"networkJson","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"safeHelper","inputs":[{"name":"councilSafe_","type":"address","internalType":"contract ISafe"},{"name":"councilMemberPK_","type":"uint256","internalType":"uint256"},{"name":"to_","type":"address","internalType":"address"},{"name":"data_","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"safeHelper","inputs":[{"name":"to_","type":"address","internalType":"address"},{"name":"value_","type":"uint256","internalType":"uint256"},{"name":"data_","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"safeHelper","inputs":[{"name":"councilSafe_","type":"address","internalType":"contract ISafe"},{"name":"councilMemberPK_","type":"uint256","internalType":"uint256"},{"name":"to_","type":"address","internalType":"address"},{"name":"data_","type":"bytes","internalType":"bytes"},{"name":"value_","type":"uint256","internalType":"uint256"}],"outputs":[],"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":"0x608034620002f757600c805460ff191660019081179091556001600160401b03916040919080830184811182821017620002e15783528181528251916060830183811086821117620002e1578452602e83526020917f516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a4468838501526d6132666a3547656536684a7a535960901b858501528383820152516015558251948511620002e157620000af601654620002fc565b92601f93848111620002a3575b508290848711600114620002235795809173c583789751910e39fd2ddb988ad05567bcd81334969760009262000217575b5050600019600383901b1c191690821b176016555b61010161ffff1960215416176021556024556000602555670de0b6b3a764000060275560018060a01b03199173b05a948b5c1b057b88d381bde3a375efea87ebad836028541617602855614e20602d556200015f602e54620002fc565b818111620001f3575b507f6172627365706f6c696100000000000000000000000000000000000000000014602e55602f546200019b90620002fc565b90808211620001cf575b505050600e667365706f6c696160c81b01602f5560305416176030555161d2959081620003538239f35b620001ea92602f600052600020910160051c81019062000339565b388080620001a5565b6200021090602e6000528284600020910160051c81019062000339565b3862000168565b015190503880620000ed565b90601f198716916016600052846000209260005b8181106200028d5750918493918973c583789751910e39fd2ddb988ad05567bcd81334999a941062000273575b505050811b0160165562000102565b015160001960f88460031b161c1916905538808062000264565b8284015185559385019392860192860162000237565b620002d09060166000528460002086808a0160051c820192878b10620002d7575b0160051c019062000339565b38620000bc565b92508192620002c4565b634e487b7160e01b600052604160045260246000fd5b600080fd5b90600182811c921680156200032e575b60208310146200031857565b634e487b7160e01b600052602260045260246000fd5b91607f16916200030c565b81811062000345575050565b600081556001016200033956fe608060405260043610156200001357600080fd5b60003560e01c8062b1fad714620005c2578063023a6f4314620005bc578063030e400614620005b65780630522b7db14620005b05780630688b13514620005aa57806308c24f9f14620005a457806308dbbb03146200059e5780630f166ad41462000598578063174eedde14620004a85780631ae726d914620005925780631b96dce6146200058c5780631d8fcc1014620005865780631e7bcb2e14620005805780631ed7831c146200057a5780632ade388014620005745780632e0f2625146200056e5780632f99c6cc1462000568578063352c94a7146200056257806337d1c404146200055c578063388aef5c1462000556578063392f37e914620005505780633e5e3c23146200054a5780633f26479e14620005445780633f7286f4146200053e57806349ef42c114620005385780634bf4ba211462000532578063587c1243146200052c5780635aff599914620005265780635d1222aa14620005205780635d6b4bc2146200051a5780635e2dd44214620005145780636050f2f814620004a257806366d003ac146200050e57806366d9a9a014620005085780636a38dd0a14620005025780636c53db9a14620004fc5780636db5251014620004f657806370a3294414620004f057806374d9284e14620004a8578063759c9a8614620004ea5780637658524d14620004e457806379e62d0d14620004de5780637b2edf3214620004d85780637cbe79ed14620004d25780637f6a80df14620004cc578063829e423f14620004a857806382bfefc814620004c657806385226c8114620004c057806385294f1814620004ba578063861ceb6914620004b4578063896546a114620004ae5780638c7408c414620004a85780638e0d1a5014620004a25780638e3c2493146200049c578063916a17c614620004965780639352fad2146200049057806393892107146200048a578063a0cf0aea1462000484578063a407c67a146200047e578063aa3744bd1462000478578063b3e9b4fd1462000472578063b5508aa9146200046c578063ba414fa61462000466578063bb0504cd1462000460578063c0406226146200045a578063c1f2a6411462000454578063caa12add146200044e578063d1e82b581462000448578063d1f2cd881462000442578063d23727ed146200043c578063d5bee9f51462000436578063da4bf0871462000430578063dac4eb16146200042a578063dac770b31462000424578063e070e0ab146200041e578063e20c9f711462000418578063e99ce9111462000412578063ef0d790f146200040c578063f4d914e61462000406578063f69d511f1462000400578063f8ccbf4714620003fa5763fa7626d414620003f457600080fd5b620033e2565b620033bd565b6200337c565b620032db565b6200327c565b6200314d565b620030e4565b62003031565b62002bd4565b62002b7a565b62002a5f565b62002a08565b620029d7565b6200297d565b62002921565b620028f0565b6200288a565b62002858565b62002839565b62002810565b62002770565b620026c3565b62002500565b62002405565b620023d4565b620023a9565b6200238e565b62002226565b62002208565b6200168a565b62000bfd565b620021dd565b620021b2565b620020b9565b62001f29565b62001eeb565b62001ec0565b62001e6a565b62001e4c565b62001d51565b62001d31565b62001cd9565b62001ba1565b62001b3c565b62001b0d565b62001aef565b620017d4565b620016b5565b6200166f565b62001596565b62001576565b6200151a565b620014fc565b620014c6565b620014a7565b6200143e565b6200141f565b620013b6565b620012bb565b6200129b565b62001232565b620010b5565b62000f9c565b62000f77565b62000edf565b62000d3b565b62000ccb565b62000cad565b62000c53565b62000c1b565b62000be0565b62000bc0565b62000b72565b62000b1c565b62000af1565b62000a86565b620008c7565b620005ec565b6000910312620005d457565b600080fd5b6001600160a01b03909116815260200190565b34620005d4576000806003193601126200073b576200060a62003470565b6200065b6040516020810190620006368162000627848762003686565b03601f1981018352826200082a565b5190206040516001625e79b760e01b0319815260048101919091529081906024820190565b03916020826000805160206200d1c08339815191529481865afa928315620006fa578492839462000704575b50803b156200070057620006b3916040519586809481936318caf8e360e31b83528860048401620036b7565b03925af1918215620006fa57620006d892620006dc575b5060405191829182620005d9565b0390f35b80620006ec620006f39262000766565b80620005c8565b38620006ca565b620035e3565b8280fd5b6200072b91945060203d811162000733575b6200072281836200082a565b8101906200369f565b923862000687565b503d62000716565b80fd5b6001600160a01b03811603620005d457565b634e487b7160e01b600052604160045260246000fd5b6001600160401b0381116200077a57604052565b62000750565b604081019081106001600160401b038211176200077a57604052565b60c081019081106001600160401b038211176200077a57604052565b602081019081106001600160401b038211176200077a57604052565b608081019081106001600160401b038211176200077a57604052565b610f0081019081106001600160401b038211176200077a57604052565b615a0081019081106001600160401b038211176200077a57604052565b601f909101601f19168101906001600160401b038211908210176200077a57604052565b6001600160401b0381116200077a57601f01601f191660200190565b92919262000878826200084e565b916200088860405193846200082a565b829481845281830111620005d4578281602093846000960137010152565b9080601f83011215620005d457816020620008c4933591016200086a565b90565b34620005d4576080366003190112620005d457600435620008e8816200073e565b60443590620008f7826200073e565b606435906001600160401b038211620005d4576200091e62000956923690600401620008a6565b9060606200092e8284876200b480565b6040516338d07aa960e21b815260248035600483015281019190915293849081906044820190565b03816000805160206200d1c08339815191525afa918215620006fa57620009d09460209460008091819662000a3b575b5060009291620009a3620009b2926040519889938b85016200b407565b03601f1981018752866200082a565b60405163353b090160e11b815296879586948593600485016200b159565b03926001600160a01b03165af18015620006fa5762000a049160009162000a06575b50620009fd6200b21f565b906200b375565b005b62000a2c915060203d811162000a33575b62000a2381836200082a565b8101906200b13f565b38620009f2565b503d62000a17565b620009a396506000939250620009b2915062000a719060603d811162000a7e575b62000a6881836200082a565b8101906200b3e0565b9750929390915062000986565b503d62000a5c565b34620005d4576000806003193601126200073b5760405162000aa88162000780565b6013815272383937b334b63298afb737ba20a6b2b6b132b960691b60208201526200065b6040516020810190620006368162000627848762003686565b6001600160a01b031690565b34620005d4576000366003190112620005d4576022546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200073b5760405162000b3e8162000780565b600a8152693932b1b4b834b2b73a1960b11b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576040366003190112620005d457602062000bae60043562000b99816200073e565b6024359062000ba8826200073e565b6200ae3b565b6040516001600160a01b039091168152f35b34620005d4576000366003190112620005d4576020602754604051908152f35b34620005d4576000366003190112620005d4576020604051308152f35b34620005d4576000366003190112620005d457602060405160008152f35b34620005d4576020366003190112620005d457602062000bae60043562000c42816200073e565b62000c4c62004a19565b906200ae3b565b34620005d4576000806003193601126200073b5760405162000c758162000780565b600e81526d383937b334b632992fb7bbb732b960911b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000366003190112620005d457602060405160038152f35b34620005d4576000806003193601126200073b576200060a6200351b565b90815180825260208080930193019160005b82811062000d0a575050505090565b83516001600160a01b03168552938101939281019260010162000cfb565b906020620008c492818152019062000ce9565b34620005d4576000806003193601126200073b5760405180918260195480845260208094019060198452848420935b8582821062000d9a5750505062000d84925003836200082a565b620006d860405192828493845283019062000ce9565b85546001600160a01b031684526001958601958895509301920162000d6a565b60005b83811062000dce5750506000910152565b818101518382015260200162000dbd565b9060209162000dfa8151809281855285808601910162000dba565b601f01601f1916010190565b90815180825260208092019182818360051b82019501936000915b84831062000e325750505050505090565b909192939495848062000e4e83856001950387528a5162000ddf565b980193019301919493929062000e21565b602080820190808352835180925260409283810182858560051b8401019601946000925b85841062000e95575050505050505090565b90919293949596858062000ecd600193603f1986820301885286838d51878060a01b0381511684520151918185820152019062000e06565b99019401940192959493919062000e83565b34620005d4576000806003193601126200073b57602090815462000f0381620011a8565b9160409362000f15855194856200082a565b8284528082528082208185015b84841062000f3957865180620006d8888262000e5f565b600283600192895162000f4c8162000780565b848060a01b03865416815262000f64858701620037b6565b8382015281520192019301929062000f22565b34620005d4576000366003190112620005d4576020604051670de0b6b3a76400008152f35b34620005d4576000366003190112620005d4576030546040516001600160a01b039091168152602090f35b90600182811c9216801562000ff9575b602083101462000fe357565b634e487b7160e01b600052602260045260246000fd5b91607f169162000fd7565b9060009291805491620010178362000fc7565b9182825260019384811690816000146200107e57506001146200103b575b50505050565b90919394506000526020928360002092846000945b8386106200106957505050500101903880808062001035565b80548587018301529401938590820162001050565b9294505050602093945060ff191683830152151560051b0101903880808062001035565b906020620008c492818152019062000ddf565b34620005d4576000806003193601126200073b5760405181602f54620010db8162000fc7565b808452906001908181169081156200117d57506001146200111f575b620006d8846200110a818803826200082a565b60405191829160208352602083019062000ddf565b602f8352602094507fa813484aef6fb598f9f753daf162068ff39ccea4075cb95e1a30f86995b5b7ee5b828410620011695750505081620006d8936200110a9282010193620010f7565b805485850187015292850192810162001149565b620006d896506200110a9450602092508593915060ff191682840152151560051b82010193620010f7565b6001600160401b0381116200077a5760051b60200190565b81601f82011215620005d457803591620011da83620011a8565b92620011ea60405194856200082a565b808452602092838086019260051b820101928311620005d4578301905b82821062001216575050505090565b838091833562001226816200073e565b81520191019062001207565b34620005d4576060366003190112620005d45760043562001253816200073e565b6024359062001262826200073e565b604435906001600160401b038211620005d4576020926200128c62001293933690600401620011c0565b9162004298565b604051908152f35b34620005d4576000366003190112620005d4576020602d54604051908152f35b34620005d4576000806003193601126200073b57601554604051918281601654620012e68162000fc7565b8084529060019081811690811562001391575060011462001330575b505062001312925003836200082a565b620006d8604051928392835260406020840152604083019062000ddf565b601685527fd833147d7dc355ba459fc788f669e58cfaf9dc25ddcd0702e87d69c7b5124289946020935091905b81831062001378575050620013129350820101388062001302565b855488840185015294850194879450918301916200135d565b9150506200131294506020925060ff191682840152151560051b820101388062001302565b34620005d4576000806003193601126200073b57604051809182601b54808452602080940190601b8452848420935b85828210620013ff5750505062000d84925003836200082a565b85546001600160a01b0316845260019586019588955093019201620013e5565b34620005d4576000366003190112620005d45760206040516127108152f35b34620005d4576000806003193601126200073b57604051809182601a54808452602080940190601a8452848420935b85828210620014875750505062000d84925003836200082a565b85546001600160a01b03168452600195860195889550930192016200146d565b34620005d4576000366003190112620005d457602062000bae62005a31565b34620005d4576000366003190112620005d457620006d8620014e76200340a565b60405191829160208352602083019062000ce9565b34620005d4576000806003193601126200073b576200060a62003577565b34620005d4576000806003193601126200073b576040516200153c8162000780565b601081526f726563697069656e744164647265737360801b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000366003190112620005d4576020602554604051908152f35b34620005d4576020366003190112620005d457600460808135620015ba816200073e565b6040516302506b8760e41b815292839182906001600160a01b03165afa8015620006fa57600090620015f2575b604051908152602090f35b6080823d821162001626575b816200160d608093836200082a565b810103126200073b57506040620006d8910151620015e7565b3d9150620015fe565b6020600319820112620005d457600435906001600160401b038211620005d45780602383011215620005d457816024620008c4936004013591016200086a565b34620005d45762000a0462001684366200162f565b6200413e565b34620005d4576000366003190112620005d4576028546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200073b57604051620016d78162000780565b60098152681c9958da5c1a595b9d60ba1b60208201526200065b6040516020810190620006368162000627848762003686565b6001600160e01b0319169052565b602080820190808352835180925260409283810182858560051b840101960194600080935b8685106200175057505050505050505090565b909192939480969798603f198382030186528951826060818885019360018060a01b038151168652015193888382015284518094520192019085905b808210620017af5750505090806001929a0195019501939695949291906200173d565b82516001600160e01b03191684528a949384019390920191600191909101906200178c565b34620005d4576000366003190112620005d457601e54620017f581620011a8565b6200180460405191826200082a565b818152601e60009081529160207f50bb669a95c7b50b7e8a6f09454034b2b14cf2b85c730dca9a539ca82cb6e3508184015b8386106200184e5760405180620006d8878262001718565b826040516200185d8162000780565b83546001600160a01b031681526040516001850180548083526200188b602084015b92600052602060002090565b906000915b81600784011062001a2f57938660029796948294620019029460019b9854918482821062001a13575b828210620019ee575b828210620019c9575b828210620019a4575b8282106200197f575b8282106200195a575b82821062001936575b501062001915575b50905003826200082a565b8382015281520192019501949062001836565b6200192c9082906001600160e01b0319166200170a565b01869038620018f7565b84620019508f939663ffffffff60e01b87851b166200170a565b01930184620018ef565b84620019758f939663ffffffff60e01b8760401b166200170a565b01930184620018e6565b846200199a8f939663ffffffff60e01b8760601b166200170a565b01930184620018dd565b84620019bf8f939663ffffffff60e01b8760801b166200170a565b01930184620018d4565b84620019e48f939663ffffffff60e01b8760a01b166200170a565b01930184620018cb565b8462001a098f939663ffffffff60e01b8760c01b166200170a565b01930184620018c2565b8462001a258f93968660e01b6200170a565b01930184620018b9565b939495509091600161010060089262001ade87548d60e062001a548584831b6200170a565b6001600160e01b03199162001ad490838560c062001a798a850183831b85166200170a565b62001ac960a062001a9260408d018686841b166200170a565b62001abb8c868660609260809062001ab18582018585851b166200170a565b01921b166200170a565b8b01848460401b166200170a565b8901921b166200170a565b840191166200170a565b019401920190889594939262001890565b34620005d4576000806003193601126200073b576200060a6200349b565b34620005d4576000366003190112620005d45760215460405160109190911c6001600160a01b03168152602090f35b34620005d4576060366003190112620005d45760043562001b5d816200073e565b604435906001600160401b038211620005d45762001b8462000a04923690600401620008a6565b602154602480549035939160101c6001600160a01b03166200b253565b34620005d4576000806003193601126200073b5762001bbf6200340a565b62001bc96200351b565b62001be66040516020810190620006368162000627848762003686565b03916020826000805160206200d1c08339815191529481865afa928315620006fa578592839462001cb4575b50803b15620007005762001c3e916040519687809481936318caf8e360e31b83528860048401620036b7565b03925af1908115620006fa57620006d89362001c6c9262001c9d575b5062001c6683620034c6565b6200350c565b62001c9062001c8462001c7e62003549565b620036db565b5062001c6683620034ea565b6040519182918262000d28565b80620006ec62001cad9262000766565b3862001c5a565b62001cd191945060203d811162000733576200072281836200082a565b923862001c12565b34620005d4576000806003193601126200073b5760405162001cfb8162000780565b600c81526b1b9bd7dc9958da5c1a595b9d60a21b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000366003190112620005d4576020602454604051908152f35b34620005d4576000806003193601126200073b5762001d6f6200340a565b62001d7962003470565b62001d966040516020810190620006368162000627848762003686565b03916020826000805160206200d1c08339815191529481865afa928315620006fa578592839462001e27575b50803b15620007005762001dee916040519687809481936318caf8e360e31b83528860048401620036b7565b03925af1908115620006fa57620006d89362001e159262001c9d575062001c6683620034c6565b62001c9062001c8462001c7e6200349b565b62001e4491945060203d811162000733576200072281836200082a565b923862001dc2565b34620005d4576000806003193601126200073b576200060a62003549565b34620005d4576000806003193601126200073b5760405162001e8c8162000780565b600a81526930b63637afb7bbb732b960b11b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000366003190112620005d457602b546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d4576029546040516001600160a01b039091168152602090f35b906020620008c492818152019062000e06565b34620005d4576000806003193601126200073b57601d5462001f4b81620011a8565b9060409262001f5d845193846200082a565b818352601d815260207f6d4407e7be21f808e6509aa9fa9143369579dd7d760fe20a2c09680fc146134f8185015b84841062001fa257865180620006d8888262001f16565b6001838192895162001fc28162001fba818962001004565b03826200082a565b81520192019301929062001f8b565b60031115620005d457565b60c435906004821015620005d457565b60c0906083190112620005d4576040519062002008826200079c565b8160843562002017816200073e565b815260a43562002027816200073e565b602082015260c435604082015260e435606082015261010435608082015260a061012435910152565b60c090610103190112620005d457604051906200206d826200079c565b81610104356200207d816200073e565b8152610124356200208e816200073e565b602082015261014435604082015261016435606082015261018435608082015260a06101a435910152565b34620005d4576101a0366003190112620005d457600435620020db816200073e565b602435620020e9816200073e565b60443591620020f8836200073e565b60643562002106816200073e565b60843562002114816200073e565b60a43590620021238262001fd1565b6200212d62001fdc565b9260c03660e3190112620005d457620006d896620021a2966040519662002154886200079c565b60e43562002162816200073e565b88526101043562002173816200073e565b60208901526101243560408901526101443560608901526101643560808901526101843560a0890152620048ba565b6040519081529081906020820190565b34620005d4576000366003190112620005d457602c546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d4576023546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200073b576200060a620035a5565b34620005d4576000366003190112620005d457601f546200224781620011a8565b6200225660405191826200082a565b818152601f60009081529160207fa03837a25210ee280c2113ff4b77ca23440b19d4866cca721c801278fd08d8078184015b838610620022a05760405180620006d8878262001718565b82604051620022af8162000780565b83546001600160a01b03168152604051600185018054808352620022d6602084016200187f565b906000915b8160078401106200235857938660029796948294620023459460019b9854918482821062001a1357828210620019ee57828210620019c957828210620019a4578282106200197f578282106200195a5782821062001936575010620019155750905003826200082a565b8382015281520192019501949062002288565b93949550909160016101006008926200237d87548d60e062001a548584831b6200170a565b0194019201908895949392620022db565b34620005d45762000a04620023a3366200162f565b62003a4a565b34620005d4576000366003190112620005d457602a546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d457602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b34620005d4576000806003193601126200073b57620024236200340a565b6200242d62003577565b6200244a6040516020810190620006368162000627848762003686565b03916020826000805160206200d1c08339815191529481865afa928315620006fa5785928394620024db575b50803b156200070057620024a2916040519687809481936318caf8e360e31b83528860048401620036b7565b03925af1908115620006fa57620006d893620024c99262001c9d575062001c6683620034c6565b62001c9062001c8462001c7e620035a5565b620024f891945060203d811162000733576200072281836200082a565b923862002476565b34620005d4576000806003193601126200073b57604051620025228162000780565b600a815269726563697069656e743160b01b60208201526200065b6040516020810190620006368162000627848762003686565b6020906063190112620005d457604051906200257282620007b8565b6064358252565b634e487b7160e01b600052602160045260246000fd5b600311156200259a57565b62002579565b9060038210156200259a5752565b9060048210156200259a5752565b610240620008c49260208352620025f5602084018251606080918051845260208101516020850152604081015160408501520151910152565b62002609602082015160a0850190620025a0565b6200261d604082015160c0850190620025ae565b60608101515160e084015260808181015180516001600160a01b03908116610100878101919091526020830151909116610120870152604082015161014087015260608201516101608701529181015161018086015260a001516101a08501529060a08101516001600160a01b03166101c085015260c08101516001600160a01b03166101e085015260e081015161020085015201519161022080820152019062000ce9565b34620005d4576101a0366003190112620005d457600435620026e5816200073e565b60243590620026f48262001fd1565b604435906004821015620005d4576200270d3662002556565b92620027193662001fec565b6101443593906001600160401b038511620005d457620006d8956200274762002763963690600401620011c0565b92610164359462002758866200073e565b61018435966200453e565b60405191829182620025bc565b34620005d4576000806003193601126200073b57601c546200279281620011a8565b90604092620027a4845193846200082a565b818352601c815260207f0e4562a10381dec21b205ed72637e6b1b523bdd0e4d4d50af5cd23dd4500a2118185015b848410620027e957865180620006d8888262001f16565b60018381928951620028018162001fba818962001004565b815201920193019290620027d2565b34620005d4576000366003190112620005d45760206200282f620035ef565b6040519015158152f35b34620005d4576000366003190112620005d457602062000bae62004a19565b34620005d4576000806003193601126200073b57620028876040516200287e81620007b8565b82815262003a4a565b80f35b34620005d45760a0366003190112620005d457600435620028ab816200073e565b60443590620028ba826200073e565b606435916001600160401b038311620005d457620028e162000a04933690600401620008a6565b9060843592602435906200b253565b34620005d4576000366003190112620005d457602060405173dd4bda7bcda544d6da2aea8ab8b0e63d2f6dc7378152f35b34620005d4576000806003193601126200073b57604051620029438162000780565b601081526f3837b7b62fb737ba20a6b0b730b3b2b960811b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000806003193601126200073b576040516200299f8162000780565b600e81526d383937b334b63298afb7bbb732b960911b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000366003190112620005d457602060405173bba817f97f133b87b9b7f1fc0f2c56e9f68d2edf8152f35b34620005d4576000806003193601126200073b5760405162002a2a8162000780565b600b81526a1c985b991bdb4818da185960aa1b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000806003193601126200073b5760405162002a818162000780565b600d81526c616c6c6f5f747265617375727960981b602082015262002ab86040516020810190620006368162000627848762003686565b03916020826000805160206200d1c08339815191529481865afa928315620006fa578492839462002b55575b50803b15620007005762002b10916040519586809481936318caf8e360e31b83528860048401620036b7565b03925af1918215620006fa57620006d89262002b3e575b506040519182916001600160a01b031682620005d9565b80620006ec62002b4e9262000766565b3862002b27565b62002b7291945060203d811162000733576200072281836200082a565b923862002ae4565b34620005d4576000806003193601126200073b5760405162002b9c8162000780565b600e81526d3932b3b4b9ba393cafb7bbb732b960911b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000806003193601126200073b5760245490604090815163ffa1864960e01b81526020908062002c136004968783019190602083019252565b039082816000805160206200d1c08339815191529381855afa8015620006fa5762002c639185916200300f575b50602380546001600160a01b0319166001600160a01b0392909216919091179055565b62002c7060235462000ae5565b91813b1562002fb75784516318caf8e360e31b8082526001600160a01b03909416878201908152604060208201819052600e908201526d636f756e63696c4d656d6265723160901b6060820152859082908190608001038183875af18015620006fa5762002ff8575b5060018060a01b038062002cf962002cf36021546200b0e7565b62000ae5565b161562002d1f575b620006d88662002d136021546200b0e7565b905191829182620005d9565b8062002d2a62004a19565b62002d5e62002d3c62002cf362005a31565b602680546001600160a01b0319166001600160a01b0392909216919091179055565b16833b1562002ff45786519085825286828062002db0848d830160809160018060a01b0316815260406020820152601060408201526f5361666550726f7879466163746f727960801b60608201520190565b038183895af1908115620006fa5762002e0292859262002fdd575b5062002dd960265462000ae5565b9062002de46200b0f6565b91898c8c5196879586948593631688f0b960e01b855284016200b112565b03925af1908115620006fa5762002e4793879262002fbb575b50506021805462010000600160b01b0319169290911660101b62010000600160b01b0316919091179055565b62002e5862002cf36021546200b0e7565b91813b1562002fb75784519081526001600160a01b03909216858301908152604060208201819052600b908201526a636f756e63696c5361666560a81b60608201528391839182908490829060800103925af18015620006fa5762002fa0575b5062002ec362003437565b62002edf62002ed460235462000ae5565b62001c6683620034c6565b62002f0762002eee82620034ea565b73f39fd6e51aad88f6f4ce6ab8827279cfffb922669052565b62002f2f62002f1682620034fb565b7370997970c51812dc3a010c7d01b50e0d17dc79c89052565b62002f4062002cf36021546200b0e7565b803b15620007005762002f689483855180978195829463b63e800d60e01b845283016200adee565b03925af1918215620006fa57620006d89262002f89575b8080808062002d01565b80620006ec62002f999262000766565b3862002f7f565b80620006ec62002fb09262000766565b3862002eb8565b8380fd5b62002fd59250803d1062000733576200072281836200082a565b388062002e1b565b80620006ec62002fed9262000766565b3862002dcb565b8580fd5b80620006ec620030089262000766565b3862002cd9565b6200302a9150843d861162000733576200072281836200082a565b3862002c40565b34620005d4576101c0366003190112620005d45760043562003053816200073e565b6024359062003062826200073e565b6044359062003071826200073e565b6064359262003080846200073e565b6084356200308e816200073e565b60a4356200309c8162001fd1565b620030a662001fdc565b9160203660e3190112620005d457620006d896620021a29660405195620030cd87620007b8565b60e4358752620030dd3662002050565b9762004713565b34620005d4576000806003193601126200073b5760405180918260185480845260208094019060188452848420935b858282106200312d5750505062000d84925003836200082a565b85546001600160a01b031684526001958601958895509301920162003113565b34620005d4576080366003190112620005d457606435600160801b62989680608083901b04818110156200323857600435805b620031f257620006d8620021a2620031ec620031e686620031df89620031d8620031d1620031b1602435866200448b565b94620031ca620031c36044356200446c565b9162004910565b906200448b565b9162004923565b90620048df565b9062004947565b62004935565b60801c90565b600191818316620032165780620032099162004955565b911c90815b909162003180565b9150916200322982620032309262004955565b9262004900565b90816200320e565b60405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b34620005d4576000806003193601126200073b576040516200329e8162000780565b6013815272383937b334b632992fb737ba20a6b2b6b132b960691b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000806003193601126200073b5760405181602e54620033018162000fc7565b808452906001908181169081156200117d57506001146200332f57620006d8846200110a818803826200082a565b602e8352602094506000805160206200d2008339815191525b828410620033685750505081620006d8936200110a9282010193620010f7565b805485850187015292850192810162003348565b34620005d4576020366003190112620005d4576004356001600160401b038111620005d45762000bae620033b76020923690600401620008a6565b6200ad8f565b34620005d4576000366003190112620005d457602060ff602154166040519015158152f35b34620005d4576000366003190112620005d457602060ff60215460081c166040519015158152f35b60405190606082016001600160401b038111838210176200077a5760405260028252604082602036910137565b604051906200344682620007d4565b600382526060366020840137565b60405190620034638262000780565b6001825260203681840137565b604051906200347f8262000780565b600d82526c706f6f6c5f6d616e616765723160981b6020830152565b60405190620034aa8262000780565b600d82526c3837b7b62fb6b0b730b3b2b91960991b6020830152565b805115620034d45760200190565b634e487b7160e01b600052603260045260246000fd5b805160011015620034d45760400190565b805160021015620034d45760600190565b6001600160a01b039091169052565b604051906200352a8262000780565b601082526f70726f66696c65315f6d656d6265723160801b6020830152565b60405190620035588262000780565b601082526f383937b334b63298afb6b2b6b132b91960811b6020830152565b60405190620035868262000780565b601082526f70726f66696c65325f6d656d6265723160801b6020830152565b60405190620035b48262000780565b601082526f383937b334b632992fb6b2b6b132b91960811b6020830152565b90816020910312620005d4575190565b6040513d6000823e3d90fd5b60085460ff168015620035ff5790565b50604051630667f9d760e41b81526020816044816000805160206200d1c08339815191528060048301526519985a5b195960d21b60248301525afa908115620006fa5760009162003651575b50151590565b62003677915060203d81116200367e575b6200366e81836200082a565b810190620035d3565b386200364b565b503d62003662565b906200369b6020928281519485920162000dba565b0190565b90816020910312620005d45751620008c4816200073e565b6001600160a01b039091168152604060208201819052620008c49291019062000ddf565b906040516020810190620036f58162000627848762003686565b5190206040516001625e79b760e01b03198152600481018290529091906000805160206200d1c083398151915290602081602481855afa908115620006fa5760009162003793575b508094823b15620005d4576200376e92600092836040518096819582946318caf8e360e31b845260048401620036b7565b03925af18015620006fa57620037815750565b80620006ec620037919262000766565b565b620037af915060203d811162000733576200072281836200082a565b386200373d565b908154620037c481620011a8565b92604093620037d6855191826200082a565b828152809460208092019260005281600020906000935b858510620037fd57505050505050565b60018481928451620038158162001fba818a62001004565b815201930194019391620037ed565b601f811162003831575050565b600090602e825260208220906020601f850160051c8301941062003872575b601f0160051c01915b8281106200386657505050565b81815560010162003859565b909250829062003850565b80519091906001600160401b0381116200077a57620038a981620038a3602e5462000fc7565b62003824565b602080601f8311600114620038e85750819293600092620038dc575b50508160011b916000199060031b1c191617602e55565b015190503880620038c5565b602e600052601f198316949091906000805160206200d200833981519152926000905b878210620039465750508360019596106200392c575b505050811b01602e55565b015160001960f88460031b161c1916905538808062003921565b806001859682949686015181550195019301906200390b565b604051906200396e8262000780565b60088252670b98da185a5b925960c21b6020830152565b60405190620039948262000780565b60058252642e6e616d6560d81b6020830152565b60405190620039b78262000780565b600c82526b1722a72b299729a2a72222a960a11b6020830152565b60405190620039e18262000780565b60088252676e616d653a20257360c01b6020830152565b6040519062003a078262000780565b600a82526973656e6465723a20257360b01b6020830152565b6040519062003a2f8262000780565b600c82526b636861696e4964203a20257360a01b6020830152565b62003a5760285462000ae5565b906000805160206200d1c083398151915290813b15620005d457604051637fec2a8d60e01b815260009384908290819062003a969060048301620005d9565b038183875af18015620006fa5762003bc5575b50805162003bb3575b5062003b8162003ac162003fce565b6200168462003ae462003add62003ad76200395f565b62003e8c565b8362003c05565b62003b5062003b0162003afa62003ad762003985565b8562003cd6565b62003b4062003b1e62003b1762003ad7620039a8565b8762003d42565b602880546001600160a01b0319166001600160a01b0392909216919091179055565b62003b4a620039d2565b62003e0e565b62003b7162003b6160285462000ae5565b62003b6b620039f8565b62003e39565b62003b7b62003a20565b62003dab565b803b1562003baf578190600460405180948193633b756e9b60e11b83525af18015620006fa57620037815750565b5080fd5b62003bbe906200387d565b3862003ab2565b80620006ec62003bd59262000766565b3862003aa9565b909162003bf6620008c49360408452604084019062000ddf565b91602081840391015262000ddf565b6040516356eef15b60e11b8152916020918391829162003c2a91906004840162003bdc565b03816000805160206200d1c08339815191525afa908115620006fa5760009162003c52575090565b620008c4915060203d81116200367e576200366e81836200082a565b602081830312620005d4578051906001600160401b038211620005d4570181601f82011215620005d457805162003ca5816200084e565b9262003cb560405194856200082a565b81845260208284010111620005d457620008c4916020808501910162000dba565b6040516309389f5960e31b8152916000918391829162003cfb91906004840162003bdc565b03816000805160206200d1c08339815191525afa908115620006fa5760009162003d23575090565b620008c4913d8091833e62003d3981836200082a565b81019062003c6e565b604051631e19e65760e01b8152916020918391829162003d6791906004840162003bdc565b03816000805160206200d1c08339815191525afa908115620006fa5760009162003d8f575090565b620008c4915060203d811162000733576200072281836200082a565b62003df362003dde916200379193604051938492632d839cb360e21b602085015260406024850152606484019062000ddf565b90604483015203601f1981018352826200082a565b600080916020815191016a636f6e736f6c652e6c6f675afa50565b9062003df3620037919262000627604051938492634b5c427760e01b60208501526024840162003bdc565b62003df362003e6c91620037919360405193849263319af33360e01b602085015260406024850152606484019062000ddf565b6001600160a01b0391909116604483015203601f1981018352826200082a565b604051600091602e549162003ea18362000fc7565b9384825260209485830194600190818116908160001462003fb0575060011462003f72575b5050918162003ee2620008c4959362003f4f979503826200082a565b62003f3c6039604051809562003f1f8883019575242e6e6574776f726b735b3f28402e6e616d653d3d2760501b8752518092603685019062000dba565b81016227295d60e81b60368201520360198101865201846200082a565b6040519586935180928686019062000dba565b820162003f658251809386808501910162000dba565b010380845201826200082a565b9150602e60005285600020916000925b82841062003f9c57505050810184018162003ee262003ec6565b805485850189015292870192810162003f82565b60ff191687525050151560051b8201850190508162003ee262003ec6565b604051636c98507360e11b81526000906000805160206200d1c0833981519152908281600481855afa8015620006fa576200408d9284928392620040bc575b50620040716043604051846200402e82965180926020808601910162000dba565b81017f2f706b672f636f6e7472616374732f636f6e6669672f6e6574776f726b732e6a60208201526239b7b760e91b60408201520360238101855201836200082a565b60405180809581946360f9bb1160e01b835260048301620010a2565b03915afa918215620006fa578092620040a557505090565b620008c492503d8091833e62003d3981836200082a565b620040d49192503d8085833e62003d3981836200082a565b90386200400d565b60405190620040eb8262000780565b60118252701722a72b2997282927ac2cafa7aba722a960791b6020830152565b604051906200411a8262000780565b601582527402732bb9029b0b3329020b93134ba3930ba37b91d1605d1b6020830152565b62004158906200415162003ad7620040dc565b9062003d42565b6040516001600160401b03919061187c808201848111838210176200077a5782916200b944833903906000f0918215620006fa5760405163da35a26f60e01b602082015266038d7ea4c6800060248201526001600160a01b03929092166044808401919091528252620041cd6064836200082a565b604051916104109081840192848410908411176200077a57839262004204926200b53485396001600160a01b0395861690620036b7565b03906000f0908115620006fa5762003791911662003b6b6200410b565b620042796020620008c495936002845260a082850152600e60a08501526d506f6f6c2050726f66696c65203160901b60c085015260e06040850152805160e08501520151604061010084015261012083019062000ddf565b6001600160a01b03909316606082015280830360809091015262000ce9565b9160175415620042ac575b50505060175490565b62004310926020926000604051620042c48162000780565b60018152604051620042d68162000780565b600c81526b506f6f6c50726f66696c653160a01b8782015281870152604051633a92f65f60e01b8152968795869485936004850162004221565b03926001600160a01b03165af18015620006fa57620043389160009162004341575b50601755565b388080620042a3565b6200435d915060203d81116200367e576200366e81836200082a565b3862004332565b604051906200437382620007b8565b60008252565b6040519062004388826200079c565b8160a06000918281528260208201528260408201528260608201528260808201520152565b604051610120810191906001600160401b038311818410176200077a57610100606091846040528094620043e181620007d4565b60009081815281610140840152816101608401528161018084015282528060208301528060408301526200441462004364565b848301526200442262004379565b60808301528060a08301528060c083015260e08201520152565b60038210156200259a5752565b60048210156200259a5752565b634e487b7160e01b600052601160045260246000fd5b9062989680918281029281840414901517156200448557565b62004456565b818102929181159184041417156200448557565b9594939291620044f96200450392620044ef620044bb620043ad565b99629895b760408c510152621e84808b515261271060208c5101526702c68af0bb14000060608c51015260a08b016200350c565b602089016200443c565b6040870162004449565b600060c0860152600060e08601528051156200452c575b60608501526080840152610100830152565b680ad78ebc5ac620000081526200451a565b620045b3926200459f60a09a99959697989362004595620045a99462004563620043ad565b9d8e629895b7604082510152621e84808151526127106020825101526702c68af0bb140000606082510152016200350c565b60208c016200443c565b60408a0162004449565b60c088016200350c565b60e08601528051156200452c5760608501526080840152610100830152565b91959492939082526200460160018060a01b039485602098168885015260e0604085015260e084019062000ddf565b9360609116818301526000608083015281840360a0830152601554845260408685015260009360165490620046368262000fc7565b918260408301526001908181169081600014620046b7575060011462004670575b50505050620008c493945060c081840391015262000ce9565b9293955090601660005287600020926000935b828510620046a357505050620008c4959650010191849338808062004657565b805484860187015293890193810162004683565b60ff1916858401525096975087965090151560051b01019250620008c438808062004657565b90816020910312620005d45751620008c48162001fd1565b15620046fd57565b634e487b7160e01b600052600160045260246000fd5b92949597620047c7976200473693929a99886200472f62003454565b946200449f565b90620047416200340a565b90620047523062001c6684620034c6565b620047623362001c6684620034ea565b6001600160a01b039473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee948a918791828116620048ae575b5090620047ac85600093620047a560285462000ae5565b9062004298565b620047f460405196620047d68860209e8f9b8c8301620025bc565b03601f1981018a52896200082a565b6040516370803ea560e11b8152998a988997889560048701620045d2565b0393165af18015620006fa5784916000916200488c575b5095600460405180948193631a8ecfcb60e11b8352165afa908115620006fa57620037919360009262004858575b505062004846826200258f565b62004851816200258f565b14620046f5565b6200487c9250803d1062004884575b6200487381836200082a565b810190620046dd565b388062004839565b503d62004867565b620048a79150823d84116200367e576200366e81836200082a565b386200480b565b9650620047ac6200478e565b94929091620008c49796949260405196620048d588620007b8565b6000885262004713565b8115620048ea570490565b634e487b7160e01b600052601260045260246000fd5b6000198101919082116200448557565b600160801b908103919082116200448557565b90629896809182039182116200448557565b6001607f1b8101919082106200448557565b919082018092116200448557565b90600160801b808311620049c3578110156200497f57620031e6620031ec91620008c4936200448b565b60405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b60405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608490fd5b73bba817f97f133b87b9b7f1fc0f2c56e9f68d2edf803b620008c45750620008c462002cf360405162004a4c81620007f0565b610ede81527f608060405234801561001057600080fd5b50610ebe806100206000396000f3fe60208201527f608060405234801561001057600080fd5b50600436106100625760003560e01c60408201527f80631688f0b9146100675780632500510e1461017657806353e5d9351461024360608201527f57806361b69abd146102c6578063addacc0f146103cb578063d18af54d14610460808201527f4e575b600080fd5b61014a6004803603606081101561007d57600080fd5b810160a082015266e96f9fdffe6f6e642420200d5d60da1b0360c08201527f9190803590602001906401000000008111156100ba57600080fd5b820183602060e08201527f820111156100cc57600080fd5b803590602001918460018302840111640100006101008201527d831117156100ee57600080fd5b91908080601f01602080910402602001606101208201527f40519081016040528093929190818152602001838380828437600081840152606101408201527f1f19601f8201169050808301925050505050505091929192908035906020019061016082015260017024a46414141418415f5596d8101460209d607a1b036101808201527ae97ead9fdffe6eafaf9fbfae7f6efc6f0ca49efde89ffb7fc9fc9f196101a08201526001731820440558406315d800203f56e0406420200d5d60621b036101c082015277e96f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffffffff7eee196101e08201527f156101c957600080fd5b8201836020820111156101db57600080fd5b803590606102008201527f2001918460018302840111640100000000831117156101fd57600080fd5b90916102208201527f92939192939080359060200190929190505050610624565b604051808273ffff6102408201526de97ead9fdffe6eafaf9fbfae7f6e196102608201527f0390f35b61024b610751565b60405180806020018281038252838181518152606102808201527f200191508051906020019080838360005b8381101561028b57808201518184016102a08201527f52602081019050610270565b50505050905090810190601f1680156102b857806102c08201527f820380516001836020036101000a031916815260200191505b509250505060406102e08201527f5180910390f35b61039f600480360360408110156102dc57600080fd5b81019061030082015267e96f9fdffe6f6d6f6320200d5d60e21b036103208201527f908035906020019064010000000081111561031957600080fd5b8201836020826103408201527f01111561032b57600080fd5b80359060200191846001830284011164010000006103608201527e8311171561034d57600080fd5b91908080601f0160208091040260200160406103808201527f519081016040528093929190818152602001838380828437600081840152601f6103a08201527f19601f82011690508083019250505050505050919291929050505061077c565b6103c082015265e97ead9fdfff6518101460209d60d21b036103e08201527f91505060405180910390f35b6103d3610861565b6040518080602001828103826104008201527f5283818151815260200191508051906020019080838360005b838110156104136104208201527f5780820151818401526020810190506103f8565b50505050905090810190601f6104408201527f1680156104405780820380516001836020036101000a031916815260200191506104608201527f5b509250505060405180910390f35b610551600480360360808110156104645761048082015260016b1800203f56e0406420200d5d60a21b036104a08201527f169060200190929190803590602001906401000000008111156104a1576000806104c08201527ffd5b8201836020820111156104b357600080fd5b8035906020019184600183026104e08201527f840111640100000000831117156104d557600080fd5b91908080601f016020806105008201527f91040260200160405190810160405280939291908181526020018383808284376105208201527f600081840152601f19601f82011690508083019250505050505050919291929061054082015260016c200d641808006424a464200d5d609a1b03610560820152763a5be7f7ff9bdb5b9bebebebe7bddcea6927efeb9fdf6360421b1961058082015273e97ead9fdffe6eafaf9fbfae7f6efc6f0ca49fff196105a08201527f61058a848484610a3b565b90506000835111156105b2576000806000855160206105c08201527f87016000865af114156105b157600080fd5b5b7f4f51faf6c4561ff95f0676576105e08201527fe43439f0f856d97c04d9ec9070a6199ad418e2358185604051808373ffffffff610600820152673a5fab67f7ff9f6360421b1961062082015273e97ead9fdffe6dafafaf9fbfae7f6efc6f5e6c6d196106408201527f505050565b60006106758585858080601f0160208091040260200160405190816106608201527f016040528093929190818152602001838380828437600081840152601f19601f6106808201527f8201169050808301925050505050505084610a3b565b905080604051602001806106a082015269e99f9fe47ead9febfe6f61209d60f21b036106c08201527802828302028b01040c18181c0a948302029302028bf8461bcd603d1b6106e08201526a81526004018080602001826107008201527f8103825283818151815260200191508051906020019080838360005b838110156107208201527f6107165780820151818401526020810190506106fb565b5050505090509081016107408201527f90601f1680156107435780820380516001836020036101000a031916815260206107608201527f0191505b509250505060405180910390fd5b60606040518060200161076390616107808201527f0bde565b6020820181038252601f19601f82011660405250905090565b6000826107a082015260016e1810145841e2e41842f79596e0209d608a1b036107c08201527ce97ead9fdffe6eafaf9fbfae7f6efc6f9fff0f7fea7fea9ef838a8c29f196107e08201527e803e3d6000fd5b5090506000825111156107f05760008060008451602086016108008201527f6000865af114156107ef57600080fd5b5b7f4f51faf6c4561ff95f067657e4346108208201527f39f0f856d97c04d9ec9070a6199ad418e2358184604051808373ffffffffffff610840820152673a5fab67f7ff9f6360521b1961086082015275e97ead9fdffe6dafafaf9fbfae7f6efc6f5e6d6eafaf196108808201527f565b60606040518060200161087390610beb565b6020820181038252601f19606108a08201527f1f82011660405250905090565b600080838360405160200180838152602001826108c08201526ae99f9fe47ead9febfe6db0601d60fa1b036108e08201527f50506040516020818303038152906040528051906020012060001c90506108e761090082015260016c21a1a0d8415f5596e45418001d609a1b0361092082015267e9eb9ef5cda87d8c623a5f2360e21b01196109408201526be99ce1ad4ae77c7777779fbf19610960820152600172146158ffffffffc5983806e05498010060215d606a1b03610980820152673a5fab67f7ff9ee3608a1b196109a08201527ce97ead9fdffe7f9fdffe7c7ead9fdffe7d7efc7dad7b7e7eae7ead9fdf196109c08201527f0191508051906020019080838360005b838110156109ca5780820151818401526109e08201527f6020810190506109af565b50505050905090810190601f1680156109f7578082610a008201527f0380516001836020036101000a031916815260200191505b5095505050505050610a208201527f600060405180830381600087803b158015610a1957600080fd5b505af1158015610a408201527f610a2d573d6000803e3d6000fd5b505050505b50949350505050565b60008083610a608201527f8051906020012083604051602001808381526020018281526020019250505060610a808201527f4051602081830303815290604052805190602001209050600060405180602001610aa08201527f610a8890610bde565b6020820181038252601f19601f820116604052508673ff610ac08201526ce99fbfae9fdffe7f7c7fae6f9f19610ae08201527f2001908083835b60208310610ae9578051825260208201915060208101905060610b008201527f2083039250610ac6565b6001836020036101000a038019825116818451168082610b208201527f1785525050505050509050018281526020019250505060405160208183030381610b4082015260017514a4181014a4142060546098080058003d649418001d60521b03610b60820152623a5f23609a1b19610b8082015260016e074f5f54f7a15544fdfd7407b9e43360851b0319610ba0820152738152600401808060200182810382526013815260610bc0820152760800601fd0dc99585d194c8818d85b1b0819985a5b1959604a1b610be08201527b81525060200191505060405180910390fd5b50509392505050565b61610c008201527f01e680610bf883390190565b60ab80610dde8339019056fe6080604052348015610c208201527f61001057600080fd5b506040516101e63803806101e683398181016040526020610c408201527f81101561003357600080fd5b8101908080519060200190929190505050600073610c60820152623a5fa3604a1b19610c8082015274e9ebea9eff35a89fbfae80f73c865fffffffffffff19610ca08201526981526004018080602001610cc08201527f828103825260228152602001806101c460229139604001915050604051809103610ce082015260016e243f56e018002018404002a055205d608a1b03610d0082015262e9fde8653f79ba5bdf2360ba1b0119610d2082015260017624155414182ae018404658000e58003cff98201810149d604a1b03610d408201526001684fffd5f4c02cf35bc960611b0319610d608201526f60003514156050578060005260206000610d808201527ff35b3660008037600080366000845af43d6000803e60008114156070573d6000610da08201527ffd5b3d6000f3fea2646970667358221220d1429297349653a4918076d650332d610dc08201527fe1a1068c5f3e07c5c82360c277770b955264736f6c63430007060033496e7661610de08201527f6c69642073696e676c65746f6e20616464726573732070726f76696465646080610e00820152679fffabe98059e6b8631810149d60e21b03610e2082015262600035603760f91b01610e408201527f14156050578060005260206000f35b3660008037600080366000845af43d6000610e608201527f803e60008114156070573d6000fd5b3d6000f3fea2646970667358221220d142610e808201527f9297349653a4918076d650332de1a1068c5f3e07c5c82360c277770b95526473610ea08201527f6f6c63430007060033a26469706673582212200c75fe2196b9f752c82794253f610ec08201527f2ebce0d821afef5997e1d5a35ec316ce592f6664736f6c634300070600330000610ee08201526200ad8f565b73dd4bda7bcda544d6da2aea8ab8b0e63d2f6dc737803b620008c45750620008c462002cf360405162005a64816200080d565b6159d781527f608060405234801561001057600080fd5b5060016004819055506159ae80620060208201527e296000396000f3fe6080604052600436106101dc5760003560e01c8063affe60408201527fd0e011610102578063e19a9dd911610095578063f08a032311610064578063f060608201527f8a032314611647578063f698da2514611698578063f8dc5dd9146116c357806360808201527fffa1ad741461173e57610231565b8063e19a9dd91461139b578063e318b52b1460a08201527f6113ec578063e75235b81461147d578063e86637db146114a857610231565b8060c08201527f63cc2f8452116100d1578063cc2f8452146110e8578063d4d9bdcd146111b55760e08201527f8063d8d11f78146111f0578063e009cfde1461132a57610231565b8063affed06101008201527fe014610d94578063b4faba0914610dbf578063b63e800d14610ea7578063c4ca6101208201527f3a9c1461101757610231565b80635624b25b1161017a5780636a7612021161016101408201527f495780636a761202146109945780637d83297414610b50578063934f3a1114616101608201527f0bbf578063a0e67e2b14610d2857610231565b80635624b25b146107fb5780636101808201527f5ae6bd37146108b9578063610b592514610908578063694e80c31461095957616101a08201527f0231565b80632f54bf6e116101b65780632f54bf6e146104d35780633408e4706101c08201527f1461053a578063468721a7146105655780635229073f1461067a57610231565b6101e08201527f80630d582f131461029e57806312fb68e0146102f95780632d9ad53d1461046c61020082015260016c15d8408c5596cd98408c55ccdd609a1b036102208201527fff167f3d0ce9bfc3ed7d6862dbb28b2dea94561fe714a1b4d019aa8af39730d16102408201527fad7c3d346040518082815260200191505060405180910390a2005b34801561026102608201527f3d57600080fd5b5060007f6c9a6c4a39284e37ed1cf53d337577d14212a4870f6102808201527fb976a4366c693b939918d560001b905080548061027257600080f35b366000806102a08201527f373360601b365260008060143601600080855af13d6000803e80610299573d606102c08201527efd5b3d6000f35b3480156102aa57600080fd5b506102f760048036036040816102e082015260017104055840b055d800203f56e0406420200d5d60721b0361030082015279e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafafaf9ee831a9196103208201527f5b005b34801561030557600080fd5b5061046a6004803603608081101561031c6103408201527f57600080fd5b81019080803590602001909291908035906020019064010000006103608201527e81111561034357600080fd5b82018360208201111561035557600080fd5b806103808201527f35906020019184600183028401116401000000008311171561037757600080fd6103a08201527f5b91908080601f016020809104026020016040519081016040528093929190816103c08201527f8152602001838380828437600081840152601f19601f820116905080830192506103e08201527f5050505050509192919290803590602001906401000000008111156103da57606104008201527e80fd5b8201836020820111156103ec57600080fd5b803590602001918460016104208201527f83028401116401000000008311171561040e57600080fd5b91908080601f01606104408201527f20809104026020016040519081016040528093929190818152602001838380826104608201527f8437600081840152601f19601f820116905080830192505050505050509192916104808201527f929080359060200190929190505050611bbe565b005b348015610478576000806104a08201527ffd5b506104bb6004803603602081101561048f57600080fd5b810190808035736104c08201526be96f9fdffe6f6d6e6fafafaf196104e082018190527f612440565b60405180821515815260200191505060405180910390f35b3480156105008301527f6104df57600080fd5b50610522600480360360208110156104f657600080fd5b61052083015264e96f9fdfff6620406420200d5d60ca1b036105408301527f90929190505050612512565b60405180821515815260200191505060405180916105608301527f0390f35b34801561054657600080fd5b5061054f6125e4565b604051808281526105808301527f60200191505060405180910390f35b34801561057157600080fd5b50610662606105a083015260017801200d80d82020440558416215d800203f56e0406420200d5d603a1b036105c083015272e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6f196105e08301527f803590602001906401000000008111156105cf57600080fd5b820183602082016106008301527b11156105e157600080fd5b803590602001918460018302840111640160201b6106208301527f8311171561060357600080fd5b91908080601f016020809104026020016040516106408301526000805160206200d1e08339815191526106608301527f601f820116905080830192505050505050509192919290803560ff16906020016106808301527f909291905050506125f1565b60405180821515815260200191505060405180916106a08301527f0390f35b34801561068657600080fd5b506107776004803603608081101561066106c083015260016d2755d800203f56e0406420200d5d60921b036106e08301527de96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffff196107008301527d8111156106e457600080fd5b8201836020820111156106f657600080fd5b6107208301527f80359060200191846001830284011164010000000083111715610718576000806107408301527ffd5b91908080601f0160208091040260200160405190810160405280939291906107608301527f818152602001838380828437600081840152601f19601f8201169050808301926107808301527f505050505050509192919290803560ff1690602001909291905050506127d7566107a08301527f5b604051808315158152602001806020018281038252838181518152602001916107c08301527f508051906020019080838360005b838110156107bf57808201518184015260206107e08301527f810190506107a4565b50505050905090810190601f1680156107ec57808203806108008301527f516001836020036101000a031916815260200191505b509350505050604051806108208301527f910390f35b34801561080757600080fd5b5061083e60048036036040811015616108408301527f081e57600080fd5b8101908080359060200190929190803590602001909291906108608301527f50505061280d565b6040518080602001828103825283818151815260200191506108808301527f8051906020019080838360005b8381101561087e5780820151818401526020816108a08301527f019050610863565b50505050905090810190601f1680156108ab5780820380516108c08301527f6001836020036101000a031916815260200191505b50925050506040518091036108e08301527f90f35b3480156108c557600080fd5b506108f2600480360360208110156108dc6109008301527f57600080fd5b8101908080359060200190929190505050612894565b604051806109208301527f82815260200191505060405180910390f35b34801561091457600080fd5b50616109408301527f09576004803603602081101561092b57600080fd5b81019080803573ffffffff6109608301526fe96f9fdffe6f6d6e6fafafaf9ed753a9196109808301527f5b005b34801561096557600080fd5b506109926004803603602081101561097c6109a08301527f57600080fd5b8101908080359060200190929190505050612c3e565b005b610b6109c08301527f3860048036036101408110156109ab57600080fd5b81019080803573ffffffff6109e08301526fe96f9fdffe6f6d6e6f7fca6f9fdffe6f19610a0083018190527f929190803590602001906401000000008111156109f257600080fd5b82018360610a208401527f2082011115610a0457600080fd5b803590602001918460018302840111640100610a408401527c83111715610a2657600080fd5b9091929391929390803560ff16906020610a608401527f0190929190803590602001909291908035906020019092919080359060200190610a8084015265e96f9fdffe706524a464200d5d60d21b03610aa08401819052610ac08401527f92919080359060200190640100000000811115610ab257600080fd5b82018360610ae08401527f2082011115610ac457600080fd5b803590602001918460018302840111640100610b008401527c83111715610ae657600080fd5b91908080601f01602080910402602001610b208401527f6040519081016040528093929190818152602001838380828437600081840152610b408401527f601f19601f820116905080830192505050505050509192919290505050612d78610b608401527f565b60405180821515815260200191505060405180910390f35b348015610b5c610b808401527f57600080fd5b50610ba960048036036040811015610b7357600080fd5b810190610ba084015267e96f9fdffe6f6d6f6320200d5d60e21b03610bc08401527f90803590602001909291905050506132b5565b60405180828152602001915050610be08401527f60405180910390f35b348015610bcb57600080fd5b50610d2660048036036060610c008401527f811015610be257600080fd5b8101908080359060200190929190803590602001610c208401527f90640100000000811115610c0957600080fd5b820183602082011115610c1b57610c408401527f600080fd5b80359060200191846001830284011164010000000083111715610c610c608401527f3d57600080fd5b91908080601f01602080910402602001604051908101604052610c808401527f8093929190818152602001838380828437600081840152601f19601f82011690610ca08401527f5080830192505050505050509192919290803590602001906401000000008111610cc08401527f15610ca057600080fd5b820183602082011115610cb257600080fd5b80359060610ce08401527f200191846001830284011164010000000083111715610cd457600080fd5b9190610d008401527f8080601f01602080910402602001604051908101604052809392919081815260610d208401527f2001838380828437600081840152601f19601f82011690508083019250505050610d408401527f50505091929192905050506132da565b005b348015610d3457600080fd5b5061610d608401527f0d3d613369565b60405180806020018281038252838181518152602001915080610d808401527f51906020019060200280838360005b83811015610d8057808201518184015260610da08401527f2081019050610d65565b505050509050019250505060405180910390f35b3480610dc08401527f15610da057600080fd5b50610da9613512565b60405180828152602001915050610de08401527f60405180910390f35b348015610dcb57600080fd5b50610ea560048036036040610e0084015260017220440558437895d800203f56e0406420200d5d606a1b03610e2084015278e96f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffffffff7eeeea19610e408401527f610e1f57600080fd5b820183602082011115610e3157600080fd5b8035906020610e608401527f0191846001830284011164010000000083111715610e5357600080fd5b919080610e808401526000805160206200d240833981519152610ea08401526000805160206200d220833981519152610ec08401527f50509192919290505050613518565b005b348015610eb357600080fd5b506110610ee08401527f156004803603610100811015610ecb57600080fd5b8101908080359060200190610f008401527f640100000000811115610ee857600080fd5b820183602082011115610efa5760610f208401527e80fd5b80359060200191846020830284011164010000000083111715610f1c610f408401527f57600080fd5b909192939192939080359060200190929190803573ffffffffff610f6084015270e96f9fdffe6f6d6e6f7fca6f9fdffe6f9b19610f808401527f0100000000811115610f6757600080fd5b820183602082011115610f79576000610fa08401527f80fd5b80359060200191846001830284011164010000000083111715610f9b57610fc084015260016f1800203f56e42464a4e464a4e4200d5d60821b03610fe08401526b3a5be7f7ff9bdb5b9bdff2a360821b19611000840152753a5be7f7ff9bdb5b9bdff29be7f7ff9bdb5b9bdff2a360321b1961102084015271e96f9fdffe6f6d6e6fafafaf9ecac5a9a4ff196110408401527f5b34801561102357600080fd5b506110d26004803603608081101561103a576061106084015260ea69203f56e0406420200d5d60aa1b036110808401527f90602001909291908035906020019092919080359060200190640100000000816110a08401527f111561108157600080fd5b82018360208201111561109357600080fd5b8035906110c08401527f602001918460018302840111640100000000831117156110b557600080fd5b906110e08401527f91929391929390803560ff1690602001909291905050506136f8565b604051806111008401527f82815260200191505060405180910390f35b3480156110f457600080fd5b50616111208401527f11416004803603604081101561110b57600080fd5b81019080803573ffffffff61114084015261116083015260017424a464141414184e081596d81014602018080060dd605a1b0361118083015276e97ead9fdffe7d7efc7dad7b7e7eae7ead9fdffe6eaf7f196111a08301527f51906020019060200280838360005b838110156111a0578082015181840152606111c08301527f2081019050611185565b50505050905001935050505060405180910390f35b346111e08301527f80156111c157600080fd5b506111ee600480360360208110156111d8576000806112008301527ffd5b8101908080359060200190929190505050613a12565b005b3480156111fc6112208301527f57600080fd5b50611314600480360361014081101561121457600080fd5b810161124083015266e96f9fdffe6f6e642420200d5d60da1b036112608301527f9190803590602001909291908035906020019064010000000081111561125b576112808301527f600080fd5b82018360208201111561126d57600080fd5b8035906020019184606112a08301527f0183028401116401000000008311171561128f57600080fd5b909192939192936112c08301527f90803560ff1690602001909291908035906020019092919080359060200190926112e083015260016e2464200d641808006424a464200d5d608a1b036113008301526b3a5be7f7ff9bdb5b9bdff2a3608a1b196113208301527ce96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafafaf9ec44ea9a49fbf196113408301527f518082815260200191505060405180910390f35b34801561133657600080fd5b6113608301527f506113996004803603604081101561134d57600080fd5b81019080803573ffff6113808301526de96f9fdffe6f6d6e6f7fca8c0000196113a08301526de96f9fdffe6f6d6e6fafafaf9ec4196113c08301527fde565b005b3480156113a757600080fd5b506113ea60048036036020811015616113e083015260016e04ef95d800203f56e0406420200d5d608a1b036114008301527ce96f9fdffe6f6d6e6fafafaf9ec090a9a4ffa4cb7fea9eec07a89fff7f196114208301527ffd5b5061147b6004803603606081101561140f57600080fd5b810190808035736114408301526be96f9fdffe6f6d6e6f7fca8c1961146083018190526114808301526114a08201527f613ff3565b005b34801561148957600080fd5b50611492614665565b604051806114c08201527f82815260200191505060405180910390f35b3480156114b457600080fd5b50616114e08201527f15cc60048036036101408110156114cc57600080fd5b81019080803573ffffff6115008201526ee96f9fdffe6f6d6e6f7fca6f9fdffe196115208201527f909291908035906020019064010000000081111561151357600080fd5b8201836115408201527f60208201111561152557600080fd5b80359060200191846001830284011164016115608201527b8311171561154757600080fd5b9091929391929390803560ff1690606115808201527f20019092919080359060200190929190803590602001909291908035906020016115a082015264e96f9fdfff662424a464200d5d60ca1b036115c082018190526115e08201527f909291908035906020019092919050505061466f565b604051808060200182816116008201527f03825283818151815260200191508051906020019080838360005b83811015616116208201527f160c5780820151818401526020810190506115f1565b505050509050908101906116408201527f601f1680156116395780820380516001836020036101000a03191681526020016116608201527f91505b509250505060405180910390f35b34801561165357600080fd5b5061166116808201527f966004803603602081101561166a57600080fd5b81019080803573ffffffffff6116a082015270e96f9fdffe6f6d6e6fafafaf9eb7e8a9a4196116c08201527e5b3480156116a457600080fd5b506116ad614878565b6040518082815260206116e08201527f0191505060405180910390f35b3480156116cf57600080fd5b5061173c6004806117008201526001760d80d8182044055845b995d800203f56e0406420200d5d604a1b036117208201526b3a5be7f7ff9bdb5b9bdff2a3604a1b1961174082015274e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafaf196117608201527f506148f6565b005b34801561174a57600080fd5b50611753614d29565b6040516117808201527f80806020018281038252838181518152602001915080519060200190808383606117a08201527e5b83811015611793578082015181840152602081019050611778565b5050506117c08201527f50905090810190601f1680156117c05780820380516001836020036101000a036117e08201527f1916815260200191505b509250505060405180910390f35b6117d6614d62565b61180082015268e97d8c0000000000016218001d60ea1b036118208201526c3a7afa9ffaa7b9efea2be7ffa3602a1b19611840820152623a5f6360721b196118608201526c3a7afaa91ffaa7b9e1ea2bf3e3606a1b1961188082015261e9eb623a5f6360b21b01196118a08201526caadb08c752bb02028bf8461bcd60951b6118c082015275815260040180806020018281038252600581526020016118e082015266807f475332303360c81b611900820152600174205494180800645414181014602440e43f56d8001d604a1b03611920820152663a67ff67ffdee360721b1961194082015263e97ead9f613a6360c21b01196119608201526001760800642054980800580008180024152418404002a4011d604a1b03611980820152613a63609a1b196119a082015260016d074f5cf730a544fdfd7407b9e433608d1b03196119c0820152748152600401808060200182810382526005815260206119e082015266601fd1d4cc8c0d60c21b611a008201527c81525060200191505060405180910390fd5b60026000600173ffffffff611a20820152613a6360721b19611a40820181905279e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb19611a608301526ae99ffd9fff7b8c00000001601d60fa1b03611a80830152611aa082015279e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c0019611ac0820152653f79ba5bdf23603a1b19611ae08201526d3a7f7a1beaabdfa7ff67ffe7ffa3602a1b19611b00820152613a63607a1b19611b208201527ae97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c000019611b40820152653f79ba5bdf2360421b19611b6082015273e9fde86faaaf9ffc9fff7eab7f6d6e6f9ffefe6e19611b808201527f905055507f9465fa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa611ba082015260016b1fd82cba89a098101460209d60a21b03611bc08201527f16815260200191505060405180910390a18060045414611bba57611bb981612c611be08201527f3e565b5b5050565b611bd2604182614e0590919063ffffffff16565b82511015611c008201526b0308e242bb02028bf8461bcd60a51b611c208201527781526004018080602001828103825260058152602001807f611c4082015264047533032360dc1b611c608201527f81525060200191505060405180910390fd5b6000808060008060005b86811015611c808201527f61243457611c648882614e3f565b80945081955082965050505060008460ff16611ca08201527f141561206d578260001c9450611c96604188614e0590919063ffffffff16565b611cc08201527104130000e080ab08e872bb02028bf8461bcd60751b611ce082015271815260040180806020018281038252600581611d0082018190526a52602001807f475330323160a81b611d208301527981525060200191505060405180910390fd5b8751611d27602084611d408301527f60001c614e6e90919063ffffffff16565b1115611d9b576040517f08c379a000611d60830152648152600401611d80830152774040301000c14081c1293002c0a9301000c03fa3a998191960411b611da08301526c81525060200191505060405180611dc08301527f910390fd5b60006020838a01015190508851611dd182611dc360208760001c61611de08301527f4e6e90919063ffffffff16565b614e6e90919063ffffffff16565b1115611e45611e008301526802bb02028bf8461bcd60bd1b611e208301527a81526004018080602001828103825260058152602001807f475330611e408301526281525061323360f01b01611e608301527f60200191505060405180910390fd5b60606020848b010190506320c13b0b60e0611e8083015261e6ea6106df60f21b03611ea083015269e99cdf3ec4f4727b9fc06121dd60f21b03611ec08301527f518363ffffffff1660e01b815260040180806020018060200183810383528581611ee08301527f8151815260200191508051906020019080838360005b83811015611ee7578082611f008301527f015181840152602081019050611ecc565b50505050905090810190601f168015611f208301527f611f145780820380516001836020036101000a031916815260200191505b5083611f408301527f8103825284818151815260200191508051906020019080838360005b83811015611f608301527f611f4d578082015181840152602081019050611f32565b505050509050908101611f808301527f90601f168015611f7a5780820380516001836020036101000a03191681526020611fa08301527f0191505b5094505050505060206040518083038186803b158015611f99576000611fc08301527f80fd5b505afa158015611fad573d6000803e3d6000fd5b505050506040513d60611fe08301527f20811015611fc357600080fd5b81019080805190602001909291905050507bff61200083015264e6e9eb9edf19612020830152690332bb02028bf8461bcd60b51b6120408301527981526004018080602001828103825260058152602001807f4753612060830152618152620c0c8d60ea1b016120808301527f5060200191505060405180910390fd5b50506122b2565b60018460ff161415616120a083015260ea6a086055e09800072514211d60aa1b036120c083015269e9eb7f9edef5a8afa000610cdd60f21b036120e083015265e98c00000001651802180021dd60d21b036121008301526fe97ead9fdffe6f7ead9fdffe9fffdf9f196121208301527e8c81526020019081526020016000205414155b61217c576040517f08c379a0612140830152638152600461216083015278018080602001828103825260058152602001807f475330323560381b6121808301526b8152506020019150506040516121a08301527f80910390fd5b6122b1565b601e8460ff1611156122495760018a6040516020016121c08301527f80807f19457468657265756d205369676e6564204d6573736167653a0a3332006121e08301527c815250601c0182815260200191505060405160208183030381529060406122008301527f52805190602001206004860385856040516000815260200160405260405180856122208301527f81526020018460ff1681526020018381526020018281526020019450505050506122408301527f6020604051602081039080840390855afa158015612238573d6000803e3d60006122608301527ffd5b5050506020604051035194506122b0565b60018a858585604051600081526122808301527f602001604052604051808581526020018460ff168152602001838152602001826122a08301527f81526020019450505050506020604051602081039080840390855afa158015616122c08301527f22a3573d6000803e3d6000fd5b5050506020604051035194505b5b5b8573ffff6122e0830152623a5ea3605a1b196123008301526b3a7b9ffaa7b721aa2be7ffe3605a1b19612320830152663a67ff67ffde2360821b1961234083015265e97ead9fdffe613a6360d21b0119612360830152600174242054980800580008180024152418404002a4011d605a1b0361238083015260e9613a6360aa1b01196123a083015260016c050556e0055848ec95d418005d609a1b036123c083015267e9ebeaa49edbdba8623a5ea360e21b01196123e0830152670302028bf8461bcd60c51b6124008301527b81526004018080602001828103825260058152602001807f475330326124208301526381525060601b60f91b016124408301527f200191505060405180910390fd5b8495508080600101915050611c52565b505061246083015260016d14141414141414141596d800205d60921b0361248083015265e9ebea7fea9e633a67ffa360d21b01196124a083015264e99ffea000660942d5d418001d60ca1b036124c08301526001613a6360421b0161211d60f21b036124e083015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f1961250083015264e98c0000016618404002a4011d60ca1b036125208301526ee9ebeaa46faf6e6fafa9a49fff9ffe196125408301526001623a5f6360421b01601d60fa1b036125608301526c3a7afa9ffaa7b688aa2be7ffe3603a1b19612580830152663a67ff67ffdee360621b196125a083015261e97e613a6360b21b01196125c083015260017814980800642054980800580008180024152418404002a4011d603a1b036125e0830152613a63608a1b196126008301527ce9ebeaa46faf6e6fafa9a49fff7fb96faf7f6eafaf6fa9a49fff9ffe8c19612620830152623a7323604a1b196126408301526c3a7afa9ffaa7b650ea2be7ffe360421b19612660830152663a67ffa7fff323606a1b1961268083015262e97ead613a6360ba1b01196126a0830152600177180800642054980800580008180024152418404002a4011d60421b036126c0830152613a6360921b196126e083015260016f074f5f5524f6c68d44fdfd7407b9e43360751b03196127008301526127208201526a14980800601fd1d4cc4c0d60aa1b6127408201527981525060200191505060405180910390fd5b61273b858585855a61276082015260016e1853a35596e41420055849e2d5ccdd608a1b036127808201527ce980976a3ec99b55b098d774da285de28555cb6e91caa04649051f5ec6196127a08201526001762a4216fb2e181014581014602440e4289849f3d596ccdd604a1b036127c082015274e980532d378fd7fbed7024f24d44b6092ed822fe7e196127e08201527fc13fd45dbfe16de0930e2bd37560405160405180910390a25b949350505050566128008201527f5b600060606127e7868686866125f1565b915060405160203d0181016040523d6128208201527f81523d6000602083013e8091505094509492505050565b606060006020830267612840820152777eee7fea9ed7d4a89fff7f02a4af9fbfae6f7f7dad7f9fe0196128608201527f01601f19166020018201604052801561285e57816020016001820280368337806128808201527f820191505090505b50905060005b8381101561288957808501548060208302606128a08201527f2085010152508080600101915050612864565b508091505092915050565b60076128c08201527f6020528060005260406000206000915090505481565b6128b4614d62565b60006128e08201526001623a5fa360421b01601d60fa1b036129008201526c3a7afa9ffaa7b5b86a2be7ffa3603a1b19612920820152623a5fa360821b1961294082015260016f074f5f5524f6b37d44fdfd7407b9e43360651b03196129608201526f8152600401808060200182810382526061298082018190526c058152602001807f475331303160981b6129a08301527781525060200191505060405180910390fd5b600073ffffff6129c08301819052663a67ffa7ffdf2360421b196129e0840152613a6360921b19612a0084018190527de97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb8c00000019612a20850152613a63606a1b19612a4085015260016d074f5cf6ab7544fdfd7407b9e433605d1b0319612a608501526e815260040180806020018281038252612a808501526d3002c0a9301000c03fa3a998981960911b612aa08501527681525060200191505060405180910390fd5b6001600060612ac08501526001613a6360421b01605d60f21b03612ae085015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f19612b0085015264e99ffea0006618404002a4011d60ca1b03612b208501526001613a6360421b016120dd60f21b03612b4085015273e97ead9fdffe6f7ead9fdffe9fffdf9fff9efeff19612b6085015266fde6e96f7c8c016402a055205d60da1b03612b808501526ce9fde86faaaf7f9ffe9fff9ffe19612ba08501526001613a63604a1b01601d60fa1b03612bc0850181905274e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff519612be086015267fde6e96f7c8c0001632055205d60e21b03612c008601526de9fde86faaaf801320c5c10015a819612c208601527f83a3c4c2140e677577666428d44ed9d474a0b3a4c9943f844081604051808273612c408601526be97ead9fdffe6eafaf9fbfae19612c608601527f80910390a150565b612c46614d62565b600354811115612cbe576040517f08c3612c808601526181526103cd60f51b01612ca08601527a6004018080602001828103825260058152602001807f475332303160281b612cc08601526981525060200191505060612ce08601527802028c04881c87eadb000c0880ab0969aabb02028bf8461bcd603d1b612d008601526a8152600401808060200182612d208601819052714081c1293002c0a9301000c03fa3a999181960711b612d408701527281525060200191505060405180910390fd5b80612d608701527f6004819055507f610f7ff2b304ae8903c3de74c60c6ab1f7d6226b3f52c51619612d808701527f05bb5ad4039c936004546040518082815260200191505060405180910390a150612da08701527f565b6000806000612d928e8e8e8e8e8e8e8e8e8e60055461466f565b90506005612dc08701527f6000815480929190600101919050555080805190602001209150612dbb828286612de0870152600174184cb69596d41800184b719853b65596e41418001d605a1b03612e00870152623a5fa360a21b19612e2087015263e99c8a10670585184beb15e01d60c21b03612e408701527fbb528f8f8f8f8f8f8f8f8f8f8f336040518d63ffffffff1660e01b8152600401612e6087015268e97ead9fdffe737eae6220235d60ea1b03612e808701527f602001806020018a6001811115612e6957fe5b81526020018981526020018881612ea087015260016b1498080061e054980800619d60a21b03612ec087015263e97eada06705a054980800615d60c21b03612ee087015263e97eada067080060180800611d60c21b03612f008701527f200183810383528d8d82818152602001925080828437600081840152601f1960612f208701527f1f82011690508083019250505083810382528581815181526020019150805190612f408701527f6020019080838360005b83811015612f3b578082015181840152602081019050612f608701527f612f20565b50505050905090810190601f168015612f68578082038051600183612f808701527f6020036101000a031916815260200191505b509e505050505050505050505050612fa08701527f505050600060405180830381600087803b158015612f9357600080fd5b505af1612fc08701527f158015612fa7573d6000803e3d6000fd5b505050505b6101f4612fd36109c48b612fe08701527f01603f60408d0281612fc457fe5b04614f0a90919063ffffffff16565b015a106130008701526bab09824abb02028bf8461bcd609d1b6130208701527681526004018080602001828103825260058152602001806130408701526507f47533031360d41b6130608701527e81525060200191505060405180910390fd5b60005a90506130b28f8f8f8f806130808701526000805160206200d2408339815191526130a08701526000805160206200d2208339815191526130c08701527f50508e60008d146130a7578e6130ad565b6109c45a035b614e8d565b935061306130e08701527fc75a82614f2490919063ffffffff16565b905083806130d6575060008a14155b613100870152770403098712ba83000440a0aadb098aa2bb02028bf8461bcd60451b6131208701526b81526004018080602001828161314087018190527003825260058152602001807f475330313360781b6131608801527381525060200191505060405180910390fd5b60006131808801527f8089111561316e5761316b828b8b8b8b614f44565b90505b84156131b8577f446131a08801527f2e715f626346e8c54381002da614f62bee8d27386535b2521ec8540898556e846131c08801527f82604051808381526020018281526020019250505060405180910390a16131f86131e08801527f565b7f23428b18acfb3ea64b08dc0c1d296ea9c09702c09083ca5272e64d115b6132008801527f687d23848260405180838152602001828152602001925050506040518091039061322088015264e97e8c0001662856d41418001d60ca1b03613240880152673a7ae7b356ea1fe360321b1961326088015271e99c6cd8ec977c7a9fbfae7c9c00000000e9196132808801527f60e01b81526004018083815260200182151581526020019250505060006040516132a08801527f80830381600087803b15801561328b57600080fd5b505af115801561329f573d6132c08801527f6000803e3d6000fd5b505050505b50509b9a5050505050505050505050565b606132e08801527f08602052816000526040600020602052806000526040600020600091509150506133008801527a02a40ab2db00030022a482830004088b099ababb02028bf8461bcd602d1b613320880152688152600401808060206133408801527301828103825260058152602001807f475330303160601b6133608801527081525060200191505060405180910390fd6133808801527f5b61336384848484611bbe565b50505050565b6060600060035467ffffffffff6133a08801527c7eee7fea9ecc79a89fff7f02a4af9fbfae6f7f7dad7f9fdffd9fdffe7d196133c08801527f0160405280156133b55781602001602082028036833780820191505090505b506133e088015260016b24141800201800980018005d60a21b0361340088015269e97ead9fdffe6f7eada061059d60f21b036134208801526001700800580008180024152418404002a4011d607a1b03613440880152663a5bebe927ffa360a21b1961346088015268e9eb9ecaf6a87f7c7d6205a05d60ea1b0361348088015260017220546044184d1815ff96d8080098080040641d606a1b036134a088015260e9633a5bdfa360aa1b01196134c088015261e98d692054941418009800209d60b21b036134e08801526be97ead9fdffe6f7ead9fdffe1961350088015260016e180008180024152418404002a4011d608a1b036135208801527ce96faf7e7f9ffefe6dafaf9ecbe0a9a47d6cafafafaf6fa9a49ffaab7e196135408801527f565b600080825160208401855af4806000523d6020523d600060403e60403d016135608801527f6000fd5b6135858a8a80806020026020016040519081016040528093929190816135808801527f8152602001838360200280828437600081840152601f19601f820116905080836135a08801526001706494141414141414225854529596d8001d60721b036135c088015262e9eb9e623a5ee360ba1b01196135e08801527f35c3576135c28461564a565b5b6136118787878080601f0160208091040260206136008801527f01604051908101604052809392919081815260200183838082843760008184016136208801527f52601f19601f82011690508083019250505050505050615679565b6000821115613640880152600176184d8ad5d84d8a609800180061a15853d11596d416ccdd604a1b0361366088015274e980ebe2079759cce50ad71c737c4855fc123e6419196136808801527f6e37ae67f9285bf4f8e3c6a1a88b8b8b8b8960405180806020018581526020016136a088015269e97ead9fdffe7c8c000161211d60f21b036136c08801526de97ead9fdffe7d7efc7dad78787d196136e08801527f818152602001925060200280828437600081840152601f19601f8201169050806137008801527f830192505050965050505050505060405180910390a2505050505050505050506137208801527f565b6000805a905061374f878787878080601f016020809104026020016040516137408801526000805160206200d1e08339815191526137608801527f601f82011690508083019250505050505050865a614e8d565b613758576000806137808801527ffd5b60005a8203905080604051602001808281526020019150506040516020816137a0880152700418181c0a948302029302028bf8461bcd607d1b6137c088015272815260040180806020018281038252838181516137e08801527f815260200191508051906020019080838360005b838110156137e557808201516138008801527f818401526020810190506137ca565b50505050905090810190601f16801561386138208801527f125780820380516001836020036101000a031916815260200191505b50925050613840880152677eee7fea9ec7c4a96f0a0c080a301220721fab6c0c0c00104d60831b036138608801527f600080fd5b5060405190808252806020026020018201604052801561386a57816138808801527f602001602082028036833780820191505090505b5091506000806001600087736138a0880152613a6360521b196138c088015275e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efe196138e088015266e96fafa49fff8d6302a4011d60da1b03613900880152623a5fa3604a1b1961392088018190526c3a7afa9ffaa7b1b0aa2be7ffa360421b19613940890152623a5fa3608a1b1961396089018190527ce9ebeaa47fea9ec6b7a8af7b7defa4ea9ec5fca87f7b7c7eae7eef9ec6196139808a015260016c1695ff96d8080098080040641d609a1b036139a08a015266e97eadafaf9ffe633a5bdfa360da1b01196139c08a015267e98c000000000001631800209d60e21b036139e08a015271e97ead9fdffe6f7ead9fdffe9fffdf9fff6f19613a008a015262e96fb068152418404002a4011d60ba1b03613a208a01527f81806001019250506138d3565b80925081845250509250929050565b600073ff613a408a0152663a67ff67fff32360321b19613a608a0152613a6360821b19613a808a018190527be97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb8c0019613aa08b0152613a63605a1b19613ac08b015260016e074f5f54f6275d44fdfd7407b9e43360451b0319613ae08b0152613b008a01939093526f3825260058152602001807f475330333607c1b613b208a01527381525060200191505060405180910390fd5b6001613b408a015265e98c0000000165180218000cdd60d21b03613b608a01526fe97ead9fdffe6f7ead9fdffe9fffdf9f19613b808a015260017420e054980800642054980800580008206415540cdd60521b03613ba08a015275e97e800d5f14ea9b8d2ebbfdaa4f283e1e633f8eea2e19613bc08a01527f051fe605b0dce69acfec884d9c60405160405180910390a350565b6000613bc6613be08a01527f8c8c8c8c8c8c8c8c8c8c8c61466f565b8051906020012090509b9a5050505050613c008a01526001721414141414141596d84ef99853589596d8001d606a1b03613c208a015261e9eb623a5fa360b21b0119613c408a015260ea6a056005584f1415d418005d60aa1b03613c608a015269e9ebeaa49ec33da89fc061205d60f21b03613c808a015265028bf8461bcd60d51b613ca08a018190527d81526004018080602001828103825260058152602001807f475331303100613cc08b015265815250602001613ce08b0181905260016d245414181014602440e43f56e01d60921b03613d008c015262e98c00663a67ffa7ffdee360ba1b0119613d208c01526ce97ead9fdffe6f7ead9fdffe9f19613d408c015260016c08180024152418404002a4011d60921b03613d608c015267e9eb9ec23da89fbf613a6360e21b0119613d808c0152613da08b01919091527d81526004018080602001828103825260058152602001807f475331303300613dc08b0152613de08a0152600171245414181014602440e43f56d8005800209d60721b03613e008a015263e97ead9f613a6360c21b0119613e208a018190526001760800642054980800580008180024152418404002a4011d604a1b03613e408b0152663a67ffa7ffdee360721b19613e608b0152613e808a01526001740800642054980800580008180018404002a055205d605a1b03613ea08a0152653f79ba5bdf23608a1b19613ec08a01526d3a7f7a1beaabe7ffe7ffa7ffdf23607a1b19613ee08a015264e97ead9fdf613a6360ca1b0119613f008a0152600172642054980800580008180018404002a055205d60621b03613f208a0152653f79ba5bdf2360921b19613f408a01527de9fde86faaaf80554b05d4b9c0a7e4d4cd34c481c48fb4631c833df64a0419613f608a015260016f135df964eb3901509da058101460209d60821b03613f808a01527be97ead9fdffe6eafaf9fbfae7f6efc6f5eafafa9a49ec0889eb29da919613fa08a01527f5b60007f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbda4f558613fc08a01527fc93c34c860001b90508181557f1151116914515bc0891ff9047a6cb32cf90254613fe08a01526001731be0c199266f3e2e8cf48d4fe8a098101460209d60621b036140008a015277e97ead9fdffe6eafaf9fbfae7f6efc6f5eafafa9a49ec004196140208a015263e97e8c01671853589596d8001d60c21b036140408a01526ce9ebea7fea9ebf9aa8af9ffe8c196140608a01526140808901919091526c3a7afaa91ffaa7afd8aa2bf3e360421b196140a08901526140c088015260016f074f5f5524f5f78544fdfd7407b9e433606d1b03196140e08801527081526004018080602001828103825260056141008801526b8152602001807f475332303360a01b6141208801527881525060200191505060405180910390fd5b600073ffffffff614140880152663a67ff67ffdf23604a1b19614160880152613a63609a1b196141808801527a3a5fab67f7ff9bdfab67f7ffa7fff7e7ffdbeadbe7bfbffd5bfee360221b196141a0880152613a6360721b196141c0880181905260016d074f5cf5ef7d44fdfd7407b9e43360651b03196141e08901526142008801969096526c016054980800601fd1d4cc8c0d609a1b614220880152614240870194909452623a5f6360621b196142608701526c3a7afa9ffaa7af616a2be7ffa3605a1b19614280870152623a5f6360a21b196142a08701526eb0a0aadb0a1762bb02028bf8461bcd60851b6142c08701527381526004018080602001828103825260058152606142e08701819052682001807f475332303360b81b614300880152600173205494180800645414181014602440e43f56e05d60421b03614320880152663a67ff67ffdea3606a1b1961434088015262e97ead613a6360ba1b0119614360880152600177180800642054980800580008180024152418404002a4011d60421b036143808801526143a087019390935260016d074f5cf5e09d44fdfd7407b9e43360851b03196143c08701526143e0860192909252682001807f475332303560b81b6144008601527b81525060200191505060405180910390fd5b600260008373ffffffff614420860152614440850184905279e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb1961446086018190526ae99ffd9fff7c8c00000001601d60fa1b036144808701526144a0860185905279e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c00196144c0870152653f79ba5bdf23603a1b196144e08701526c3a7f7a1beaabdfe7ff67ffdea360321b196145008701526145208601939093527be97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c00000019614540860152653f79ba5bdf23604a1b196145608601526d3a7f7a1beaabe7ffe7ff67ffdee3603a1b19614580860152613a63608a1b196145a0860152783a5fab67f7ff9bdfab67f7ffa7fff7e7ffe7bfbffd5faadfa360221b196145c0860152653f79ba5bdf2360521b196145e086015275e9fde86faaaf80072b603ad67ed16583a3af1963df0f196146008601526001773733036e3ea57262f16332693c704a67abe098101460209d60421b0361462086015273e97ead9fdffe6eafaf9fbfae7f6efc6f5e806b9a196146408601527ffa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa7f60b2ea26816061466086015266e97ead9fdffe6f64101460209d60da1b036146808601527f505060405180910390a1505050565b6000600454905090565b606060007fbb836146a08601527f10d486368db6bd6f849402fdd73ad53d316b5a4b2644ad6efe0f941286d860006146c08601527f1b8d8d8d8d6040518083838082843780830192505050925050506040518091036146e08601526001772408232323232323231810145808006023205498080062dd60421b0361470086015273e97ead9fdffe757ead9fdffe767ead9fdffe779f196147208601527f0181111561470057fe5b8152602001878152602001868152602001858152602061474086015268e97ead9fdffe7c8c0161611d60ea1b036147608601526ce97ead9fdffe7d7ead9fdffe64196147808601527f50505050505050505050505060405160208183030381529060405280519060206147a08601527f01209050601960f81b600160f81b61478c614878565b8360405160200180857e6147c086015260e6196147e0860152600167168152600101847f60c01b0361480086015278e6e97ead9ffefe7c7ead9fdffe7d7ead9fdffe6bafafafafaf196148208601527f6040516020818303038152906040529150509b9a5050505050505050505050566148408601527f5b61481f614d62565b6148288161564a565b7f5ac6c46c93c8d0e53714ba3b536148608601527fdb3e7c046da994313d7ed0d192028bc7c228b081604051808273ffffffffffff61488086015271e97ead9fdffe6eafaf9fbfae7f6efc6f5eaf196148a08601527f565b60007f47e79534a245952e8b16893a336b85a3d9ea9fa8c573f3d803afb96148c08601527f2a7946921860001b6148a66125e4565b306040516020018084815260200183816148e086015265e97ead9fdfff6514980800609d60d21b036149008601527f935050505060405160208183030381529060405280519060200120905090565b6149208601527f6148fe614d62565b806001600354031015614979576040517f08c379a00000006149408601526681526004018080614960860181905275602001828103825260058152602001807f475332303160501b61498087018190526e8152506020019150506040518091036149a0880181905265e97d8c00000165243f56d8001d60d21b036149c08901526ee9ebea7fea9eb61ca8af9ffe8c0000196149e0890152623a5f63605a1b19614a0089015260016f074f5f5524f5ad5544fdfd7407b9e433603d1b0319614a20890152614a408801859052718103825260058152602001807f475332303360701b614a608901527281525060200191505060405180910390fd5b81614a808901526ae99ffd9fff7a8c00000001601d60fa1b03614aa0890152614ac0880196909652614ae0870194909452614b0086019190915260016d074f5cf5a55544fdfd7407b9e433603d1b0319614b20860152614b40850191909152718103825260058152602001807f475332303560701b614b608501527281525060200191505060405180910390fd5b60614b8085015266e98c000000000163980020dd60da1b03614ba085015270e97ead9fdffe6f7ead9fdffe9fffdf9fff19614bc0850181905261e9a06924152418404002a4011d60b21b03614be086015266e98c0000000001639800215d60da1b03614c00860152614c2085015263fde6e9706718404002a055205d60c21b03614c4085015269e9fde86faaaf9fff9ffe6120dd60f21b03614c6085015267e98c000000000001631800211d60e21b03614c8085015271e97ead9fdffe6f7ead9fdffe9fffdf9fff9e19614ca085015264fde6e96f7d654002a055205d60ca1b03614cc08501526ae9fde86faaaf9ffc9fff7f601d60fa1b03614ce08501527f54809291906001900391905055507ff8d49fc529812e9a7c5c50e69c20f0dccc614d00850152600175036e3ea57262f16332693c704a67abe098101460209d60521b03614d2085015275e97ead9fdffe6eafaf9fbfae7f6efc6f5e7f9ffbabeb19614d408501527f614d2457614d2381612c3e565b5b505050565b60405180604001604052806005614d608501526a081526020017f312e332e360ac1b614d80850152600167205494205596cc1d60921b03614da085015266e9eb9eb1fca89f623a732360da1b0119614dc08501526602028bf8461bcd60cd1b614de08501527c81526004018080602001828103825260058152602001807f4753303331614e00850152648152506020614e208501527f0191505060405180910390fd5b565b600080831415614e185760009050614e39614e408501527f565b6000828402905082848281614e2957fe5b0414614e3457600080fd5b8091614e608501527f50505b92915050565b6000806000836041026020810186015192506040810186614e808501527f0151915060ff60418201870151169350509250925092565b6000808284019050614ea08501527f83811015614e8357600080fd5b8091505092915050565b600060018081111561614ec08501527f4e9b57fe5b836001811115614ea757fe5b1415614ec057600080855160208701614ee08501527f8986f49050614ed0565b600080855160208701888a87f190505b959450505050614f008501527f50565b6000807f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbd614f208501527fa4f558c93c34c860001b9050805491505090565b600081831015614f1a578161614f408501527f4f1c565b825b905092915050565b600082821115614f3357600080fd5b600082614f608501526001732100e4142024541424a454141596d8002018001d60621b03614f8085015260e9623a5f2360aa1b0119614fa0850152600171051853e055e09853e0d596cc96e41418001d60721b03614fc085015262e9ebea623a5ee360ba1b0119614fe08501527f61509b57614fed3a8610614fca573a614fcc565b855b614fdf888a614e6e90916150008501527f9063ffffffff16565b614e0590919063ffffffff16565b91508073ffffffffff61502085015270e99ef7037c6f7eeafd6f9fbfae9fff9fbf1961504085015279028c04181c0c2c44478c9a828282830a84b2bb02028bf8461bcd60351b615060850152698152600401808060200161508085015272828103825260058152602001807f475330313160681b6150a08501527181525060200191505060405180910390fd5b6150c08501527f615140565b6150c0856150b2888a614e6e90919063ffffffff16565b614e05906150e08501527f919063ffffffff16565b91506150cd8482846158b4565b61513f576040517f08615100850152608162061bcd60ed1b016151208501527b29300200c040301000c14081c1293002c0a9301000c03fa3a998189960211b615140850152688152506020019150506151608501527f60405180910390fd5b5b5095945050505050565b6000600454146151c257604061518085015265028bf8461bcd60d51b6151a08501527d81526004018080602001828103825260058152602001807f4753323030006151c0850152658152506020016151e08501527f91505060405180910390fd5b8151811115615239576040517f08c379a0000000615200850152615220840152615240830152615260820152730487eadb000c0880ab0a9582bb02028bf8461bcd60651b6152808201526f815260040180806020018281038252606152a08201526c02c0a9301000c03fa3a999181960991b6152c08201527781525060200191505060405180910390fd5b6000600190506152e08201527f60005b83518110156155b65760008482815181106152d057fe5b60200260200161530082015264e97e8c00016554641418001d60ca1b036153208201526de9ebea7fea9eacbba8af9ffe8c0019615340820152623a5fa360521b196153608201526c3a7afaa91ffaa7ab20ea2bf3e3604a1b19615380820152623a5fa360921b196153a08201526c3a7afaa91ffaa7ab12ea2bdfe3608a1b196153c082015265e9ebeaa49eab623a5f2360d21b01196153e0820152690132bb02028bf8461bcd60b51b6154008201527981526004018080602001828103825260058152602001807f47536154208201526181526232303360e81b0161544082015260017214180800645414181014602440e43f56d8001d606a1b03615460820152663a67ff67ffdf2360921b1961548082015267e97ead9fdffe6f7e613a6360e21b01196154a082015260017214980800580008180024152418404002a4011d606a1b036154c082015262e9eb9e613a6360ba1b01196154e08201526a02a93abb02028bf8461bcd60ad1b6155008201527881526004018080602001828103825260058152602001807f4761552082015260816314cc8c0d60e21b016155408201526001771494180800645414181014602440e43f56e018009800215d60421b03615560820152613a6360921b19615580820152783a5fab67f7ff9bdfab67f7ffa7fff7e7ffe7bfbffd5faadfa3602a1b196155a0820152653f79ba5bdf23605a1b196155c082015276e9fde86faaaf7f6dafaf7f7f9ffefe6eafaf9ead46a9a4196155e082015262e98c01681418005800980020dd60ba1b036156008201526ce97ead9fdffe6f7ead9fdffe9f1961562082015260016a08180018404002a055205d60a21b0361564082015265e9fde86faab0648645a420dd60d21b036156608201527f825160038190555081600481905550505050565b60007f6c9a6c4a39284e37ed6156808201527f1cf53d337577d14212a4870fb976a4366c693b939918d560001b9050818155506156a082015265e99ffe9fffa065141596d8001d60d21b036156c08201526001613a6360421b01605d60f21b036156e082015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f1961570082015264e98c0000016618404002a4011d60ca1b036157208201526ee9eb9ea884a89fbfae80f73c865fff196157408201526481526004016157608201527708080602001828103825260058152602001807f47533130360441b6157808201526c815250602001915050604051806157a082015260016c2440e43f56d80060180018005d609a1b036157c082015268e97ead9fdffe6f7ead613a6360ea1b01196157e082015260016f180800580008180018404002a055205d60821b0361580082015261e9fd653f79ba5bdf2360b21b011961582082015264e97d8c00016605e4155418001d60ca1b036158408201526de9eb9ea74fa89ea7c27d9fff7c9f19615860820152710ad30a746ab2db0ac57abb02028bf8461bcd606d1b6158808201527081526004018080602001828103825260056158a08201526b08152602001807f47533030360a41b6158c08201527881525060200191505060405180910390fd5b5b5050565b60006158e08201526001702018ea41672ee1211810145809006020dd607a1b036159008201527ae97ead9fdffe7d7ead9fdffe6dafafaf9fbfae9fdf7e7cfcfc7ead1961592082015260016e24181014a4183806d808208060145f608a1b03615940820152747c7e7ce9e87cadafafafaf6faf9fdf9fff7dae9fdf196159608201527f84016000896127105a03f13d6000811461595b576020811461596357600093506159808201527f61596e565b81935061596e565b600051158215171593505b50505093925050506159a08201527f56fea26469706673582212203874bcf92e1722cc7bfa0cef1a0985cf0dc3485b6159c082015276a0663db3747ccdf1605df53464736f6c6343000706003360481b6159e08201525b6025546000198114620044855760010190816025556020815191016000f590813f156200adb857565b60405162461bcd60e51b815260206004820152600e60248201526d1b081b9bdd0819195c1b1bde595960921b6044820152606490fd5b91906200ae049061010080855284019062000ce9565b6001602084015260e06020600092836040870152858103606087015283815201938260808201528260a08201528260c08201520152565b9060018060a01b0390816200ae5662002cf360225462000ae5565b16156200ae6e575b505050620008c460225462000ae5565b8116156200b019575b506200ae8962002cf360225462000ae5565b906000805160206200d1c0833981519152803b15620005d457604080516318caf8e360e31b8082526001600160a01b039590951660048201526024810191909152600f60448201526e31b7bab731b4b629b0b332a0b2323960891b606482015260009390848160848183875af18015620006fa576200b002575b50813b1562002fb757604080519182526001600160a01b03841660048301526024820152601060448201526f31b7bab731b4b629b0b332a7bbb732b960811b60648201529083908290608490829084905af18015620006fa576200afeb575b506200af7d6200af7162003454565b9162001c6683620034c6565b6200af8e62002cf360225462000ae5565b90813b15620007005782916200afbb9160405194858094819363b63e800d60e01b8352600483016200adee565b03925af18015620006fa576200afd4575b80806200ae5e565b80620006ec6200afe49262000766565b386200afcc565b80620006ec6200affb9262000766565b386200af62565b80620006ec6200b0129262000766565b386200af03565b60009060206200b0816200b03062002cf362005a31565b836200b03b62004a19565b604051631688f0b960e01b81526001600160a01b039093166004840152606060248401526000606484015260036044840152919586939190921691839182906084820190565b03925af18015620006fa576200b0bd926000916200b0c4575b5060228054919092166001600160a01b03166001600160a01b0319909116179055565b386200ae77565b6200b0e0915060203d811162000733576200072281836200082a565b386200b09a565b60101c6001600160a01b031690565b604051906200b1058262000780565b6001825260006020830152565b92916200b13a60409160039360018060a01b0316865260606020870152606086019062000ddf565b930152565b90816020910312620005d457518015158103620005d45790565b620008c4939160018060a01b031681526200b18860009384602084015261014080604085015283019062000ddf565b928060608301528060808301528060a08301528060c08301528060e083015261010082015261012081840391015262000ddf565b92620008c494926200b1e99260018060a01b03168552602085015261014080604086015284019062000ddf565b9160008060608301528060808301528060a08301528060c08301528060e083015261010082015261012081840391015262000ddf565b604051906200b22e8262000780565b6016825275195e1958d51c985b9cd858dd1a5bdb8819985a5b195960521b6020830152565b909360606200b292959493946200b26c8486886200b480565b6040516338d07aa960e21b81526004810192909252602482015295869081906044820190565b03816000805160206200d1c08339815191525afa938415620006fa5760008080966200b337575b6020969750600092916200b2da6200b2e9926040519a8b938b85016200b407565b03601f1981018952886200082a565b6200b30b6040519788968795869463353b090160e11b8652600486016200b1bc565b03926001600160a01b03165af18015620006fa57620037919160009162000a065750620009fd6200b21f565b5050602094506000906200b2e96200b3636200b2da9860603d811162000a7e5762000a6881836200082a565b9199909198505091925050866200b2b9565b6000805160206200d1c083398151915291823b15620005d4576200b3c29260009260405180958194829363a34edc0360e01b84521515600484015260406024840152604483019062000ddf565b03915afa8015620006fa576200b3d55750565b620037919062000766565b90816060910312620005d457805160ff81168103620005d457916040602083015192015190565b91604193918352602083015260ff60f81b9060f81b1660408201520190565b610120919493929460018060a01b031681526200b45760009586602084015261014080604085015283019062000ddf565b948060608301528060808301528060a08301528060c08301528060e08301526101008201520152565b60405163057ff68760e51b8152602093919290916001600160a01b03168483600481845afa918215620006fa576200b4dc9486946000946200b50f575b50604051631b1a23ef60e31b815295869485938493600485016200b426565b03915afa918215620006fa576000926200b4f557505090565b620008c49250803d106200367e576200366e81836200082a565b6200b52b919450853d87116200367e576200366e81836200082a565b92386200b4bd56fe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c6343000813003360a08060405234610031573060805261184590816100378239608051818181610b7801528181610c730152610ec60152f35b600080fdfe608080604052600436101561001357600080fd5b600090813560e01c908163025313a214611173575080631c3db16d1461113b57806326a0754c146110ff5780633659cfe614610ea15780634f1ef28614610c2457806352d1902d14610b65578063564a565d14610a255780635ea7b4fc146109d7578063715018a61461098c5780637a1d3756146107af57806388d5b7321461073c5780638da5cb5b1461070f578063c13517e1146103f9578063c4d66de8146103cc578063d98493f614610391578063da35a26f1461020a578063f2fde38b14610179578063f6506db4146101385763f7434ea9146100f257600080fd5b34610135576020366003190112610135576004356001600160401b0381116101315761012290369060040161131e565b50506020609754604051908152f35b5080fd5b80fd5b5034610135576080366003190112610135576024356001600160401b0381116101315761016990369060040161131e565b50506101736111b3565b506116da565b503461013557602036600319011261013557610193611198565b61019b61134b565b6001600160a01b038116156101b6576101b3906113aa565b80f35b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b5034610135576040366003190112610135576004356102276111c9565b82549060ff8260081c161592838094610384575b801561036d575b15610311576102956020927fc05490fc8f8e095831ea3823f005dd0661528380328aa5c3b7348a45244223be9486600160ff198316178955610300575b5061029060ff885460081c166115d8565b6113aa565b6102ae60ff865460081c166102a9816115d8565b6115d8565b6102b7336113aa565b80609755604051908152a16102c95780f35b61ff001981541681557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a180f35b61ffff19166101011787553861027f565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b1580156102425750600160ff841614610242565b50600160ff84161061023b565b5034610135576040366003190112610135576004356001600160401b038111610131576103c290369060040161131e565b50506101736111c9565b5034610135576020366003190112610135576101b36103e9611198565b61029060ff845460081c166115d8565b506040366003190112610135576001600160401b03906024358281116101315761042790369060040161131e565b90926002606554146106ca57600260655560975434106106b857609854916040519460c0860191868310848411176106a25761046a926040523387523691611238565b906020850191825260043560408601523460608601528360808601528360a0860152600160401b83101561068e57600183016098556104a88361126f565b92909261067a57855183546001600160a01b0319166001600160a01b0391909116178355518051918211610666576104e360018401546112a4565b601f8111610622575b50602090601f83116001146105b057918060a0949260059488926105a5575b50508160011b916000199060031b1c19161760018201555b604086015160028201556060860151600382015560808601516004820155019301519260028410156105915760209360ff8019835416911617905560405191817f141dfc18aa6a56fc816f44f0e9e2f1ebc92b15ab167770e17db5b084c10ed995339280a360016065558152f35b634e487b7160e01b83526021600452602483fd5b01519050388061050b565b906001840186526020862091865b601f198516811061060a57509260a0949260019260059583601f198116106105f1575b505050811b016001820155610523565b015160001960f88460031b161c191690553880806105e1565b919260206001819286850151815501940192016105be565b60018401865260208620601f840160051c81016020851061065f575b601f830160051c820181106106545750506104ec565b87815560010161063e565b508061063e565b634e487b7160e01b85526041600452602485fd5b634e487b7160e01b85526004859052602485fd5b634e487b7160e01b84526041600452602484fd5b634e487b7160e01b600052604160045260246000fd5b60405163e4216b3160e01b8152600490fd5b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b5034610135578060031936011261013557602061072a611638565b6040516001600160a01b039091168152f35b503461013557602036600319011261013557610756611198565b3380835260996020908152604080852080546001600160a01b0319166001600160a01b0390951694851790555192835290917f2b87bb26d58aa2d56b59c2b23a53a6959f68d4547492bda44fb5e68b0fa38b3f9190a280f35b5034610135576060366003190112610135576004356001600160a01b03602435816107d86111b3565b169182855260996020528060408620541680331460001461096a57506107fd8461126f565b50906002820154831161095857600582019081549160ff8316600281101561094457600114610932576001600485019386855560ff1916179055868080806003870154335af161084b61150f565b50156108fb5786925416905490803b156108f75760448392604051948593849263188d362b60e11b84528a600485015260248401525af180156108ec576108bc575b5060207f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e7562227691604051908152a380f35b9093906001600160401b0381116108d85760405292602061088d565b634e487b7160e01b82526041600452602482fd5b6040513d87823e3d90fd5b8280fd5b60405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b6044820152606490fd5b60405163bda17d9560e01b8152600490fd5b634e487b7160e01b89526021600452602489fd5b6040516309efd47960e41b8152600490fd5b60405163d0774c9960e01b81529081906109889033600484016116c0565b0390fd5b50346101355780600319360112610135576109a561134b565b603380546001600160a01b0319811690915581906001600160a01b03166000805160206117708339815191528280a380f35b5034610135576020366003190112610135577fb1484c2bf00d94a00783b6081ebc5f5d02be4675f6eb8cf4c0c95bfe5a3f06ed6020600435610a1761134b565b80609755604051908152a180f35b503461013557602080600319360112610131576004356098548110156108f757610a4e9061126f565b5060018060a01b038154169160019182810160405180948790835493610a73856112a4565b94858552878382169182600014610b43575050600114610b07575b5050610a9c925003846111fa565b600281015492610ace60038301549160c060ff60056004870154960154169560405198895288015260c08701906112de565b936040860152606085015260808401526002811015610af35782935060a08301520390f35b634e487b7160e01b84526021600452602484fd5b86925089528189209089915b858310610b2b575050610a9c93508201013880610a8e565b8054838a018501528894508793909201918101610b13565b9250935050610a9c94915060ff191682840152151560051b8201013880610a8e565b50346101355780600319360112610135577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610bbe5760206040516000805160206117508339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b50604036600319011261013557610c39611198565b6024356001600160401b0381116108f757366023820112156108f757610c69903690602481600401359101611238565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116929190610ca3308514156113e1565b610cc0600080516020611750833981519152948286541614611430565b610cc8611638565b8133911603610e7c576000805160206117108339815191525460ff1615610cf55750506101b3915061147f565b82919216604051936352d1902d60e01b85526020948581600481865afa879181610e49575b50610d695760405162461bcd60e51b815260048101879052602e60248201526000805160206117f083398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b94939403610e0457610d7a8261147f565b6000805160206117908339815191528580a283835115801590610dfc575b610da4575b5050505080f35b80610df29460405194610db6866111df565b602786526000805160206117d083398151915281870152660819985a5b195960ca1b604087015281519101845af4610dec61150f565b9161153f565b5038808083610d9d565b506001610d98565b60405162461bcd60e51b815260048101849052602960248201526000805160206117b08339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d8311610e75575b610e6181836111fa565b81010312610e7157519038610d1a565b8780fd5b503d610e57565b610988610e87611638565b60405163163678e960e01b815291829133600484016116c0565b50346101355760208060031936011261013157610ebc611198565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116610ef3308214156113e1565b610f10600080516020611750833981519152918383541614611430565b610f18611638565b8233911603610e7c57604051848101929091906001600160401b038411838510176110eb578360405286835260ff6000805160206117108339815191525416600014610f6c57505050506101b3915061147f565b84939416906040516352d1902d60e01b81528681600481865afa8891816110b8575b50610fdd5760405162461bcd60e51b815260048101889052602e60248201526000805160206117f083398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9594950361107357908591610ff18461147f565b6000805160206117908339815191528380a280511580159061106c575b61101b575b505050505080f35b6110619482916000805160206117d08339815191526040519661103d886111df565b60278852870152660819985a5b195960ca1b60408701525190845af4610dec61150f565b503880808381611013565b508161100e565b60405162461bcd60e51b815260048101859052602960248201526000805160206117b08339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508781813d83116110e4575b6110d081836111fa565b810103126110e057519038610f8e565b8880fd5b503d6110c6565b634e487b7160e01b87526041600452602487fd5b5034610135576020366003190112610135576020906001600160a01b039060409082611129611198565b16815260998452205416604051908152f35b503461013557602036600319011261013557606090600461115c813561126f565b500154906040519182528060208301526040820152f35b9050346101315781600319360112610131576033546001600160a01b03168152602090f35b600435906001600160a01b03821682036111ae57565b600080fd5b604435906001600160a01b03821682036111ae57565b602435906001600160a01b03821682036111ae57565b606081019081106001600160401b038211176106a257604052565b601f909101601f19168101906001600160401b038211908210176106a257604052565b6001600160401b0381116106a257601f01601f191660200190565b9291926112448261121d565b9161125260405193846111fa565b8294818452818301116111ae578281602093846000960137010152565b60985481101561128e5760986000526006602060002091020190600090565b634e487b7160e01b600052603260045260246000fd5b90600182811c921680156112d4575b60208310146112be57565b634e487b7160e01b600052602260045260246000fd5b91607f16916112b3565b919082519283825260005b84811061130a575050826000602080949584010152601f8019910116010190565b6020818301810151848301820152016112e9565b9181601f840112156111ae578235916001600160401b0383116111ae57602083818601950101116111ae57565b611353611638565b336001600160a01b039091160361136657565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b031982168117909255909116600080516020611770833981519152600080a3565b156113e857565b60405162461bcd60e51b815260206004820152602c602482015260008051602061173083398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b1561143757565b60405162461bcd60e51b815260206004820152602c602482015260008051602061173083398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b156114b45760008051602061175083398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b3d1561153a573d906115208261121d565b9161152e60405193846111fa565b82523d6000602084013e565b606090565b919290156115a15750815115611553575090565b3b1561155c5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156115b45750805190602001fd5b60405162461bcd60e51b8152602060048201529081906109889060248301906112de565b156115df57565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b6033546001600160a01b0390811690813b611651575090565b604051638da5cb5b60e01b8152602081600481865afa918291600093611681575b505061167c575090565b905090565b602093919293813d82116116b8575b8161169d602093836111fa565b81010312610131575191821682036101355750903880611672565b3d9150611690565b6001600160a01b0391821681529116602082015260400190565b60405162461bcd60e51b815260206004820152600d60248201526c139bdd081cdd5c1c1bdc9d1959609a1b6044820152606490fdfe4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a2646970667358221220682e6f4b37f25e1eef570e88bdd8faa12bd4a907f5c35258e7c445db1902002264736f6c634300081300330000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d9081016040528093929190818152602001838380828437600081840152601f1937fa166cbdbfbb1561ccd9ea985ec0218b5e68502e230525f544285b2bdf3d7e01838380828437600081840152601f19601f820116905080830192505050505080601f0160208091040260200160405190810160405280939291908181526020a2646970667358221220899463f2d6ab50ab01ac7fae164374a3fad823a091e3eb6b353ab13a448f8f5864736f6c63430008130033","sourceMap":"275:2119:94:-:0;;;;3166:4:19;275:2119:94;;-1:-1:-1;;275:2119:94;3166:4:19;275:2119:94;;;;;;-1:-1:-1;;;;;275:2119:94;;;3166:4:19;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;671:82:111;;;;275:2119:94;;671:82:111;275:2119:94;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;;2401:42:93;275:2119:94;;-1:-1:-1;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;;;;;;;;;;;;;;824:4:17;275:2119:94;;;824:4:17;275:2119:94;821:1:112;275:2119:94;-1:-1:-1;852:1:112;275:2119:94;1848:7:93;;275:2119:94;;;;;;;;1886:42:93;275:2119:94;1886:42:93;275:2119:94;;;1886:42:93;275:2119:94;2266:5:93;;275:2119:94;;;;;:::i;:::-;;;;;;;-1:-1:-1;275:2119:94;;;2356:9:93;275:2119:94;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;2356:9:93;275:2119:94;2401:42:93;275:2119:94;;;2401:42:93;275:2119:94;;;;;;;;;;;;2356:9:93;-1:-1:-1;275:2119:94;-1:-1:-1;275:2119:94;;;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;275:2119:94;;;-1:-1:-1;275:2119:94;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;-1:-1:-1;275:2119:94;;-1:-1:-1;275:2119:94;;-1:-1:-1;275:2119:94;;;;;;;;;;;;2401:42:93;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;275:2119:94;;-1:-1:-1;275:2119:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;275:2119:94;;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610156200001357600080fd5b60003560e01c8062b1fad714620005c2578063023a6f4314620005bc578063030e400614620005b65780630522b7db14620005b05780630688b13514620005aa57806308c24f9f14620005a457806308dbbb03146200059e5780630f166ad41462000598578063174eedde14620004a85780631ae726d914620005925780631b96dce6146200058c5780631d8fcc1014620005865780631e7bcb2e14620005805780631ed7831c146200057a5780632ade388014620005745780632e0f2625146200056e5780632f99c6cc1462000568578063352c94a7146200056257806337d1c404146200055c578063388aef5c1462000556578063392f37e914620005505780633e5e3c23146200054a5780633f26479e14620005445780633f7286f4146200053e57806349ef42c114620005385780634bf4ba211462000532578063587c1243146200052c5780635aff599914620005265780635d1222aa14620005205780635d6b4bc2146200051a5780635e2dd44214620005145780636050f2f814620004a257806366d003ac146200050e57806366d9a9a014620005085780636a38dd0a14620005025780636c53db9a14620004fc5780636db5251014620004f657806370a3294414620004f057806374d9284e14620004a8578063759c9a8614620004ea5780637658524d14620004e457806379e62d0d14620004de5780637b2edf3214620004d85780637cbe79ed14620004d25780637f6a80df14620004cc578063829e423f14620004a857806382bfefc814620004c657806385226c8114620004c057806385294f1814620004ba578063861ceb6914620004b4578063896546a114620004ae5780638c7408c414620004a85780638e0d1a5014620004a25780638e3c2493146200049c578063916a17c614620004965780639352fad2146200049057806393892107146200048a578063a0cf0aea1462000484578063a407c67a146200047e578063aa3744bd1462000478578063b3e9b4fd1462000472578063b5508aa9146200046c578063ba414fa61462000466578063bb0504cd1462000460578063c0406226146200045a578063c1f2a6411462000454578063caa12add146200044e578063d1e82b581462000448578063d1f2cd881462000442578063d23727ed146200043c578063d5bee9f51462000436578063da4bf0871462000430578063dac4eb16146200042a578063dac770b31462000424578063e070e0ab146200041e578063e20c9f711462000418578063e99ce9111462000412578063ef0d790f146200040c578063f4d914e61462000406578063f69d511f1462000400578063f8ccbf4714620003fa5763fa7626d414620003f457600080fd5b620033e2565b620033bd565b6200337c565b620032db565b6200327c565b6200314d565b620030e4565b62003031565b62002bd4565b62002b7a565b62002a5f565b62002a08565b620029d7565b6200297d565b62002921565b620028f0565b6200288a565b62002858565b62002839565b62002810565b62002770565b620026c3565b62002500565b62002405565b620023d4565b620023a9565b6200238e565b62002226565b62002208565b6200168a565b62000bfd565b620021dd565b620021b2565b620020b9565b62001f29565b62001eeb565b62001ec0565b62001e6a565b62001e4c565b62001d51565b62001d31565b62001cd9565b62001ba1565b62001b3c565b62001b0d565b62001aef565b620017d4565b620016b5565b6200166f565b62001596565b62001576565b6200151a565b620014fc565b620014c6565b620014a7565b6200143e565b6200141f565b620013b6565b620012bb565b6200129b565b62001232565b620010b5565b62000f9c565b62000f77565b62000edf565b62000d3b565b62000ccb565b62000cad565b62000c53565b62000c1b565b62000be0565b62000bc0565b62000b72565b62000b1c565b62000af1565b62000a86565b620008c7565b620005ec565b6000910312620005d457565b600080fd5b6001600160a01b03909116815260200190565b34620005d4576000806003193601126200073b576200060a62003470565b6200065b6040516020810190620006368162000627848762003686565b03601f1981018352826200082a565b5190206040516001625e79b760e01b0319815260048101919091529081906024820190565b03916020826000805160206200d1c08339815191529481865afa928315620006fa578492839462000704575b50803b156200070057620006b3916040519586809481936318caf8e360e31b83528860048401620036b7565b03925af1918215620006fa57620006d892620006dc575b5060405191829182620005d9565b0390f35b80620006ec620006f39262000766565b80620005c8565b38620006ca565b620035e3565b8280fd5b6200072b91945060203d811162000733575b6200072281836200082a565b8101906200369f565b923862000687565b503d62000716565b80fd5b6001600160a01b03811603620005d457565b634e487b7160e01b600052604160045260246000fd5b6001600160401b0381116200077a57604052565b62000750565b604081019081106001600160401b038211176200077a57604052565b60c081019081106001600160401b038211176200077a57604052565b602081019081106001600160401b038211176200077a57604052565b608081019081106001600160401b038211176200077a57604052565b610f0081019081106001600160401b038211176200077a57604052565b615a0081019081106001600160401b038211176200077a57604052565b601f909101601f19168101906001600160401b038211908210176200077a57604052565b6001600160401b0381116200077a57601f01601f191660200190565b92919262000878826200084e565b916200088860405193846200082a565b829481845281830111620005d4578281602093846000960137010152565b9080601f83011215620005d457816020620008c4933591016200086a565b90565b34620005d4576080366003190112620005d457600435620008e8816200073e565b60443590620008f7826200073e565b606435906001600160401b038211620005d4576200091e62000956923690600401620008a6565b9060606200092e8284876200b480565b6040516338d07aa960e21b815260248035600483015281019190915293849081906044820190565b03816000805160206200d1c08339815191525afa918215620006fa57620009d09460209460008091819662000a3b575b5060009291620009a3620009b2926040519889938b85016200b407565b03601f1981018752866200082a565b60405163353b090160e11b815296879586948593600485016200b159565b03926001600160a01b03165af18015620006fa5762000a049160009162000a06575b50620009fd6200b21f565b906200b375565b005b62000a2c915060203d811162000a33575b62000a2381836200082a565b8101906200b13f565b38620009f2565b503d62000a17565b620009a396506000939250620009b2915062000a719060603d811162000a7e575b62000a6881836200082a565b8101906200b3e0565b9750929390915062000986565b503d62000a5c565b34620005d4576000806003193601126200073b5760405162000aa88162000780565b6013815272383937b334b63298afb737ba20a6b2b6b132b960691b60208201526200065b6040516020810190620006368162000627848762003686565b6001600160a01b031690565b34620005d4576000366003190112620005d4576022546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200073b5760405162000b3e8162000780565b600a8152693932b1b4b834b2b73a1960b11b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576040366003190112620005d457602062000bae60043562000b99816200073e565b6024359062000ba8826200073e565b6200ae3b565b6040516001600160a01b039091168152f35b34620005d4576000366003190112620005d4576020602754604051908152f35b34620005d4576000366003190112620005d4576020604051308152f35b34620005d4576000366003190112620005d457602060405160008152f35b34620005d4576020366003190112620005d457602062000bae60043562000c42816200073e565b62000c4c62004a19565b906200ae3b565b34620005d4576000806003193601126200073b5760405162000c758162000780565b600e81526d383937b334b632992fb7bbb732b960911b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000366003190112620005d457602060405160038152f35b34620005d4576000806003193601126200073b576200060a6200351b565b90815180825260208080930193019160005b82811062000d0a575050505090565b83516001600160a01b03168552938101939281019260010162000cfb565b906020620008c492818152019062000ce9565b34620005d4576000806003193601126200073b5760405180918260195480845260208094019060198452848420935b8582821062000d9a5750505062000d84925003836200082a565b620006d860405192828493845283019062000ce9565b85546001600160a01b031684526001958601958895509301920162000d6a565b60005b83811062000dce5750506000910152565b818101518382015260200162000dbd565b9060209162000dfa8151809281855285808601910162000dba565b601f01601f1916010190565b90815180825260208092019182818360051b82019501936000915b84831062000e325750505050505090565b909192939495848062000e4e83856001950387528a5162000ddf565b980193019301919493929062000e21565b602080820190808352835180925260409283810182858560051b8401019601946000925b85841062000e95575050505050505090565b90919293949596858062000ecd600193603f1986820301885286838d51878060a01b0381511684520151918185820152019062000e06565b99019401940192959493919062000e83565b34620005d4576000806003193601126200073b57602090815462000f0381620011a8565b9160409362000f15855194856200082a565b8284528082528082208185015b84841062000f3957865180620006d8888262000e5f565b600283600192895162000f4c8162000780565b848060a01b03865416815262000f64858701620037b6565b8382015281520192019301929062000f22565b34620005d4576000366003190112620005d4576020604051670de0b6b3a76400008152f35b34620005d4576000366003190112620005d4576030546040516001600160a01b039091168152602090f35b90600182811c9216801562000ff9575b602083101462000fe357565b634e487b7160e01b600052602260045260246000fd5b91607f169162000fd7565b9060009291805491620010178362000fc7565b9182825260019384811690816000146200107e57506001146200103b575b50505050565b90919394506000526020928360002092846000945b8386106200106957505050500101903880808062001035565b80548587018301529401938590820162001050565b9294505050602093945060ff191683830152151560051b0101903880808062001035565b906020620008c492818152019062000ddf565b34620005d4576000806003193601126200073b5760405181602f54620010db8162000fc7565b808452906001908181169081156200117d57506001146200111f575b620006d8846200110a818803826200082a565b60405191829160208352602083019062000ddf565b602f8352602094507fa813484aef6fb598f9f753daf162068ff39ccea4075cb95e1a30f86995b5b7ee5b828410620011695750505081620006d8936200110a9282010193620010f7565b805485850187015292850192810162001149565b620006d896506200110a9450602092508593915060ff191682840152151560051b82010193620010f7565b6001600160401b0381116200077a5760051b60200190565b81601f82011215620005d457803591620011da83620011a8565b92620011ea60405194856200082a565b808452602092838086019260051b820101928311620005d4578301905b82821062001216575050505090565b838091833562001226816200073e565b81520191019062001207565b34620005d4576060366003190112620005d45760043562001253816200073e565b6024359062001262826200073e565b604435906001600160401b038211620005d4576020926200128c62001293933690600401620011c0565b9162004298565b604051908152f35b34620005d4576000366003190112620005d4576020602d54604051908152f35b34620005d4576000806003193601126200073b57601554604051918281601654620012e68162000fc7565b8084529060019081811690811562001391575060011462001330575b505062001312925003836200082a565b620006d8604051928392835260406020840152604083019062000ddf565b601685527fd833147d7dc355ba459fc788f669e58cfaf9dc25ddcd0702e87d69c7b5124289946020935091905b81831062001378575050620013129350820101388062001302565b855488840185015294850194879450918301916200135d565b9150506200131294506020925060ff191682840152151560051b820101388062001302565b34620005d4576000806003193601126200073b57604051809182601b54808452602080940190601b8452848420935b85828210620013ff5750505062000d84925003836200082a565b85546001600160a01b0316845260019586019588955093019201620013e5565b34620005d4576000366003190112620005d45760206040516127108152f35b34620005d4576000806003193601126200073b57604051809182601a54808452602080940190601a8452848420935b85828210620014875750505062000d84925003836200082a565b85546001600160a01b03168452600195860195889550930192016200146d565b34620005d4576000366003190112620005d457602062000bae62005a31565b34620005d4576000366003190112620005d457620006d8620014e76200340a565b60405191829160208352602083019062000ce9565b34620005d4576000806003193601126200073b576200060a62003577565b34620005d4576000806003193601126200073b576040516200153c8162000780565b601081526f726563697069656e744164647265737360801b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000366003190112620005d4576020602554604051908152f35b34620005d4576020366003190112620005d457600460808135620015ba816200073e565b6040516302506b8760e41b815292839182906001600160a01b03165afa8015620006fa57600090620015f2575b604051908152602090f35b6080823d821162001626575b816200160d608093836200082a565b810103126200073b57506040620006d8910151620015e7565b3d9150620015fe565b6020600319820112620005d457600435906001600160401b038211620005d45780602383011215620005d457816024620008c4936004013591016200086a565b34620005d45762000a0462001684366200162f565b6200413e565b34620005d4576000366003190112620005d4576028546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200073b57604051620016d78162000780565b60098152681c9958da5c1a595b9d60ba1b60208201526200065b6040516020810190620006368162000627848762003686565b6001600160e01b0319169052565b602080820190808352835180925260409283810182858560051b840101960194600080935b8685106200175057505050505050505090565b909192939480969798603f198382030186528951826060818885019360018060a01b038151168652015193888382015284518094520192019085905b808210620017af5750505090806001929a0195019501939695949291906200173d565b82516001600160e01b03191684528a949384019390920191600191909101906200178c565b34620005d4576000366003190112620005d457601e54620017f581620011a8565b6200180460405191826200082a565b818152601e60009081529160207f50bb669a95c7b50b7e8a6f09454034b2b14cf2b85c730dca9a539ca82cb6e3508184015b8386106200184e5760405180620006d8878262001718565b826040516200185d8162000780565b83546001600160a01b031681526040516001850180548083526200188b602084015b92600052602060002090565b906000915b81600784011062001a2f57938660029796948294620019029460019b9854918482821062001a13575b828210620019ee575b828210620019c9575b828210620019a4575b8282106200197f575b8282106200195a575b82821062001936575b501062001915575b50905003826200082a565b8382015281520192019501949062001836565b6200192c9082906001600160e01b0319166200170a565b01869038620018f7565b84620019508f939663ffffffff60e01b87851b166200170a565b01930184620018ef565b84620019758f939663ffffffff60e01b8760401b166200170a565b01930184620018e6565b846200199a8f939663ffffffff60e01b8760601b166200170a565b01930184620018dd565b84620019bf8f939663ffffffff60e01b8760801b166200170a565b01930184620018d4565b84620019e48f939663ffffffff60e01b8760a01b166200170a565b01930184620018cb565b8462001a098f939663ffffffff60e01b8760c01b166200170a565b01930184620018c2565b8462001a258f93968660e01b6200170a565b01930184620018b9565b939495509091600161010060089262001ade87548d60e062001a548584831b6200170a565b6001600160e01b03199162001ad490838560c062001a798a850183831b85166200170a565b62001ac960a062001a9260408d018686841b166200170a565b62001abb8c868660609260809062001ab18582018585851b166200170a565b01921b166200170a565b8b01848460401b166200170a565b8901921b166200170a565b840191166200170a565b019401920190889594939262001890565b34620005d4576000806003193601126200073b576200060a6200349b565b34620005d4576000366003190112620005d45760215460405160109190911c6001600160a01b03168152602090f35b34620005d4576060366003190112620005d45760043562001b5d816200073e565b604435906001600160401b038211620005d45762001b8462000a04923690600401620008a6565b602154602480549035939160101c6001600160a01b03166200b253565b34620005d4576000806003193601126200073b5762001bbf6200340a565b62001bc96200351b565b62001be66040516020810190620006368162000627848762003686565b03916020826000805160206200d1c08339815191529481865afa928315620006fa578592839462001cb4575b50803b15620007005762001c3e916040519687809481936318caf8e360e31b83528860048401620036b7565b03925af1908115620006fa57620006d89362001c6c9262001c9d575b5062001c6683620034c6565b6200350c565b62001c9062001c8462001c7e62003549565b620036db565b5062001c6683620034ea565b6040519182918262000d28565b80620006ec62001cad9262000766565b3862001c5a565b62001cd191945060203d811162000733576200072281836200082a565b923862001c12565b34620005d4576000806003193601126200073b5760405162001cfb8162000780565b600c81526b1b9bd7dc9958da5c1a595b9d60a21b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000366003190112620005d4576020602454604051908152f35b34620005d4576000806003193601126200073b5762001d6f6200340a565b62001d7962003470565b62001d966040516020810190620006368162000627848762003686565b03916020826000805160206200d1c08339815191529481865afa928315620006fa578592839462001e27575b50803b15620007005762001dee916040519687809481936318caf8e360e31b83528860048401620036b7565b03925af1908115620006fa57620006d89362001e159262001c9d575062001c6683620034c6565b62001c9062001c8462001c7e6200349b565b62001e4491945060203d811162000733576200072281836200082a565b923862001dc2565b34620005d4576000806003193601126200073b576200060a62003549565b34620005d4576000806003193601126200073b5760405162001e8c8162000780565b600a81526930b63637afb7bbb732b960b11b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000366003190112620005d457602b546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d4576029546040516001600160a01b039091168152602090f35b906020620008c492818152019062000e06565b34620005d4576000806003193601126200073b57601d5462001f4b81620011a8565b9060409262001f5d845193846200082a565b818352601d815260207f6d4407e7be21f808e6509aa9fa9143369579dd7d760fe20a2c09680fc146134f8185015b84841062001fa257865180620006d8888262001f16565b6001838192895162001fc28162001fba818962001004565b03826200082a565b81520192019301929062001f8b565b60031115620005d457565b60c435906004821015620005d457565b60c0906083190112620005d4576040519062002008826200079c565b8160843562002017816200073e565b815260a43562002027816200073e565b602082015260c435604082015260e435606082015261010435608082015260a061012435910152565b60c090610103190112620005d457604051906200206d826200079c565b81610104356200207d816200073e565b8152610124356200208e816200073e565b602082015261014435604082015261016435606082015261018435608082015260a06101a435910152565b34620005d4576101a0366003190112620005d457600435620020db816200073e565b602435620020e9816200073e565b60443591620020f8836200073e565b60643562002106816200073e565b60843562002114816200073e565b60a43590620021238262001fd1565b6200212d62001fdc565b9260c03660e3190112620005d457620006d896620021a2966040519662002154886200079c565b60e43562002162816200073e565b88526101043562002173816200073e565b60208901526101243560408901526101443560608901526101643560808901526101843560a0890152620048ba565b6040519081529081906020820190565b34620005d4576000366003190112620005d457602c546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d4576023546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200073b576200060a620035a5565b34620005d4576000366003190112620005d457601f546200224781620011a8565b6200225660405191826200082a565b818152601f60009081529160207fa03837a25210ee280c2113ff4b77ca23440b19d4866cca721c801278fd08d8078184015b838610620022a05760405180620006d8878262001718565b82604051620022af8162000780565b83546001600160a01b03168152604051600185018054808352620022d6602084016200187f565b906000915b8160078401106200235857938660029796948294620023459460019b9854918482821062001a1357828210620019ee57828210620019c957828210620019a4578282106200197f578282106200195a5782821062001936575010620019155750905003826200082a565b8382015281520192019501949062002288565b93949550909160016101006008926200237d87548d60e062001a548584831b6200170a565b0194019201908895949392620022db565b34620005d45762000a04620023a3366200162f565b62003a4a565b34620005d4576000366003190112620005d457602a546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d457602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b34620005d4576000806003193601126200073b57620024236200340a565b6200242d62003577565b6200244a6040516020810190620006368162000627848762003686565b03916020826000805160206200d1c08339815191529481865afa928315620006fa5785928394620024db575b50803b156200070057620024a2916040519687809481936318caf8e360e31b83528860048401620036b7565b03925af1908115620006fa57620006d893620024c99262001c9d575062001c6683620034c6565b62001c9062001c8462001c7e620035a5565b620024f891945060203d811162000733576200072281836200082a565b923862002476565b34620005d4576000806003193601126200073b57604051620025228162000780565b600a815269726563697069656e743160b01b60208201526200065b6040516020810190620006368162000627848762003686565b6020906063190112620005d457604051906200257282620007b8565b6064358252565b634e487b7160e01b600052602160045260246000fd5b600311156200259a57565b62002579565b9060038210156200259a5752565b9060048210156200259a5752565b610240620008c49260208352620025f5602084018251606080918051845260208101516020850152604081015160408501520151910152565b62002609602082015160a0850190620025a0565b6200261d604082015160c0850190620025ae565b60608101515160e084015260808181015180516001600160a01b03908116610100878101919091526020830151909116610120870152604082015161014087015260608201516101608701529181015161018086015260a001516101a08501529060a08101516001600160a01b03166101c085015260c08101516001600160a01b03166101e085015260e081015161020085015201519161022080820152019062000ce9565b34620005d4576101a0366003190112620005d457600435620026e5816200073e565b60243590620026f48262001fd1565b604435906004821015620005d4576200270d3662002556565b92620027193662001fec565b6101443593906001600160401b038511620005d457620006d8956200274762002763963690600401620011c0565b92610164359462002758866200073e565b61018435966200453e565b60405191829182620025bc565b34620005d4576000806003193601126200073b57601c546200279281620011a8565b90604092620027a4845193846200082a565b818352601c815260207f0e4562a10381dec21b205ed72637e6b1b523bdd0e4d4d50af5cd23dd4500a2118185015b848410620027e957865180620006d8888262001f16565b60018381928951620028018162001fba818962001004565b815201920193019290620027d2565b34620005d4576000366003190112620005d45760206200282f620035ef565b6040519015158152f35b34620005d4576000366003190112620005d457602062000bae62004a19565b34620005d4576000806003193601126200073b57620028876040516200287e81620007b8565b82815262003a4a565b80f35b34620005d45760a0366003190112620005d457600435620028ab816200073e565b60443590620028ba826200073e565b606435916001600160401b038311620005d457620028e162000a04933690600401620008a6565b9060843592602435906200b253565b34620005d4576000366003190112620005d457602060405173dd4bda7bcda544d6da2aea8ab8b0e63d2f6dc7378152f35b34620005d4576000806003193601126200073b57604051620029438162000780565b601081526f3837b7b62fb737ba20a6b0b730b3b2b960811b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000806003193601126200073b576040516200299f8162000780565b600e81526d383937b334b63298afb7bbb732b960911b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000366003190112620005d457602060405173bba817f97f133b87b9b7f1fc0f2c56e9f68d2edf8152f35b34620005d4576000806003193601126200073b5760405162002a2a8162000780565b600b81526a1c985b991bdb4818da185960aa1b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000806003193601126200073b5760405162002a818162000780565b600d81526c616c6c6f5f747265617375727960981b602082015262002ab86040516020810190620006368162000627848762003686565b03916020826000805160206200d1c08339815191529481865afa928315620006fa578492839462002b55575b50803b15620007005762002b10916040519586809481936318caf8e360e31b83528860048401620036b7565b03925af1918215620006fa57620006d89262002b3e575b506040519182916001600160a01b031682620005d9565b80620006ec62002b4e9262000766565b3862002b27565b62002b7291945060203d811162000733576200072281836200082a565b923862002ae4565b34620005d4576000806003193601126200073b5760405162002b9c8162000780565b600e81526d3932b3b4b9ba393cafb7bbb732b960911b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000806003193601126200073b5760245490604090815163ffa1864960e01b81526020908062002c136004968783019190602083019252565b039082816000805160206200d1c08339815191529381855afa8015620006fa5762002c639185916200300f575b50602380546001600160a01b0319166001600160a01b0392909216919091179055565b62002c7060235462000ae5565b91813b1562002fb75784516318caf8e360e31b8082526001600160a01b03909416878201908152604060208201819052600e908201526d636f756e63696c4d656d6265723160901b6060820152859082908190608001038183875af18015620006fa5762002ff8575b5060018060a01b038062002cf962002cf36021546200b0e7565b62000ae5565b161562002d1f575b620006d88662002d136021546200b0e7565b905191829182620005d9565b8062002d2a62004a19565b62002d5e62002d3c62002cf362005a31565b602680546001600160a01b0319166001600160a01b0392909216919091179055565b16833b1562002ff45786519085825286828062002db0848d830160809160018060a01b0316815260406020820152601060408201526f5361666550726f7879466163746f727960801b60608201520190565b038183895af1908115620006fa5762002e0292859262002fdd575b5062002dd960265462000ae5565b9062002de46200b0f6565b91898c8c5196879586948593631688f0b960e01b855284016200b112565b03925af1908115620006fa5762002e4793879262002fbb575b50506021805462010000600160b01b0319169290911660101b62010000600160b01b0316919091179055565b62002e5862002cf36021546200b0e7565b91813b1562002fb75784519081526001600160a01b03909216858301908152604060208201819052600b908201526a636f756e63696c5361666560a81b60608201528391839182908490829060800103925af18015620006fa5762002fa0575b5062002ec362003437565b62002edf62002ed460235462000ae5565b62001c6683620034c6565b62002f0762002eee82620034ea565b73f39fd6e51aad88f6f4ce6ab8827279cfffb922669052565b62002f2f62002f1682620034fb565b7370997970c51812dc3a010c7d01b50e0d17dc79c89052565b62002f4062002cf36021546200b0e7565b803b15620007005762002f689483855180978195829463b63e800d60e01b845283016200adee565b03925af1918215620006fa57620006d89262002f89575b8080808062002d01565b80620006ec62002f999262000766565b3862002f7f565b80620006ec62002fb09262000766565b3862002eb8565b8380fd5b62002fd59250803d1062000733576200072281836200082a565b388062002e1b565b80620006ec62002fed9262000766565b3862002dcb565b8580fd5b80620006ec620030089262000766565b3862002cd9565b6200302a9150843d861162000733576200072281836200082a565b3862002c40565b34620005d4576101c0366003190112620005d45760043562003053816200073e565b6024359062003062826200073e565b6044359062003071826200073e565b6064359262003080846200073e565b6084356200308e816200073e565b60a4356200309c8162001fd1565b620030a662001fdc565b9160203660e3190112620005d457620006d896620021a29660405195620030cd87620007b8565b60e4358752620030dd3662002050565b9762004713565b34620005d4576000806003193601126200073b5760405180918260185480845260208094019060188452848420935b858282106200312d5750505062000d84925003836200082a565b85546001600160a01b031684526001958601958895509301920162003113565b34620005d4576080366003190112620005d457606435600160801b62989680608083901b04818110156200323857600435805b620031f257620006d8620021a2620031ec620031e686620031df89620031d8620031d1620031b1602435866200448b565b94620031ca620031c36044356200446c565b9162004910565b906200448b565b9162004923565b90620048df565b9062004947565b62004935565b60801c90565b600191818316620032165780620032099162004955565b911c90815b909162003180565b9150916200322982620032309262004955565b9262004900565b90816200320e565b60405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b34620005d4576000806003193601126200073b576040516200329e8162000780565b6013815272383937b334b632992fb737ba20a6b2b6b132b960691b60208201526200065b6040516020810190620006368162000627848762003686565b34620005d4576000806003193601126200073b5760405181602e54620033018162000fc7565b808452906001908181169081156200117d57506001146200332f57620006d8846200110a818803826200082a565b602e8352602094506000805160206200d2008339815191525b828410620033685750505081620006d8936200110a9282010193620010f7565b805485850187015292850192810162003348565b34620005d4576020366003190112620005d4576004356001600160401b038111620005d45762000bae620033b76020923690600401620008a6565b6200ad8f565b34620005d4576000366003190112620005d457602060ff602154166040519015158152f35b34620005d4576000366003190112620005d457602060ff60215460081c166040519015158152f35b60405190606082016001600160401b038111838210176200077a5760405260028252604082602036910137565b604051906200344682620007d4565b600382526060366020840137565b60405190620034638262000780565b6001825260203681840137565b604051906200347f8262000780565b600d82526c706f6f6c5f6d616e616765723160981b6020830152565b60405190620034aa8262000780565b600d82526c3837b7b62fb6b0b730b3b2b91960991b6020830152565b805115620034d45760200190565b634e487b7160e01b600052603260045260246000fd5b805160011015620034d45760400190565b805160021015620034d45760600190565b6001600160a01b039091169052565b604051906200352a8262000780565b601082526f70726f66696c65315f6d656d6265723160801b6020830152565b60405190620035588262000780565b601082526f383937b334b63298afb6b2b6b132b91960811b6020830152565b60405190620035868262000780565b601082526f70726f66696c65325f6d656d6265723160801b6020830152565b60405190620035b48262000780565b601082526f383937b334b632992fb6b2b6b132b91960811b6020830152565b90816020910312620005d4575190565b6040513d6000823e3d90fd5b60085460ff168015620035ff5790565b50604051630667f9d760e41b81526020816044816000805160206200d1c08339815191528060048301526519985a5b195960d21b60248301525afa908115620006fa5760009162003651575b50151590565b62003677915060203d81116200367e575b6200366e81836200082a565b810190620035d3565b386200364b565b503d62003662565b906200369b6020928281519485920162000dba565b0190565b90816020910312620005d45751620008c4816200073e565b6001600160a01b039091168152604060208201819052620008c49291019062000ddf565b906040516020810190620036f58162000627848762003686565b5190206040516001625e79b760e01b03198152600481018290529091906000805160206200d1c083398151915290602081602481855afa908115620006fa5760009162003793575b508094823b15620005d4576200376e92600092836040518096819582946318caf8e360e31b845260048401620036b7565b03925af18015620006fa57620037815750565b80620006ec620037919262000766565b565b620037af915060203d811162000733576200072281836200082a565b386200373d565b908154620037c481620011a8565b92604093620037d6855191826200082a565b828152809460208092019260005281600020906000935b858510620037fd57505050505050565b60018481928451620038158162001fba818a62001004565b815201930194019391620037ed565b601f811162003831575050565b600090602e825260208220906020601f850160051c8301941062003872575b601f0160051c01915b8281106200386657505050565b81815560010162003859565b909250829062003850565b80519091906001600160401b0381116200077a57620038a981620038a3602e5462000fc7565b62003824565b602080601f8311600114620038e85750819293600092620038dc575b50508160011b916000199060031b1c191617602e55565b015190503880620038c5565b602e600052601f198316949091906000805160206200d200833981519152926000905b878210620039465750508360019596106200392c575b505050811b01602e55565b015160001960f88460031b161c1916905538808062003921565b806001859682949686015181550195019301906200390b565b604051906200396e8262000780565b60088252670b98da185a5b925960c21b6020830152565b60405190620039948262000780565b60058252642e6e616d6560d81b6020830152565b60405190620039b78262000780565b600c82526b1722a72b299729a2a72222a960a11b6020830152565b60405190620039e18262000780565b60088252676e616d653a20257360c01b6020830152565b6040519062003a078262000780565b600a82526973656e6465723a20257360b01b6020830152565b6040519062003a2f8262000780565b600c82526b636861696e4964203a20257360a01b6020830152565b62003a5760285462000ae5565b906000805160206200d1c083398151915290813b15620005d457604051637fec2a8d60e01b815260009384908290819062003a969060048301620005d9565b038183875af18015620006fa5762003bc5575b50805162003bb3575b5062003b8162003ac162003fce565b6200168462003ae462003add62003ad76200395f565b62003e8c565b8362003c05565b62003b5062003b0162003afa62003ad762003985565b8562003cd6565b62003b4062003b1e62003b1762003ad7620039a8565b8762003d42565b602880546001600160a01b0319166001600160a01b0392909216919091179055565b62003b4a620039d2565b62003e0e565b62003b7162003b6160285462000ae5565b62003b6b620039f8565b62003e39565b62003b7b62003a20565b62003dab565b803b1562003baf578190600460405180948193633b756e9b60e11b83525af18015620006fa57620037815750565b5080fd5b62003bbe906200387d565b3862003ab2565b80620006ec62003bd59262000766565b3862003aa9565b909162003bf6620008c49360408452604084019062000ddf565b91602081840391015262000ddf565b6040516356eef15b60e11b8152916020918391829162003c2a91906004840162003bdc565b03816000805160206200d1c08339815191525afa908115620006fa5760009162003c52575090565b620008c4915060203d81116200367e576200366e81836200082a565b602081830312620005d4578051906001600160401b038211620005d4570181601f82011215620005d457805162003ca5816200084e565b9262003cb560405194856200082a565b81845260208284010111620005d457620008c4916020808501910162000dba565b6040516309389f5960e31b8152916000918391829162003cfb91906004840162003bdc565b03816000805160206200d1c08339815191525afa908115620006fa5760009162003d23575090565b620008c4913d8091833e62003d3981836200082a565b81019062003c6e565b604051631e19e65760e01b8152916020918391829162003d6791906004840162003bdc565b03816000805160206200d1c08339815191525afa908115620006fa5760009162003d8f575090565b620008c4915060203d811162000733576200072281836200082a565b62003df362003dde916200379193604051938492632d839cb360e21b602085015260406024850152606484019062000ddf565b90604483015203601f1981018352826200082a565b600080916020815191016a636f6e736f6c652e6c6f675afa50565b9062003df3620037919262000627604051938492634b5c427760e01b60208501526024840162003bdc565b62003df362003e6c91620037919360405193849263319af33360e01b602085015260406024850152606484019062000ddf565b6001600160a01b0391909116604483015203601f1981018352826200082a565b604051600091602e549162003ea18362000fc7565b9384825260209485830194600190818116908160001462003fb0575060011462003f72575b5050918162003ee2620008c4959362003f4f979503826200082a565b62003f3c6039604051809562003f1f8883019575242e6e6574776f726b735b3f28402e6e616d653d3d2760501b8752518092603685019062000dba565b81016227295d60e81b60368201520360198101865201846200082a565b6040519586935180928686019062000dba565b820162003f658251809386808501910162000dba565b010380845201826200082a565b9150602e60005285600020916000925b82841062003f9c57505050810184018162003ee262003ec6565b805485850189015292870192810162003f82565b60ff191687525050151560051b8201850190508162003ee262003ec6565b604051636c98507360e11b81526000906000805160206200d1c0833981519152908281600481855afa8015620006fa576200408d9284928392620040bc575b50620040716043604051846200402e82965180926020808601910162000dba565b81017f2f706b672f636f6e7472616374732f636f6e6669672f6e6574776f726b732e6a60208201526239b7b760e91b60408201520360238101855201836200082a565b60405180809581946360f9bb1160e01b835260048301620010a2565b03915afa918215620006fa578092620040a557505090565b620008c492503d8091833e62003d3981836200082a565b620040d49192503d8085833e62003d3981836200082a565b90386200400d565b60405190620040eb8262000780565b60118252701722a72b2997282927ac2cafa7aba722a960791b6020830152565b604051906200411a8262000780565b601582527402732bb9029b0b3329020b93134ba3930ba37b91d1605d1b6020830152565b62004158906200415162003ad7620040dc565b9062003d42565b6040516001600160401b03919061187c808201848111838210176200077a5782916200b944833903906000f0918215620006fa5760405163da35a26f60e01b602082015266038d7ea4c6800060248201526001600160a01b03929092166044808401919091528252620041cd6064836200082a565b604051916104109081840192848410908411176200077a57839262004204926200b53485396001600160a01b0395861690620036b7565b03906000f0908115620006fa5762003791911662003b6b6200410b565b620042796020620008c495936002845260a082850152600e60a08501526d506f6f6c2050726f66696c65203160901b60c085015260e06040850152805160e08501520151604061010084015261012083019062000ddf565b6001600160a01b03909316606082015280830360809091015262000ce9565b9160175415620042ac575b50505060175490565b62004310926020926000604051620042c48162000780565b60018152604051620042d68162000780565b600c81526b506f6f6c50726f66696c653160a01b8782015281870152604051633a92f65f60e01b8152968795869485936004850162004221565b03926001600160a01b03165af18015620006fa57620043389160009162004341575b50601755565b388080620042a3565b6200435d915060203d81116200367e576200366e81836200082a565b3862004332565b604051906200437382620007b8565b60008252565b6040519062004388826200079c565b8160a06000918281528260208201528260408201528260608201528260808201520152565b604051610120810191906001600160401b038311818410176200077a57610100606091846040528094620043e181620007d4565b60009081815281610140840152816101608401528161018084015282528060208301528060408301526200441462004364565b848301526200442262004379565b60808301528060a08301528060c083015260e08201520152565b60038210156200259a5752565b60048210156200259a5752565b634e487b7160e01b600052601160045260246000fd5b9062989680918281029281840414901517156200448557565b62004456565b818102929181159184041417156200448557565b9594939291620044f96200450392620044ef620044bb620043ad565b99629895b760408c510152621e84808b515261271060208c5101526702c68af0bb14000060608c51015260a08b016200350c565b602089016200443c565b6040870162004449565b600060c0860152600060e08601528051156200452c575b60608501526080840152610100830152565b680ad78ebc5ac620000081526200451a565b620045b3926200459f60a09a99959697989362004595620045a99462004563620043ad565b9d8e629895b7604082510152621e84808151526127106020825101526702c68af0bb140000606082510152016200350c565b60208c016200443c565b60408a0162004449565b60c088016200350c565b60e08601528051156200452c5760608501526080840152610100830152565b91959492939082526200460160018060a01b039485602098168885015260e0604085015260e084019062000ddf565b9360609116818301526000608083015281840360a0830152601554845260408685015260009360165490620046368262000fc7565b918260408301526001908181169081600014620046b7575060011462004670575b50505050620008c493945060c081840391015262000ce9565b9293955090601660005287600020926000935b828510620046a357505050620008c4959650010191849338808062004657565b805484860187015293890193810162004683565b60ff1916858401525096975087965090151560051b01019250620008c438808062004657565b90816020910312620005d45751620008c48162001fd1565b15620046fd57565b634e487b7160e01b600052600160045260246000fd5b92949597620047c7976200473693929a99886200472f62003454565b946200449f565b90620047416200340a565b90620047523062001c6684620034c6565b620047623362001c6684620034ea565b6001600160a01b039473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee948a918791828116620048ae575b5090620047ac85600093620047a560285462000ae5565b9062004298565b620047f460405196620047d68860209e8f9b8c8301620025bc565b03601f1981018a52896200082a565b6040516370803ea560e11b8152998a988997889560048701620045d2565b0393165af18015620006fa5784916000916200488c575b5095600460405180948193631a8ecfcb60e11b8352165afa908115620006fa57620037919360009262004858575b505062004846826200258f565b62004851816200258f565b14620046f5565b6200487c9250803d1062004884575b6200487381836200082a565b810190620046dd565b388062004839565b503d62004867565b620048a79150823d84116200367e576200366e81836200082a565b386200480b565b9650620047ac6200478e565b94929091620008c49796949260405196620048d588620007b8565b6000885262004713565b8115620048ea570490565b634e487b7160e01b600052601260045260246000fd5b6000198101919082116200448557565b600160801b908103919082116200448557565b90629896809182039182116200448557565b6001607f1b8101919082106200448557565b919082018092116200448557565b90600160801b808311620049c3578110156200497f57620031e6620031ec91620008c4936200448b565b60405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b60405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608490fd5b73bba817f97f133b87b9b7f1fc0f2c56e9f68d2edf803b620008c45750620008c462002cf360405162004a4c81620007f0565b610ede81527f608060405234801561001057600080fd5b50610ebe806100206000396000f3fe60208201527f608060405234801561001057600080fd5b50600436106100625760003560e01c60408201527f80631688f0b9146100675780632500510e1461017657806353e5d9351461024360608201527f57806361b69abd146102c6578063addacc0f146103cb578063d18af54d14610460808201527f4e575b600080fd5b61014a6004803603606081101561007d57600080fd5b810160a082015266e96f9fdffe6f6e642420200d5d60da1b0360c08201527f9190803590602001906401000000008111156100ba57600080fd5b820183602060e08201527f820111156100cc57600080fd5b803590602001918460018302840111640100006101008201527d831117156100ee57600080fd5b91908080601f01602080910402602001606101208201527f40519081016040528093929190818152602001838380828437600081840152606101408201527f1f19601f8201169050808301925050505050505091929192908035906020019061016082015260017024a46414141418415f5596d8101460209d607a1b036101808201527ae97ead9fdffe6eafaf9fbfae7f6efc6f0ca49efde89ffb7fc9fc9f196101a08201526001731820440558406315d800203f56e0406420200d5d60621b036101c082015277e96f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffffffff7eee196101e08201527f156101c957600080fd5b8201836020820111156101db57600080fd5b803590606102008201527f2001918460018302840111640100000000831117156101fd57600080fd5b90916102208201527f92939192939080359060200190929190505050610624565b604051808273ffff6102408201526de97ead9fdffe6eafaf9fbfae7f6e196102608201527f0390f35b61024b610751565b60405180806020018281038252838181518152606102808201527f200191508051906020019080838360005b8381101561028b57808201518184016102a08201527f52602081019050610270565b50505050905090810190601f1680156102b857806102c08201527f820380516001836020036101000a031916815260200191505b509250505060406102e08201527f5180910390f35b61039f600480360360408110156102dc57600080fd5b81019061030082015267e96f9fdffe6f6d6f6320200d5d60e21b036103208201527f908035906020019064010000000081111561031957600080fd5b8201836020826103408201527f01111561032b57600080fd5b80359060200191846001830284011164010000006103608201527e8311171561034d57600080fd5b91908080601f0160208091040260200160406103808201527f519081016040528093929190818152602001838380828437600081840152601f6103a08201527f19601f82011690508083019250505050505050919291929050505061077c565b6103c082015265e97ead9fdfff6518101460209d60d21b036103e08201527f91505060405180910390f35b6103d3610861565b6040518080602001828103826104008201527f5283818151815260200191508051906020019080838360005b838110156104136104208201527f5780820151818401526020810190506103f8565b50505050905090810190601f6104408201527f1680156104405780820380516001836020036101000a031916815260200191506104608201527f5b509250505060405180910390f35b610551600480360360808110156104645761048082015260016b1800203f56e0406420200d5d60a21b036104a08201527f169060200190929190803590602001906401000000008111156104a1576000806104c08201527ffd5b8201836020820111156104b357600080fd5b8035906020019184600183026104e08201527f840111640100000000831117156104d557600080fd5b91908080601f016020806105008201527f91040260200160405190810160405280939291908181526020018383808284376105208201527f600081840152601f19601f82011690508083019250505050505050919291929061054082015260016c200d641808006424a464200d5d609a1b03610560820152763a5be7f7ff9bdb5b9bebebebe7bddcea6927efeb9fdf6360421b1961058082015273e97ead9fdffe6eafaf9fbfae7f6efc6f0ca49fff196105a08201527f61058a848484610a3b565b90506000835111156105b2576000806000855160206105c08201527f87016000865af114156105b157600080fd5b5b7f4f51faf6c4561ff95f0676576105e08201527fe43439f0f856d97c04d9ec9070a6199ad418e2358185604051808373ffffffff610600820152673a5fab67f7ff9f6360421b1961062082015273e97ead9fdffe6dafafaf9fbfae7f6efc6f5e6c6d196106408201527f505050565b60006106758585858080601f0160208091040260200160405190816106608201527f016040528093929190818152602001838380828437600081840152601f19601f6106808201527f8201169050808301925050505050505084610a3b565b905080604051602001806106a082015269e99f9fe47ead9febfe6f61209d60f21b036106c08201527802828302028b01040c18181c0a948302029302028bf8461bcd603d1b6106e08201526a81526004018080602001826107008201527f8103825283818151815260200191508051906020019080838360005b838110156107208201527f6107165780820151818401526020810190506106fb565b5050505090509081016107408201527f90601f1680156107435780820380516001836020036101000a031916815260206107608201527f0191505b509250505060405180910390fd5b60606040518060200161076390616107808201527f0bde565b6020820181038252601f19601f82011660405250905090565b6000826107a082015260016e1810145841e2e41842f79596e0209d608a1b036107c08201527ce97ead9fdffe6eafaf9fbfae7f6efc6f9fff0f7fea7fea9ef838a8c29f196107e08201527e803e3d6000fd5b5090506000825111156107f05760008060008451602086016108008201527f6000865af114156107ef57600080fd5b5b7f4f51faf6c4561ff95f067657e4346108208201527f39f0f856d97c04d9ec9070a6199ad418e2358184604051808373ffffffffffff610840820152673a5fab67f7ff9f6360521b1961086082015275e97ead9fdffe6dafafaf9fbfae7f6efc6f5e6d6eafaf196108808201527f565b60606040518060200161087390610beb565b6020820181038252601f19606108a08201527f1f82011660405250905090565b600080838360405160200180838152602001826108c08201526ae99f9fe47ead9febfe6db0601d60fa1b036108e08201527f50506040516020818303038152906040528051906020012060001c90506108e761090082015260016c21a1a0d8415f5596e45418001d609a1b0361092082015267e9eb9ef5cda87d8c623a5f2360e21b01196109408201526be99ce1ad4ae77c7777779fbf19610960820152600172146158ffffffffc5983806e05498010060215d606a1b03610980820152673a5fab67f7ff9ee3608a1b196109a08201527ce97ead9fdffe7f9fdffe7c7ead9fdffe7d7efc7dad7b7e7eae7ead9fdf196109c08201527f0191508051906020019080838360005b838110156109ca5780820151818401526109e08201527f6020810190506109af565b50505050905090810190601f1680156109f7578082610a008201527f0380516001836020036101000a031916815260200191505b5095505050505050610a208201527f600060405180830381600087803b158015610a1957600080fd5b505af1158015610a408201527f610a2d573d6000803e3d6000fd5b505050505b50949350505050565b60008083610a608201527f8051906020012083604051602001808381526020018281526020019250505060610a808201527f4051602081830303815290604052805190602001209050600060405180602001610aa08201527f610a8890610bde565b6020820181038252601f19601f820116604052508673ff610ac08201526ce99fbfae9fdffe7f7c7fae6f9f19610ae08201527f2001908083835b60208310610ae9578051825260208201915060208101905060610b008201527f2083039250610ac6565b6001836020036101000a038019825116818451168082610b208201527f1785525050505050509050018281526020019250505060405160208183030381610b4082015260017514a4181014a4142060546098080058003d649418001d60521b03610b60820152623a5f23609a1b19610b8082015260016e074f5f54f7a15544fdfd7407b9e43360851b0319610ba0820152738152600401808060200182810382526013815260610bc0820152760800601fd0dc99585d194c8818d85b1b0819985a5b1959604a1b610be08201527b81525060200191505060405180910390fd5b50509392505050565b61610c008201527f01e680610bf883390190565b60ab80610dde8339019056fe6080604052348015610c208201527f61001057600080fd5b506040516101e63803806101e683398181016040526020610c408201527f81101561003357600080fd5b8101908080519060200190929190505050600073610c60820152623a5fa3604a1b19610c8082015274e9ebea9eff35a89fbfae80f73c865fffffffffffff19610ca08201526981526004018080602001610cc08201527f828103825260228152602001806101c460229139604001915050604051809103610ce082015260016e243f56e018002018404002a055205d608a1b03610d0082015262e9fde8653f79ba5bdf2360ba1b0119610d2082015260017624155414182ae018404658000e58003cff98201810149d604a1b03610d408201526001684fffd5f4c02cf35bc960611b0319610d608201526f60003514156050578060005260206000610d808201527ff35b3660008037600080366000845af43d6000803e60008114156070573d6000610da08201527ffd5b3d6000f3fea2646970667358221220d1429297349653a4918076d650332d610dc08201527fe1a1068c5f3e07c5c82360c277770b955264736f6c63430007060033496e7661610de08201527f6c69642073696e676c65746f6e20616464726573732070726f76696465646080610e00820152679fffabe98059e6b8631810149d60e21b03610e2082015262600035603760f91b01610e408201527f14156050578060005260206000f35b3660008037600080366000845af43d6000610e608201527f803e60008114156070573d6000fd5b3d6000f3fea2646970667358221220d142610e808201527f9297349653a4918076d650332de1a1068c5f3e07c5c82360c277770b95526473610ea08201527f6f6c63430007060033a26469706673582212200c75fe2196b9f752c82794253f610ec08201527f2ebce0d821afef5997e1d5a35ec316ce592f6664736f6c634300070600330000610ee08201526200ad8f565b73dd4bda7bcda544d6da2aea8ab8b0e63d2f6dc737803b620008c45750620008c462002cf360405162005a64816200080d565b6159d781527f608060405234801561001057600080fd5b5060016004819055506159ae80620060208201527e296000396000f3fe6080604052600436106101dc5760003560e01c8063affe60408201527fd0e011610102578063e19a9dd911610095578063f08a032311610064578063f060608201527f8a032314611647578063f698da2514611698578063f8dc5dd9146116c357806360808201527fffa1ad741461173e57610231565b8063e19a9dd91461139b578063e318b52b1460a08201527f6113ec578063e75235b81461147d578063e86637db146114a857610231565b8060c08201527f63cc2f8452116100d1578063cc2f8452146110e8578063d4d9bdcd146111b55760e08201527f8063d8d11f78146111f0578063e009cfde1461132a57610231565b8063affed06101008201527fe014610d94578063b4faba0914610dbf578063b63e800d14610ea7578063c4ca6101208201527f3a9c1461101757610231565b80635624b25b1161017a5780636a7612021161016101408201527f495780636a761202146109945780637d83297414610b50578063934f3a1114616101608201527f0bbf578063a0e67e2b14610d2857610231565b80635624b25b146107fb5780636101808201527f5ae6bd37146108b9578063610b592514610908578063694e80c31461095957616101a08201527f0231565b80632f54bf6e116101b65780632f54bf6e146104d35780633408e4706101c08201527f1461053a578063468721a7146105655780635229073f1461067a57610231565b6101e08201527f80630d582f131461029e57806312fb68e0146102f95780632d9ad53d1461046c61020082015260016c15d8408c5596cd98408c55ccdd609a1b036102208201527fff167f3d0ce9bfc3ed7d6862dbb28b2dea94561fe714a1b4d019aa8af39730d16102408201527fad7c3d346040518082815260200191505060405180910390a2005b34801561026102608201527f3d57600080fd5b5060007f6c9a6c4a39284e37ed1cf53d337577d14212a4870f6102808201527fb976a4366c693b939918d560001b905080548061027257600080f35b366000806102a08201527f373360601b365260008060143601600080855af13d6000803e80610299573d606102c08201527efd5b3d6000f35b3480156102aa57600080fd5b506102f760048036036040816102e082015260017104055840b055d800203f56e0406420200d5d60721b0361030082015279e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafafaf9ee831a9196103208201527f5b005b34801561030557600080fd5b5061046a6004803603608081101561031c6103408201527f57600080fd5b81019080803590602001909291908035906020019064010000006103608201527e81111561034357600080fd5b82018360208201111561035557600080fd5b806103808201527f35906020019184600183028401116401000000008311171561037757600080fd6103a08201527f5b91908080601f016020809104026020016040519081016040528093929190816103c08201527f8152602001838380828437600081840152601f19601f820116905080830192506103e08201527f5050505050509192919290803590602001906401000000008111156103da57606104008201527e80fd5b8201836020820111156103ec57600080fd5b803590602001918460016104208201527f83028401116401000000008311171561040e57600080fd5b91908080601f01606104408201527f20809104026020016040519081016040528093929190818152602001838380826104608201527f8437600081840152601f19601f820116905080830192505050505050509192916104808201527f929080359060200190929190505050611bbe565b005b348015610478576000806104a08201527ffd5b506104bb6004803603602081101561048f57600080fd5b810190808035736104c08201526be96f9fdffe6f6d6e6fafafaf196104e082018190527f612440565b60405180821515815260200191505060405180910390f35b3480156105008301527f6104df57600080fd5b50610522600480360360208110156104f657600080fd5b61052083015264e96f9fdfff6620406420200d5d60ca1b036105408301527f90929190505050612512565b60405180821515815260200191505060405180916105608301527f0390f35b34801561054657600080fd5b5061054f6125e4565b604051808281526105808301527f60200191505060405180910390f35b34801561057157600080fd5b50610662606105a083015260017801200d80d82020440558416215d800203f56e0406420200d5d603a1b036105c083015272e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6f196105e08301527f803590602001906401000000008111156105cf57600080fd5b820183602082016106008301527b11156105e157600080fd5b803590602001918460018302840111640160201b6106208301527f8311171561060357600080fd5b91908080601f016020809104026020016040516106408301526000805160206200d1e08339815191526106608301527f601f820116905080830192505050505050509192919290803560ff16906020016106808301527f909291905050506125f1565b60405180821515815260200191505060405180916106a08301527f0390f35b34801561068657600080fd5b506107776004803603608081101561066106c083015260016d2755d800203f56e0406420200d5d60921b036106e08301527de96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffff196107008301527d8111156106e457600080fd5b8201836020820111156106f657600080fd5b6107208301527f80359060200191846001830284011164010000000083111715610718576000806107408301527ffd5b91908080601f0160208091040260200160405190810160405280939291906107608301527f818152602001838380828437600081840152601f19601f8201169050808301926107808301527f505050505050509192919290803560ff1690602001909291905050506127d7566107a08301527f5b604051808315158152602001806020018281038252838181518152602001916107c08301527f508051906020019080838360005b838110156107bf57808201518184015260206107e08301527f810190506107a4565b50505050905090810190601f1680156107ec57808203806108008301527f516001836020036101000a031916815260200191505b509350505050604051806108208301527f910390f35b34801561080757600080fd5b5061083e60048036036040811015616108408301527f081e57600080fd5b8101908080359060200190929190803590602001909291906108608301527f50505061280d565b6040518080602001828103825283818151815260200191506108808301527f8051906020019080838360005b8381101561087e5780820151818401526020816108a08301527f019050610863565b50505050905090810190601f1680156108ab5780820380516108c08301527f6001836020036101000a031916815260200191505b50925050506040518091036108e08301527f90f35b3480156108c557600080fd5b506108f2600480360360208110156108dc6109008301527f57600080fd5b8101908080359060200190929190505050612894565b604051806109208301527f82815260200191505060405180910390f35b34801561091457600080fd5b50616109408301527f09576004803603602081101561092b57600080fd5b81019080803573ffffffff6109608301526fe96f9fdffe6f6d6e6fafafaf9ed753a9196109808301527f5b005b34801561096557600080fd5b506109926004803603602081101561097c6109a08301527f57600080fd5b8101908080359060200190929190505050612c3e565b005b610b6109c08301527f3860048036036101408110156109ab57600080fd5b81019080803573ffffffff6109e08301526fe96f9fdffe6f6d6e6f7fca6f9fdffe6f19610a0083018190527f929190803590602001906401000000008111156109f257600080fd5b82018360610a208401527f2082011115610a0457600080fd5b803590602001918460018302840111640100610a408401527c83111715610a2657600080fd5b9091929391929390803560ff16906020610a608401527f0190929190803590602001909291908035906020019092919080359060200190610a8084015265e96f9fdffe706524a464200d5d60d21b03610aa08401819052610ac08401527f92919080359060200190640100000000811115610ab257600080fd5b82018360610ae08401527f2082011115610ac457600080fd5b803590602001918460018302840111640100610b008401527c83111715610ae657600080fd5b91908080601f01602080910402602001610b208401527f6040519081016040528093929190818152602001838380828437600081840152610b408401527f601f19601f820116905080830192505050505050509192919290505050612d78610b608401527f565b60405180821515815260200191505060405180910390f35b348015610b5c610b808401527f57600080fd5b50610ba960048036036040811015610b7357600080fd5b810190610ba084015267e96f9fdffe6f6d6f6320200d5d60e21b03610bc08401527f90803590602001909291905050506132b5565b60405180828152602001915050610be08401527f60405180910390f35b348015610bcb57600080fd5b50610d2660048036036060610c008401527f811015610be257600080fd5b8101908080359060200190929190803590602001610c208401527f90640100000000811115610c0957600080fd5b820183602082011115610c1b57610c408401527f600080fd5b80359060200191846001830284011164010000000083111715610c610c608401527f3d57600080fd5b91908080601f01602080910402602001604051908101604052610c808401527f8093929190818152602001838380828437600081840152601f19601f82011690610ca08401527f5080830192505050505050509192919290803590602001906401000000008111610cc08401527f15610ca057600080fd5b820183602082011115610cb257600080fd5b80359060610ce08401527f200191846001830284011164010000000083111715610cd457600080fd5b9190610d008401527f8080601f01602080910402602001604051908101604052809392919081815260610d208401527f2001838380828437600081840152601f19601f82011690508083019250505050610d408401527f50505091929192905050506132da565b005b348015610d3457600080fd5b5061610d608401527f0d3d613369565b60405180806020018281038252838181518152602001915080610d808401527f51906020019060200280838360005b83811015610d8057808201518184015260610da08401527f2081019050610d65565b505050509050019250505060405180910390f35b3480610dc08401527f15610da057600080fd5b50610da9613512565b60405180828152602001915050610de08401527f60405180910390f35b348015610dcb57600080fd5b50610ea560048036036040610e0084015260017220440558437895d800203f56e0406420200d5d606a1b03610e2084015278e96f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffffffff7eeeea19610e408401527f610e1f57600080fd5b820183602082011115610e3157600080fd5b8035906020610e608401527f0191846001830284011164010000000083111715610e5357600080fd5b919080610e808401526000805160206200d240833981519152610ea08401526000805160206200d220833981519152610ec08401527f50509192919290505050613518565b005b348015610eb357600080fd5b506110610ee08401527f156004803603610100811015610ecb57600080fd5b8101908080359060200190610f008401527f640100000000811115610ee857600080fd5b820183602082011115610efa5760610f208401527e80fd5b80359060200191846020830284011164010000000083111715610f1c610f408401527f57600080fd5b909192939192939080359060200190929190803573ffffffffff610f6084015270e96f9fdffe6f6d6e6f7fca6f9fdffe6f9b19610f808401527f0100000000811115610f6757600080fd5b820183602082011115610f79576000610fa08401527f80fd5b80359060200191846001830284011164010000000083111715610f9b57610fc084015260016f1800203f56e42464a4e464a4e4200d5d60821b03610fe08401526b3a5be7f7ff9bdb5b9bdff2a360821b19611000840152753a5be7f7ff9bdb5b9bdff29be7f7ff9bdb5b9bdff2a360321b1961102084015271e96f9fdffe6f6d6e6fafafaf9ecac5a9a4ff196110408401527f5b34801561102357600080fd5b506110d26004803603608081101561103a576061106084015260ea69203f56e0406420200d5d60aa1b036110808401527f90602001909291908035906020019092919080359060200190640100000000816110a08401527f111561108157600080fd5b82018360208201111561109357600080fd5b8035906110c08401527f602001918460018302840111640100000000831117156110b557600080fd5b906110e08401527f91929391929390803560ff1690602001909291905050506136f8565b604051806111008401527f82815260200191505060405180910390f35b3480156110f457600080fd5b50616111208401527f11416004803603604081101561110b57600080fd5b81019080803573ffffffff61114084015261116083015260017424a464141414184e081596d81014602018080060dd605a1b0361118083015276e97ead9fdffe7d7efc7dad7b7e7eae7ead9fdffe6eaf7f196111a08301527f51906020019060200280838360005b838110156111a0578082015181840152606111c08301527f2081019050611185565b50505050905001935050505060405180910390f35b346111e08301527f80156111c157600080fd5b506111ee600480360360208110156111d8576000806112008301527ffd5b8101908080359060200190929190505050613a12565b005b3480156111fc6112208301527f57600080fd5b50611314600480360361014081101561121457600080fd5b810161124083015266e96f9fdffe6f6e642420200d5d60da1b036112608301527f9190803590602001909291908035906020019064010000000081111561125b576112808301527f600080fd5b82018360208201111561126d57600080fd5b8035906020019184606112a08301527f0183028401116401000000008311171561128f57600080fd5b909192939192936112c08301527f90803560ff1690602001909291908035906020019092919080359060200190926112e083015260016e2464200d641808006424a464200d5d608a1b036113008301526b3a5be7f7ff9bdb5b9bdff2a3608a1b196113208301527ce96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafafaf9ec44ea9a49fbf196113408301527f518082815260200191505060405180910390f35b34801561133657600080fd5b6113608301527f506113996004803603604081101561134d57600080fd5b81019080803573ffff6113808301526de96f9fdffe6f6d6e6f7fca8c0000196113a08301526de96f9fdffe6f6d6e6fafafaf9ec4196113c08301527fde565b005b3480156113a757600080fd5b506113ea60048036036020811015616113e083015260016e04ef95d800203f56e0406420200d5d608a1b036114008301527ce96f9fdffe6f6d6e6fafafaf9ec090a9a4ffa4cb7fea9eec07a89fff7f196114208301527ffd5b5061147b6004803603606081101561140f57600080fd5b810190808035736114408301526be96f9fdffe6f6d6e6f7fca8c1961146083018190526114808301526114a08201527f613ff3565b005b34801561148957600080fd5b50611492614665565b604051806114c08201527f82815260200191505060405180910390f35b3480156114b457600080fd5b50616114e08201527f15cc60048036036101408110156114cc57600080fd5b81019080803573ffffff6115008201526ee96f9fdffe6f6d6e6f7fca6f9fdffe196115208201527f909291908035906020019064010000000081111561151357600080fd5b8201836115408201527f60208201111561152557600080fd5b80359060200191846001830284011164016115608201527b8311171561154757600080fd5b9091929391929390803560ff1690606115808201527f20019092919080359060200190929190803590602001909291908035906020016115a082015264e96f9fdfff662424a464200d5d60ca1b036115c082018190526115e08201527f909291908035906020019092919050505061466f565b604051808060200182816116008201527f03825283818151815260200191508051906020019080838360005b83811015616116208201527f160c5780820151818401526020810190506115f1565b505050509050908101906116408201527f601f1680156116395780820380516001836020036101000a03191681526020016116608201527f91505b509250505060405180910390f35b34801561165357600080fd5b5061166116808201527f966004803603602081101561166a57600080fd5b81019080803573ffffffffff6116a082015270e96f9fdffe6f6d6e6fafafaf9eb7e8a9a4196116c08201527e5b3480156116a457600080fd5b506116ad614878565b6040518082815260206116e08201527f0191505060405180910390f35b3480156116cf57600080fd5b5061173c6004806117008201526001760d80d8182044055845b995d800203f56e0406420200d5d604a1b036117208201526b3a5be7f7ff9bdb5b9bdff2a3604a1b1961174082015274e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafaf196117608201527f506148f6565b005b34801561174a57600080fd5b50611753614d29565b6040516117808201527f80806020018281038252838181518152602001915080519060200190808383606117a08201527e5b83811015611793578082015181840152602081019050611778565b5050506117c08201527f50905090810190601f1680156117c05780820380516001836020036101000a036117e08201527f1916815260200191505b509250505060405180910390f35b6117d6614d62565b61180082015268e97d8c0000000000016218001d60ea1b036118208201526c3a7afa9ffaa7b9efea2be7ffa3602a1b19611840820152623a5f6360721b196118608201526c3a7afaa91ffaa7b9e1ea2bf3e3606a1b1961188082015261e9eb623a5f6360b21b01196118a08201526caadb08c752bb02028bf8461bcd60951b6118c082015275815260040180806020018281038252600581526020016118e082015266807f475332303360c81b611900820152600174205494180800645414181014602440e43f56d8001d604a1b03611920820152663a67ff67ffdee360721b1961194082015263e97ead9f613a6360c21b01196119608201526001760800642054980800580008180024152418404002a4011d604a1b03611980820152613a63609a1b196119a082015260016d074f5cf730a544fdfd7407b9e433608d1b03196119c0820152748152600401808060200182810382526005815260206119e082015266601fd1d4cc8c0d60c21b611a008201527c81525060200191505060405180910390fd5b60026000600173ffffffff611a20820152613a6360721b19611a40820181905279e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb19611a608301526ae99ffd9fff7b8c00000001601d60fa1b03611a80830152611aa082015279e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c0019611ac0820152653f79ba5bdf23603a1b19611ae08201526d3a7f7a1beaabdfa7ff67ffe7ffa3602a1b19611b00820152613a63607a1b19611b208201527ae97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c000019611b40820152653f79ba5bdf2360421b19611b6082015273e9fde86faaaf9ffc9fff7eab7f6d6e6f9ffefe6e19611b808201527f905055507f9465fa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa611ba082015260016b1fd82cba89a098101460209d60a21b03611bc08201527f16815260200191505060405180910390a18060045414611bba57611bb981612c611be08201527f3e565b5b5050565b611bd2604182614e0590919063ffffffff16565b82511015611c008201526b0308e242bb02028bf8461bcd60a51b611c208201527781526004018080602001828103825260058152602001807f611c4082015264047533032360dc1b611c608201527f81525060200191505060405180910390fd5b6000808060008060005b86811015611c808201527f61243457611c648882614e3f565b80945081955082965050505060008460ff16611ca08201527f141561206d578260001c9450611c96604188614e0590919063ffffffff16565b611cc08201527104130000e080ab08e872bb02028bf8461bcd60751b611ce082015271815260040180806020018281038252600581611d0082018190526a52602001807f475330323160a81b611d208301527981525060200191505060405180910390fd5b8751611d27602084611d408301527f60001c614e6e90919063ffffffff16565b1115611d9b576040517f08c379a000611d60830152648152600401611d80830152774040301000c14081c1293002c0a9301000c03fa3a998191960411b611da08301526c81525060200191505060405180611dc08301527f910390fd5b60006020838a01015190508851611dd182611dc360208760001c61611de08301527f4e6e90919063ffffffff16565b614e6e90919063ffffffff16565b1115611e45611e008301526802bb02028bf8461bcd60bd1b611e208301527a81526004018080602001828103825260058152602001807f475330611e408301526281525061323360f01b01611e608301527f60200191505060405180910390fd5b60606020848b010190506320c13b0b60e0611e8083015261e6ea6106df60f21b03611ea083015269e99cdf3ec4f4727b9fc06121dd60f21b03611ec08301527f518363ffffffff1660e01b815260040180806020018060200183810383528581611ee08301527f8151815260200191508051906020019080838360005b83811015611ee7578082611f008301527f015181840152602081019050611ecc565b50505050905090810190601f168015611f208301527f611f145780820380516001836020036101000a031916815260200191505b5083611f408301527f8103825284818151815260200191508051906020019080838360005b83811015611f608301527f611f4d578082015181840152602081019050611f32565b505050509050908101611f808301527f90601f168015611f7a5780820380516001836020036101000a03191681526020611fa08301527f0191505b5094505050505060206040518083038186803b158015611f99576000611fc08301527f80fd5b505afa158015611fad573d6000803e3d6000fd5b505050506040513d60611fe08301527f20811015611fc357600080fd5b81019080805190602001909291905050507bff61200083015264e6e9eb9edf19612020830152690332bb02028bf8461bcd60b51b6120408301527981526004018080602001828103825260058152602001807f4753612060830152618152620c0c8d60ea1b016120808301527f5060200191505060405180910390fd5b50506122b2565b60018460ff161415616120a083015260ea6a086055e09800072514211d60aa1b036120c083015269e9eb7f9edef5a8afa000610cdd60f21b036120e083015265e98c00000001651802180021dd60d21b036121008301526fe97ead9fdffe6f7ead9fdffe9fffdf9f196121208301527e8c81526020019081526020016000205414155b61217c576040517f08c379a0612140830152638152600461216083015278018080602001828103825260058152602001807f475330323560381b6121808301526b8152506020019150506040516121a08301527f80910390fd5b6122b1565b601e8460ff1611156122495760018a6040516020016121c08301527f80807f19457468657265756d205369676e6564204d6573736167653a0a3332006121e08301527c815250601c0182815260200191505060405160208183030381529060406122008301527f52805190602001206004860385856040516000815260200160405260405180856122208301527f81526020018460ff1681526020018381526020018281526020019450505050506122408301527f6020604051602081039080840390855afa158015612238573d6000803e3d60006122608301527ffd5b5050506020604051035194506122b0565b60018a858585604051600081526122808301527f602001604052604051808581526020018460ff168152602001838152602001826122a08301527f81526020019450505050506020604051602081039080840390855afa158015616122c08301527f22a3573d6000803e3d6000fd5b5050506020604051035194505b5b5b8573ffff6122e0830152623a5ea3605a1b196123008301526b3a7b9ffaa7b721aa2be7ffe3605a1b19612320830152663a67ff67ffde2360821b1961234083015265e97ead9fdffe613a6360d21b0119612360830152600174242054980800580008180024152418404002a4011d605a1b0361238083015260e9613a6360aa1b01196123a083015260016c050556e0055848ec95d418005d609a1b036123c083015267e9ebeaa49edbdba8623a5ea360e21b01196123e0830152670302028bf8461bcd60c51b6124008301527b81526004018080602001828103825260058152602001807f475330326124208301526381525060601b60f91b016124408301527f200191505060405180910390fd5b8495508080600101915050611c52565b505061246083015260016d14141414141414141596d800205d60921b0361248083015265e9ebea7fea9e633a67ffa360d21b01196124a083015264e99ffea000660942d5d418001d60ca1b036124c08301526001613a6360421b0161211d60f21b036124e083015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f1961250083015264e98c0000016618404002a4011d60ca1b036125208301526ee9ebeaa46faf6e6fafa9a49fff9ffe196125408301526001623a5f6360421b01601d60fa1b036125608301526c3a7afa9ffaa7b688aa2be7ffe3603a1b19612580830152663a67ff67ffdee360621b196125a083015261e97e613a6360b21b01196125c083015260017814980800642054980800580008180024152418404002a4011d603a1b036125e0830152613a63608a1b196126008301527ce9ebeaa46faf6e6fafa9a49fff7fb96faf7f6eafaf6fa9a49fff9ffe8c19612620830152623a7323604a1b196126408301526c3a7afa9ffaa7b650ea2be7ffe360421b19612660830152663a67ffa7fff323606a1b1961268083015262e97ead613a6360ba1b01196126a0830152600177180800642054980800580008180024152418404002a4011d60421b036126c0830152613a6360921b196126e083015260016f074f5f5524f6c68d44fdfd7407b9e43360751b03196127008301526127208201526a14980800601fd1d4cc4c0d60aa1b6127408201527981525060200191505060405180910390fd5b61273b858585855a61276082015260016e1853a35596e41420055849e2d5ccdd608a1b036127808201527ce980976a3ec99b55b098d774da285de28555cb6e91caa04649051f5ec6196127a08201526001762a4216fb2e181014581014602440e4289849f3d596ccdd604a1b036127c082015274e980532d378fd7fbed7024f24d44b6092ed822fe7e196127e08201527fc13fd45dbfe16de0930e2bd37560405160405180910390a25b949350505050566128008201527f5b600060606127e7868686866125f1565b915060405160203d0181016040523d6128208201527f81523d6000602083013e8091505094509492505050565b606060006020830267612840820152777eee7fea9ed7d4a89fff7f02a4af9fbfae6f7f7dad7f9fe0196128608201527f01601f19166020018201604052801561285e57816020016001820280368337806128808201527f820191505090505b50905060005b8381101561288957808501548060208302606128a08201527f2085010152508080600101915050612864565b508091505092915050565b60076128c08201527f6020528060005260406000206000915090505481565b6128b4614d62565b60006128e08201526001623a5fa360421b01601d60fa1b036129008201526c3a7afa9ffaa7b5b86a2be7ffa3603a1b19612920820152623a5fa360821b1961294082015260016f074f5f5524f6b37d44fdfd7407b9e43360651b03196129608201526f8152600401808060200182810382526061298082018190526c058152602001807f475331303160981b6129a08301527781525060200191505060405180910390fd5b600073ffffff6129c08301819052663a67ffa7ffdf2360421b196129e0840152613a6360921b19612a0084018190527de97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb8c00000019612a20850152613a63606a1b19612a4085015260016d074f5cf6ab7544fdfd7407b9e433605d1b0319612a608501526e815260040180806020018281038252612a808501526d3002c0a9301000c03fa3a998981960911b612aa08501527681525060200191505060405180910390fd5b6001600060612ac08501526001613a6360421b01605d60f21b03612ae085015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f19612b0085015264e99ffea0006618404002a4011d60ca1b03612b208501526001613a6360421b016120dd60f21b03612b4085015273e97ead9fdffe6f7ead9fdffe9fffdf9fff9efeff19612b6085015266fde6e96f7c8c016402a055205d60da1b03612b808501526ce9fde86faaaf7f9ffe9fff9ffe19612ba08501526001613a63604a1b01601d60fa1b03612bc0850181905274e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff519612be086015267fde6e96f7c8c0001632055205d60e21b03612c008601526de9fde86faaaf801320c5c10015a819612c208601527f83a3c4c2140e677577666428d44ed9d474a0b3a4c9943f844081604051808273612c408601526be97ead9fdffe6eafaf9fbfae19612c608601527f80910390a150565b612c46614d62565b600354811115612cbe576040517f08c3612c808601526181526103cd60f51b01612ca08601527a6004018080602001828103825260058152602001807f475332303160281b612cc08601526981525060200191505060612ce08601527802028c04881c87eadb000c0880ab0969aabb02028bf8461bcd603d1b612d008601526a8152600401808060200182612d208601819052714081c1293002c0a9301000c03fa3a999181960711b612d408701527281525060200191505060405180910390fd5b80612d608701527f6004819055507f610f7ff2b304ae8903c3de74c60c6ab1f7d6226b3f52c51619612d808701527f05bb5ad4039c936004546040518082815260200191505060405180910390a150612da08701527f565b6000806000612d928e8e8e8e8e8e8e8e8e8e60055461466f565b90506005612dc08701527f6000815480929190600101919050555080805190602001209150612dbb828286612de0870152600174184cb69596d41800184b719853b65596e41418001d605a1b03612e00870152623a5fa360a21b19612e2087015263e99c8a10670585184beb15e01d60c21b03612e408701527fbb528f8f8f8f8f8f8f8f8f8f8f336040518d63ffffffff1660e01b8152600401612e6087015268e97ead9fdffe737eae6220235d60ea1b03612e808701527f602001806020018a6001811115612e6957fe5b81526020018981526020018881612ea087015260016b1498080061e054980800619d60a21b03612ec087015263e97eada06705a054980800615d60c21b03612ee087015263e97eada067080060180800611d60c21b03612f008701527f200183810383528d8d82818152602001925080828437600081840152601f1960612f208701527f1f82011690508083019250505083810382528581815181526020019150805190612f408701527f6020019080838360005b83811015612f3b578082015181840152602081019050612f608701527f612f20565b50505050905090810190601f168015612f68578082038051600183612f808701527f6020036101000a031916815260200191505b509e505050505050505050505050612fa08701527f505050600060405180830381600087803b158015612f9357600080fd5b505af1612fc08701527f158015612fa7573d6000803e3d6000fd5b505050505b6101f4612fd36109c48b612fe08701527f01603f60408d0281612fc457fe5b04614f0a90919063ffffffff16565b015a106130008701526bab09824abb02028bf8461bcd609d1b6130208701527681526004018080602001828103825260058152602001806130408701526507f47533031360d41b6130608701527e81525060200191505060405180910390fd5b60005a90506130b28f8f8f8f806130808701526000805160206200d2408339815191526130a08701526000805160206200d2208339815191526130c08701527f50508e60008d146130a7578e6130ad565b6109c45a035b614e8d565b935061306130e08701527fc75a82614f2490919063ffffffff16565b905083806130d6575060008a14155b613100870152770403098712ba83000440a0aadb098aa2bb02028bf8461bcd60451b6131208701526b81526004018080602001828161314087018190527003825260058152602001807f475330313360781b6131608801527381525060200191505060405180910390fd5b60006131808801527f8089111561316e5761316b828b8b8b8b614f44565b90505b84156131b8577f446131a08801527f2e715f626346e8c54381002da614f62bee8d27386535b2521ec8540898556e846131c08801527f82604051808381526020018281526020019250505060405180910390a16131f86131e08801527f565b7f23428b18acfb3ea64b08dc0c1d296ea9c09702c09083ca5272e64d115b6132008801527f687d23848260405180838152602001828152602001925050506040518091039061322088015264e97e8c0001662856d41418001d60ca1b03613240880152673a7ae7b356ea1fe360321b1961326088015271e99c6cd8ec977c7a9fbfae7c9c00000000e9196132808801527f60e01b81526004018083815260200182151581526020019250505060006040516132a08801527f80830381600087803b15801561328b57600080fd5b505af115801561329f573d6132c08801527f6000803e3d6000fd5b505050505b50509b9a5050505050505050505050565b606132e08801527f08602052816000526040600020602052806000526040600020600091509150506133008801527a02a40ab2db00030022a482830004088b099ababb02028bf8461bcd602d1b613320880152688152600401808060206133408801527301828103825260058152602001807f475330303160601b6133608801527081525060200191505060405180910390fd6133808801527f5b61336384848484611bbe565b50505050565b6060600060035467ffffffffff6133a08801527c7eee7fea9ecc79a89fff7f02a4af9fbfae6f7f7dad7f9fdffd9fdffe7d196133c08801527f0160405280156133b55781602001602082028036833780820191505090505b506133e088015260016b24141800201800980018005d60a21b0361340088015269e97ead9fdffe6f7eada061059d60f21b036134208801526001700800580008180024152418404002a4011d607a1b03613440880152663a5bebe927ffa360a21b1961346088015268e9eb9ecaf6a87f7c7d6205a05d60ea1b0361348088015260017220546044184d1815ff96d8080098080040641d606a1b036134a088015260e9633a5bdfa360aa1b01196134c088015261e98d692054941418009800209d60b21b036134e08801526be97ead9fdffe6f7ead9fdffe1961350088015260016e180008180024152418404002a4011d608a1b036135208801527ce96faf7e7f9ffefe6dafaf9ecbe0a9a47d6cafafafaf6fa9a49ffaab7e196135408801527f565b600080825160208401855af4806000523d6020523d600060403e60403d016135608801527f6000fd5b6135858a8a80806020026020016040519081016040528093929190816135808801527f8152602001838360200280828437600081840152601f19601f820116905080836135a08801526001706494141414141414225854529596d8001d60721b036135c088015262e9eb9e623a5ee360ba1b01196135e08801527f35c3576135c28461564a565b5b6136118787878080601f0160208091040260206136008801527f01604051908101604052809392919081815260200183838082843760008184016136208801527f52601f19601f82011690508083019250505050505050615679565b6000821115613640880152600176184d8ad5d84d8a609800180061a15853d11596d416ccdd604a1b0361366088015274e980ebe2079759cce50ad71c737c4855fc123e6419196136808801527f6e37ae67f9285bf4f8e3c6a1a88b8b8b8b8960405180806020018581526020016136a088015269e97ead9fdffe7c8c000161211d60f21b036136c08801526de97ead9fdffe7d7efc7dad78787d196136e08801527f818152602001925060200280828437600081840152601f19601f8201169050806137008801527f830192505050965050505050505060405180910390a2505050505050505050506137208801527f565b6000805a905061374f878787878080601f016020809104026020016040516137408801526000805160206200d1e08339815191526137608801527f601f82011690508083019250505050505050865a614e8d565b613758576000806137808801527ffd5b60005a8203905080604051602001808281526020019150506040516020816137a0880152700418181c0a948302029302028bf8461bcd607d1b6137c088015272815260040180806020018281038252838181516137e08801527f815260200191508051906020019080838360005b838110156137e557808201516138008801527f818401526020810190506137ca565b50505050905090810190601f16801561386138208801527f125780820380516001836020036101000a031916815260200191505b50925050613840880152677eee7fea9ec7c4a96f0a0c080a301220721fab6c0c0c00104d60831b036138608801527f600080fd5b5060405190808252806020026020018201604052801561386a57816138808801527f602001602082028036833780820191505090505b5091506000806001600087736138a0880152613a6360521b196138c088015275e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efe196138e088015266e96fafa49fff8d6302a4011d60da1b03613900880152623a5fa3604a1b1961392088018190526c3a7afa9ffaa7b1b0aa2be7ffa360421b19613940890152623a5fa3608a1b1961396089018190527ce9ebeaa47fea9ec6b7a8af7b7defa4ea9ec5fca87f7b7c7eae7eef9ec6196139808a015260016c1695ff96d8080098080040641d609a1b036139a08a015266e97eadafaf9ffe633a5bdfa360da1b01196139c08a015267e98c000000000001631800209d60e21b036139e08a015271e97ead9fdffe6f7ead9fdffe9fffdf9fff6f19613a008a015262e96fb068152418404002a4011d60ba1b03613a208a01527f81806001019250506138d3565b80925081845250509250929050565b600073ff613a408a0152663a67ff67fff32360321b19613a608a0152613a6360821b19613a808a018190527be97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb8c0019613aa08b0152613a63605a1b19613ac08b015260016e074f5f54f6275d44fdfd7407b9e43360451b0319613ae08b0152613b008a01939093526f3825260058152602001807f475330333607c1b613b208a01527381525060200191505060405180910390fd5b6001613b408a015265e98c0000000165180218000cdd60d21b03613b608a01526fe97ead9fdffe6f7ead9fdffe9fffdf9f19613b808a015260017420e054980800642054980800580008206415540cdd60521b03613ba08a015275e97e800d5f14ea9b8d2ebbfdaa4f283e1e633f8eea2e19613bc08a01527f051fe605b0dce69acfec884d9c60405160405180910390a350565b6000613bc6613be08a01527f8c8c8c8c8c8c8c8c8c8c8c61466f565b8051906020012090509b9a5050505050613c008a01526001721414141414141596d84ef99853589596d8001d606a1b03613c208a015261e9eb623a5fa360b21b0119613c408a015260ea6a056005584f1415d418005d60aa1b03613c608a015269e9ebeaa49ec33da89fc061205d60f21b03613c808a015265028bf8461bcd60d51b613ca08a018190527d81526004018080602001828103825260058152602001807f475331303100613cc08b015265815250602001613ce08b0181905260016d245414181014602440e43f56e01d60921b03613d008c015262e98c00663a67ffa7ffdee360ba1b0119613d208c01526ce97ead9fdffe6f7ead9fdffe9f19613d408c015260016c08180024152418404002a4011d60921b03613d608c015267e9eb9ec23da89fbf613a6360e21b0119613d808c0152613da08b01919091527d81526004018080602001828103825260058152602001807f475331303300613dc08b0152613de08a0152600171245414181014602440e43f56d8005800209d60721b03613e008a015263e97ead9f613a6360c21b0119613e208a018190526001760800642054980800580008180024152418404002a4011d604a1b03613e408b0152663a67ffa7ffdee360721b19613e608b0152613e808a01526001740800642054980800580008180018404002a055205d605a1b03613ea08a0152653f79ba5bdf23608a1b19613ec08a01526d3a7f7a1beaabe7ffe7ffa7ffdf23607a1b19613ee08a015264e97ead9fdf613a6360ca1b0119613f008a0152600172642054980800580008180018404002a055205d60621b03613f208a0152653f79ba5bdf2360921b19613f408a01527de9fde86faaaf80554b05d4b9c0a7e4d4cd34c481c48fb4631c833df64a0419613f608a015260016f135df964eb3901509da058101460209d60821b03613f808a01527be97ead9fdffe6eafaf9fbfae7f6efc6f5eafafa9a49ec0889eb29da919613fa08a01527f5b60007f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbda4f558613fc08a01527fc93c34c860001b90508181557f1151116914515bc0891ff9047a6cb32cf90254613fe08a01526001731be0c199266f3e2e8cf48d4fe8a098101460209d60621b036140008a015277e97ead9fdffe6eafaf9fbfae7f6efc6f5eafafa9a49ec004196140208a015263e97e8c01671853589596d8001d60c21b036140408a01526ce9ebea7fea9ebf9aa8af9ffe8c196140608a01526140808901919091526c3a7afaa91ffaa7afd8aa2bf3e360421b196140a08901526140c088015260016f074f5f5524f5f78544fdfd7407b9e433606d1b03196140e08801527081526004018080602001828103825260056141008801526b8152602001807f475332303360a01b6141208801527881525060200191505060405180910390fd5b600073ffffffff614140880152663a67ff67ffdf23604a1b19614160880152613a63609a1b196141808801527a3a5fab67f7ff9bdfab67f7ffa7fff7e7ffdbeadbe7bfbffd5bfee360221b196141a0880152613a6360721b196141c0880181905260016d074f5cf5ef7d44fdfd7407b9e43360651b03196141e08901526142008801969096526c016054980800601fd1d4cc8c0d609a1b614220880152614240870194909452623a5f6360621b196142608701526c3a7afa9ffaa7af616a2be7ffa3605a1b19614280870152623a5f6360a21b196142a08701526eb0a0aadb0a1762bb02028bf8461bcd60851b6142c08701527381526004018080602001828103825260058152606142e08701819052682001807f475332303360b81b614300880152600173205494180800645414181014602440e43f56e05d60421b03614320880152663a67ff67ffdea3606a1b1961434088015262e97ead613a6360ba1b0119614360880152600177180800642054980800580008180024152418404002a4011d60421b036143808801526143a087019390935260016d074f5cf5e09d44fdfd7407b9e43360851b03196143c08701526143e0860192909252682001807f475332303560b81b6144008601527b81525060200191505060405180910390fd5b600260008373ffffffff614420860152614440850184905279e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb1961446086018190526ae99ffd9fff7c8c00000001601d60fa1b036144808701526144a0860185905279e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c00196144c0870152653f79ba5bdf23603a1b196144e08701526c3a7f7a1beaabdfe7ff67ffdea360321b196145008701526145208601939093527be97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c00000019614540860152653f79ba5bdf23604a1b196145608601526d3a7f7a1beaabe7ffe7ff67ffdee3603a1b19614580860152613a63608a1b196145a0860152783a5fab67f7ff9bdfab67f7ffa7fff7e7ffe7bfbffd5faadfa360221b196145c0860152653f79ba5bdf2360521b196145e086015275e9fde86faaaf80072b603ad67ed16583a3af1963df0f196146008601526001773733036e3ea57262f16332693c704a67abe098101460209d60421b0361462086015273e97ead9fdffe6eafaf9fbfae7f6efc6f5e806b9a196146408601527ffa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa7f60b2ea26816061466086015266e97ead9fdffe6f64101460209d60da1b036146808601527f505060405180910390a1505050565b6000600454905090565b606060007fbb836146a08601527f10d486368db6bd6f849402fdd73ad53d316b5a4b2644ad6efe0f941286d860006146c08601527f1b8d8d8d8d6040518083838082843780830192505050925050506040518091036146e08601526001772408232323232323231810145808006023205498080062dd60421b0361470086015273e97ead9fdffe757ead9fdffe767ead9fdffe779f196147208601527f0181111561470057fe5b8152602001878152602001868152602001858152602061474086015268e97ead9fdffe7c8c0161611d60ea1b036147608601526ce97ead9fdffe7d7ead9fdffe64196147808601527f50505050505050505050505060405160208183030381529060405280519060206147a08601527f01209050601960f81b600160f81b61478c614878565b8360405160200180857e6147c086015260e6196147e0860152600167168152600101847f60c01b0361480086015278e6e97ead9ffefe7c7ead9fdffe7d7ead9fdffe6bafafafafaf196148208601527f6040516020818303038152906040529150509b9a5050505050505050505050566148408601527f5b61481f614d62565b6148288161564a565b7f5ac6c46c93c8d0e53714ba3b536148608601527fdb3e7c046da994313d7ed0d192028bc7c228b081604051808273ffffffffffff61488086015271e97ead9fdffe6eafaf9fbfae7f6efc6f5eaf196148a08601527f565b60007f47e79534a245952e8b16893a336b85a3d9ea9fa8c573f3d803afb96148c08601527f2a7946921860001b6148a66125e4565b306040516020018084815260200183816148e086015265e97ead9fdfff6514980800609d60d21b036149008601527f935050505060405160208183030381529060405280519060200120905090565b6149208601527f6148fe614d62565b806001600354031015614979576040517f08c379a00000006149408601526681526004018080614960860181905275602001828103825260058152602001807f475332303160501b61498087018190526e8152506020019150506040518091036149a0880181905265e97d8c00000165243f56d8001d60d21b036149c08901526ee9ebea7fea9eb61ca8af9ffe8c0000196149e0890152623a5f63605a1b19614a0089015260016f074f5f5524f5ad5544fdfd7407b9e433603d1b0319614a20890152614a408801859052718103825260058152602001807f475332303360701b614a608901527281525060200191505060405180910390fd5b81614a808901526ae99ffd9fff7a8c00000001601d60fa1b03614aa0890152614ac0880196909652614ae0870194909452614b0086019190915260016d074f5cf5a55544fdfd7407b9e433603d1b0319614b20860152614b40850191909152718103825260058152602001807f475332303560701b614b608501527281525060200191505060405180910390fd5b60614b8085015266e98c000000000163980020dd60da1b03614ba085015270e97ead9fdffe6f7ead9fdffe9fffdf9fff19614bc0850181905261e9a06924152418404002a4011d60b21b03614be086015266e98c0000000001639800215d60da1b03614c00860152614c2085015263fde6e9706718404002a055205d60c21b03614c4085015269e9fde86faaaf9fff9ffe6120dd60f21b03614c6085015267e98c000000000001631800211d60e21b03614c8085015271e97ead9fdffe6f7ead9fdffe9fffdf9fff9e19614ca085015264fde6e96f7d654002a055205d60ca1b03614cc08501526ae9fde86faaaf9ffc9fff7f601d60fa1b03614ce08501527f54809291906001900391905055507ff8d49fc529812e9a7c5c50e69c20f0dccc614d00850152600175036e3ea57262f16332693c704a67abe098101460209d60521b03614d2085015275e97ead9fdffe6eafaf9fbfae7f6efc6f5e7f9ffbabeb19614d408501527f614d2457614d2381612c3e565b5b505050565b60405180604001604052806005614d608501526a081526020017f312e332e360ac1b614d80850152600167205494205596cc1d60921b03614da085015266e9eb9eb1fca89f623a732360da1b0119614dc08501526602028bf8461bcd60cd1b614de08501527c81526004018080602001828103825260058152602001807f4753303331614e00850152648152506020614e208501527f0191505060405180910390fd5b565b600080831415614e185760009050614e39614e408501527f565b6000828402905082848281614e2957fe5b0414614e3457600080fd5b8091614e608501527f50505b92915050565b6000806000836041026020810186015192506040810186614e808501527f0151915060ff60418201870151169350509250925092565b6000808284019050614ea08501527f83811015614e8357600080fd5b8091505092915050565b600060018081111561614ec08501527f4e9b57fe5b836001811115614ea757fe5b1415614ec057600080855160208701614ee08501527f8986f49050614ed0565b600080855160208701888a87f190505b959450505050614f008501527f50565b6000807f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbd614f208501527fa4f558c93c34c860001b9050805491505090565b600081831015614f1a578161614f408501527f4f1c565b825b905092915050565b600082821115614f3357600080fd5b600082614f608501526001732100e4142024541424a454141596d8002018001d60621b03614f8085015260e9623a5f2360aa1b0119614fa0850152600171051853e055e09853e0d596cc96e41418001d60721b03614fc085015262e9ebea623a5ee360ba1b0119614fe08501527f61509b57614fed3a8610614fca573a614fcc565b855b614fdf888a614e6e90916150008501527f9063ffffffff16565b614e0590919063ffffffff16565b91508073ffffffffff61502085015270e99ef7037c6f7eeafd6f9fbfae9fff9fbf1961504085015279028c04181c0c2c44478c9a828282830a84b2bb02028bf8461bcd60351b615060850152698152600401808060200161508085015272828103825260058152602001807f475330313160681b6150a08501527181525060200191505060405180910390fd5b6150c08501527f615140565b6150c0856150b2888a614e6e90919063ffffffff16565b614e05906150e08501527f919063ffffffff16565b91506150cd8482846158b4565b61513f576040517f08615100850152608162061bcd60ed1b016151208501527b29300200c040301000c14081c1293002c0a9301000c03fa3a998189960211b615140850152688152506020019150506151608501527f60405180910390fd5b5b5095945050505050565b6000600454146151c257604061518085015265028bf8461bcd60d51b6151a08501527d81526004018080602001828103825260058152602001807f4753323030006151c0850152658152506020016151e08501527f91505060405180910390fd5b8151811115615239576040517f08c379a0000000615200850152615220840152615240830152615260820152730487eadb000c0880ab0a9582bb02028bf8461bcd60651b6152808201526f815260040180806020018281038252606152a08201526c02c0a9301000c03fa3a999181960991b6152c08201527781525060200191505060405180910390fd5b6000600190506152e08201527f60005b83518110156155b65760008482815181106152d057fe5b60200260200161530082015264e97e8c00016554641418001d60ca1b036153208201526de9ebea7fea9eacbba8af9ffe8c0019615340820152623a5fa360521b196153608201526c3a7afaa91ffaa7ab20ea2bf3e3604a1b19615380820152623a5fa360921b196153a08201526c3a7afaa91ffaa7ab12ea2bdfe3608a1b196153c082015265e9ebeaa49eab623a5f2360d21b01196153e0820152690132bb02028bf8461bcd60b51b6154008201527981526004018080602001828103825260058152602001807f47536154208201526181526232303360e81b0161544082015260017214180800645414181014602440e43f56d8001d606a1b03615460820152663a67ff67ffdf2360921b1961548082015267e97ead9fdffe6f7e613a6360e21b01196154a082015260017214980800580008180024152418404002a4011d606a1b036154c082015262e9eb9e613a6360ba1b01196154e08201526a02a93abb02028bf8461bcd60ad1b6155008201527881526004018080602001828103825260058152602001807f4761552082015260816314cc8c0d60e21b016155408201526001771494180800645414181014602440e43f56e018009800215d60421b03615560820152613a6360921b19615580820152783a5fab67f7ff9bdfab67f7ffa7fff7e7ffe7bfbffd5faadfa3602a1b196155a0820152653f79ba5bdf23605a1b196155c082015276e9fde86faaaf7f6dafaf7f7f9ffefe6eafaf9ead46a9a4196155e082015262e98c01681418005800980020dd60ba1b036156008201526ce97ead9fdffe6f7ead9fdffe9f1961562082015260016a08180018404002a055205d60a21b0361564082015265e9fde86faab0648645a420dd60d21b036156608201527f825160038190555081600481905550505050565b60007f6c9a6c4a39284e37ed6156808201527f1cf53d337577d14212a4870fb976a4366c693b939918d560001b9050818155506156a082015265e99ffe9fffa065141596d8001d60d21b036156c08201526001613a6360421b01605d60f21b036156e082015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f1961570082015264e98c0000016618404002a4011d60ca1b036157208201526ee9eb9ea884a89fbfae80f73c865fff196157408201526481526004016157608201527708080602001828103825260058152602001807f47533130360441b6157808201526c815250602001915050604051806157a082015260016c2440e43f56d80060180018005d609a1b036157c082015268e97ead9fdffe6f7ead613a6360ea1b01196157e082015260016f180800580008180018404002a055205d60821b0361580082015261e9fd653f79ba5bdf2360b21b011961582082015264e97d8c00016605e4155418001d60ca1b036158408201526de9eb9ea74fa89ea7c27d9fff7c9f19615860820152710ad30a746ab2db0ac57abb02028bf8461bcd606d1b6158808201527081526004018080602001828103825260056158a08201526b08152602001807f47533030360a41b6158c08201527881525060200191505060405180910390fd5b5b5050565b60006158e08201526001702018ea41672ee1211810145809006020dd607a1b036159008201527ae97ead9fdffe7d7ead9fdffe6dafafaf9fbfae9fdf7e7cfcfc7ead1961592082015260016e24181014a4183806d808208060145f608a1b03615940820152747c7e7ce9e87cadafafafaf6faf9fdf9fff7dae9fdf196159608201527f84016000896127105a03f13d6000811461595b576020811461596357600093506159808201527f61596e565b81935061596e565b600051158215171593505b50505093925050506159a08201527f56fea26469706673582212203874bcf92e1722cc7bfa0cef1a0985cf0dc3485b6159c082015276a0663db3747ccdf1605df53464736f6c6343000706003360481b6159e08201525b6025546000198114620044855760010190816025556020815191016000f590813f156200adb857565b60405162461bcd60e51b815260206004820152600e60248201526d1b081b9bdd0819195c1b1bde595960921b6044820152606490fd5b91906200ae049061010080855284019062000ce9565b6001602084015260e06020600092836040870152858103606087015283815201938260808201528260a08201528260c08201520152565b9060018060a01b0390816200ae5662002cf360225462000ae5565b16156200ae6e575b505050620008c460225462000ae5565b8116156200b019575b506200ae8962002cf360225462000ae5565b906000805160206200d1c0833981519152803b15620005d457604080516318caf8e360e31b8082526001600160a01b039590951660048201526024810191909152600f60448201526e31b7bab731b4b629b0b332a0b2323960891b606482015260009390848160848183875af18015620006fa576200b002575b50813b1562002fb757604080519182526001600160a01b03841660048301526024820152601060448201526f31b7bab731b4b629b0b332a7bbb732b960811b60648201529083908290608490829084905af18015620006fa576200afeb575b506200af7d6200af7162003454565b9162001c6683620034c6565b6200af8e62002cf360225462000ae5565b90813b15620007005782916200afbb9160405194858094819363b63e800d60e01b8352600483016200adee565b03925af18015620006fa576200afd4575b80806200ae5e565b80620006ec6200afe49262000766565b386200afcc565b80620006ec6200affb9262000766565b386200af62565b80620006ec6200b0129262000766565b386200af03565b60009060206200b0816200b03062002cf362005a31565b836200b03b62004a19565b604051631688f0b960e01b81526001600160a01b039093166004840152606060248401526000606484015260036044840152919586939190921691839182906084820190565b03925af18015620006fa576200b0bd926000916200b0c4575b5060228054919092166001600160a01b03166001600160a01b0319909116179055565b386200ae77565b6200b0e0915060203d811162000733576200072281836200082a565b386200b09a565b60101c6001600160a01b031690565b604051906200b1058262000780565b6001825260006020830152565b92916200b13a60409160039360018060a01b0316865260606020870152606086019062000ddf565b930152565b90816020910312620005d457518015158103620005d45790565b620008c4939160018060a01b031681526200b18860009384602084015261014080604085015283019062000ddf565b928060608301528060808301528060a08301528060c08301528060e083015261010082015261012081840391015262000ddf565b92620008c494926200b1e99260018060a01b03168552602085015261014080604086015284019062000ddf565b9160008060608301528060808301528060a08301528060c08301528060e083015261010082015261012081840391015262000ddf565b604051906200b22e8262000780565b6016825275195e1958d51c985b9cd858dd1a5bdb8819985a5b195960521b6020830152565b909360606200b292959493946200b26c8486886200b480565b6040516338d07aa960e21b81526004810192909252602482015295869081906044820190565b03816000805160206200d1c08339815191525afa938415620006fa5760008080966200b337575b6020969750600092916200b2da6200b2e9926040519a8b938b85016200b407565b03601f1981018952886200082a565b6200b30b6040519788968795869463353b090160e11b8652600486016200b1bc565b03926001600160a01b03165af18015620006fa57620037919160009162000a065750620009fd6200b21f565b5050602094506000906200b2e96200b3636200b2da9860603d811162000a7e5762000a6881836200082a565b9199909198505091925050866200b2b9565b6000805160206200d1c083398151915291823b15620005d4576200b3c29260009260405180958194829363a34edc0360e01b84521515600484015260406024840152604483019062000ddf565b03915afa8015620006fa576200b3d55750565b620037919062000766565b90816060910312620005d457805160ff81168103620005d457916040602083015192015190565b91604193918352602083015260ff60f81b9060f81b1660408201520190565b610120919493929460018060a01b031681526200b45760009586602084015261014080604085015283019062000ddf565b948060608301528060808301528060a08301528060c08301528060e08301526101008201520152565b60405163057ff68760e51b8152602093919290916001600160a01b03168483600481845afa918215620006fa576200b4dc9486946000946200b50f575b50604051631b1a23ef60e31b815295869485938493600485016200b426565b03915afa918215620006fa576000926200b4f557505090565b620008c49250803d106200367e576200366e81836200082a565b6200b52b919450853d87116200367e576200366e81836200082a565b92386200b4bd56fe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c6343000813003360a08060405234610031573060805261184590816100378239608051818181610b7801528181610c730152610ec60152f35b600080fdfe608080604052600436101561001357600080fd5b600090813560e01c908163025313a214611173575080631c3db16d1461113b57806326a0754c146110ff5780633659cfe614610ea15780634f1ef28614610c2457806352d1902d14610b65578063564a565d14610a255780635ea7b4fc146109d7578063715018a61461098c5780637a1d3756146107af57806388d5b7321461073c5780638da5cb5b1461070f578063c13517e1146103f9578063c4d66de8146103cc578063d98493f614610391578063da35a26f1461020a578063f2fde38b14610179578063f6506db4146101385763f7434ea9146100f257600080fd5b34610135576020366003190112610135576004356001600160401b0381116101315761012290369060040161131e565b50506020609754604051908152f35b5080fd5b80fd5b5034610135576080366003190112610135576024356001600160401b0381116101315761016990369060040161131e565b50506101736111b3565b506116da565b503461013557602036600319011261013557610193611198565b61019b61134b565b6001600160a01b038116156101b6576101b3906113aa565b80f35b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b5034610135576040366003190112610135576004356102276111c9565b82549060ff8260081c161592838094610384575b801561036d575b15610311576102956020927fc05490fc8f8e095831ea3823f005dd0661528380328aa5c3b7348a45244223be9486600160ff198316178955610300575b5061029060ff885460081c166115d8565b6113aa565b6102ae60ff865460081c166102a9816115d8565b6115d8565b6102b7336113aa565b80609755604051908152a16102c95780f35b61ff001981541681557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a180f35b61ffff19166101011787553861027f565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b1580156102425750600160ff841614610242565b50600160ff84161061023b565b5034610135576040366003190112610135576004356001600160401b038111610131576103c290369060040161131e565b50506101736111c9565b5034610135576020366003190112610135576101b36103e9611198565b61029060ff845460081c166115d8565b506040366003190112610135576001600160401b03906024358281116101315761042790369060040161131e565b90926002606554146106ca57600260655560975434106106b857609854916040519460c0860191868310848411176106a25761046a926040523387523691611238565b906020850191825260043560408601523460608601528360808601528360a0860152600160401b83101561068e57600183016098556104a88361126f565b92909261067a57855183546001600160a01b0319166001600160a01b0391909116178355518051918211610666576104e360018401546112a4565b601f8111610622575b50602090601f83116001146105b057918060a0949260059488926105a5575b50508160011b916000199060031b1c19161760018201555b604086015160028201556060860151600382015560808601516004820155019301519260028410156105915760209360ff8019835416911617905560405191817f141dfc18aa6a56fc816f44f0e9e2f1ebc92b15ab167770e17db5b084c10ed995339280a360016065558152f35b634e487b7160e01b83526021600452602483fd5b01519050388061050b565b906001840186526020862091865b601f198516811061060a57509260a0949260019260059583601f198116106105f1575b505050811b016001820155610523565b015160001960f88460031b161c191690553880806105e1565b919260206001819286850151815501940192016105be565b60018401865260208620601f840160051c81016020851061065f575b601f830160051c820181106106545750506104ec565b87815560010161063e565b508061063e565b634e487b7160e01b85526041600452602485fd5b634e487b7160e01b85526004859052602485fd5b634e487b7160e01b84526041600452602484fd5b634e487b7160e01b600052604160045260246000fd5b60405163e4216b3160e01b8152600490fd5b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b5034610135578060031936011261013557602061072a611638565b6040516001600160a01b039091168152f35b503461013557602036600319011261013557610756611198565b3380835260996020908152604080852080546001600160a01b0319166001600160a01b0390951694851790555192835290917f2b87bb26d58aa2d56b59c2b23a53a6959f68d4547492bda44fb5e68b0fa38b3f9190a280f35b5034610135576060366003190112610135576004356001600160a01b03602435816107d86111b3565b169182855260996020528060408620541680331460001461096a57506107fd8461126f565b50906002820154831161095857600582019081549160ff8316600281101561094457600114610932576001600485019386855560ff1916179055868080806003870154335af161084b61150f565b50156108fb5786925416905490803b156108f75760448392604051948593849263188d362b60e11b84528a600485015260248401525af180156108ec576108bc575b5060207f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e7562227691604051908152a380f35b9093906001600160401b0381116108d85760405292602061088d565b634e487b7160e01b82526041600452602482fd5b6040513d87823e3d90fd5b8280fd5b60405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b6044820152606490fd5b60405163bda17d9560e01b8152600490fd5b634e487b7160e01b89526021600452602489fd5b6040516309efd47960e41b8152600490fd5b60405163d0774c9960e01b81529081906109889033600484016116c0565b0390fd5b50346101355780600319360112610135576109a561134b565b603380546001600160a01b0319811690915581906001600160a01b03166000805160206117708339815191528280a380f35b5034610135576020366003190112610135577fb1484c2bf00d94a00783b6081ebc5f5d02be4675f6eb8cf4c0c95bfe5a3f06ed6020600435610a1761134b565b80609755604051908152a180f35b503461013557602080600319360112610131576004356098548110156108f757610a4e9061126f565b5060018060a01b038154169160019182810160405180948790835493610a73856112a4565b94858552878382169182600014610b43575050600114610b07575b5050610a9c925003846111fa565b600281015492610ace60038301549160c060ff60056004870154960154169560405198895288015260c08701906112de565b936040860152606085015260808401526002811015610af35782935060a08301520390f35b634e487b7160e01b84526021600452602484fd5b86925089528189209089915b858310610b2b575050610a9c93508201013880610a8e565b8054838a018501528894508793909201918101610b13565b9250935050610a9c94915060ff191682840152151560051b8201013880610a8e565b50346101355780600319360112610135577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610bbe5760206040516000805160206117508339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b50604036600319011261013557610c39611198565b6024356001600160401b0381116108f757366023820112156108f757610c69903690602481600401359101611238565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116929190610ca3308514156113e1565b610cc0600080516020611750833981519152948286541614611430565b610cc8611638565b8133911603610e7c576000805160206117108339815191525460ff1615610cf55750506101b3915061147f565b82919216604051936352d1902d60e01b85526020948581600481865afa879181610e49575b50610d695760405162461bcd60e51b815260048101879052602e60248201526000805160206117f083398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b94939403610e0457610d7a8261147f565b6000805160206117908339815191528580a283835115801590610dfc575b610da4575b5050505080f35b80610df29460405194610db6866111df565b602786526000805160206117d083398151915281870152660819985a5b195960ca1b604087015281519101845af4610dec61150f565b9161153f565b5038808083610d9d565b506001610d98565b60405162461bcd60e51b815260048101849052602960248201526000805160206117b08339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d8311610e75575b610e6181836111fa565b81010312610e7157519038610d1a565b8780fd5b503d610e57565b610988610e87611638565b60405163163678e960e01b815291829133600484016116c0565b50346101355760208060031936011261013157610ebc611198565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116610ef3308214156113e1565b610f10600080516020611750833981519152918383541614611430565b610f18611638565b8233911603610e7c57604051848101929091906001600160401b038411838510176110eb578360405286835260ff6000805160206117108339815191525416600014610f6c57505050506101b3915061147f565b84939416906040516352d1902d60e01b81528681600481865afa8891816110b8575b50610fdd5760405162461bcd60e51b815260048101889052602e60248201526000805160206117f083398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9594950361107357908591610ff18461147f565b6000805160206117908339815191528380a280511580159061106c575b61101b575b505050505080f35b6110619482916000805160206117d08339815191526040519661103d886111df565b60278852870152660819985a5b195960ca1b60408701525190845af4610dec61150f565b503880808381611013565b508161100e565b60405162461bcd60e51b815260048101859052602960248201526000805160206117b08339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508781813d83116110e4575b6110d081836111fa565b810103126110e057519038610f8e565b8880fd5b503d6110c6565b634e487b7160e01b87526041600452602487fd5b5034610135576020366003190112610135576020906001600160a01b039060409082611129611198565b16815260998452205416604051908152f35b503461013557602036600319011261013557606090600461115c813561126f565b500154906040519182528060208301526040820152f35b9050346101315781600319360112610131576033546001600160a01b03168152602090f35b600435906001600160a01b03821682036111ae57565b600080fd5b604435906001600160a01b03821682036111ae57565b602435906001600160a01b03821682036111ae57565b606081019081106001600160401b038211176106a257604052565b601f909101601f19168101906001600160401b038211908210176106a257604052565b6001600160401b0381116106a257601f01601f191660200190565b9291926112448261121d565b9161125260405193846111fa565b8294818452818301116111ae578281602093846000960137010152565b60985481101561128e5760986000526006602060002091020190600090565b634e487b7160e01b600052603260045260246000fd5b90600182811c921680156112d4575b60208310146112be57565b634e487b7160e01b600052602260045260246000fd5b91607f16916112b3565b919082519283825260005b84811061130a575050826000602080949584010152601f8019910116010190565b6020818301810151848301820152016112e9565b9181601f840112156111ae578235916001600160401b0383116111ae57602083818601950101116111ae57565b611353611638565b336001600160a01b039091160361136657565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b031982168117909255909116600080516020611770833981519152600080a3565b156113e857565b60405162461bcd60e51b815260206004820152602c602482015260008051602061173083398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b1561143757565b60405162461bcd60e51b815260206004820152602c602482015260008051602061173083398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b156114b45760008051602061175083398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b3d1561153a573d906115208261121d565b9161152e60405193846111fa565b82523d6000602084013e565b606090565b919290156115a15750815115611553575090565b3b1561155c5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156115b45750805190602001fd5b60405162461bcd60e51b8152602060048201529081906109889060248301906112de565b156115df57565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b6033546001600160a01b0390811690813b611651575090565b604051638da5cb5b60e01b8152602081600481865afa918291600093611681575b505061167c575090565b905090565b602093919293813d82116116b8575b8161169d602093836111fa565b81010312610131575191821682036101355750903880611672565b3d9150611690565b6001600160a01b0391821681529116602082015260400190565b60405162461bcd60e51b815260206004820152600d60248201526c139bdd081cdd5c1c1bdc9d1959609a1b6044820152606490fdfe4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a2646970667358221220682e6f4b37f25e1eef570e88bdd8faa12bd4a907f5c35258e7c445db1902002264736f6c634300081300330000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d9081016040528093929190818152602001838380828437600081840152601f1937fa166cbdbfbb1561ccd9ea985ec0218b5e68502e230525f544285b2bdf3d7e01838380828437600081840152601f19601f820116905080830192505050505080601f0160208091040260200160405190810160405280939291908181526020a2646970667358221220899463f2d6ab50ab01ac7fae164374a3fad823a091e3eb6b353ab13a448f8f5864736f6c63430008130033","sourceMap":"275:2119:94:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;;;;;;:::o;:::-;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;20344:19:20;275:2119:94;;20303:22:20;;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;20303:22:20;;;;;;;;;:::i;:::-;275:2119:94;20293:33:20;;275:2119:94;;-1:-1:-1;;;;;;20344:19:20;;275:2119:94;20344:19:20;;275:2119:94;;;;;;;;;;;;20344:19:20;;275:2119:94;20303:22:20;275:2119:94;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;275:2119:94;20373:20:20;;;;;;;275:2119:94;;;192:59:18;;;;;;;;;20373:20:20;;;275:2119:94;20373:20:20;;;:::i;:::-;;;;;;;;;;275:2119:94;20373:20:20;;;275:2119:94;;;;;;;;;:::i;:::-;;;;20373:20:20;;;;;;:::i;:::-;;;:::i;:::-;;;;;;:::i;:::-;275:2119:94;;;20344:19:20;;;;;20303:22;20344:19;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;:::o;:::-;;:::i;:::-;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;:::o;:::-;20303:22:20;275:2119:94;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;275:2119:94;;;;20303:22:20;275:2119:94;-1:-1:-1;;275:2119:94;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;275:2119:94;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;275:2119:94;;;;;59408:60:112;275:2119:94;;;;;;:::i;:::-;59434:33:112;59408:60;59434:33;;;;;:::i;:::-;275:2119:94;;-1:-1:-1;;;59408:60:112;;275:2119:94;;;;59408:60:112;;275:2119:94;;;;;;;;;;;;;;;;;59408:60:112;;;-1:-1:-1;;;;;;;;;;;59408:60:112;;;;;;;60164:147;59408:60;59491:25;59408:60;59858:1;;;;59408:60;;;275:2119:94;;59858:1:112;275:2119:94;;59491:25:112;;275:2119:94;;;59491:25:112;;;;;;;:::i;:::-;;20303:22:20;;59491:25:112;;;;;;:::i;:::-;275:2119:94;;-1:-1:-1;;;60164:147:112;;275:2119:94;;;;;;;;60164:147:112;;;:::i;:::-;;;-1:-1:-1;;;;;275:2119:94;60164:147:112;;;;;;60140:219;60164:147;59858:1;60164:147;;;275:2119:94;;;;:::i;:::-;60140:219:112;;:::i;:::-;275:2119:94;60164:147:112;;;;59491:25;60164:147;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;59408:60;59491:25;59408:60;;59858:1;59408:60;;;59491:25;59408:60;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;-1:-1:-1;59408:60:112;;;;-1:-1:-1;59408:60:112;;;;;;;275:2119:94;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;-1:-1:-1;;;;;275:2119:94;;:::o;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;718:28:112;275:2119:94;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;1817:38:93;275:2119:94;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;306:4:15;275:2119:94;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;975:74:112;275:2119:94;;;;;:::i;:::-;1022:25:112;;:::i;:::-;975:74;;:::i;275:2119:94:-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;2563:16:22;275:2119:94;;;;;;;;;2563:16:22;275:2119:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20303:22:20;275:2119:94;-1:-1:-1;;275:2119:94;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;3485:19:22;275:2119:94;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;817:8:111;275:2119:94;;;;;;;;;-1:-1:-1;;275:2119:94;;;;2372:71:93;275:2119:94;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;275:2119:94;;;;-1:-1:-1;275:2119:94;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;2328:37:93;275:2119:94;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;2328:37:93;275:2119:94;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;2239:32:93;275:2119:94;;;;;;;;;;;;;;;;;;;;644:109:111;275:2119:94;;;;;;644:109:111;275:2119:94;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;644:109:111;275:2119:94;;;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3331:16:22;275:2119:94;;;;;;;;;3331:16:22;275:2119:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;874:7:111;275:2119:94;;;;;;;;;;;;;;;;;;;;;3038:18:22;275:2119:94;;;;;;;;;3038:18:22;275:2119:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;;1426:16:15;;:::i;:::-;275:2119:94;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;;828:25:112;275:2119:94;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;6469:19:111;275:2119:94;;;;;:::i;:::-;;;-1:-1:-1;;;6469:19:111;;275:2119:94;;;;;-1:-1:-1;;;;;275:2119:94;6469:19:111;;;;;;-1:-1:-1;6469:19:111;;;275:2119:94;;;;;;;;;6469:19:111;;;;;;;;;;;;;;;:::i;:::-;;;275:2119:94;;;;;;;;;661:63:23;6469:19:111;;;;;-1:-1:-1;6469:19:111;;275:2119:94;;-1:-1:-1;;275:2119:94;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;1862:66:93;275:2119:94;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;-1:-1:-1;;;;;;275:2119:94;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;2883:26:22;275:2119:94;;;;:::i;:::-;;;;;;;:::i;:::-;;;;2883:26:22;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;192:59:18;275:2119:94;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;;;;275:2119:94;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;275:2119:94;192:59:18;;275:2119:94;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;275:2119:94;192:59:18;;275:2119:94;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;;;;275:2119:94;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;275:2119:94;192:59:18;;275:2119:94;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;;;;275:2119:94;:::i;:::-;;;;;;;;192:59:18;275:2119:94;192:59:18;;;;;;275:2119:94;:::i;:::-;;;;;;;;;;;;;;;;;;;;;192:59:18;;275:2119:94;192:59:18;;;;275:2119:94;:::i;:::-;-1:-1:-1;;;;;;275:2119:94;;;;192:59:18;;275:2119:94;;;;192:59:18;;;;;275:2119:94;:::i;:::-;;;;;;;192:59:18;;;;;275:2119:94;:::i;:::-;;;;;;192:59:18;;275:2119:94;;;;;192:59:18;;;;;275:2119:94;:::i;:::-;;192:59:18;;;275:2119:94;:::i;:::-;;;192:59:18;;275:2119:94;192:59:18;;275:2119:94;:::i;:::-;;;192:59:18;;;275:2119:94;:::i;:::-;;;192:59:18;;275:2119:94;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;689:23:112;275:2119:94;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;275:2119:94;;;;;59668:6:112;275:2119:94;;;;;;:::i;:::-;59626:11:112;275:2119:94;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;59668:6:112;:::i;275:2119:94:-;;;;;;;;;;;;;2900:16:15;;:::i;:::-;275:2119:94;;:::i;:::-;20344:19:20;275:2119:94;;20303:22:20;;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;20344:19:20:-;;275:2119:94;20303:22:20;275:2119:94;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;275:2119:94;20373:20:20;;;;;;;275:2119:94;;;192:59:18;;;;;;;;;20373:20:20;;;275:2119:94;20373:20:20;;;:::i;:::-;;;;;;;;;;275:2119:94;20373:20:20;2926:32:15;20373:20:20;;;275:2119:94;2926:32:15;;;;:::i;:::-;;:::i;:::-;2968;20537:20:20;275:2119:94;;:::i;:::-;20537:20:20;:::i;:::-;2968:32:15;;;;:::i;:::-;275:2119:94;;;;;;;:::i;20373:20:20:-;;;;;;:::i;:::-;;;;20344:19;;;;;20303:22;20344:19;;;;;;;;;:::i;:::-;;;;;275:2119:94;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;;788:34:112;275:2119:94;;;;;;;;;;;;;;;;;;;;2094:16:15;;:::i;:::-;275:2119:94;;:::i;:::-;20344:19:20;275:2119:94;;20303:22:20;;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;20344:19:20:-;;275:2119:94;20303:22:20;275:2119:94;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;275:2119:94;20373:20:20;;;;;;;275:2119:94;;;192:59:18;;;;;;;;;20373:20:20;;;275:2119:94;20373:20:20;;;:::i;:::-;;;;;;;;;;275:2119:94;20373:20:20;2120:29:15;20373:20:20;;;2120:29:15;;;;:::i;:::-;2159;20537:20:20;275:2119:94;;:::i;20344:19:20:-;;;;;20303:22;20344:19;;;;;;;;;:::i;:::-;;;;;275:2119:94;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;2049:33:93;275:2119:94;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;1934:20:93;275:2119:94;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2707:18:22;275:2119:94;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;2707:18:22;275:2119:94;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;275:2119:94;;;:::o;:::-;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;:::i;:::-;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;2201:31:93;275:2119:94;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;753:29:112;275:2119:94;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;3190:18:22;275:2119:94;;;;:::i;:::-;;;;;;;:::i;:::-;;;;3190:18:22;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;192:59:18;;275:2119:94;192:59:18;;;;275:2119:94;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;1988:27:93;275:2119:94;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;4445:42:9;275:2119:94;;;;;;;;;;;;;;;;3712:16:15;;:::i;:::-;275:2119:94;;:::i;:::-;20344:19:20;275:2119:94;;20303:22:20;;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;20344:19:20:-;;275:2119:94;20303:22:20;275:2119:94;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;275:2119:94;20373:20:20;;;;;;;275:2119:94;;;192:59:18;;;;;;;;;20373:20:20;;;275:2119:94;20373:20:20;;;:::i;:::-;;;;;;;;;;275:2119:94;20373:20:20;3738:32:15;20373:20:20;;;3738:32:15;;;;:::i;:::-;3780;20537:20:20;275:2119:94;;:::i;20344:19:20:-;;;;;20303:22;20344:19;;;;;;;;;:::i;:::-;;;;;275:2119:94;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;-1:-1:-1;275:2119:94;;;:::o;:::-;;:::i;:::-;;;;;;;;;:::o;:::-;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;2273:18:22;275:2119:94;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;2273:18:22;275:2119:94;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;:::i;:::-;;;;;;;;;;;;;3768:3:93;275:2119:94;;;;;:::i;:::-;;;;3768:3:93;:::i;:::-;275:2119:94;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;;;;596:42:112;275:2119:94;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;;;;507:42:112;275:2119:94;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;20344:19:20:-;;275:2119:94;;;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;275:2119:94;20373:20:20;;;;;;;275:2119:94;;;192:59:18;;;;;;;;;20373:20:20;;;275:2119:94;20373:20:20;;;:::i;:::-;;;;;;;;;;275:2119:94;20373:20:20;;;275:2119:94;-1:-1:-1;275:2119:94;;;;;-1:-1:-1;;;;;275:2119:94;;;:::i;20373:20:20:-;;;;;;:::i;:::-;;;;20344:19;;;;;275:2119:94;20344:19:20;;;;;;;;;:::i;:::-;;;;;275:2119:94;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;;;;;;;;;;;;;57360:15:112;275:2119:94;;;;;;192:59:18;;;57352:24:112;;;275:2119:94;;57352:24:112;275:2119:94;57352:24:112;;;;275:2119:94;;;;;;;;57352:24:112;;275:2119:94;;;-1:-1:-1;;;;;;;;;;;57352:24:112;;;;;;;;;57335:41;57352:24;;;;;275:2119:94;-1:-1:-1;57335:41:112;1590:14:16;;-1:-1:-1;;;;;;1590:14:16;-1:-1:-1;;;;;275:2119:94;;;;1590:14:16;;;;;;;57335:41:112;275:2119:94;57335:41:112;275:2119:94;;:::i;:::-;57386:42:112;;;;;;275:2119:94;;-1:-1:-1;;;57386:42:112;;;-1:-1:-1;;;;;275:2119:94;;;57386:42:112;;;275:2119:94;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;192:59:18;;275:2119:94;;;;;;57386:42:112;;;;;;;;;;;;275:2119:94;;;;;;;;57443:20:112;275:2119:94;57451:11:112;275:2119:94;;:::i;:::-;57443:20:112;:::i;:::-;275:2119:94;57443:34:112;57439:1248;;275:2119:94;;;;57451:11:112;275:2119:94;;:::i;:::-;;;;;;;;:::i;57439:1248:112:-;57516:25;;;:::i;:::-;57556:39;57573:22;57581:13;;:::i;57573:22::-;57556:39;1590:14:16;;-1:-1:-1;;;;;;1590:14:16;-1:-1:-1;;;;;275:2119:94;;;;1590:14:16;;;;;;;57556:39:112;275:2119:94;57609:42:112;;;;;275:2119:94;;57609:42:112;;;;;;;;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;57609:42:112;;;;;;;;;;;;57827:77;57609:42;;;;;57439:1248;275:2119:94;;57556:39:112;275:2119:94;;:::i;:::-;;;;:::i;:::-;;;;;;192:59:18;;;;;;;;;;57827:77:112;;;;;:::i;:::-;;;;;;;;;;57919:40;57827:77;;;;;57439:1248;-1:-1:-1;;57451:11:112;275:2119:94;;-1:-1:-1;;;;;;275:2119:94;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;57919:40:112;58131:20;275:2119:94;57451:11:112;275:2119:94;;:::i;58131:20:112:-;58122:45;;;;;;275:2119:94;;58122:45:112;;;-1:-1:-1;;;;;275:2119:94;;;58122:45:112;;;275:2119:94;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;58122:45:112;;;;;;;;;;57439:1248;58243:16;;;:::i;:::-;58309:35;275:2119:94;57335:41:112;275:2119:94;;:::i;:::-;58309:35:112;;;:::i;:::-;58358:63;;;;:::i;:::-;58378:42;275:2119:94;;;58358:63:112;58435;;;;:::i;:::-;58455:42;275:2119:94;;;58435:63:112;58548:17;275:2119:94;57451:11:112;275:2119:94;;:::i;58548:17:112:-;:92;;;;;;275:2119:94;;;;192:59:18;;;;;;;;;58548:92:112;;;;;:::i;:::-;;;;;;;;;;275:2119:94;58548:92:112;;;57439:1248;;;;;;;58548:92;;;;;;:::i;:::-;;;;58122:45;;;;;;:::i;:::-;;;;;275:2119:94;;;57827:77:112;;;;;;-1:-1:-1;57827:77:112;;;;;;:::i;:::-;;;;;57609:42;;;;;;:::i;:::-;;;;;275:2119:94;;;57386:42:112;;;;;;:::i;:::-;;;;57352:24;;;;;;;;;;;;;;:::i;:::-;;;;275:2119:94;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;:::i;:::-;;;:::i;:::-;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;2421:18:22;275:2119:94;;;;;;;;;2421:18:22;275:2119:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;-1:-1:-1;;;1058:7:111;275:2119:94;1590:14:16;;;275:2119:94;5621:12:111;;;275:2119:94;;;;;5724:17:111;5758:5;;;275:2119:94;6248:103:111;6249:94;6250:82;275:2119:94;6277:54:111;275:2119:94;6321:9:111;6278:38;6251:21;275:2119:94;;6251:21:111;;:::i;:::-;275:2119:94;6296:19:111;6278:14;275:2119:94;;6278:14:111;:::i;:::-;6296:19;;:::i;:::-;6278:38;;:::i;:::-;6321:9;;:::i;:::-;6277:54;;:::i;:::-;6250:82;;:::i;:::-;6249:94;:::i;:::-;275:2119:94;;964:8:111;;5751:215;275:2119:94;;5783:5:111;;;5787:1;;5817:10;;;;:::i;:::-;275:2119:94;;5779:177:111;;;5751:215;;;;5779:177;5901:16;;;;;5935:6;5901:16;;:::i;:::-;5935:6;;:::i;:::-;5779:177;;;;275:2119:94;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;20344:19:20;275:2119:94;;;20303:22:20;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;2278:44:93;275:2119:94;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2278:44:93;275:2119:94;;;;-1:-1:-1;;;;;;;;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;275:2119:94;;;;;;800:28:17;275:2119:94;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;1016:26:29;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;1440:1:15;275:2119:94;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;681:1:112;275:2119:94;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;3604:1:111;275:2119:94;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;:::o;:::-;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;2977:1:15;275:2119:94;;;;;;;:::o;:::-;;;58442:1:112;275:2119:94;;;;;;;:::o;:::-;-1:-1:-1;;;;;275:2119:94;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;:::o;192:59:18:-;;;;;;;;;;;:::o;:::-;275:2119:94;;192:59:18;;;;;;;1243:204;1302:7;275:2119:94;;;;;;;1325:14:18;:::o;1298:143::-;275:2119:94;;;192:59:18;;;1377:39;;;275:2119:94;192:59:18;275:2119:94;-1:-1:-1;;;;;;;;;;;1377:39:18;;;;275:2119:94;192:59:18;;;;;;275:2119:94;1377:39:18;;;;;;;-1:-1:-1;1377:39:18;;;1298:143;1377:53;;;1370:60;:::o;1377:39::-;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;275:2119:94;;;;;;;;;;;;;:::i;:::-;;;:::o;291:59:20:-;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;275:2119:94;;;;;291:59:20;;;;;;;;;;;;;:::i;20158:242::-;;275:2119:94;;20303:22:20;;;275:2119:94;20303:22:20;275:2119:94;;;;;:::i;20303:22:20:-;275:2119:94;20293:33:20;;275:2119:94;;-1:-1:-1;;;;;;20344:19:20;;;;;275:2119:94;;;20293:33:20;;;-1:-1:-1;;;;;;;;;;;275:2119:94;20303:22:20;275:2119:94;;;;20344:19:20;;;;;;;-1:-1:-1;20344:19:20;;;20158:242;20337:26;;20373:20;;;;;;;275:2119:94;-1:-1:-1;275:2119:94;;;;192:59:18;;;;;;;;;20373:20:20;;20344:19;20373:20;;;:::i;:::-;;;;;;;;;;;20158:242;:::o;20373:20::-;;;;;;:::i;:::-;20158:242::o;20344:19::-;;;;20303:22;20344:19;;;;;;;;;:::i;:::-;;;;275:2119:94;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;275:2119:94;;-1:-1:-1;275:2119:94;;-1:-1:-1;275:2119:94;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;1590:14:16;;;;;;;;:::o;:::-;-1:-1:-1;275:2119:94;4009:25:93;275:2119:94;;;;;1590:14:16;275:2119:94;1590:14:16;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;-1:-1:-1;1590:14:16;;;;;275:2119:94;;1590:14:16;;;-1:-1:-1;;;;;1590:14:16;;;;;;;4009:25:93;1590:14:16;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;275:2119:94;1590:14:16;;;4009:25:93;1590:14:16;:::o;:::-;;;;-1:-1:-1;1590:14:16;;;;;4009:25:93;275:2119:94;;-1:-1:-1;;1590:14:16;;;20303:22:20;;;-1:-1:-1;;;;;;;;;;;1590:14:16;;;;;;;;;;;;275:2119:94;1590:14:16;;;;;;;;;;;;4009:25:93;1590:14:16;:::o;:::-;;;;;;;;;;275:2119:94;1590:14:16;;;;;;;;;;;275:2119:94;1590:14:16;;;;;;;;;;;;;;;;;;;275:2119:94;;;;;;:::i;:::-;1590:14:16;275:2119:94;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;275:2119:94;;;;;;:::i;:::-;1590:14:16;275:2119:94;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;275:2119:94;;;;;;:::i;:::-;1590:14:16;275:2119:94;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;275:2119:94;;;;;;:::i;:::-;1590:14:16;275:2119:94;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;275:2119:94;;;;;;:::i;:::-;1590:14:16;275:2119:94;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;275:2119:94;;;;;;:::i;:::-;1590:14:16;275:2119:94;;-1:-1:-1;;;1590:14:16;;;;:::o;3860:12279:93:-;275:2119:94;2689:6:93;275:2119:94;;:::i;:::-;;-1:-1:-1;;;;;;;;;;;3921:31:93;;;;;;275:2119:94;;-1:-1:-1;;;3921:31:93;;;;;;275:2119:94;;;;3921:31:93;;;;;;:::i;:::-;;;;;;;;;;;;;3860:12279;275:2119:94;;;3963:82:93;;3860:12279;4076:16;4458:4;4076:16;;:::i;:::-;4392:37;4121:40;4135:25;1590:14:16;;:::i;:::-;4135:25:93;:::i;:::-;4121:40;;:::i;:::-;4308:30;4192:39;4208:22;1590:14:16;;:::i;4208:22:93:-;4192:39;;:::i;:::-;4241:56;4250:47;4267:29;1590:14:16;;:::i;4267:29:93:-;4250:47;;:::i;:::-;2689:6;1590:14:16;;-1:-1:-1;;;;;;1590:14:16;-1:-1:-1;;;;;275:2119:94;;;;1590:14:16;;;;;;;4241:56:93;1590:14:16;;:::i;:::-;4308:30:93;:::i;:::-;4348:34;275:2119:94;2689:6:93;275:2119:94;;:::i;:::-;1590:14:16;;:::i;:::-;4348:34:93;:::i;:::-;1590:14:16;;:::i;:::-;4392:37:93;:::i;4458:4::-;16114:18;;;;;275:2119:94;;3921:31:93;275:2119:94;;192:59:18;;;;;;;16114:18:93;;;;;;;;;;3860:12279;:::o;16114:18::-;275:2119:94;;;3963:82:93;1590:14:16;;;:::i;:::-;3963:82:93;;;3921:31;;;;;;:::i;:::-;;;;661:63:23;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;878:140::-;275:2119:94;;-1:-1:-1;;;984:27:23;;275:2119:94;984:27:23;;275:2119:94;;;;984:27:23;;878:140;984:27;;;;:::i;:::-;;;-1:-1:-1;;;;;;;;;;;984:27:23;;;;;;;-1:-1:-1;984:27:23;;;977:34;878:140;:::o;984:27::-;;;;;;;;;;;;;;:::i;275:2119:94:-;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;1817:150:23:-;275:2119:94;;-1:-1:-1;;;1931:29:23;;275:2119:94;1931:29:23;;275:2119:94;;;;1931:29:23;;1817:150;1931:29;;;;:::i;:::-;;;-1:-1:-1;;;;;;;;;;;1931:29:23;;;;;;;;;;;1924:36;1817:150;:::o;1931:29::-;;;;;;;;;;;;:::i;:::-;;;;;:::i;2141:146::-;275:2119:94;;-1:-1:-1;;;2250:30:23;;275:2119:94;2250:30:23;;275:2119:94;;;;2250:30:23;;2141:146;2250:30;;;;:::i;:::-;;;-1:-1:-1;;;;;;;;;;;2250:30:23;;;;;;;-1:-1:-1;2250:30:23;;;2243:37;2141:146;:::o;2250:30::-;;;;;;;;;;;;;;:::i;7546:145:32:-;7629:54;275:2119:94;7546:145:32;275:2119:94;7546:145:32;275:2119:94;;7629:54:32;;;;;;;;;;275:2119:94;7629:54:32;;;275:2119:94;;;;;;:::i;:::-;;;;;;7629:54:32;20303:22:20;;7629:54:32;;;;;;:::i;:::-;1222:159;1007:380;;1222:159;275:2119:94;;1222:159:32;;591:42;1222:159;;;1007:380::o;7846:150::-;;7935:53;275:2119:94;7846:150:32;7935:53;275:2119:94;;7935:53:32;;;;;;;;;;;;;;:::i;8147:145::-;8230:54;275:2119:94;8147:145:32;275:2119:94;8147:145:32;275:2119:94;;8230:54:32;;;;;;;;;;275:2119:94;8230:54:32;;;275:2119:94;;;;;;:::i;:::-;-1:-1:-1;;;;;275:2119:94;;;;;;;;8230:54:32;-1:-1:-1;;8230:54:32;;;;;;:::i;3035:305:93:-;275:2119:94;;-1:-1:-1;275:2119:94;3157:15:93;275:2119:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;3157:15:93;-1:-1:-1;275:2119:94;;-1:-1:-1;275:2119:94;;-1:-1:-1;275:2119:94;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;275:2119:94;;;;3346:276:93;275:2119:94;;-1:-1:-1;;;3441:16:93;;;;-1:-1:-1;;;;;;;;;;;275:2119:94;3441:16:93;275:2119:94;3441:16:93;275:2119:94;;3441:16:93;;;;;;3577:17;3441:16;;;;;;;3346:276;275:2119:94;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;:::i;:::-;;;192:59:18;;;;;;;;3577:17:93;;3441:16;3577:17;;;:::i;:::-;;;;;;;;;;;;;;3604:11;;3346:276;:::o;3577:17::-;;;;;;;;;;;;;:::i;3441:16::-;;;;;;;;;;;;;;:::i;:::-;;;;;275:2119:94;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;:::o;360:2032::-;461:59;360:2032;485:34;275:2119;;:::i;485:34::-;461:59;;:::i;:::-;275:2119;;-1:-1:-1;;;;;275:2119:94;691:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;275:2119;;-1:-1:-1;;;730:92:94;;;;789:11;730:92;;;275:2119;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;730:92;;;275:2119;;730:92;:::i;:::-;275:2119;;649:187;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;649:187;:::i;:::-;;;691:20;649:187;;;;;;857:55;275:2119;;;;:::i;:::-;;;;;;1457:1:111;275:2119:94;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;:::i;1180:437:111:-;;1352:16;275:2119:94;1352:30:111;1348:230;;1180:437;275:2119:94;;;1352:16:111;275:2119:94;1180:437:111;:::o;1348:230::-;1417:150;275:2119:94;;;-1:-1:-1;275:2119:94;;;;;:::i;:::-;1498:1:111;275:2119:94;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;1478:48:111;;;275:2119:94;;;-1:-1:-1;;;1417:150:111;;275:2119:94;;;;;;;1417:150:111;;;;:::i;:::-;;;-1:-1:-1;;;;;275:2119:94;1417:150:111;;;;;;1398:169;1417:150;-1:-1:-1;1417:150:111;;;1348:230;1398:169;1352:16;275:2119:94;;1398:169:111;1348:230;;;;;1417:150;;;;275:2119:94;1417:150:111;;;;;;;;;:::i;:::-;;;;275:2119:94;;;;;;;:::i;:::-;-1:-1:-1;275:2119:94;;:::o;:::-;;;;;;;:::i;:::-;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;1058:7:111;275:2119:94;;;;;;;;;;;;;;;:::o;:::-;;:::i;:::-;;;;;;;;;;;;;;;;:::o;1623:1400:111:-;;;;;;2445:34;2489:32;1623:1400;2391:44;275:2119:94;;:::i;:::-;2085:15:111;275:2119:94;2085:21:111;:15;;:21;275:2119:94;;2166:15:111;;275:2119:94;;2246:22:111;:15;;:22;275:2119:94;2207:9:111;2328:34;:15;;:34;275:2119:94;2391:24:111;;;:44;:::i;:::-;2246:22;2445:19;;:34;:::i;:::-;2085:21;2489:18;;:32;:::i;:::-;275:2119:94;2531:18:111;;;275:2119:94;;2573:27:111;;;275:2119:94;;;2638:26:111;2634:182;;1623:1400;2328:34;2825:18;;:32;2867:23;;;:42;2974:23;;;:42;1623:1400::o;2634:182::-;275:2119:94;;;2634:182:111;;1623:1400;2531:32;1623:1400;2445:34;2391:24;1623:1400;;;;;;;2391:44;2489:32;1623:1400;275:2119:94;;:::i;:::-;2085:15:111;;275:2119:94;2085:21:111;:15;;:21;275:2119:94;;2166:15:111;;275:2119:94;;2246:22:111;:15;;:22;275:2119:94;2207:9:111;2328:34;:15;;:34;275:2119:94;2391:24:111;:44;:::i;:::-;2246:22;2445:19;;:34;:::i;:::-;2085:21;2489:18;;:32;:::i;:::-;2531:18;;;:32;:::i;:::-;2573:27;;;275:2119:94;;;2638:26:111;2634:182;;2328:34;2825:18;;:32;2867:23;;;:42;2974:23;;;:42;1623:1400::o;275:2119:94:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;3616:1:111;275:2119:94;;;;;;;;;;;4404:8:111;275:2119:94;;;;;;;;3616:1:111;275:2119:94;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;3616:1:111;275:2119:94;;3616:1:111;275:2119:94;;3616:1:111;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;-1:-1:-1;275:2119:94;;-1:-1:-1;275:2119:94;;-1:-1:-1;275:2119:94;;;;;;;;-1:-1:-1;275:2119:94;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;;3029:1511:111;;;;;4337:18;3029:1511;3490:141;3029:1511;;;;3590:16;;;:::i;:::-;3490:141;;:::i;:::-;3676:16;;;:::i;:::-;3730:4;3702:33;3730:4;3702:33;;;:::i;:::-;3745:39;3773:10;3745:39;;;:::i;:::-;-1:-1:-1;;;;;275:2119:94;4445:42:9;;4034:23:111;;275:2119:94;;;;;4067:64:111;;3029:1511;275:2119:94;;4237:55:111;275:2119:94;3616:1:111;275:2119:94;;2689:6:93;275:2119:94;;:::i;:::-;4237:55:111;;:::i;:::-;4149:301;275:2119:94;;4337:18:111;;;;;;;;;;;:::i;:::-;;20303:22:20;;4337:18:111;;;;;;:::i;:::-;275:2119:94;;-1:-1:-1;;;4149:301:111;;275:2119:94;;;;;;;4149:301:111;;;;:::i;:::-;;275:2119:94;;4149:301:111;;;;;;;;3616:1;4149:301;;;3029:1511;4140:310;275:2119:94;4149:301:111;275:2119:94;;192:59:18;;;;;;;4468:48:111;;275:2119:94;4468:48:111;;;;;;;4461:72;4468:48;3616:1;4468:48;;;3029:1511;275:2119:94;;;;;:::i;:::-;;;;:::i;:::-;4468:64:111;4461:72;:::i;4468:48::-;;;;;;-1:-1:-1;4468:48:111;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;4149:301;;;;;;;;;;;;;;:::i;:::-;;;;4067:64;4106:14;-1:-1:-1;4237:55:111;4067:64;;4546:578;;;;;4870:247;4546:578;;;;275:2119:94;;;;;;:::i;:::-;-1:-1:-1;275:2119:94;;4870:247:111;:::i;275:2119:94:-;;;;;;;:::o;:::-;;;;;;;;;;;;1014:8:111;-1:-1:-1;;1014:8:111;;;;;;;;:::o;:::-;-1:-1:-1;;;1014:8:111;;;;;;;;;:::o;:::-;;1058:7;1014:8;;;;;;;;:::o;:::-;-1:-1:-1;;;1014:8:111;;;;;-1:-1:-1;1014:8:111;;:::o;:::-;;;;;;;;;;:::o;5250:269::-;;-1:-1:-1;;;5346:13:111;;;275:2119:94;;5422:12:111;;275:2119:94;;;5486:7:111;5485:19;5486:7;5484:28;5486:7;;:::i;275:2119:94:-;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;1170:7994:112;507:42;1702:19:73;;1249:100:112;;275:2119:94;1452:7705:112;1482:7665;275:2119:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1482:7665:112;:::i;9170:46249::-;596:42;1702:19:73;;9225:92:112;;275:2119:94;9333:46079:112;9351:46051;275:2119:94;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;;;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;275:2119:94;;;;-1:-1:-1;;;;;;;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;275:2119:94;;;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;;;;;275:2119:94;;;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;;;;;;;275:2119:94;;;;-1:-1:-1;;;;;;;;;;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;;275:2119:94;;;;;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;;;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;;;;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;;;;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;55425:396:112;55541:8;275:2119:94;-1:-1:-1;;275:2119:94;;;;;;;;55541:8:112;275:2119:94;55559:158:112;;;;;1590:14:16;55559:158:112;;;;55734:8;275:2119:94;;55425:396:112:o;275:2119:94:-;;;-1:-1:-1;;;275:2119:94;;55559:158:112;275:2119:94;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;;;;;;:::i;:::-;58365:1:112;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;56023:1145:112:-;;275:2119:94;;;;;;;56247:25:112;275:2119:94;56255:16:112;275:2119:94;;:::i;56247:25:112:-;275:2119:94;56247:39:112;56243:886;;56023:1145;275:2119:94;;;;56255:16:112;275:2119:94;;:::i;56243:886:112:-;275:2119:94;;56306:49:112;56302:481;;56243:886;275:2119:94;56806:25:112;275:2119:94;56255:16:112;275:2119:94;;:::i;56806:25:112:-;275:2119:94;-1:-1:-1;;;;;;;;;;;56797:54:112;;;;;275:2119:94;;;-1:-1:-1;;;56797:54:112;;;-1:-1:-1;;;;;275:2119:94;;;;56797:54:112;;;275:2119:94;;;;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;-1:-1:-1;;192:59:18;-1:-1:-1;275:2119:94;;;-1:-1:-1;56797:54:112;;;;;;;;;56243:886;56865:45;;;;;;275:2119:94;;;56865:45:112;;;-1:-1:-1;;;;;275:2119:94;;56797:54:112;56865:45;;275:2119:94;;;;;;;;;;-1:-1:-1;;;275:2119:94;;;;;;;;;;;;;;;56865:45:112;;;;;;;;56243:886;56950:16;56980:27;56950:16;;:::i;:::-;56980:27;;;;:::i;:::-;57021:22;275:2119:94;56255:16:112;275:2119:94;;:::i;57021:22:112:-;:97;;;;;;275:2119:94;;57021:97:112;275:2119:94;;;192:59:18;;;;;;;;;57021:97:112;;56797:54;57021:97;;;:::i;:::-;;;;;;;;;;;56243:886;;;;;57021:97;;;;;;:::i;:::-;;;;56865:45;;;;;;:::i;:::-;;;;56797:54;;;;;;:::i;:::-;;;;56302:481;56284:1;56417:13;56616:88;;56409:22;56417:13;;:::i;56409:22::-;56532:25;;;:::i;:::-;275:2119:94;;-1:-1:-1;;;56616:88:112;;-1:-1:-1;;;;;275:2119:94;;;56616:88:112;;;275:2119:94;;;;;;-1:-1:-1;275:2119:94;;;;681:1:112;275:2119:94;;;;;;;;;;;;;;;;;;;;;;56616:88:112;;;;;;;;;56723:45;56616:88;56284:1;56616:88;;;56302:481;-1:-1:-1;56255:16:112;1590:14:16;;275:2119:94;;;;-1:-1:-1;;;;;275:2119:94;-1:-1:-1;;;;;;1590:14:16;;;;;;;56723:45:112;56302:481;;;56616:88;;;;;;;;;;;;;;:::i;:::-;;;;275:2119:94;;;-1:-1:-1;;;;;275:2119:94;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;275:2119:94;;;;:::o;:::-;;;;;;681:1:112;275:2119:94;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;59858:1:112;275:2119:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;275:2119:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;275:2119:94;;;;:::o;59873:493:112:-;;;59408:60;;59873:493;;;;59434:33;;;;;:::i;:::-;275:2119:94;;-1:-1:-1;;;59408:60:112;;;;;275:2119:94;;;;;;;;;;;;;;;;;;59408:60:112;;;-1:-1:-1;;;;;;;;;;;59408:60:112;;;;;;;-1:-1:-1;;;59408:60:112;;;59873:493;59491:25;275:2119:94;;;-1:-1:-1;275:2119:94;;59491:25:112;;275:2119:94;;;59491:25:112;;;;;;;:::i;:::-;;20303:22:20;;59491:25:112;;;;;;:::i;:::-;60164:147;275:2119:94;;192:59:18;;;;;;;;;;60164:147:112;;59408:60;60164:147;;;:::i;:::-;;;-1:-1:-1;;;;;275:2119:94;60164:147:112;;;;;;60140:219;60164:147;-1:-1:-1;60164:147:112;;;275:2119:94;;;:::i;59408:60:112:-;;;59491:25;59408:60;;-1:-1:-1;59408:60:112;59491:25;59408:60;59491:25;59408:60;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;1689:113:18;-1:-1:-1;;;;;;;;;;;1771:24:18;;;;;;275:2119:94;;1771:24:18;275:2119:94;;;192:59:18;;;;;;;;;1771:24;;275:2119:94;;1771:24:18;;;275:2119:94;;;;;;;;;;;:::i;:::-;1771:24:18;;;;;;;;;;1689:113;:::o;1771:24::-;;;;:::i;275:2119:94:-;;;;;;;;;;;;;;;;;;;;;;;192:59:18;275:2119:94;;192:59:18;275:2119:94;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;58912:1:112;275:2119:94;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;58727:295:112:-;275:2119:94;;-1:-1:-1;;;58985:20:112;;;;58727:295;;275:2119:94;;-1:-1:-1;;;;;275:2119:94;58985:20:112;275:2119:94;58985:20:112;275:2119:94;;58985:20:112;;;;;;;58853:162;58985:20;;;58912:1;58985:20;;;58727:295;-1:-1:-1;275:2119:94;;-1:-1:-1;;;58853:162:112;;275:2119:94;;;;;;;58985:20:112;58853:162;;;:::i;:::-;;;;;;;;;;58912:1;58853:162;;;58844:171;;58727:295;:::o;58853:162::-;;;;;;-1:-1:-1;58853:162:112;;;;;;:::i;58985:20::-;;;;;;;;;;;;;;;:::i;:::-;;;;","linkReferences":{}},"methodIdentifiers":{"BENEFICIARY()":"2f99c6cc","COUNCIL_SAFE()":"93892107","CURRENT_NETWORK()":"f4d914e6","DECIMALS()":"2e0f2625","ETH_SEPOLIA()":"352c94a7","IS_SCRIPT()":"f8ccbf47","IS_TEST()":"fa7626d4","MINIMUM_STAKE()":"08dbbb03","NATIVE()":"a0cf0aea","PERCENTAGE_SCALE()":"3f26479e","REGISTRY_FACTORY()":"861ceb69","SAFE_FACTORY()":"d23727ed","SAFE_NONCE()":"1d8fcc10","SAFE_PROXY_FACTORY()":"7f6a80df","SAFE_SINGLETON()":"caa12add","SENDER()":"6050f2f8","TOKEN()":"82bfefc8","WAIT_TIME()":"388aef5c","__createContract(bytes)":"f69d511f","_calculateConviction(uint256,uint256,uint256,uint256)":"e99ce911","_councilSafe()":"dac770b3","_councilSafeWithOwner(address)":"1ae726d9","_councilSafeWithOwner(address,address)":"08c24f9f","_createSafe()":"49ef42c1","_createSafeProxyFactory()":"bb0504cd","_nonce()":"5d1222aa","allo_owner()":"7cbe79ed","allo_treasury()":"da4bf087","councilMember1()":"896546a1","councilMemberPK()":"7658524d","councilSafe()":"6c53db9a","councilSafeOwner()":"0522b7db","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","excludeArtifacts()":"b5508aa9","excludeContracts()":"e20c9f71","excludeSenders()":"1ed7831c","failed()":"ba414fa6","getDecay(address)":"5d6b4bc2","getParams(address,uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address[],address,uint256)":"b3e9b4fd","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","run()":"c0406226","run(string)":"9352fad2","runCurrentNetwork(string)":"5e2dd442","safeHelper(address,uint256,address,bytes)":"023a6f43","safeHelper(address,uint256,address,bytes,uint256)":"c1f2a641","safeHelper(address,uint256,bytes)":"6db52510","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\":\"BENEFICIARY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"COUNCIL_SAFE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"CURRENT_NETWORK\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DECIMALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ETH_SEPOLIA\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"IS_SCRIPT\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MINIMUM_STAKE\",\"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\":[],\"name\":\"REGISTRY_FACTORY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAFE_FACTORY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAFE_NONCE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAFE_PROXY_FACTORY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAFE_SINGLETON\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SENDER\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"TOKEN\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"WAIT_TIME\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"bytecode\",\"type\":\"bytes\"}],\"name\":\"__createContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"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\":\"_councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"contract SafeProxyFactory\",\"name\":\"_safeProxyFactory\",\"type\":\"address\"}],\"name\":\"_councilSafeWithOwner\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"_councilSafeWithOwner\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_createSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_createSafeProxyFactory\",\"outputs\":[{\"internalType\":\"contract SafeProxyFactory\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"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\":\"councilMember1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilMemberPK\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafeOwner\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"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\":[],\"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\":[{\"internalType\":\"contract CVStrategyV0_0\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"getDecay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"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\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"}],\"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\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"},{\"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\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"network\",\"type\":\"string\"}],\"name\":\"run\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"run\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"networkJson\",\"type\":\"string\"}],\"name\":\"runCurrentNetwork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"councilSafe_\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"councilMemberPK_\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to_\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data_\",\"type\":\"bytes\"}],\"name\":\"safeHelper\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to_\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value_\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data_\",\"type\":\"bytes\"}],\"name\":\"safeHelper\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"councilSafe_\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"councilMemberPK_\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to_\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data_\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value_\",\"type\":\"uint256\"}],\"name\":\"safeHelper\",\"outputs\":[],\"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\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/script/DeploySafeArbitrator.s.sol\":\"DeploySafeArbitrator\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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/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/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/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/forge-std/src/Base.sol\":{\"keccak256\":\"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224\",\"dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK\"]},\"lib/forge-std/src/Script.sol\":{\"keccak256\":\"0x2315be74cc2826f9da401bea3da46a10ad6a6efdf73176d79160b453286d0ed2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af0d4dc826911d6cb4d6272ed5cbdb6950e1476141cca328e178b808d848789c\",\"dweb:/ipfs/QmV2ytjUEkV84VtdMs1nZqQTBoVE987cHboQMpiha5yo3e\"]},\"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/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/security/ReentrancyGuard.sol\":{\"keccak256\":\"0xa535a5df777d44e945dd24aa43a11e44b024140fc340ad0dfe42acf4002aade1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://41319e7f621f2dc3733511332c4fd032f8e32ad2aa7fd6f665c19741d9941a34\",\"dweb:/ipfs/QmcYR3bd862GD1Bc7jwrU9bGxrhUu5na1oP964bDCu2id1\"]},\"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/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/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/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/script/BaseMultiChain.s.sol\":{\"keccak256\":\"0x73773253ea07b6bb130fa93319de12edb26b29549801150d460471af78aac2f6\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://8e2a898071a429707cca9689c32941c4a25cb7666a7dc922f2435c07c71fd572\",\"dweb:/ipfs/Qme4aKEFqkbrs8hQPp5ADW5Y5zL9P8Vz7rsjKsSax3EbUi\"]},\"pkg/contracts/script/DeploySafeArbitrator.s.sol\":{\"keccak256\":\"0x37a70fdb41f18765b7c867a158d3ec9bddfe4823ae6876936448df93a74823b2\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://d95854b10fd9b722ce4ae2a62d258dcd5ad5400589524c6aa281efa8a418b582\",\"dweb:/ipfs/Qmd2xUAHYmFHABuYZCTx1KuauwJg4nxevzzUhR9wNPjSmy\"]},\"pkg/contracts/script/GV2ERC20.sol\":{\"keccak256\":\"0x72e3d7c5f055490e976b03abf0b7773b5cefd7e305021d0ea83cba3e142118f9\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://3f19911b75ab3e0d2d41f5d9f4754f21d78b500905da3342b61bc54e502d4c97\",\"dweb:/ipfs/QmU4zPrrTWQY3eUYegHZzLjs2jyRgGtgyZp4J2ZQxj8Vp2\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0xad5d93cc0ca862a94e5311969f793cc87b1d76ecb253141839406fed67d52be7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://dab4f48bcd62bac24642c7581d9f45bcb62677711360c9e3699f3366e71b8d19\",\"dweb:/ipfs/QmZunQxLuoi8RMuk49fvo6sUZ5Lb25d7Xsq6PUA4CSm2PL\"]},\"pkg/contracts/src/CollateralVault.sol\":{\"keccak256\":\"0x124fcaebf9233d6b3eabf0979ef0a9f8325e20b34bd733870ffc816d03b9831b\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://e491550a509a3ba4cacbe80008b4d24a9044d8f94554db42f9afd79238d88a51\",\"dweb:/ipfs/QmUYNPQyk7ruHss7k5JCPxG8Q8Jcpwa3RN6W7aQdSWKRap\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x027ced475fb05ffa9734599658e10287239a002355556de543840db5daab21f8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://3d61dd969a49fda38b17adff41247f5613cde91f7f539c92cfe99aec50d2a14c\",\"dweb:/ipfs/QmRVsTgjmfkmG4WkMc8BPNwij6tpHqaqVJQbzETBgBgiFn\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f\",\"dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9\"]},\"pkg/contracts/src/SafeArbitrator.sol\":{\"keccak256\":\"0xc725d683ef1b5d978e79dfc887996a5348e2f0264abe228a84d63460aa141f71\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://51ec050f375c048649b23d56118a402f2116ad430eaf9f57442c5f8a020da860\",\"dweb:/ipfs/QmdJyCfviijA9e2pJ1kdPQoZVy8iPfumFmSnfaxhuL5R12\"]},\"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\":\"0xf4f9aa98b756909c0627bb7995b8c2c56d9fa809060bdfdff347eb9ebcc89e68\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://8c8b7498e1fbe6c276eccecf971539a239a215977b33885cde898cd7498fe6f5\",\"dweb:/ipfs/QmNf3FiwJiF64L3WGRWpGPGHAFkxXQuhLnHkKZ2WZjGUtH\"]},\"pkg/contracts/test/shared/SafeSetup.sol\":{\"keccak256\":\"0x47fd1bc0ce492f856f4f1cb6d7c95f3ce649431367e3370fd50a7fce4baeaee8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a6996b30b78ded1502865d96ae9d794106e521b5d176fb187bc200aa4a65f18b\",\"dweb:/ipfs/QmY8YVD7uXUsQfSSXtb6mmKbGTyScXSPJ9DZdEvbmN5m73\"]}},\"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":"BENEFICIARY","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_SAFE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"CURRENT_NETWORK","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DECIMALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"ETH_SEPOLIA","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"IS_SCRIPT","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"IS_TEST","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MINIMUM_STAKE","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":[],"stateMutability":"view","type":"function","name":"REGISTRY_FACTORY","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SAFE_FACTORY","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SAFE_NONCE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SAFE_PROXY_FACTORY","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SAFE_SINGLETON","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SENDER","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"TOKEN","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"WAIT_TIME","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes","name":"bytecode","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"__createContract","outputs":[{"internalType":"address","name":"_contract","type":"address"}]},{"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":"_councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"contract SafeProxyFactory","name":"_safeProxyFactory","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"_councilSafeWithOwner","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"_councilSafeWithOwner","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"_createSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"_createSafeProxyFactory","outputs":[{"internalType":"contract SafeProxyFactory","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_nonce","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":[],"stateMutability":"view","type":"function","name":"councilMember1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilMemberPK","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafeOwner","outputs":[{"internalType":"contract ISafe","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":[],"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":[{"internalType":"contract CVStrategyV0_0","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getDecay","outputs":[{"internalType":"uint256","name":"","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"}]},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"uint256","name":"sybilScorerThreshold","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":"uint256","name":"sybilScorerThreshold","type":"uint256"},{"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"}]},{"inputs":[{"internalType":"string","name":"network","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"run"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"run"},{"inputs":[{"internalType":"string","name":"networkJson","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"runCurrentNetwork"},{"inputs":[{"internalType":"contract ISafe","name":"councilSafe_","type":"address"},{"internalType":"uint256","name":"councilMemberPK_","type":"uint256"},{"internalType":"address","name":"to_","type":"address"},{"internalType":"bytes","name":"data_","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"safeHelper"},{"inputs":[{"internalType":"address","name":"to_","type":"address"},{"internalType":"uint256","name":"value_","type":"uint256"},{"internalType":"bytes","name":"data_","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"safeHelper"},{"inputs":[{"internalType":"contract ISafe","name":"councilSafe_","type":"address"},{"internalType":"uint256","name":"councilMemberPK_","type":"uint256"},{"internalType":"address","name":"to_","type":"address"},{"internalType":"bytes","name":"data_","type":"bytes"},{"internalType":"uint256","name":"value_","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"safeHelper"},{"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":{"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/script/DeploySafeArbitrator.s.sol":"DeploySafeArbitrator"},"evmVersion":"paris","libraries":{},"viaIR":true},"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/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/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/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/forge-std/src/Base.sol":{"keccak256":"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c","urls":["bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224","dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK"],"license":"MIT"},"lib/forge-std/src/Script.sol":{"keccak256":"0x2315be74cc2826f9da401bea3da46a10ad6a6efdf73176d79160b453286d0ed2","urls":["bzz-raw://af0d4dc826911d6cb4d6272ed5cbdb6950e1476141cca328e178b808d848789c","dweb:/ipfs/QmV2ytjUEkV84VtdMs1nZqQTBoVE987cHboQMpiha5yo3e"],"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/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/security/ReentrancyGuard.sol":{"keccak256":"0xa535a5df777d44e945dd24aa43a11e44b024140fc340ad0dfe42acf4002aade1","urls":["bzz-raw://41319e7f621f2dc3733511332c4fd032f8e32ad2aa7fd6f665c19741d9941a34","dweb:/ipfs/QmcYR3bd862GD1Bc7jwrU9bGxrhUu5na1oP964bDCu2id1"],"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/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/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/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/script/BaseMultiChain.s.sol":{"keccak256":"0x73773253ea07b6bb130fa93319de12edb26b29549801150d460471af78aac2f6","urls":["bzz-raw://8e2a898071a429707cca9689c32941c4a25cb7666a7dc922f2435c07c71fd572","dweb:/ipfs/Qme4aKEFqkbrs8hQPp5ADW5Y5zL9P8Vz7rsjKsSax3EbUi"],"license":"UNLICENSED"},"pkg/contracts/script/DeploySafeArbitrator.s.sol":{"keccak256":"0x37a70fdb41f18765b7c867a158d3ec9bddfe4823ae6876936448df93a74823b2","urls":["bzz-raw://d95854b10fd9b722ce4ae2a62d258dcd5ad5400589524c6aa281efa8a418b582","dweb:/ipfs/Qmd2xUAHYmFHABuYZCTx1KuauwJg4nxevzzUhR9wNPjSmy"],"license":"UNLICENSED"},"pkg/contracts/script/GV2ERC20.sol":{"keccak256":"0x72e3d7c5f055490e976b03abf0b7773b5cefd7e305021d0ea83cba3e142118f9","urls":["bzz-raw://3f19911b75ab3e0d2d41f5d9f4754f21d78b500905da3342b61bc54e502d4c97","dweb:/ipfs/QmU4zPrrTWQY3eUYegHZzLjs2jyRgGtgyZp4J2ZQxj8Vp2"],"license":"AGPL-3.0-only"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0xad5d93cc0ca862a94e5311969f793cc87b1d76ecb253141839406fed67d52be7","urls":["bzz-raw://dab4f48bcd62bac24642c7581d9f45bcb62677711360c9e3699f3366e71b8d19","dweb:/ipfs/QmZunQxLuoi8RMuk49fvo6sUZ5Lb25d7Xsq6PUA4CSm2PL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CollateralVault.sol":{"keccak256":"0x124fcaebf9233d6b3eabf0979ef0a9f8325e20b34bd733870ffc816d03b9831b","urls":["bzz-raw://e491550a509a3ba4cacbe80008b4d24a9044d8f94554db42f9afd79238d88a51","dweb:/ipfs/QmUYNPQyk7ruHss7k5JCPxG8Q8Jcpwa3RN6W7aQdSWKRap"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x027ced475fb05ffa9734599658e10287239a002355556de543840db5daab21f8","urls":["bzz-raw://3d61dd969a49fda38b17adff41247f5613cde91f7f539c92cfe99aec50d2a14c","dweb:/ipfs/QmRVsTgjmfkmG4WkMc8BPNwij6tpHqaqVJQbzETBgBgiFn"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19","urls":["bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f","dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9"],"license":"AGPL-3.0-only"},"pkg/contracts/src/SafeArbitrator.sol":{"keccak256":"0xc725d683ef1b5d978e79dfc887996a5348e2f0264abe228a84d63460aa141f71","urls":["bzz-raw://51ec050f375c048649b23d56118a402f2116ad430eaf9f57442c5f8a020da860","dweb:/ipfs/QmdJyCfviijA9e2pJ1kdPQoZVy8iPfumFmSnfaxhuL5R12"],"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"},"pkg/contracts/test/CVStrategyHelpers.sol":{"keccak256":"0xf4f9aa98b756909c0627bb7995b8c2c56d9fa809060bdfdff347eb9ebcc89e68","urls":["bzz-raw://8c8b7498e1fbe6c276eccecf971539a239a215977b33885cde898cd7498fe6f5","dweb:/ipfs/QmNf3FiwJiF64L3WGRWpGPGHAFkxXQuhLnHkKZ2WZjGUtH"],"license":"AGPL-3.0-or-later"},"pkg/contracts/test/shared/SafeSetup.sol":{"keccak256":"0x47fd1bc0ce492f856f4f1cb6d7c95f3ce649431367e3370fd50a7fce4baeaee8","urls":["bzz-raw://a6996b30b78ded1502865d96ae9d794106e521b5d176fb187bc200aa4a65f18b","dweb:/ipfs/QmY8YVD7uXUsQfSSXtb6mmKbGTyScXSPJ9DZdEvbmN5m73"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":5088,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"stdstore","offset":0,"slot":"0","type":"t_struct(StdStorage)12493_storage"},{"astId":5284,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_failed","offset":0,"slot":"8","type":"t_bool"},{"astId":7785,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"stdChainsInitialized","offset":1,"slot":"8","type":"t_bool"},{"astId":7806,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"chains","offset":0,"slot":"9","type":"t_mapping(t_string_memory_ptr,t_struct(Chain)7801_storage)"},{"astId":7810,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"defaultRpcUrls","offset":0,"slot":"10","type":"t_mapping(t_string_memory_ptr,t_string_storage)"},{"astId":7814,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"idToAlias","offset":0,"slot":"11","type":"t_mapping(t_uint256,t_string_storage)"},{"astId":7817,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"fallbackToDefaultRpcUrls","offset":0,"slot":"12","type":"t_bool"},{"astId":8575,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"gasMeteringOff","offset":1,"slot":"12","type":"t_bool"},{"astId":10612,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"stdstore","offset":0,"slot":"13","type":"t_struct(StdStorage)12493_storage"},{"astId":73589,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"metadata","offset":0,"slot":"21","type":"t_struct(Metadata)3098_storage"},{"astId":73601,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_poolProfileId1_","offset":0,"slot":"23","type":"t_bytes32"},{"astId":11480,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_excludedContracts","offset":0,"slot":"24","type":"t_array(t_address)dyn_storage"},{"astId":11483,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_excludedSenders","offset":0,"slot":"25","type":"t_array(t_address)dyn_storage"},{"astId":11486,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_targetedContracts","offset":0,"slot":"26","type":"t_array(t_address)dyn_storage"},{"astId":11489,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_targetedSenders","offset":0,"slot":"27","type":"t_array(t_address)dyn_storage"},{"astId":11492,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_excludedArtifacts","offset":0,"slot":"28","type":"t_array(t_string_storage)dyn_storage"},{"astId":11495,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_targetedArtifacts","offset":0,"slot":"29","type":"t_array(t_string_storage)dyn_storage"},{"astId":11499,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_targetedArtifactSelectors","offset":0,"slot":"30","type":"t_array(t_struct(FuzzSelector)11471_storage)dyn_storage"},{"astId":11503,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_targetedSelectors","offset":0,"slot":"31","type":"t_array(t_struct(FuzzSelector)11471_storage)dyn_storage"},{"astId":11507,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_targetedInterfaces","offset":0,"slot":"32","type":"t_array(t_struct(FuzzInterface)11477_storage)dyn_storage"},{"astId":5139,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"IS_SCRIPT","offset":0,"slot":"33","type":"t_bool"},{"astId":17092,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"IS_TEST","offset":1,"slot":"33","type":"t_bool"},{"astId":74168,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"councilSafe","offset":2,"slot":"33","type":"t_contract(ISafe)73542"},{"astId":74171,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"councilSafeOwner","offset":0,"slot":"34","type":"t_contract(ISafe)73542"},{"astId":74173,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"councilMember1","offset":0,"slot":"35","type":"t_address"},{"astId":74176,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"councilMemberPK","offset":0,"slot":"36","type":"t_uint256"},{"astId":74179,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_nonce","offset":0,"slot":"37","type":"t_uint256"},{"astId":74181,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_safeSingleton","offset":0,"slot":"38","type":"t_address"},{"astId":63984,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"MINIMUM_STAKE","offset":0,"slot":"39","type":"t_uint256"},{"astId":63987,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"SENDER","offset":0,"slot":"40","type":"t_address"},{"astId":63989,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"TOKEN","offset":0,"slot":"41","type":"t_address"},{"astId":63991,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"COUNCIL_SAFE","offset":0,"slot":"42","type":"t_address"},{"astId":63993,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"SAFE_PROXY_FACTORY","offset":0,"slot":"43","type":"t_address"},{"astId":63995,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"REGISTRY_FACTORY","offset":0,"slot":"44","type":"t_address"},{"astId":63998,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"WAIT_TIME","offset":0,"slot":"45","type":"t_uint256"},{"astId":64001,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"CURRENT_NETWORK","offset":0,"slot":"46","type":"t_string_storage"},{"astId":64004,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"ETH_SEPOLIA","offset":0,"slot":"47","type":"t_string_storage"},{"astId":64007,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"BENEFICIARY","offset":0,"slot":"48","type":"t_address"},{"astId":64009,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"councilMemberPKEnv","offset":0,"slot":"49","type":"t_uint256"},{"astId":64011,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"allo_proxy","offset":0,"slot":"50","type":"t_address"},{"astId":64014,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"allo","offset":0,"slot":"51","type":"t_contract(Allo)1390"},{"astId":64017,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"token","offset":0,"slot":"52","type":"t_contract(GV2ERC20)64590"},{"astId":64020,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"arbitrator","offset":0,"slot":"53","type":"t_contract(IArbitrator)73416"},{"astId":64023,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"sybilScorer","offset":0,"slot":"54","type":"t_contract(ISybilScorer)69629"}],"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)11477_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzInterface[]","numberOfBytes":"32","base":"t_struct(FuzzInterface)11477_storage"},"t_array(t_struct(FuzzSelector)11471_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzSelector[]","numberOfBytes":"32","base":"t_struct(FuzzSelector)11471_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(Allo)1390":{"encoding":"inplace","label":"contract Allo","numberOfBytes":"20"},"t_contract(GV2ERC20)64590":{"encoding":"inplace","label":"contract GV2ERC20","numberOfBytes":"20"},"t_contract(IArbitrator)73416":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ISafe)73542":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_contract(ISybilScorer)69629":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)12468_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)12468_storage))"},"t_mapping(t_bytes32,t_struct(FindData)12468_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)12468_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)12468_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)12468_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)7801_storage)":{"encoding":"mapping","key":"t_string_memory_ptr","label":"mapping(string => struct StdChains.Chain)","numberOfBytes":"32","value":"t_struct(Chain)7801_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)7801_storage":{"encoding":"inplace","label":"struct StdChains.Chain","numberOfBytes":"128","members":[{"astId":7794,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"name","offset":0,"slot":"0","type":"t_string_storage"},{"astId":7796,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"chainId","offset":0,"slot":"1","type":"t_uint256"},{"astId":7798,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"chainAlias","offset":0,"slot":"2","type":"t_string_storage"},{"astId":7800,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"rpcUrl","offset":0,"slot":"3","type":"t_string_storage"}]},"t_struct(FindData)12468_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":12461,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":12463,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":12465,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":12467,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"found","offset":0,"slot":"3","type":"t_bool"}]},"t_struct(FuzzInterface)11477_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzInterface","numberOfBytes":"64","members":[{"astId":11473,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":11476,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"artifacts","offset":0,"slot":"1","type":"t_array(t_string_storage)dyn_storage"}]},"t_struct(FuzzSelector)11471_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzSelector","numberOfBytes":"64","members":[{"astId":11467,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":11470,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"selectors","offset":0,"slot":"1","type":"t_array(t_bytes4)dyn_storage"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(StdStorage)12493_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":12477,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"finds","offset":0,"slot":"0","type":"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)12468_storage)))"},{"astId":12480,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":12482,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":12484,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":12486,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":12488,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":12490,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":12492,"contract":"pkg/contracts/script/DeploySafeArbitrator.s.sol:DeploySafeArbitrator","label":"_calldata","offset":0,"slot":"7","type":"t_bytes_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"pkg/contracts/script/DeploySafeArbitrator.s.sol","id":64368,"exportedSymbols":{"Accounts":[5026],"Allo":[1390],"ArbitrableConfig":[65367],"BaseMultiChain":[64297],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[65209],"CVParams":[65376],"CVStrategyHelpers":[74144],"CVStrategyInitializeParamsV0_0":[65396],"CVStrategyInitializeParamsV0_1":[65421],"CVStrategyV0_0":[69286],"Clone":[3002],"CollateralVault":[69552],"CreateProposal":[65296],"DeploySafeArbitrator":[64367],"ERC165":[57022],"ERC1967Proxy":[54318],"ERC20":[55747],"Enum":[73558],"GV2ERC20":[64590],"IAllo":[2610],"IArbitrable":[73312],"IArbitrator":[73416],"ICollateralVault":[73449],"IERC165":[57228],"IERC20":[55825],"IPointStrategy":[65275],"IRegistry":[2802],"ISybilScorer":[69629],"Math":[58094],"Metadata":[3098],"Native":[3106],"OwnableUpgradeable":[52200],"PassportScorer":[70101],"PointSystem":[65284],"PointSystemConfig":[65353],"Proposal":[65345],"ProposalDisputeInfo":[65311],"ProposalStatus":[65304],"ProposalSupport":[65350],"ProposalType":[65279],"Registry":[2295],"RegistryCommunityV0_0":[72468],"RegistryFactoryV0_0":[72838],"Safe":[73542],"SafeArbitrator":[73234],"SafeProxyFactory":[73554],"SafeSetup":[74782],"Script":[5140],"ScriptBase":[5101],"SignedMath":[58199],"StdChains":[8543],"StdCheatsSafe":[10603],"StdStorage":[12493],"StdStyle":[15663],"StdUtils":[17041],"Strings":[56998],"UUPSUpgradeable":[54969],"Upgrades":[60473],"VmSafe":[20168],"console":[28807],"console2":[36932],"safeconsole":[51657],"stdJson":[12313],"stdMath":[12455],"stdStorageSafe":[13847]},"nodeType":"SourceUnit","src":"39:2356:94","nodes":[{"id":64299,"nodeType":"PragmaDirective","src":"39:24:94","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":64300,"nodeType":"ImportDirective","src":"65:32:94","nodes":[],"absolutePath":"pkg/contracts/script/BaseMultiChain.s.sol","file":"./BaseMultiChain.s.sol","nameLocation":"-1:-1:-1","scope":64368,"sourceUnit":64298,"symbolAliases":[],"unitAlias":""},{"id":64301,"nodeType":"ImportDirective","src":"98:30:94","nodes":[],"absolutePath":"lib/forge-std/src/Script.sol","file":"forge-std/Script.sol","nameLocation":"-1:-1:-1","scope":64368,"sourceUnit":5141,"symbolAliases":[],"unitAlias":""},{"id":64303,"nodeType":"ImportDirective","src":"129:57:94","nodes":[],"absolutePath":"pkg/contracts/src/SafeArbitrator.sol","file":"../src/SafeArbitrator.sol","nameLocation":"-1:-1:-1","scope":64368,"sourceUnit":73235,"symbolAliases":[{"foreign":{"id":64302,"name":"SafeArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73234,"src":"137:14:94","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":64306,"nodeType":"ImportDirective","src":"187:86:94","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../src/CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":64368,"sourceUnit":69287,"symbolAliases":[{"foreign":{"id":64304,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69286,"src":"195:14:94","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":64305,"name":"ArbitrableConfig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65367,"src":"211:16:94","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":64367,"nodeType":"ContractDefinition","src":"275:2119:94","nodes":[{"id":64311,"nodeType":"UsingForDirective","src":"329:25:94","nodes":[],"global":false,"libraryName":{"id":64309,"name":"stdJson","nameLocations":["335:7:94"],"nodeType":"IdentifierPath","referencedDeclaration":12313,"src":"335:7:94"},"typeName":{"id":64310,"name":"string","nodeType":"ElementaryTypeName","src":"347:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}}},{"id":64366,"nodeType":"FunctionDefinition","src":"360:2032:94","nodes":[],"body":{"id":64365,"nodeType":"Block","src":"430:1962:94","nodes":[],"statements":[{"assignments":[64318],"declarations":[{"constant":false,"id":64318,"mutability":"mutable","name":"proxyOwner","nameLocation":"448:10:94","nodeType":"VariableDeclaration","scope":64365,"src":"440:18:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64317,"name":"address","nodeType":"ElementaryTypeName","src":"440:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64325,"initialValue":{"arguments":[{"arguments":[{"hexValue":"2e454e56532e50524f58595f4f574e4552","id":64322,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"499:19:94","typeDescriptions":{"typeIdentifier":"t_stringliteral_0caa942d41d192d8525c581b68c0e2d161a57fe49b2c098f1d2c0d53c9e59ed4","typeString":"literal_string \".ENVS.PROXY_OWNER\""},"value":".ENVS.PROXY_OWNER"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0caa942d41d192d8525c581b68c0e2d161a57fe49b2c098f1d2c0d53c9e59ed4","typeString":"literal_string \".ENVS.PROXY_OWNER\""}],"id":64321,"name":"getKeyNetwork","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64116,"src":"485:13:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$returns$_t_string_memory_ptr_$","typeString":"function (string memory) view returns (string memory)"}},"id":64323,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"485:34:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":64319,"name":"networkJson","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64313,"src":"461:11:94","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":64320,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"473:11:94","memberName":"readAddress","nodeType":"MemberAccess","referencedDeclaration":11907,"src":"461:23:94","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_address_$attached_to$_t_string_memory_ptr_$","typeString":"function (string memory,string memory) pure returns (address)"}},"id":64324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"461:59:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"440:80:94"},{"assignments":[64327],"declarations":[{"constant":false,"id":64327,"mutability":"mutable","name":"sender","nameLocation":"538:6:94","nodeType":"VariableDeclaration","scope":64365,"src":"530:14:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64326,"name":"address","nodeType":"ElementaryTypeName","src":"530:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64329,"initialValue":{"hexValue":"307862303541393438423563316230353742383844333831624465334133373545664541383745624144","id":64328,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"547:42:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"value":"0xb05A948B5c1b057B88D381bDe3A375EfEA87EbAD"},"nodeType":"VariableDeclarationStatement","src":"530:59:94"},{"assignments":[64331],"declarations":[{"constant":false,"id":64331,"mutability":"mutable","name":"newSafeArbitrator","nameLocation":"608:17:94","nodeType":"VariableDeclaration","scope":64365,"src":"600:25:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64330,"name":"address","nodeType":"ElementaryTypeName","src":"600:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64357,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":64341,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"691:18:94","typeDescriptions":{"typeIdentifier":"t_function_creation_nonpayable$__$returns$_t_contract$_SafeArbitrator_$73234_$","typeString":"function () returns (contract SafeArbitrator)"},"typeName":{"id":64340,"nodeType":"UserDefinedTypeName","pathNode":{"id":64339,"name":"SafeArbitrator","nameLocations":["695:14:94"],"nodeType":"IdentifierPath","referencedDeclaration":73234,"src":"695:14:94"},"referencedDeclaration":73234,"src":"695:14:94","typeDescriptions":{"typeIdentifier":"t_contract$_SafeArbitrator_$73234","typeString":"contract SafeArbitrator"}}},"id":64342,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"691:20:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_SafeArbitrator_$73234","typeString":"contract SafeArbitrator"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_SafeArbitrator_$73234","typeString":"contract SafeArbitrator"}],"id":64338,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"683:7:94","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":64337,"name":"address","nodeType":"ElementaryTypeName","src":"683:7:94","typeDescriptions":{}}},"id":64343,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"683:29:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":64346,"name":"SafeArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73234,"src":"753:14:94","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_SafeArbitrator_$73234_$","typeString":"type(contract SafeArbitrator)"}},"id":64347,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"768:10:94","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":72965,"src":"753:25:94","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_uint256_$_t_address_$returns$__$","typeString":"function SafeArbitrator.initialize(uint256,address)"}},"id":64348,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"779:8:94","memberName":"selector","nodeType":"MemberAccess","src":"753:34:94","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"hexValue":"302e303031","id":64349,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"789:11:94","subdenomination":"ether","typeDescriptions":{"typeIdentifier":"t_rational_1000000000000000_by_1","typeString":"int_const 1000000000000000"},"value":"0.001"},{"arguments":[{"id":64352,"name":"proxyOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64318,"src":"810:10:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64351,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"802:7:94","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":64350,"name":"address","nodeType":"ElementaryTypeName","src":"802:7:94","typeDescriptions":{}}},"id":64353,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"802:19:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_rational_1000000000000000_by_1","typeString":"int_const 1000000000000000"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":64344,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"730:3:94","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64345,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"734:18:94","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"730:22:94","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":64354,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"730:92:94","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":64336,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"649:16:94","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$54318_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":64335,"nodeType":"UserDefinedTypeName","pathNode":{"id":64334,"name":"ERC1967Proxy","nameLocations":["653:12:94"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"653:12:94"},"referencedDeclaration":54318,"src":"653:12:94","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}},"id":64355,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"649:187:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}],"id":64333,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"628:7:94","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":64332,"name":"address","nodeType":"ElementaryTypeName","src":"628:7:94","typeDescriptions":{}}},"id":64356,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"628:218:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"600:246:94"},{"expression":{"arguments":[{"hexValue":"4e657720536166652041726269747261746f723a20","id":64361,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"869:23:94","typeDescriptions":{"typeIdentifier":"t_stringliteral_2ddaadc8d8d0b553f7de5cbf3162998eb737b2273d3936acdf88f2a9cf17f851","typeString":"literal_string \"New Safe Arbitrator: \""},"value":"New Safe Arbitrator: "},{"id":64362,"name":"newSafeArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64331,"src":"894:17:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_2ddaadc8d8d0b553f7de5cbf3162998eb737b2273d3936acdf88f2a9cf17f851","typeString":"literal_string \"New Safe Arbitrator: \""},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":64358,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28807,"src":"857:7:94","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_console_$28807_$","typeString":"type(library console)"}},"id":64360,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"865:3:94","memberName":"log","nodeType":"MemberAccess","referencedDeclaration":21502,"src":"857:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$_t_address_$returns$__$","typeString":"function (string memory,address) view"}},"id":64363,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"857:55:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":64364,"nodeType":"ExpressionStatement","src":"857:55:94"}]},"baseFunctions":[64163],"functionSelector":"5e2dd442","implemented":true,"kind":"function","modifiers":[],"name":"runCurrentNetwork","nameLocation":"369:17:94","overrides":{"id":64315,"nodeType":"OverrideSpecifier","overrides":[],"src":"421:8:94"},"parameters":{"id":64314,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64313,"mutability":"mutable","name":"networkJson","nameLocation":"401:11:94","nodeType":"VariableDeclaration","scope":64366,"src":"387:25:94","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":64312,"name":"string","nodeType":"ElementaryTypeName","src":"387:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"386:27:94"},"returnParameters":{"id":64316,"nodeType":"ParameterList","parameters":[],"src":"430:0:94"},"scope":64367,"stateMutability":"nonpayable","virtual":false,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":64307,"name":"BaseMultiChain","nameLocations":["308:14:94"],"nodeType":"IdentifierPath","referencedDeclaration":64297,"src":"308:14:94"},"id":64308,"nodeType":"InheritanceSpecifier","src":"308:14:94"}],"canonicalName":"DeploySafeArbitrator","contractDependencies":[54318,73234],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[64367,64297,74782,17093,5140,17041,11721,74144,5026,11396,10603,8543,7761,5092,5101,5089,3106],"name":"DeploySafeArbitrator","nameLocation":"284:20:94","scope":64368,"usedErrors":[]}],"license":"UNLICENSED"},"id":94} \ No newline at end of file diff --git a/pkg/contracts/out/ERC20.sol/ERC20.json b/pkg/contracts/out/ERC20.sol/ERC20.json index 88ba2ef3b..8658b5bbf 100644 --- a/pkg/contracts/out/ERC20.sol/ERC20.json +++ b/pkg/contracts/out/ERC20.sol/ERC20.json @@ -1 +1 @@ -{"abi":[{"type":"constructor","inputs":[{"name":"name_","type":"string","internalType":"string"},{"name":"symbol_","type":"string","internalType":"string"}],"stateMutability":"nonpayable"},{"type":"function","name":"allowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"approve","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"balanceOf","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"decimals","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"decreaseAllowance","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"subtractedValue","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"increaseAllowance","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"addedValue","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transfer","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"spender","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false}],"bytecode":{"object":"0x60806040523480156200001157600080fd5b5060405162000b3638038062000b3683398101604081905262000034916200011f565b600362000042838262000218565b50600462000051828262000218565b505050620002e4565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126200008257600080fd5b81516001600160401b03808211156200009f576200009f6200005a565b604051601f8301601f19908116603f01168101908282118183101715620000ca57620000ca6200005a565b81604052838152602092508683858801011115620000e757600080fd5b600091505b838210156200010b5785820183015181830184015290820190620000ec565b600093810190920192909252949350505050565b600080604083850312156200013357600080fd5b82516001600160401b03808211156200014b57600080fd5b620001598683870162000070565b935060208501519150808211156200017057600080fd5b506200017f8582860162000070565b9150509250929050565b600181811c908216806200019e57607f821691505b602082108103620001bf57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200021357600081815260208120601f850160051c81016020861015620001ee5750805b601f850160051c820191505b818110156200020f57828155600101620001fa565b5050505b505050565b81516001600160401b038111156200023457620002346200005a565b6200024c8162000245845462000189565b84620001c5565b602080601f8311600181146200028457600084156200026b5750858301515b600019600386901b1c1916600185901b1785556200020f565b600085815260208120601f198616915b82811015620002b55788860151825594840194600190910190840162000294565b5085821015620002d45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b61084280620002f46000396000f3fe608060405234801561001057600080fd5b50600436106100995760003560e01c806306fdde031461009e578063095ea7b3146100bc57806318160ddd146100df57806323b872dd146100f1578063313ce56714610104578063395093511461011357806370a082311461012657806395d89b411461014f578063a457c2d714610157578063a9059cbb1461016a578063dd62ed3e1461017d575b600080fd5b6100a6610190565b6040516100b3919061068c565b60405180910390f35b6100cf6100ca3660046106f6565b610222565b60405190151581526020016100b3565b6002545b6040519081526020016100b3565b6100cf6100ff366004610720565b61023c565b604051601281526020016100b3565b6100cf6101213660046106f6565b610260565b6100e361013436600461075c565b6001600160a01b031660009081526020819052604090205490565b6100a6610282565b6100cf6101653660046106f6565b610291565b6100cf6101783660046106f6565b610311565b6100e361018b36600461077e565b61031f565b60606003805461019f906107b1565b80601f01602080910402602001604051908101604052809291908181526020018280546101cb906107b1565b80156102185780601f106101ed57610100808354040283529160200191610218565b820191906000526020600020905b8154815290600101906020018083116101fb57829003601f168201915b5050505050905090565b60003361023081858561034a565b60019150505b92915050565b60003361024a85828561046e565b6102558585856104e8565b506001949350505050565b600033610230818585610273838361031f565b61027d91906107eb565b61034a565b60606004805461019f906107b1565b6000338161029f828661031f565b9050838110156103045760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610255828686840361034a565b6000336102308185856104e8565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103ac5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016102fb565b6001600160a01b03821661040d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016102fb565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061047a848461031f565b905060001981146104e257818110156104d55760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016102fb565b6104e2848484840361034a565b50505050565b6001600160a01b03831661054c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016102fb565b6001600160a01b0382166105ae5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016102fb565b6001600160a01b038316600090815260208190526040902054818110156106265760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016102fb565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36104e2565b600060208083528351808285015260005b818110156106b95785810183015185820160400152820161069d565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146106f157600080fd5b919050565b6000806040838503121561070957600080fd5b610712836106da565b946020939093013593505050565b60008060006060848603121561073557600080fd5b61073e846106da565b925061074c602085016106da565b9150604084013590509250925092565b60006020828403121561076e57600080fd5b610777826106da565b9392505050565b6000806040838503121561079157600080fd5b61079a836106da565b91506107a8602084016106da565b90509250929050565b600181811c908216806107c557607f821691505b6020821081036107e557634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561023657634e487b7160e01b600052601160045260246000fdfea26469706673582212205fceb3e8d8044b27d6abd9d022faa33ea37b934ae8702c1c73e3c89eb13c9ef464736f6c63430008130033","sourceMap":"1532:11312:33:-:0;;;1980:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2046:5;:13;2054:5;2046;:13;:::i;:::-;-1:-1:-1;2069:7:33;:17;2079:7;2069;:17;:::i;:::-;;1980:113;;1532:11312;;14:127:70;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:840;200:5;253:3;246:4;238:6;234:17;230:27;220:55;;271:1;268;261:12;220:55;294:13;;-1:-1:-1;;;;;356:10:70;;;353:36;;;369:18;;:::i;:::-;444:2;438:9;412:2;498:13;;-1:-1:-1;;494:22:70;;;518:2;490:31;486:40;474:53;;;542:18;;;562:22;;;539:46;536:72;;;588:18;;:::i;:::-;628:10;624:2;617:22;663:2;655:6;648:18;685:4;675:14;;730:3;725:2;720;712:6;708:15;704:24;701:33;698:53;;;747:1;744;737:12;698:53;769:1;760:10;;779:133;793:2;790:1;787:9;779:133;;;881:14;;;877:23;;871:30;850:14;;;846:23;;839:63;804:10;;;;779:133;;;954:1;932:15;;;928:24;;;921:35;;;;936:6;146:840;-1:-1:-1;;;;146:840:70:o;991:562::-;1090:6;1098;1151:2;1139:9;1130:7;1126:23;1122:32;1119:52;;;1167:1;1164;1157:12;1119:52;1194:16;;-1:-1:-1;;;;;1259:14:70;;;1256:34;;;1286:1;1283;1276:12;1256:34;1309:61;1362:7;1353:6;1342:9;1338:22;1309:61;:::i;:::-;1299:71;;1416:2;1405:9;1401:18;1395:25;1379:41;;1445:2;1435:8;1432:16;1429:36;;;1461:1;1458;1451:12;1429:36;;1484:63;1539:7;1528:8;1517:9;1513:24;1484:63;:::i;:::-;1474:73;;;991:562;;;;;:::o;1558:380::-;1637:1;1633:12;;;;1680;;;1701:61;;1755:4;1747:6;1743:17;1733:27;;1701:61;1808:2;1800:6;1797:14;1777:18;1774:38;1771:161;;1854:10;1849:3;1845:20;1842:1;1835:31;1889:4;1886:1;1879:15;1917:4;1914:1;1907:15;1771:161;;1558:380;;;:::o;2069:545::-;2171:2;2166:3;2163:11;2160:448;;;2207:1;2232:5;2228:2;2221:17;2277:4;2273:2;2263:19;2347:2;2335:10;2331:19;2328:1;2324:27;2318:4;2314:38;2383:4;2371:10;2368:20;2365:47;;;-1:-1:-1;2406:4:70;2365:47;2461:2;2456:3;2452:12;2449:1;2445:20;2439:4;2435:31;2425:41;;2516:82;2534:2;2527:5;2524:13;2516:82;;;2579:17;;;2560:1;2549:13;2516:82;;;2520:3;;;2160:448;2069:545;;;:::o;2790:1352::-;2910:10;;-1:-1:-1;;;;;2932:30:70;;2929:56;;;2965:18;;:::i;:::-;2994:97;3084:6;3044:38;3076:4;3070:11;3044:38;:::i;:::-;3038:4;2994:97;:::i;:::-;3146:4;;3210:2;3199:14;;3227:1;3222:663;;;;3929:1;3946:6;3943:89;;;-1:-1:-1;3998:19:70;;;3992:26;3943:89;-1:-1:-1;;2747:1:70;2743:11;;;2739:24;2735:29;2725:40;2771:1;2767:11;;;2722:57;4045:81;;3192:944;;3222:663;2016:1;2009:14;;;2053:4;2040:18;;-1:-1:-1;;3258:20:70;;;3376:236;3390:7;3387:1;3384:14;3376:236;;;3479:19;;;3473:26;3458:42;;3571:27;;;;3539:1;3527:14;;;;3406:19;;3376:236;;;3380:3;3640:6;3631:7;3628:19;3625:201;;;3701:19;;;3695:26;-1:-1:-1;;3784:1:70;3780:14;;;3796:3;3776:24;3772:37;3768:42;3753:58;3738:74;;3625:201;-1:-1:-1;;;;;3872:1:70;3856:14;;;3852:22;3839:36;;-1:-1:-1;2790:1352:70:o;:::-;1532:11312:33;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100995760003560e01c806306fdde031461009e578063095ea7b3146100bc57806318160ddd146100df57806323b872dd146100f1578063313ce56714610104578063395093511461011357806370a082311461012657806395d89b411461014f578063a457c2d714610157578063a9059cbb1461016a578063dd62ed3e1461017d575b600080fd5b6100a6610190565b6040516100b3919061068c565b60405180910390f35b6100cf6100ca3660046106f6565b610222565b60405190151581526020016100b3565b6002545b6040519081526020016100b3565b6100cf6100ff366004610720565b61023c565b604051601281526020016100b3565b6100cf6101213660046106f6565b610260565b6100e361013436600461075c565b6001600160a01b031660009081526020819052604090205490565b6100a6610282565b6100cf6101653660046106f6565b610291565b6100cf6101783660046106f6565b610311565b6100e361018b36600461077e565b61031f565b60606003805461019f906107b1565b80601f01602080910402602001604051908101604052809291908181526020018280546101cb906107b1565b80156102185780601f106101ed57610100808354040283529160200191610218565b820191906000526020600020905b8154815290600101906020018083116101fb57829003601f168201915b5050505050905090565b60003361023081858561034a565b60019150505b92915050565b60003361024a85828561046e565b6102558585856104e8565b506001949350505050565b600033610230818585610273838361031f565b61027d91906107eb565b61034a565b60606004805461019f906107b1565b6000338161029f828661031f565b9050838110156103045760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610255828686840361034a565b6000336102308185856104e8565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b0383166103ac5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016102fb565b6001600160a01b03821661040d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016102fb565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061047a848461031f565b905060001981146104e257818110156104d55760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016102fb565b6104e2848484840361034a565b50505050565b6001600160a01b03831661054c5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016102fb565b6001600160a01b0382166105ae5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016102fb565b6001600160a01b038316600090815260208190526040902054818110156106265760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016102fb565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36104e2565b600060208083528351808285015260005b818110156106b95785810183015185820160400152820161069d565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146106f157600080fd5b919050565b6000806040838503121561070957600080fd5b610712836106da565b946020939093013593505050565b60008060006060848603121561073557600080fd5b61073e846106da565b925061074c602085016106da565b9150604084013590509250925092565b60006020828403121561076e57600080fd5b610777826106da565b9392505050565b6000806040838503121561079157600080fd5b61079a836106da565b91506107a8602084016106da565b90509250929050565b600181811c908216806107c557607f821691505b6020821081036107e557634e487b7160e01b600052602260045260246000fd5b50919050565b8082018082111561023657634e487b7160e01b600052601160045260246000fdfea26469706673582212205fceb3e8d8044b27d6abd9d022faa33ea37b934ae8702c1c73e3c89eb13c9ef464736f6c63430008130033","sourceMap":"1532:11312:33:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2158:98;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4444:197;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:70;;1162:22;1144:41;;1132:2;1117:18;4444:197:33;1004:187:70;3255:106:33;3342:12;;3255:106;;;1342:25:70;;;1330:2;1315:18;3255:106:33;1196:177:70;5203:256:33;;;;;;:::i;:::-;;:::i;3104:91::-;;;3186:2;1853:36:70;;1841:2;1826:18;3104:91:33;1711:184:70;5854:234:33;;;;;;:::i;:::-;;:::i;3419:125::-;;;;;;:::i;:::-;-1:-1:-1;;;;;3519:18:33;3493:7;3519:18;;;;;;;;;;;;3419:125;2369:102;;;:::i;6575:427::-;;;;;;:::i;:::-;;:::i;3740:189::-;;;;;;:::i;:::-;;:::i;3987:149::-;;;;;;:::i;:::-;;:::i;2158:98::-;2212:13;2244:5;2237:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2158:98;:::o;4444:197::-;4527:4;719:10:39;4581:32:33;719:10:39;4597:7:33;4606:6;4581:8;:32::i;:::-;4630:4;4623:11;;;4444:197;;;;;:::o;5203:256::-;5300:4;719:10:39;5356:38:33;5372:4;719:10:39;5387:6:33;5356:15;:38::i;:::-;5404:27;5414:4;5420:2;5424:6;5404:9;:27::i;:::-;-1:-1:-1;5448:4:33;;5203:256;-1:-1:-1;;;;5203:256:33:o;5854:234::-;5942:4;719:10:39;5996:64:33;719:10:39;6012:7:33;6049:10;6021:25;719:10:39;6012:7:33;6021:9;:25::i;:::-;:38;;;;:::i;:::-;5996:8;:64::i;2369:102::-;2425:13;2457:7;2450:14;;;;;:::i;6575:427::-;6668:4;719:10:39;6668:4:33;6749:25;719:10:39;6766:7:33;6749:9;:25::i;:::-;6722:52;;6812:15;6792:16;:35;;6784:85;;;;-1:-1:-1;;;6784:85:33;;3170:2:70;6784:85:33;;;3152:21:70;3209:2;3189:18;;;3182:30;3248:34;3228:18;;;3221:62;-1:-1:-1;;;3299:18:70;;;3292:35;3344:19;;6784:85:33;;;;;;;;;6903:60;6912:5;6919:7;6947:15;6928:16;:34;6903:8;:60::i;3740:189::-;3819:4;719:10:39;3873:28:33;719:10:39;3890:2:33;3894:6;3873:9;:28::i;3987:149::-;-1:-1:-1;;;;;4102:18:33;;;4076:7;4102:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3987:149::o;10457:340::-;-1:-1:-1;;;;;10558:19:33;;10550:68;;;;-1:-1:-1;;;10550:68:33;;3576:2:70;10550:68:33;;;3558:21:70;3615:2;3595:18;;;3588:30;3654:34;3634:18;;;3627:62;-1:-1:-1;;;3705:18:70;;;3698:34;3749:19;;10550:68:33;3374:400:70;10550:68:33;-1:-1:-1;;;;;10636:21:33;;10628:68;;;;-1:-1:-1;;;10628:68:33;;3981:2:70;10628:68:33;;;3963:21:70;4020:2;4000:18;;;3993:30;4059:34;4039:18;;;4032:62;-1:-1:-1;;;4110:18:70;;;4103:32;4152:19;;10628:68:33;3779:398:70;10628:68:33;-1:-1:-1;;;;;10707:18:33;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;10758:32;;1342:25:70;;;10758:32:33;;1315:18:70;10758:32:33;;;;;;;10457:340;;;:::o;11078:411::-;11178:24;11205:25;11215:5;11222:7;11205:9;:25::i;:::-;11178:52;;-1:-1:-1;;11244:16:33;:37;11240:243;;11325:6;11305:16;:26;;11297:68;;;;-1:-1:-1;;;11297:68:33;;4384:2:70;11297:68:33;;;4366:21:70;4423:2;4403:18;;;4396:30;4462:31;4442:18;;;4435:59;4511:18;;11297:68:33;4182:353:70;11297:68:33;11407:51;11416:5;11423:7;11451:6;11432:16;:25;11407:8;:51::i;:::-;11168:321;11078:411;;;:::o;7456:788::-;-1:-1:-1;;;;;7552:18:33;;7544:68;;;;-1:-1:-1;;;7544:68:33;;4742:2:70;7544:68:33;;;4724:21:70;4781:2;4761:18;;;4754:30;4820:34;4800:18;;;4793:62;-1:-1:-1;;;4871:18:70;;;4864:35;4916:19;;7544:68:33;4540:401:70;7544:68:33;-1:-1:-1;;;;;7630:16:33;;7622:64;;;;-1:-1:-1;;;7622:64:33;;5148:2:70;7622:64:33;;;5130:21:70;5187:2;5167:18;;;5160:30;5226:34;5206:18;;;5199:62;-1:-1:-1;;;5277:18:70;;;5270:33;5320:19;;7622:64:33;4946:399:70;7622:64:33;-1:-1:-1;;;;;7768:15:33;;7746:19;7768:15;;;;;;;;;;;7801:21;;;;7793:72;;;;-1:-1:-1;;;7793:72:33;;5552:2:70;7793:72:33;;;5534:21:70;5591:2;5571:18;;;5564:30;5630:34;5610:18;;;5603:62;-1:-1:-1;;;5681:18:70;;;5674:36;5727:19;;7793:72:33;5350:402:70;7793:72:33;-1:-1:-1;;;;;7899:15:33;;;:9;:15;;;;;;;;;;;7917:20;;;7899:38;;8114:13;;;;;;;;;;:23;;;;;;8163:26;;1342:25:70;;;8114:13:33;;8163:26;;1315:18:70;8163:26:33;;;;;;;8200:37;12073:91;14:548:70;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:173::-;635:20;;-1:-1:-1;;;;;684:31:70;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:70:o;1378:328::-;1455:6;1463;1471;1524:2;1512:9;1503:7;1499:23;1495:32;1492:52;;;1540:1;1537;1530:12;1492:52;1563:29;1582:9;1563:29;:::i;:::-;1553:39;;1611:38;1645:2;1634:9;1630:18;1611:38;:::i;:::-;1601:48;;1696:2;1685:9;1681:18;1668:32;1658:42;;1378:328;;;;;:::o;1900:186::-;1959:6;2012:2;2000:9;1991:7;1987:23;1983:32;1980:52;;;2028:1;2025;2018:12;1980:52;2051:29;2070:9;2051:29;:::i;:::-;2041:39;1900:186;-1:-1:-1;;;1900:186:70:o;2091:260::-;2159:6;2167;2220:2;2208:9;2199:7;2195:23;2191:32;2188:52;;;2236:1;2233;2226:12;2188:52;2259:29;2278:9;2259:29;:::i;:::-;2249:39;;2307:38;2341:2;2330:9;2326:18;2307:38;:::i;:::-;2297:48;;2091:260;;;;;:::o;2356:380::-;2435:1;2431:12;;;;2478;;;2499:61;;2553:4;2545:6;2541:17;2531:27;;2499:61;2606:2;2598:6;2595:14;2575:18;2572:38;2569:161;;2652:10;2647:3;2643:20;2640:1;2633:31;2687:4;2684:1;2677:15;2715:4;2712:1;2705:15;2569:161;;2356:380;;;:::o;2741:222::-;2806:9;;;2827:10;;;2824:133;;;2879:10;2874:3;2870:20;2867:1;2860:31;2914:4;2911:1;2904:15;2942:4;2939:1;2932:15","linkReferences":{}},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decimals()":"313ce567","decreaseAllowance(address,uint256)":"a457c2d7","increaseAllowance(address,uint256)":"39509351","name()":"06fdde03","symbol()":"95d89b41","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name_\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol_\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Implementation of the {IERC20} interface. This implementation is agnostic to the way tokens are created. This means that a supply mechanism has to be added in a derived contract using {_mint}. For a generic mechanism see {ERC20PresetMinterPauser}. TIP: For a detailed writeup see our guide https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226[How to implement supply mechanisms]. The default value of {decimals} is 18. To change this, you should override this function so it returns a different value. We have followed general OpenZeppelin Contracts guidelines: functions revert instead returning `false` on failure. This behavior is nonetheless conventional and does not conflict with the expectations of ERC20 applications. Additionally, an {Approval} event is emitted on calls to {transferFrom}. This allows applications to reconstruct the allowance for all accounts just by listening to said events. Other implementations of the EIP may not emit these events, as it isn't required by the specification. Finally, the non-standard {decreaseAllowance} and {increaseAllowance} functions have been added to mitigate the well-known issues around setting allowances. See {IERC20-approve}.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"See {IERC20-allowance}.\"},\"approve(address,uint256)\":{\"details\":\"See {IERC20-approve}. NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on `transferFrom`. This is semantically equivalent to an infinite approval. Requirements: - `spender` cannot be the zero address.\"},\"balanceOf(address)\":{\"details\":\"See {IERC20-balanceOf}.\"},\"constructor\":{\"details\":\"Sets the values for {name} and {symbol}. All two of these values are immutable: they can only be set once during construction.\"},\"decimals()\":{\"details\":\"Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5.05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the default value returned by this function, unless it's overridden. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}.\"},\"decreaseAllowance(address,uint256)\":{\"details\":\"Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`.\"},\"increaseAllowance(address,uint256)\":{\"details\":\"Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address.\"},\"name()\":{\"details\":\"Returns the name of the token.\"},\"symbol()\":{\"details\":\"Returns the symbol of the token, usually a shorter version of the name.\"},\"totalSupply()\":{\"details\":\"See {IERC20-totalSupply}.\"},\"transfer(address,uint256)\":{\"details\":\"See {IERC20-transfer}. Requirements: - `to` cannot be the zero address. - the caller must have a balance of at least `amount`.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. NOTE: Does not update the allowance if the current allowance is the maximum `uint256`. Requirements: - `from` and `to` cannot be the zero address. - `from` must have a balance of at least `amount`. - the caller must have allowance for ``from``'s tokens of at least `amount`.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":\"ERC20\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/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/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"spender","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"stateMutability":"view","type":"function","name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"name","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"allowance(address,address)":{"details":"See {IERC20-allowance}."},"approve(address,uint256)":{"details":"See {IERC20-approve}. NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on `transferFrom`. This is semantically equivalent to an infinite approval. Requirements: - `spender` cannot be the zero address."},"balanceOf(address)":{"details":"See {IERC20-balanceOf}."},"constructor":{"details":"Sets the values for {name} and {symbol}. All two of these values are immutable: they can only be set once during construction."},"decimals()":{"details":"Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5.05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the default value returned by this function, unless it's overridden. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}."},"decreaseAllowance(address,uint256)":{"details":"Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`."},"increaseAllowance(address,uint256)":{"details":"Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address."},"name()":{"details":"Returns the name of the token."},"symbol()":{"details":"Returns the symbol of the token, usually a shorter version of the name."},"totalSupply()":{"details":"See {IERC20-totalSupply}."},"transfer(address,uint256)":{"details":"See {IERC20-transfer}. Requirements: - `to` cannot be the zero address. - the caller must have a balance of at least `amount`."},"transferFrom(address,address,uint256)":{"details":"See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. NOTE: Does not update the allowance if the current allowance is the maximum `uint256`. Requirements: - `from` and `to` cannot be the zero address. - `from` must have a balance of at least `amount`. - the caller must have allowance for ``from``'s tokens of at least `amount`."}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":"ERC20"},"evmVersion":"paris","libraries":{}},"sources":{"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/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":16749,"contract":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol:ERC20","label":"_balances","offset":0,"slot":"0","type":"t_mapping(t_address,t_uint256)"},{"astId":16755,"contract":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol:ERC20","label":"_allowances","offset":0,"slot":"1","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":16757,"contract":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol:ERC20","label":"_totalSupply","offset":0,"slot":"2","type":"t_uint256"},{"astId":16759,"contract":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol:ERC20","label":"_name","offset":0,"slot":"3","type":"t_string_storage"},{"astId":16761,"contract":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol:ERC20","label":"_symbol","offset":0,"slot":"4","type":"t_string_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"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_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","id":17321,"exportedSymbols":{"Context":[18187],"ERC20":[17320],"IERC20":[17398],"IERC20Metadata":[17423]},"nodeType":"SourceUnit","src":"105:12740:33","nodes":[{"id":16735,"nodeType":"PragmaDirective","src":"105:23:33","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":16736,"nodeType":"ImportDirective","src":"130:22:33","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"./IERC20.sol","nameLocation":"-1:-1:-1","scope":17321,"sourceUnit":17399,"symbolAliases":[],"unitAlias":""},{"id":16737,"nodeType":"ImportDirective","src":"153:41:33","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","file":"./extensions/IERC20Metadata.sol","nameLocation":"-1:-1:-1","scope":17321,"sourceUnit":17424,"symbolAliases":[],"unitAlias":""},{"id":16738,"nodeType":"ImportDirective","src":"195:33:33","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/Context.sol","file":"../../utils/Context.sol","nameLocation":"-1:-1:-1","scope":17321,"sourceUnit":18188,"symbolAliases":[],"unitAlias":""},{"id":17320,"nodeType":"ContractDefinition","src":"1532:11312:33","nodes":[{"id":16749,"nodeType":"VariableDeclaration","src":"1588:45:33","nodes":[],"constant":false,"mutability":"mutable","name":"_balances","nameLocation":"1624:9:33","scope":17320,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":16748,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":16746,"name":"address","nodeType":"ElementaryTypeName","src":"1596:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"1588:27:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":16747,"name":"uint256","nodeType":"ElementaryTypeName","src":"1607:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"private"},{"id":16755,"nodeType":"VariableDeclaration","src":"1640:67:33","nodes":[],"constant":false,"mutability":"mutable","name":"_allowances","nameLocation":"1696:11:33","scope":17320,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"},"typeName":{"id":16754,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":16750,"name":"address","nodeType":"ElementaryTypeName","src":"1648:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"1640:47:33","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":16753,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":16751,"name":"address","nodeType":"ElementaryTypeName","src":"1667:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"1659:27:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":16752,"name":"uint256","nodeType":"ElementaryTypeName","src":"1678:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}}},"visibility":"private"},{"id":16757,"nodeType":"VariableDeclaration","src":"1714:28:33","nodes":[],"constant":false,"mutability":"mutable","name":"_totalSupply","nameLocation":"1730:12:33","scope":17320,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":16756,"name":"uint256","nodeType":"ElementaryTypeName","src":"1714:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"private"},{"id":16759,"nodeType":"VariableDeclaration","src":"1749:20:33","nodes":[],"constant":false,"mutability":"mutable","name":"_name","nameLocation":"1764:5:33","scope":17320,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":16758,"name":"string","nodeType":"ElementaryTypeName","src":"1749:6:33","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"private"},{"id":16761,"nodeType":"VariableDeclaration","src":"1775:22:33","nodes":[],"constant":false,"mutability":"mutable","name":"_symbol","nameLocation":"1790:7:33","scope":17320,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":16760,"name":"string","nodeType":"ElementaryTypeName","src":"1775:6:33","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"private"},{"id":16778,"nodeType":"FunctionDefinition","src":"1980:113:33","nodes":[],"body":{"id":16777,"nodeType":"Block","src":"2036:57:33","nodes":[],"statements":[{"expression":{"id":16771,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":16769,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16759,"src":"2046:5:33","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":16770,"name":"name_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16764,"src":"2054:5:33","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"2046:13:33","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":16772,"nodeType":"ExpressionStatement","src":"2046:13:33"},{"expression":{"id":16775,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":16773,"name":"_symbol","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16761,"src":"2069:7:33","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":16774,"name":"symbol_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16766,"src":"2079:7:33","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"2069:17:33","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":16776,"nodeType":"ExpressionStatement","src":"2069:17:33"}]},"documentation":{"id":16762,"nodeType":"StructuredDocumentation","src":"1804:171:33","text":" @dev Sets the values for {name} and {symbol}.\n All two of these values are immutable: they can only be set once during\n construction."},"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":16767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16764,"mutability":"mutable","name":"name_","nameLocation":"2006:5:33","nodeType":"VariableDeclaration","scope":16778,"src":"1992:19:33","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":16763,"name":"string","nodeType":"ElementaryTypeName","src":"1992:6:33","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":16766,"mutability":"mutable","name":"symbol_","nameLocation":"2027:7:33","nodeType":"VariableDeclaration","scope":16778,"src":"2013:21:33","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":16765,"name":"string","nodeType":"ElementaryTypeName","src":"2013:6:33","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1991:44:33"},"returnParameters":{"id":16768,"nodeType":"ParameterList","parameters":[],"src":"2036:0:33"},"scope":17320,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":16788,"nodeType":"FunctionDefinition","src":"2158:98:33","nodes":[],"body":{"id":16787,"nodeType":"Block","src":"2227:29:33","nodes":[],"statements":[{"expression":{"id":16785,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16759,"src":"2244:5:33","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"functionReturnParameters":16784,"id":16786,"nodeType":"Return","src":"2237:12:33"}]},"baseFunctions":[17410],"documentation":{"id":16779,"nodeType":"StructuredDocumentation","src":"2099:54:33","text":" @dev Returns the name of the token."},"functionSelector":"06fdde03","implemented":true,"kind":"function","modifiers":[],"name":"name","nameLocation":"2167:4:33","overrides":{"id":16781,"nodeType":"OverrideSpecifier","overrides":[],"src":"2194:8:33"},"parameters":{"id":16780,"nodeType":"ParameterList","parameters":[],"src":"2171:2:33"},"returnParameters":{"id":16784,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16783,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":16788,"src":"2212:13:33","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":16782,"name":"string","nodeType":"ElementaryTypeName","src":"2212:6:33","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2211:15:33"},"scope":17320,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":16798,"nodeType":"FunctionDefinition","src":"2369:102:33","nodes":[],"body":{"id":16797,"nodeType":"Block","src":"2440:31:33","nodes":[],"statements":[{"expression":{"id":16795,"name":"_symbol","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16761,"src":"2457:7:33","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"functionReturnParameters":16794,"id":16796,"nodeType":"Return","src":"2450:14:33"}]},"baseFunctions":[17416],"documentation":{"id":16789,"nodeType":"StructuredDocumentation","src":"2262:102:33","text":" @dev Returns the symbol of the token, usually a shorter version of the\n name."},"functionSelector":"95d89b41","implemented":true,"kind":"function","modifiers":[],"name":"symbol","nameLocation":"2378:6:33","overrides":{"id":16791,"nodeType":"OverrideSpecifier","overrides":[],"src":"2407:8:33"},"parameters":{"id":16790,"nodeType":"ParameterList","parameters":[],"src":"2384:2:33"},"returnParameters":{"id":16794,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16793,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":16798,"src":"2425:13:33","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":16792,"name":"string","nodeType":"ElementaryTypeName","src":"2425:6:33","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2424:15:33"},"scope":17320,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":16808,"nodeType":"FunctionDefinition","src":"3104:91:33","nodes":[],"body":{"id":16807,"nodeType":"Block","src":"3169:26:33","nodes":[],"statements":[{"expression":{"hexValue":"3138","id":16805,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3186:2:33","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"functionReturnParameters":16804,"id":16806,"nodeType":"Return","src":"3179:9:33"}]},"baseFunctions":[17422],"documentation":{"id":16799,"nodeType":"StructuredDocumentation","src":"2477:622:33","text":" @dev Returns the number of decimals used to get its user representation.\n For example, if `decimals` equals `2`, a balance of `505` tokens should\n be displayed to a user as `5.05` (`505 / 10 ** 2`).\n Tokens usually opt for a value of 18, imitating the relationship between\n Ether and Wei. This is the default value returned by this function, unless\n it's overridden.\n NOTE: This information is only used for _display_ purposes: it in\n no way affects any of the arithmetic of the contract, including\n {IERC20-balanceOf} and {IERC20-transfer}."},"functionSelector":"313ce567","implemented":true,"kind":"function","modifiers":[],"name":"decimals","nameLocation":"3113:8:33","overrides":{"id":16801,"nodeType":"OverrideSpecifier","overrides":[],"src":"3144:8:33"},"parameters":{"id":16800,"nodeType":"ParameterList","parameters":[],"src":"3121:2:33"},"returnParameters":{"id":16804,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16803,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":16808,"src":"3162:5:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":16802,"name":"uint8","nodeType":"ElementaryTypeName","src":"3162:5:33","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"3161:7:33"},"scope":17320,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":16818,"nodeType":"FunctionDefinition","src":"3255:106:33","nodes":[],"body":{"id":16817,"nodeType":"Block","src":"3325:36:33","nodes":[],"statements":[{"expression":{"id":16815,"name":"_totalSupply","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16757,"src":"3342:12:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":16814,"id":16816,"nodeType":"Return","src":"3335:19:33"}]},"baseFunctions":[17347],"documentation":{"id":16809,"nodeType":"StructuredDocumentation","src":"3201:49:33","text":" @dev See {IERC20-totalSupply}."},"functionSelector":"18160ddd","implemented":true,"kind":"function","modifiers":[],"name":"totalSupply","nameLocation":"3264:11:33","overrides":{"id":16811,"nodeType":"OverrideSpecifier","overrides":[],"src":"3298:8:33"},"parameters":{"id":16810,"nodeType":"ParameterList","parameters":[],"src":"3275:2:33"},"returnParameters":{"id":16814,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16813,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":16818,"src":"3316:7:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":16812,"name":"uint256","nodeType":"ElementaryTypeName","src":"3316:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3315:9:33"},"scope":17320,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":16832,"nodeType":"FunctionDefinition","src":"3419:125:33","nodes":[],"body":{"id":16831,"nodeType":"Block","src":"3502:42:33","nodes":[],"statements":[{"expression":{"baseExpression":{"id":16827,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16749,"src":"3519:9:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":16829,"indexExpression":{"id":16828,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16821,"src":"3529:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3519:18:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":16826,"id":16830,"nodeType":"Return","src":"3512:25:33"}]},"baseFunctions":[17355],"documentation":{"id":16819,"nodeType":"StructuredDocumentation","src":"3367:47:33","text":" @dev See {IERC20-balanceOf}."},"functionSelector":"70a08231","implemented":true,"kind":"function","modifiers":[],"name":"balanceOf","nameLocation":"3428:9:33","overrides":{"id":16823,"nodeType":"OverrideSpecifier","overrides":[],"src":"3475:8:33"},"parameters":{"id":16822,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16821,"mutability":"mutable","name":"account","nameLocation":"3446:7:33","nodeType":"VariableDeclaration","scope":16832,"src":"3438:15:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16820,"name":"address","nodeType":"ElementaryTypeName","src":"3438:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3437:17:33"},"returnParameters":{"id":16826,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16825,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":16832,"src":"3493:7:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":16824,"name":"uint256","nodeType":"ElementaryTypeName","src":"3493:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3492:9:33"},"scope":17320,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":16857,"nodeType":"FunctionDefinition","src":"3740:189:33","nodes":[],"body":{"id":16856,"nodeType":"Block","src":"3825:104:33","nodes":[],"statements":[{"assignments":[16844],"declarations":[{"constant":false,"id":16844,"mutability":"mutable","name":"owner","nameLocation":"3843:5:33","nodeType":"VariableDeclaration","scope":16856,"src":"3835:13:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16843,"name":"address","nodeType":"ElementaryTypeName","src":"3835:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":16847,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":16845,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":18177,"src":"3851:10:33","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":16846,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3851:12:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"3835:28:33"},{"expression":{"arguments":[{"id":16849,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16844,"src":"3883:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":16850,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16835,"src":"3890:2:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":16851,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16837,"src":"3894:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":16848,"name":"_transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17080,"src":"3873:9:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":16852,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3873:28:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":16853,"nodeType":"ExpressionStatement","src":"3873:28:33"},{"expression":{"hexValue":"74727565","id":16854,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3918:4:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":16842,"id":16855,"nodeType":"Return","src":"3911:11:33"}]},"baseFunctions":[17365],"documentation":{"id":16833,"nodeType":"StructuredDocumentation","src":"3550:185:33","text":" @dev See {IERC20-transfer}.\n Requirements:\n - `to` cannot be the zero address.\n - the caller must have a balance of at least `amount`."},"functionSelector":"a9059cbb","implemented":true,"kind":"function","modifiers":[],"name":"transfer","nameLocation":"3749:8:33","overrides":{"id":16839,"nodeType":"OverrideSpecifier","overrides":[],"src":"3801:8:33"},"parameters":{"id":16838,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16835,"mutability":"mutable","name":"to","nameLocation":"3766:2:33","nodeType":"VariableDeclaration","scope":16857,"src":"3758:10:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16834,"name":"address","nodeType":"ElementaryTypeName","src":"3758:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":16837,"mutability":"mutable","name":"amount","nameLocation":"3778:6:33","nodeType":"VariableDeclaration","scope":16857,"src":"3770:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":16836,"name":"uint256","nodeType":"ElementaryTypeName","src":"3770:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3757:28:33"},"returnParameters":{"id":16842,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16841,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":16857,"src":"3819:4:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":16840,"name":"bool","nodeType":"ElementaryTypeName","src":"3819:4:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"3818:6:33"},"scope":17320,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":16875,"nodeType":"FunctionDefinition","src":"3987:149:33","nodes":[],"body":{"id":16874,"nodeType":"Block","src":"4085:51:33","nodes":[],"statements":[{"expression":{"baseExpression":{"baseExpression":{"id":16868,"name":"_allowances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16755,"src":"4102:11:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":16870,"indexExpression":{"id":16869,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16860,"src":"4114:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4102:18:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":16872,"indexExpression":{"id":16871,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16862,"src":"4121:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4102:27:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":16867,"id":16873,"nodeType":"Return","src":"4095:34:33"}]},"baseFunctions":[17375],"documentation":{"id":16858,"nodeType":"StructuredDocumentation","src":"3935:47:33","text":" @dev See {IERC20-allowance}."},"functionSelector":"dd62ed3e","implemented":true,"kind":"function","modifiers":[],"name":"allowance","nameLocation":"3996:9:33","overrides":{"id":16864,"nodeType":"OverrideSpecifier","overrides":[],"src":"4058:8:33"},"parameters":{"id":16863,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16860,"mutability":"mutable","name":"owner","nameLocation":"4014:5:33","nodeType":"VariableDeclaration","scope":16875,"src":"4006:13:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16859,"name":"address","nodeType":"ElementaryTypeName","src":"4006:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":16862,"mutability":"mutable","name":"spender","nameLocation":"4029:7:33","nodeType":"VariableDeclaration","scope":16875,"src":"4021:15:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16861,"name":"address","nodeType":"ElementaryTypeName","src":"4021:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4005:32:33"},"returnParameters":{"id":16867,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16866,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":16875,"src":"4076:7:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":16865,"name":"uint256","nodeType":"ElementaryTypeName","src":"4076:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4075:9:33"},"scope":17320,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":16900,"nodeType":"FunctionDefinition","src":"4444:197:33","nodes":[],"body":{"id":16899,"nodeType":"Block","src":"4533:108:33","nodes":[],"statements":[{"assignments":[16887],"declarations":[{"constant":false,"id":16887,"mutability":"mutable","name":"owner","nameLocation":"4551:5:33","nodeType":"VariableDeclaration","scope":16899,"src":"4543:13:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16886,"name":"address","nodeType":"ElementaryTypeName","src":"4543:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":16890,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":16888,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":18177,"src":"4559:10:33","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":16889,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4559:12:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"4543:28:33"},{"expression":{"arguments":[{"id":16892,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16887,"src":"4590:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":16893,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16878,"src":"4597:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":16894,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16880,"src":"4606:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":16891,"name":"_approve","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17254,"src":"4581:8:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":16895,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4581:32:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":16896,"nodeType":"ExpressionStatement","src":"4581:32:33"},{"expression":{"hexValue":"74727565","id":16897,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4630:4:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":16885,"id":16898,"nodeType":"Return","src":"4623:11:33"}]},"baseFunctions":[17385],"documentation":{"id":16876,"nodeType":"StructuredDocumentation","src":"4142:297:33","text":" @dev See {IERC20-approve}.\n NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on\n `transferFrom`. This is semantically equivalent to an infinite approval.\n Requirements:\n - `spender` cannot be the zero address."},"functionSelector":"095ea7b3","implemented":true,"kind":"function","modifiers":[],"name":"approve","nameLocation":"4453:7:33","overrides":{"id":16882,"nodeType":"OverrideSpecifier","overrides":[],"src":"4509:8:33"},"parameters":{"id":16881,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16878,"mutability":"mutable","name":"spender","nameLocation":"4469:7:33","nodeType":"VariableDeclaration","scope":16900,"src":"4461:15:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16877,"name":"address","nodeType":"ElementaryTypeName","src":"4461:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":16880,"mutability":"mutable","name":"amount","nameLocation":"4486:6:33","nodeType":"VariableDeclaration","scope":16900,"src":"4478:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":16879,"name":"uint256","nodeType":"ElementaryTypeName","src":"4478:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4460:33:33"},"returnParameters":{"id":16885,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16884,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":16900,"src":"4527:4:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":16883,"name":"bool","nodeType":"ElementaryTypeName","src":"4527:4:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4526:6:33"},"scope":17320,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":16933,"nodeType":"FunctionDefinition","src":"5203:256:33","nodes":[],"body":{"id":16932,"nodeType":"Block","src":"5306:153:33","nodes":[],"statements":[{"assignments":[16914],"declarations":[{"constant":false,"id":16914,"mutability":"mutable","name":"spender","nameLocation":"5324:7:33","nodeType":"VariableDeclaration","scope":16932,"src":"5316:15:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16913,"name":"address","nodeType":"ElementaryTypeName","src":"5316:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":16917,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":16915,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":18177,"src":"5334:10:33","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":16916,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5334:12:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"5316:30:33"},{"expression":{"arguments":[{"id":16919,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16903,"src":"5372:4:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":16920,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16914,"src":"5378:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":16921,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16907,"src":"5387:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":16918,"name":"_spendAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17297,"src":"5356:15:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":16922,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5356:38:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":16923,"nodeType":"ExpressionStatement","src":"5356:38:33"},{"expression":{"arguments":[{"id":16925,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16903,"src":"5414:4:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":16926,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16905,"src":"5420:2:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":16927,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16907,"src":"5424:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":16924,"name":"_transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17080,"src":"5404:9:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":16928,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5404:27:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":16929,"nodeType":"ExpressionStatement","src":"5404:27:33"},{"expression":{"hexValue":"74727565","id":16930,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5448:4:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":16912,"id":16931,"nodeType":"Return","src":"5441:11:33"}]},"baseFunctions":[17397],"documentation":{"id":16901,"nodeType":"StructuredDocumentation","src":"4647:551:33","text":" @dev See {IERC20-transferFrom}.\n Emits an {Approval} event indicating the updated allowance. This is not\n required by the EIP. See the note at the beginning of {ERC20}.\n NOTE: Does not update the allowance if the current allowance\n is the maximum `uint256`.\n Requirements:\n - `from` and `to` cannot be the zero address.\n - `from` must have a balance of at least `amount`.\n - the caller must have allowance for ``from``'s tokens of at least\n `amount`."},"functionSelector":"23b872dd","implemented":true,"kind":"function","modifiers":[],"name":"transferFrom","nameLocation":"5212:12:33","overrides":{"id":16909,"nodeType":"OverrideSpecifier","overrides":[],"src":"5282:8:33"},"parameters":{"id":16908,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16903,"mutability":"mutable","name":"from","nameLocation":"5233:4:33","nodeType":"VariableDeclaration","scope":16933,"src":"5225:12:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16902,"name":"address","nodeType":"ElementaryTypeName","src":"5225:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":16905,"mutability":"mutable","name":"to","nameLocation":"5247:2:33","nodeType":"VariableDeclaration","scope":16933,"src":"5239:10:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16904,"name":"address","nodeType":"ElementaryTypeName","src":"5239:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":16907,"mutability":"mutable","name":"amount","nameLocation":"5259:6:33","nodeType":"VariableDeclaration","scope":16933,"src":"5251:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":16906,"name":"uint256","nodeType":"ElementaryTypeName","src":"5251:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5224:42:33"},"returnParameters":{"id":16912,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16911,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":16933,"src":"5300:4:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":16910,"name":"bool","nodeType":"ElementaryTypeName","src":"5300:4:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5299:6:33"},"scope":17320,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":16962,"nodeType":"FunctionDefinition","src":"5854:234:33","nodes":[],"body":{"id":16961,"nodeType":"Block","src":"5948:140:33","nodes":[],"statements":[{"assignments":[16944],"declarations":[{"constant":false,"id":16944,"mutability":"mutable","name":"owner","nameLocation":"5966:5:33","nodeType":"VariableDeclaration","scope":16961,"src":"5958:13:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16943,"name":"address","nodeType":"ElementaryTypeName","src":"5958:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":16947,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":16945,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":18177,"src":"5974:10:33","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":16946,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5974:12:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"5958:28:33"},{"expression":{"arguments":[{"id":16949,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16944,"src":"6005:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":16950,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16936,"src":"6012:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":16956,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":16952,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16944,"src":"6031:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":16953,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16936,"src":"6038:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":16951,"name":"allowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16875,"src":"6021:9:33","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":16954,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6021:25:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":16955,"name":"addedValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16938,"src":"6049:10:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6021:38:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":16948,"name":"_approve","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17254,"src":"5996:8:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":16957,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5996:64:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":16958,"nodeType":"ExpressionStatement","src":"5996:64:33"},{"expression":{"hexValue":"74727565","id":16959,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"6077:4:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":16942,"id":16960,"nodeType":"Return","src":"6070:11:33"}]},"documentation":{"id":16934,"nodeType":"StructuredDocumentation","src":"5465:384:33","text":" @dev Atomically increases the allowance granted to `spender` by the caller.\n This is an alternative to {approve} that can be used as a mitigation for\n problems described in {IERC20-approve}.\n Emits an {Approval} event indicating the updated allowance.\n Requirements:\n - `spender` cannot be the zero address."},"functionSelector":"39509351","implemented":true,"kind":"function","modifiers":[],"name":"increaseAllowance","nameLocation":"5863:17:33","parameters":{"id":16939,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16936,"mutability":"mutable","name":"spender","nameLocation":"5889:7:33","nodeType":"VariableDeclaration","scope":16962,"src":"5881:15:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16935,"name":"address","nodeType":"ElementaryTypeName","src":"5881:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":16938,"mutability":"mutable","name":"addedValue","nameLocation":"5906:10:33","nodeType":"VariableDeclaration","scope":16962,"src":"5898:18:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":16937,"name":"uint256","nodeType":"ElementaryTypeName","src":"5898:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5880:37:33"},"returnParameters":{"id":16942,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16941,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":16962,"src":"5942:4:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":16940,"name":"bool","nodeType":"ElementaryTypeName","src":"5942:4:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5941:6:33"},"scope":17320,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":17003,"nodeType":"FunctionDefinition","src":"6575:427:33","nodes":[],"body":{"id":17002,"nodeType":"Block","src":"6674:328:33","nodes":[],"statements":[{"assignments":[16973],"declarations":[{"constant":false,"id":16973,"mutability":"mutable","name":"owner","nameLocation":"6692:5:33","nodeType":"VariableDeclaration","scope":17002,"src":"6684:13:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16972,"name":"address","nodeType":"ElementaryTypeName","src":"6684:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":16976,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":16974,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":18177,"src":"6700:10:33","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":16975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6700:12:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"6684:28:33"},{"assignments":[16978],"declarations":[{"constant":false,"id":16978,"mutability":"mutable","name":"currentAllowance","nameLocation":"6730:16:33","nodeType":"VariableDeclaration","scope":17002,"src":"6722:24:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":16977,"name":"uint256","nodeType":"ElementaryTypeName","src":"6722:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":16983,"initialValue":{"arguments":[{"id":16980,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16973,"src":"6759:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":16981,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16965,"src":"6766:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":16979,"name":"allowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16875,"src":"6749:9:33","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":16982,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6749:25:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6722:52:33"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":16987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":16985,"name":"currentAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16978,"src":"6792:16:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":16986,"name":"subtractedValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16967,"src":"6812:15:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6792:35:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f","id":16988,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6829:39:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8","typeString":"literal_string \"ERC20: decreased allowance below zero\""},"value":"ERC20: decreased allowance below zero"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8","typeString":"literal_string \"ERC20: decreased allowance below zero\""}],"id":16984,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"6784:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":16989,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6784:85:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":16990,"nodeType":"ExpressionStatement","src":"6784:85:33"},{"id":16999,"nodeType":"UncheckedBlock","src":"6879:95:33","statements":[{"expression":{"arguments":[{"id":16992,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16973,"src":"6912:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":16993,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16965,"src":"6919:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":16996,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":16994,"name":"currentAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16978,"src":"6928:16:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":16995,"name":"subtractedValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16967,"src":"6947:15:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6928:34:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":16991,"name":"_approve","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17254,"src":"6903:8:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":16997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6903:60:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":16998,"nodeType":"ExpressionStatement","src":"6903:60:33"}]},{"expression":{"hexValue":"74727565","id":17000,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"6991:4:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":16971,"id":17001,"nodeType":"Return","src":"6984:11:33"}]},"documentation":{"id":16963,"nodeType":"StructuredDocumentation","src":"6094:476:33","text":" @dev Atomically decreases the allowance granted to `spender` by the caller.\n This is an alternative to {approve} that can be used as a mitigation for\n problems described in {IERC20-approve}.\n Emits an {Approval} event indicating the updated allowance.\n Requirements:\n - `spender` cannot be the zero address.\n - `spender` must have allowance for the caller of at least\n `subtractedValue`."},"functionSelector":"a457c2d7","implemented":true,"kind":"function","modifiers":[],"name":"decreaseAllowance","nameLocation":"6584:17:33","parameters":{"id":16968,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16965,"mutability":"mutable","name":"spender","nameLocation":"6610:7:33","nodeType":"VariableDeclaration","scope":17003,"src":"6602:15:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":16964,"name":"address","nodeType":"ElementaryTypeName","src":"6602:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":16967,"mutability":"mutable","name":"subtractedValue","nameLocation":"6627:15:33","nodeType":"VariableDeclaration","scope":17003,"src":"6619:23:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":16966,"name":"uint256","nodeType":"ElementaryTypeName","src":"6619:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6601:42:33"},"returnParameters":{"id":16971,"nodeType":"ParameterList","parameters":[{"constant":false,"id":16970,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17003,"src":"6668:4:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":16969,"name":"bool","nodeType":"ElementaryTypeName","src":"6668:4:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"6667:6:33"},"scope":17320,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":17080,"nodeType":"FunctionDefinition","src":"7456:788:33","nodes":[],"body":{"id":17079,"nodeType":"Block","src":"7534:710:33","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":17019,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17014,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17006,"src":"7552:4:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":17017,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7568:1:33","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":17016,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7560:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17015,"name":"address","nodeType":"ElementaryTypeName","src":"7560:7:33","typeDescriptions":{}}},"id":17018,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7560:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"7552:18:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373","id":17020,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7572:39:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea","typeString":"literal_string \"ERC20: transfer from the zero address\""},"value":"ERC20: transfer from the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea","typeString":"literal_string \"ERC20: transfer from the zero address\""}],"id":17013,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"7544:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17021,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7544:68:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17022,"nodeType":"ExpressionStatement","src":"7544:68:33"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":17029,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17024,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17008,"src":"7630:2:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":17027,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7644:1:33","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":17026,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7636:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17025,"name":"address","nodeType":"ElementaryTypeName","src":"7636:7:33","typeDescriptions":{}}},"id":17028,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7636:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"7630:16:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a207472616e7366657220746f20746865207a65726f2061646472657373","id":17030,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7648:37:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f","typeString":"literal_string \"ERC20: transfer to the zero address\""},"value":"ERC20: transfer to the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f","typeString":"literal_string \"ERC20: transfer to the zero address\""}],"id":17023,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"7622:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17031,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7622:64:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17032,"nodeType":"ExpressionStatement","src":"7622:64:33"},{"expression":{"arguments":[{"id":17034,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17006,"src":"7718:4:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17035,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17008,"src":"7724:2:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17036,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17010,"src":"7728:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":17033,"name":"_beforeTokenTransfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17308,"src":"7697:20:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":17037,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7697:38:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17038,"nodeType":"ExpressionStatement","src":"7697:38:33"},{"assignments":[17040],"declarations":[{"constant":false,"id":17040,"mutability":"mutable","name":"fromBalance","nameLocation":"7754:11:33","nodeType":"VariableDeclaration","scope":17079,"src":"7746:19:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17039,"name":"uint256","nodeType":"ElementaryTypeName","src":"7746:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":17044,"initialValue":{"baseExpression":{"id":17041,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16749,"src":"7768:9:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":17043,"indexExpression":{"id":17042,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17006,"src":"7778:4:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7768:15:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"7746:37:33"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17048,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17046,"name":"fromBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17040,"src":"7801:11:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":17047,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17010,"src":"7816:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"7801:21:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365","id":17049,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7824:40:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6","typeString":"literal_string \"ERC20: transfer amount exceeds balance\""},"value":"ERC20: transfer amount exceeds balance"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6","typeString":"literal_string \"ERC20: transfer amount exceeds balance\""}],"id":17045,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"7793:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17050,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7793:72:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17051,"nodeType":"ExpressionStatement","src":"7793:72:33"},{"id":17066,"nodeType":"UncheckedBlock","src":"7875:273:33","statements":[{"expression":{"id":17058,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":17052,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16749,"src":"7899:9:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":17054,"indexExpression":{"id":17053,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17006,"src":"7909:4:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"7899:15:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17057,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17055,"name":"fromBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17040,"src":"7917:11:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":17056,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17010,"src":"7931:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"7917:20:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"7899:38:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":17059,"nodeType":"ExpressionStatement","src":"7899:38:33"},{"expression":{"id":17064,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":17060,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16749,"src":"8114:9:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":17062,"indexExpression":{"id":17061,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17008,"src":"8124:2:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8114:13:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":17063,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17010,"src":"8131:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8114:23:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":17065,"nodeType":"ExpressionStatement","src":"8114:23:33"}]},{"eventCall":{"arguments":[{"id":17068,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17006,"src":"8172:4:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17069,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17008,"src":"8178:2:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17070,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17010,"src":"8182:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":17067,"name":"Transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17332,"src":"8163:8:33","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":17071,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8163:26:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17072,"nodeType":"EmitStatement","src":"8158:31:33"},{"expression":{"arguments":[{"id":17074,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17006,"src":"8220:4:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17075,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17008,"src":"8226:2:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17076,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17010,"src":"8230:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":17073,"name":"_afterTokenTransfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17319,"src":"8200:19:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":17077,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8200:37:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17078,"nodeType":"ExpressionStatement","src":"8200:37:33"}]},"documentation":{"id":17004,"nodeType":"StructuredDocumentation","src":"7008:443:33","text":" @dev Moves `amount` of tokens from `from` to `to`.\n This internal function is equivalent to {transfer}, and can be used to\n e.g. implement automatic token fees, slashing mechanisms, etc.\n Emits a {Transfer} event.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `from` must have a balance of at least `amount`."},"implemented":true,"kind":"function","modifiers":[],"name":"_transfer","nameLocation":"7465:9:33","parameters":{"id":17011,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17006,"mutability":"mutable","name":"from","nameLocation":"7483:4:33","nodeType":"VariableDeclaration","scope":17080,"src":"7475:12:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17005,"name":"address","nodeType":"ElementaryTypeName","src":"7475:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17008,"mutability":"mutable","name":"to","nameLocation":"7497:2:33","nodeType":"VariableDeclaration","scope":17080,"src":"7489:10:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17007,"name":"address","nodeType":"ElementaryTypeName","src":"7489:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17010,"mutability":"mutable","name":"amount","nameLocation":"7509:6:33","nodeType":"VariableDeclaration","scope":17080,"src":"7501:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17009,"name":"uint256","nodeType":"ElementaryTypeName","src":"7501:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7474:42:33"},"returnParameters":{"id":17012,"nodeType":"ParameterList","parameters":[],"src":"7534:0:33"},"scope":17320,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":17137,"nodeType":"FunctionDefinition","src":"8520:535:33","nodes":[],"body":{"id":17136,"nodeType":"Block","src":"8585:470:33","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":17094,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17089,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17083,"src":"8603:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":17092,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8622:1:33","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":17091,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8614:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17090,"name":"address","nodeType":"ElementaryTypeName","src":"8614:7:33","typeDescriptions":{}}},"id":17093,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8614:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"8603:21:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a206d696e7420746f20746865207a65726f2061646472657373","id":17095,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8626:33:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e","typeString":"literal_string \"ERC20: mint to the zero address\""},"value":"ERC20: mint to the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e","typeString":"literal_string \"ERC20: mint to the zero address\""}],"id":17088,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"8595:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17096,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8595:65:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17097,"nodeType":"ExpressionStatement","src":"8595:65:33"},{"expression":{"arguments":[{"arguments":[{"hexValue":"30","id":17101,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8700:1:33","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":17100,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8692:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17099,"name":"address","nodeType":"ElementaryTypeName","src":"8692:7:33","typeDescriptions":{}}},"id":17102,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8692:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17103,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17083,"src":"8704:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17104,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17085,"src":"8713:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":17098,"name":"_beforeTokenTransfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17308,"src":"8671:20:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":17105,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8671:49:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17106,"nodeType":"ExpressionStatement","src":"8671:49:33"},{"expression":{"id":17109,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":17107,"name":"_totalSupply","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16757,"src":"8731:12:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":17108,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17085,"src":"8747:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8731:22:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":17110,"nodeType":"ExpressionStatement","src":"8731:22:33"},{"id":17117,"nodeType":"UncheckedBlock","src":"8763:175:33","statements":[{"expression":{"id":17115,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":17111,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16749,"src":"8899:9:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":17113,"indexExpression":{"id":17112,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17083,"src":"8909:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8899:18:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":17114,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17085,"src":"8921:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8899:28:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":17116,"nodeType":"ExpressionStatement","src":"8899:28:33"}]},{"eventCall":{"arguments":[{"arguments":[{"hexValue":"30","id":17121,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8969:1:33","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":17120,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8961:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17119,"name":"address","nodeType":"ElementaryTypeName","src":"8961:7:33","typeDescriptions":{}}},"id":17122,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8961:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17123,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17083,"src":"8973:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17124,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17085,"src":"8982:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":17118,"name":"Transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17332,"src":"8952:8:33","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":17125,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8952:37:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17126,"nodeType":"EmitStatement","src":"8947:42:33"},{"expression":{"arguments":[{"arguments":[{"hexValue":"30","id":17130,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9028:1:33","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":17129,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9020:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17128,"name":"address","nodeType":"ElementaryTypeName","src":"9020:7:33","typeDescriptions":{}}},"id":17131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9020:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17132,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17083,"src":"9032:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17133,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17085,"src":"9041:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":17127,"name":"_afterTokenTransfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17319,"src":"9000:19:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":17134,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9000:48:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17135,"nodeType":"ExpressionStatement","src":"9000:48:33"}]},"documentation":{"id":17081,"nodeType":"StructuredDocumentation","src":"8250:265:33","text":"@dev Creates `amount` tokens and assigns them to `account`, increasing\n the total supply.\n Emits a {Transfer} event with `from` set to the zero address.\n Requirements:\n - `account` cannot be the zero address."},"implemented":true,"kind":"function","modifiers":[],"name":"_mint","nameLocation":"8529:5:33","parameters":{"id":17086,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17083,"mutability":"mutable","name":"account","nameLocation":"8543:7:33","nodeType":"VariableDeclaration","scope":17137,"src":"8535:15:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17082,"name":"address","nodeType":"ElementaryTypeName","src":"8535:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17085,"mutability":"mutable","name":"amount","nameLocation":"8560:6:33","nodeType":"VariableDeclaration","scope":17137,"src":"8552:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17084,"name":"uint256","nodeType":"ElementaryTypeName","src":"8552:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8534:33:33"},"returnParameters":{"id":17087,"nodeType":"ParameterList","parameters":[],"src":"8585:0:33"},"scope":17320,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":17209,"nodeType":"FunctionDefinition","src":"9375:659:33","nodes":[],"body":{"id":17208,"nodeType":"Block","src":"9440:594:33","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":17151,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17146,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17140,"src":"9458:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":17149,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9477:1:33","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":17148,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9469:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17147,"name":"address","nodeType":"ElementaryTypeName","src":"9469:7:33","typeDescriptions":{}}},"id":17150,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9469:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9458:21:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a206275726e2066726f6d20746865207a65726f2061646472657373","id":17152,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9481:35:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f","typeString":"literal_string \"ERC20: burn from the zero address\""},"value":"ERC20: burn from the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f","typeString":"literal_string \"ERC20: burn from the zero address\""}],"id":17145,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"9450:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17153,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9450:67:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17154,"nodeType":"ExpressionStatement","src":"9450:67:33"},{"expression":{"arguments":[{"id":17156,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17140,"src":"9549:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"hexValue":"30","id":17159,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9566:1:33","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":17158,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9558:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17157,"name":"address","nodeType":"ElementaryTypeName","src":"9558:7:33","typeDescriptions":{}}},"id":17160,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9558:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17161,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17142,"src":"9570:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":17155,"name":"_beforeTokenTransfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17308,"src":"9528:20:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":17162,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9528:49:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17163,"nodeType":"ExpressionStatement","src":"9528:49:33"},{"assignments":[17165],"declarations":[{"constant":false,"id":17165,"mutability":"mutable","name":"accountBalance","nameLocation":"9596:14:33","nodeType":"VariableDeclaration","scope":17208,"src":"9588:22:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17164,"name":"uint256","nodeType":"ElementaryTypeName","src":"9588:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":17169,"initialValue":{"baseExpression":{"id":17166,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16749,"src":"9613:9:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":17168,"indexExpression":{"id":17167,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17140,"src":"9623:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9613:18:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"9588:43:33"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17173,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17171,"name":"accountBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17165,"src":"9649:14:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":17172,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17142,"src":"9667:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9649:24:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a206275726e20616d6f756e7420657863656564732062616c616e6365","id":17174,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9675:36:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd","typeString":"literal_string \"ERC20: burn amount exceeds balance\""},"value":"ERC20: burn amount exceeds balance"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd","typeString":"literal_string \"ERC20: burn amount exceeds balance\""}],"id":17170,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"9641:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9641:71:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17176,"nodeType":"ExpressionStatement","src":"9641:71:33"},{"id":17189,"nodeType":"UncheckedBlock","src":"9722:194:33","statements":[{"expression":{"id":17183,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":17177,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16749,"src":"9746:9:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":17179,"indexExpression":{"id":17178,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17140,"src":"9756:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"9746:18:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17180,"name":"accountBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17165,"src":"9767:14:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":17181,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17142,"src":"9784:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9767:23:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9746:44:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":17184,"nodeType":"ExpressionStatement","src":"9746:44:33"},{"expression":{"id":17187,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":17185,"name":"_totalSupply","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16757,"src":"9883:12:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":17186,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17142,"src":"9899:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9883:22:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":17188,"nodeType":"ExpressionStatement","src":"9883:22:33"}]},{"eventCall":{"arguments":[{"id":17191,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17140,"src":"9940:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"hexValue":"30","id":17194,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9957:1:33","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":17193,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9949:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17192,"name":"address","nodeType":"ElementaryTypeName","src":"9949:7:33","typeDescriptions":{}}},"id":17195,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9949:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17196,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17142,"src":"9961:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":17190,"name":"Transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17332,"src":"9931:8:33","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":17197,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9931:37:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17198,"nodeType":"EmitStatement","src":"9926:42:33"},{"expression":{"arguments":[{"id":17200,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17140,"src":"9999:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"hexValue":"30","id":17203,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10016:1:33","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":17202,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10008:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17201,"name":"address","nodeType":"ElementaryTypeName","src":"10008:7:33","typeDescriptions":{}}},"id":17204,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10008:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17205,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17142,"src":"10020:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":17199,"name":"_afterTokenTransfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17319,"src":"9979:19:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":17206,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9979:48:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17207,"nodeType":"ExpressionStatement","src":"9979:48:33"}]},"documentation":{"id":17138,"nodeType":"StructuredDocumentation","src":"9061:309:33","text":" @dev Destroys `amount` tokens from `account`, reducing the\n total supply.\n Emits a {Transfer} event with `to` set to the zero address.\n Requirements:\n - `account` cannot be the zero address.\n - `account` must have at least `amount` tokens."},"implemented":true,"kind":"function","modifiers":[],"name":"_burn","nameLocation":"9384:5:33","parameters":{"id":17143,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17140,"mutability":"mutable","name":"account","nameLocation":"9398:7:33","nodeType":"VariableDeclaration","scope":17209,"src":"9390:15:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17139,"name":"address","nodeType":"ElementaryTypeName","src":"9390:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17142,"mutability":"mutable","name":"amount","nameLocation":"9415:6:33","nodeType":"VariableDeclaration","scope":17209,"src":"9407:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17141,"name":"uint256","nodeType":"ElementaryTypeName","src":"9407:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"9389:33:33"},"returnParameters":{"id":17144,"nodeType":"ParameterList","parameters":[],"src":"9440:0:33"},"scope":17320,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":17254,"nodeType":"FunctionDefinition","src":"10457:340:33","nodes":[],"body":{"id":17253,"nodeType":"Block","src":"10540:257:33","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":17225,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17220,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17212,"src":"10558:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":17223,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10575:1:33","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":17222,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10567:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17221,"name":"address","nodeType":"ElementaryTypeName","src":"10567:7:33","typeDescriptions":{}}},"id":17224,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10567:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10558:19:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373","id":17226,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10579:38:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208","typeString":"literal_string \"ERC20: approve from the zero address\""},"value":"ERC20: approve from the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208","typeString":"literal_string \"ERC20: approve from the zero address\""}],"id":17219,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"10550:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17227,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10550:68:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17228,"nodeType":"ExpressionStatement","src":"10550:68:33"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":17235,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17230,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17214,"src":"10636:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":17233,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10655:1:33","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":17232,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10647:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17231,"name":"address","nodeType":"ElementaryTypeName","src":"10647:7:33","typeDescriptions":{}}},"id":17234,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10647:10:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10636:21:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a20617070726f766520746f20746865207a65726f2061646472657373","id":17236,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10659:36:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029","typeString":"literal_string \"ERC20: approve to the zero address\""},"value":"ERC20: approve to the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029","typeString":"literal_string \"ERC20: approve to the zero address\""}],"id":17229,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"10628:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17237,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10628:68:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17238,"nodeType":"ExpressionStatement","src":"10628:68:33"},{"expression":{"id":17245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":17239,"name":"_allowances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16755,"src":"10707:11:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":17242,"indexExpression":{"id":17240,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17212,"src":"10719:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10707:18:33","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":17243,"indexExpression":{"id":17241,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17214,"src":"10726:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"10707:27:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":17244,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17216,"src":"10737:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10707:36:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":17246,"nodeType":"ExpressionStatement","src":"10707:36:33"},{"eventCall":{"arguments":[{"id":17248,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17212,"src":"10767:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17249,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17214,"src":"10774:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17250,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17216,"src":"10783:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":17247,"name":"Approval","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17341,"src":"10758:8:33","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":17251,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10758:32:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17252,"nodeType":"EmitStatement","src":"10753:37:33"}]},"documentation":{"id":17210,"nodeType":"StructuredDocumentation","src":"10040:412:33","text":" @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.\n This internal function is equivalent to `approve`, and can be used to\n e.g. set automatic allowances for certain subsystems, etc.\n Emits an {Approval} event.\n Requirements:\n - `owner` cannot be the zero address.\n - `spender` cannot be the zero address."},"implemented":true,"kind":"function","modifiers":[],"name":"_approve","nameLocation":"10466:8:33","parameters":{"id":17217,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17212,"mutability":"mutable","name":"owner","nameLocation":"10483:5:33","nodeType":"VariableDeclaration","scope":17254,"src":"10475:13:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17211,"name":"address","nodeType":"ElementaryTypeName","src":"10475:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17214,"mutability":"mutable","name":"spender","nameLocation":"10498:7:33","nodeType":"VariableDeclaration","scope":17254,"src":"10490:15:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17213,"name":"address","nodeType":"ElementaryTypeName","src":"10490:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17216,"mutability":"mutable","name":"amount","nameLocation":"10515:6:33","nodeType":"VariableDeclaration","scope":17254,"src":"10507:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17215,"name":"uint256","nodeType":"ElementaryTypeName","src":"10507:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"10474:48:33"},"returnParameters":{"id":17218,"nodeType":"ParameterList","parameters":[],"src":"10540:0:33"},"scope":17320,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":17297,"nodeType":"FunctionDefinition","src":"11078:411:33","nodes":[],"body":{"id":17296,"nodeType":"Block","src":"11168:321:33","nodes":[],"statements":[{"assignments":[17265],"declarations":[{"constant":false,"id":17265,"mutability":"mutable","name":"currentAllowance","nameLocation":"11186:16:33","nodeType":"VariableDeclaration","scope":17296,"src":"11178:24:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17264,"name":"uint256","nodeType":"ElementaryTypeName","src":"11178:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":17270,"initialValue":{"arguments":[{"id":17267,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17257,"src":"11215:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17268,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17259,"src":"11222:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":17266,"name":"allowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16875,"src":"11205:9:33","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":17269,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11205:25:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"11178:52:33"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17277,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17271,"name":"currentAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17265,"src":"11244:16:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"arguments":[{"id":17274,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11269:7:33","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":17273,"name":"uint256","nodeType":"ElementaryTypeName","src":"11269:7:33","typeDescriptions":{}}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}],"id":17272,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"11264:4:33","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":17275,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11264:13:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_uint256","typeString":"type(uint256)"}},"id":17276,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11278:3:33","memberName":"max","nodeType":"MemberAccess","src":"11264:17:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11244:37:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":17295,"nodeType":"IfStatement","src":"11240:243:33","trueBody":{"id":17294,"nodeType":"Block","src":"11283:200:33","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17279,"name":"currentAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17265,"src":"11305:16:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":17280,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17261,"src":"11325:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11305:26:33","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a20696e73756666696369656e7420616c6c6f77616e6365","id":17282,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11333:31:33","typeDescriptions":{"typeIdentifier":"t_stringliteral_3b6607e091cba9325f958656d2b5e0622ab7dc0eac71a26ac788cb25bc19f4fe","typeString":"literal_string \"ERC20: insufficient allowance\""},"value":"ERC20: insufficient allowance"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_3b6607e091cba9325f958656d2b5e0622ab7dc0eac71a26ac788cb25bc19f4fe","typeString":"literal_string \"ERC20: insufficient allowance\""}],"id":17278,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"11297:7:33","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11297:68:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17284,"nodeType":"ExpressionStatement","src":"11297:68:33"},{"id":17293,"nodeType":"UncheckedBlock","src":"11379:94:33","statements":[{"expression":{"arguments":[{"id":17286,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17257,"src":"11416:5:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17287,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17259,"src":"11423:7:33","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17290,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17288,"name":"currentAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17265,"src":"11432:16:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":17289,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17261,"src":"11451:6:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11432:25:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":17285,"name":"_approve","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17254,"src":"11407:8:33","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":17291,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11407:51:33","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17292,"nodeType":"ExpressionStatement","src":"11407:51:33"}]}]}}]},"documentation":{"id":17255,"nodeType":"StructuredDocumentation","src":"10803:270:33","text":" @dev Updates `owner` s allowance for `spender` based on spent `amount`.\n Does not update the allowance amount in case of infinite allowance.\n Revert if not enough allowance is available.\n Might emit an {Approval} event."},"implemented":true,"kind":"function","modifiers":[],"name":"_spendAllowance","nameLocation":"11087:15:33","parameters":{"id":17262,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17257,"mutability":"mutable","name":"owner","nameLocation":"11111:5:33","nodeType":"VariableDeclaration","scope":17297,"src":"11103:13:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17256,"name":"address","nodeType":"ElementaryTypeName","src":"11103:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17259,"mutability":"mutable","name":"spender","nameLocation":"11126:7:33","nodeType":"VariableDeclaration","scope":17297,"src":"11118:15:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17258,"name":"address","nodeType":"ElementaryTypeName","src":"11118:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17261,"mutability":"mutable","name":"amount","nameLocation":"11143:6:33","nodeType":"VariableDeclaration","scope":17297,"src":"11135:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17260,"name":"uint256","nodeType":"ElementaryTypeName","src":"11135:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"11102:48:33"},"returnParameters":{"id":17263,"nodeType":"ParameterList","parameters":[],"src":"11168:0:33"},"scope":17320,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":17308,"nodeType":"FunctionDefinition","src":"12073:91:33","nodes":[],"body":{"id":17307,"nodeType":"Block","src":"12162:2:33","nodes":[],"statements":[]},"documentation":{"id":17298,"nodeType":"StructuredDocumentation","src":"11495:573:33","text":" @dev Hook that is called before any transfer of tokens. This includes\n minting and burning.\n Calling conditions:\n - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens\n will be transferred to `to`.\n - when `from` is zero, `amount` tokens will be minted for `to`.\n - when `to` is zero, `amount` of ``from``'s tokens will be burned.\n - `from` and `to` are never both zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]."},"implemented":true,"kind":"function","modifiers":[],"name":"_beforeTokenTransfer","nameLocation":"12082:20:33","parameters":{"id":17305,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17300,"mutability":"mutable","name":"from","nameLocation":"12111:4:33","nodeType":"VariableDeclaration","scope":17308,"src":"12103:12:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17299,"name":"address","nodeType":"ElementaryTypeName","src":"12103:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17302,"mutability":"mutable","name":"to","nameLocation":"12125:2:33","nodeType":"VariableDeclaration","scope":17308,"src":"12117:10:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17301,"name":"address","nodeType":"ElementaryTypeName","src":"12117:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17304,"mutability":"mutable","name":"amount","nameLocation":"12137:6:33","nodeType":"VariableDeclaration","scope":17308,"src":"12129:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17303,"name":"uint256","nodeType":"ElementaryTypeName","src":"12129:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"12102:42:33"},"returnParameters":{"id":17306,"nodeType":"ParameterList","parameters":[],"src":"12162:0:33"},"scope":17320,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":17319,"nodeType":"FunctionDefinition","src":"12752:90:33","nodes":[],"body":{"id":17318,"nodeType":"Block","src":"12840:2:33","nodes":[],"statements":[]},"documentation":{"id":17309,"nodeType":"StructuredDocumentation","src":"12170:577:33","text":" @dev Hook that is called after any transfer of tokens. This includes\n minting and burning.\n Calling conditions:\n - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens\n has been transferred to `to`.\n - when `from` is zero, `amount` tokens have been minted for `to`.\n - when `to` is zero, `amount` of ``from``'s tokens have been burned.\n - `from` and `to` are never both zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]."},"implemented":true,"kind":"function","modifiers":[],"name":"_afterTokenTransfer","nameLocation":"12761:19:33","parameters":{"id":17316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17311,"mutability":"mutable","name":"from","nameLocation":"12789:4:33","nodeType":"VariableDeclaration","scope":17319,"src":"12781:12:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17310,"name":"address","nodeType":"ElementaryTypeName","src":"12781:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17313,"mutability":"mutable","name":"to","nameLocation":"12803:2:33","nodeType":"VariableDeclaration","scope":17319,"src":"12795:10:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17312,"name":"address","nodeType":"ElementaryTypeName","src":"12795:7:33","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17315,"mutability":"mutable","name":"amount","nameLocation":"12815:6:33","nodeType":"VariableDeclaration","scope":17319,"src":"12807:14:33","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17314,"name":"uint256","nodeType":"ElementaryTypeName","src":"12807:7:33","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"12780:42:33"},"returnParameters":{"id":17317,"nodeType":"ParameterList","parameters":[],"src":"12840:0:33"},"scope":17320,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"}],"abstract":false,"baseContracts":[{"baseName":{"id":16740,"name":"Context","nameLocations":["1550:7:33"],"nodeType":"IdentifierPath","referencedDeclaration":18187,"src":"1550:7:33"},"id":16741,"nodeType":"InheritanceSpecifier","src":"1550:7:33"},{"baseName":{"id":16742,"name":"IERC20","nameLocations":["1559:6:33"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"1559:6:33"},"id":16743,"nodeType":"InheritanceSpecifier","src":"1559:6:33"},{"baseName":{"id":16744,"name":"IERC20Metadata","nameLocations":["1567:14:33"],"nodeType":"IdentifierPath","referencedDeclaration":17423,"src":"1567:14:33"},"id":16745,"nodeType":"InheritanceSpecifier","src":"1567:14:33"}],"canonicalName":"ERC20","contractDependencies":[],"contractKind":"contract","documentation":{"id":16739,"nodeType":"StructuredDocumentation","src":"230:1301:33","text":" @dev Implementation of the {IERC20} interface.\n This implementation is agnostic to the way tokens are created. This means\n that a supply mechanism has to be added in a derived contract using {_mint}.\n For a generic mechanism see {ERC20PresetMinterPauser}.\n TIP: For a detailed writeup see our guide\n https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226[How\n to implement supply mechanisms].\n The default value of {decimals} is 18. To change this, you should override\n this function so it returns a different value.\n We have followed general OpenZeppelin Contracts guidelines: functions revert\n instead returning `false` on failure. This behavior is nonetheless\n conventional and does not conflict with the expectations of ERC20\n applications.\n Additionally, an {Approval} event is emitted on calls to {transferFrom}.\n This allows applications to reconstruct the allowance for all accounts just\n by listening to said events. Other implementations of the EIP may not emit\n these events, as it isn't required by the specification.\n Finally, the non-standard {decreaseAllowance} and {increaseAllowance}\n functions have been added to mitigate the well-known issues around setting\n allowances. See {IERC20-approve}."},"fullyImplemented":true,"linearizedBaseContracts":[17320,17423,17398,18187],"name":"ERC20","nameLocation":"1541:5:33","scope":17321,"usedErrors":[]}],"license":"MIT"},"id":33} \ No newline at end of file +{"abi":[{"type":"constructor","inputs":[{"name":"name_","type":"string","internalType":"string"},{"name":"symbol_","type":"string","internalType":"string"}],"stateMutability":"nonpayable"},{"type":"function","name":"allowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"approve","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"balanceOf","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"decimals","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"decreaseAllowance","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"subtractedValue","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"increaseAllowance","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"addedValue","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transfer","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"spender","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false}],"bytecode":{"object":"0x6080604052346200031d5762000c28803803806200001d8162000322565b9283398101906040818303126200031d5780516001600160401b03908181116200031d57836200004f91840162000348565b91602093848201518381116200031d576200006b920162000348565b82518281116200021d576003918254916001958684811c9416801562000312575b88851014620002fc578190601f94858111620002a6575b5088908583116001146200023f5760009262000233575b505060001982861b1c191690861b1783555b80519384116200021d5760049586548681811c9116801562000212575b82821014620001fd57838111620001b2575b508092851160011462000144575093839491849260009562000138575b50501b92600019911b1c19161790555b60405161086d9081620003bb8239f35b01519350388062000118565b92919084601f1981168860005285600020956000905b898383106200019757505050106200017c575b50505050811b01905562000128565b01519060f884600019921b161c19169055388080806200016d565b8587015189559097019694850194889350908101906200015a565b87600052816000208480880160051c820192848910620001f3575b0160051c019087905b828110620001e6575050620000fb565b60008155018790620001d6565b92508192620001cd565b602288634e487b7160e01b6000525260246000fd5b90607f1690620000e9565b634e487b7160e01b600052604160045260246000fd5b015190503880620000ba565b90889350601f19831691876000528a6000209260005b8c8282106200028f575050841162000276575b505050811b018355620000cc565b015160001983881b60f8161c1916905538808062000268565b8385015186558c9790950194938401930162000255565b90915085600052886000208580850160051c8201928b8610620002f2575b918a91869594930160051c01915b828110620002e2575050620000a3565b600081558594508a9101620002d2565b92508192620002c4565b634e487b7160e01b600052602260045260246000fd5b93607f16936200008c565b600080fd5b6040519190601f01601f191682016001600160401b038111838210176200021d57604052565b919080601f840112156200031d5782516001600160401b0381116200021d576020906200037e601f8201601f1916830162000322565b928184528282870101116200031d5760005b818110620003a657508260009394955001015290565b85810183015184820184015282016200039056fe608060408181526004918236101561001657600080fd5b600092833560e01c91826306fdde031461048f57508163095ea7b31461046557816318160ddd1461044657816323b872dd1461037c578163313ce5671461036057816339509351146102f957816370a08231146102c257816395d89b41146101c1578163a457c2d71461011957508063a9059cbb146100e95763dd62ed3e1461009e57600080fd5b346100e557806003193601126100e557806020926100ba610596565b6100c26105b1565b6001600160a01b0391821683526001865283832091168252845220549051908152f35b5080fd5b50346100e557806003193601126100e557602090610112610108610596565b60243590336105c7565b5160018152f35b905082346101be57826003193601126101be57610134610596565b918360243592338152600160205281812060018060a01b038616825260205220549082821061016d576020856101128585038733610735565b608490602086519162461bcd60e51b8352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152fd5b80fd5b8383346100e557816003193601126100e557805190828454600181811c908083169283156102b8575b60209384841081146102a5578388529081156102895750600114610251575b505050829003601f01601f19168201926001600160401b0384118385101761023e575082918261023a92528261054d565b0390f35b634e487b7160e01b815260418552602490fd5b919250868652828620918387935b8385106102755750505050830101858080610209565b80548886018301529301928490820161025f565b60ff1916878501525050151560051b8401019050858080610209565b634e487b7160e01b895260228a52602489fd5b91607f16916101ea565b5050346100e55760203660031901126100e55760209181906001600160a01b036102ea610596565b16815280845220549051908152f35b8284346101be57816003193601126101be57610313610596565b338252600160209081528383206001600160a01b038316845290528282205460243581019290831061034d57602084610112858533610735565b634e487b7160e01b815260118552602490fd5b5050346100e557816003193601126100e5576020905160128152f35b839150346100e55760603660031901126100e557610398610596565b6103a06105b1565b91846044359460018060a01b0384168152600160205281812033825260205220549060001982036103da575b6020866101128787876105c7565b84821061040357509183916103f86020969561011295033383610735565b9193948193506103cc565b606490602087519162461bcd60e51b8352820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152fd5b5050346100e557816003193601126100e5576020906002549051908152f35b5050346100e557806003193601126100e557602090610112610485610596565b6024359033610735565b8490843461054957826003193601126105495782600354600181811c9080831692831561053f575b60209384841081146102a557838852908115610289575060011461050657505050829003601f01601f19168201926001600160401b0384118385101761023e575082918261023a92528261054d565b91925060038652828620918387935b83851061052b5750505050830101858080610209565b805488860183015293019284908201610515565b91607f16916104b7565b8280fd5b6020808252825181830181905290939260005b82811061058257505060409293506000838284010152601f8019910116010190565b818101860151848201604001528501610560565b600435906001600160a01b03821682036105ac57565b600080fd5b602435906001600160a01b03821682036105ac57565b6001600160a01b039081169182156106e257169182156106915760008281528060205260408120549180831061063d57604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef958760209652828652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b039081169182156107e657169182156107965760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260018252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fdfea264697066735822122048f998d800ba786f7c6540944829e2026b5ad1c106f4397e6d5d48b65630d19064736f6c63430008130033","sourceMap":"1532:11312:66:-:0;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1532:11312:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;2046:13;1532:11312;;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;;;;;;;;;-1:-1:-1;1532:11312:66;;;;-1:-1:-1;;;;1532:11312:66;;;;;;;;;;;;;;;;;;;;2069:17;1532:11312;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;-1:-1:-1;1532:11312:66;;-1:-1:-1;1532:11312:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;;;;;;;-1:-1:-1;1532:11312:66;;-1:-1:-1;1532:11312:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;;-1:-1:-1;1532:11312:66;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;2069:17;1532:11312;;-1:-1:-1;1532:11312:66;;;;;-1:-1:-1;1532:11312:66;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;-1:-1:-1;1532:11312:66;;-1:-1:-1;1532:11312:66;;;;;;;;;;-1:-1:-1;1532:11312:66;;;;;;;;;;;;;;;;-1:-1:-1;;1532:11312:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;-1:-1:-1;1532:11312:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;;;-1:-1:-1;1532:11312:66;;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;;;;-1:-1:-1;1532:11312:66;;;;;;;;;-1:-1:-1;1532:11312:66;;;;;;;;;-1:-1:-1;;1532:11312:66;;;-1:-1:-1;;;;;1532:11312:66;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;1532:11312:66;;;;;;;;;;-1:-1:-1;;1532:11312:66;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;;;;;;;-1:-1:-1;1532:11312:66;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060408181526004918236101561001657600080fd5b600092833560e01c91826306fdde031461048f57508163095ea7b31461046557816318160ddd1461044657816323b872dd1461037c578163313ce5671461036057816339509351146102f957816370a08231146102c257816395d89b41146101c1578163a457c2d71461011957508063a9059cbb146100e95763dd62ed3e1461009e57600080fd5b346100e557806003193601126100e557806020926100ba610596565b6100c26105b1565b6001600160a01b0391821683526001865283832091168252845220549051908152f35b5080fd5b50346100e557806003193601126100e557602090610112610108610596565b60243590336105c7565b5160018152f35b905082346101be57826003193601126101be57610134610596565b918360243592338152600160205281812060018060a01b038616825260205220549082821061016d576020856101128585038733610735565b608490602086519162461bcd60e51b8352820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b6064820152fd5b80fd5b8383346100e557816003193601126100e557805190828454600181811c908083169283156102b8575b60209384841081146102a5578388529081156102895750600114610251575b505050829003601f01601f19168201926001600160401b0384118385101761023e575082918261023a92528261054d565b0390f35b634e487b7160e01b815260418552602490fd5b919250868652828620918387935b8385106102755750505050830101858080610209565b80548886018301529301928490820161025f565b60ff1916878501525050151560051b8401019050858080610209565b634e487b7160e01b895260228a52602489fd5b91607f16916101ea565b5050346100e55760203660031901126100e55760209181906001600160a01b036102ea610596565b16815280845220549051908152f35b8284346101be57816003193601126101be57610313610596565b338252600160209081528383206001600160a01b038316845290528282205460243581019290831061034d57602084610112858533610735565b634e487b7160e01b815260118552602490fd5b5050346100e557816003193601126100e5576020905160128152f35b839150346100e55760603660031901126100e557610398610596565b6103a06105b1565b91846044359460018060a01b0384168152600160205281812033825260205220549060001982036103da575b6020866101128787876105c7565b84821061040357509183916103f86020969561011295033383610735565b9193948193506103cc565b606490602087519162461bcd60e51b8352820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152fd5b5050346100e557816003193601126100e5576020906002549051908152f35b5050346100e557806003193601126100e557602090610112610485610596565b6024359033610735565b8490843461054957826003193601126105495782600354600181811c9080831692831561053f575b60209384841081146102a557838852908115610289575060011461050657505050829003601f01601f19168201926001600160401b0384118385101761023e575082918261023a92528261054d565b91925060038652828620918387935b83851061052b5750505050830101858080610209565b805488860183015293019284908201610515565b91607f16916104b7565b8280fd5b6020808252825181830181905290939260005b82811061058257505060409293506000838284010152601f8019910116010190565b818101860151848201604001528501610560565b600435906001600160a01b03821682036105ac57565b600080fd5b602435906001600160a01b03821682036105ac57565b6001600160a01b039081169182156106e257169182156106915760008281528060205260408120549180831061063d57604082827fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef958760209652828652038282205586815220818154019055604051908152a3565b60405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608490fd5b60405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608490fd5b60405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608490fd5b6001600160a01b039081169182156107e657169182156107965760207f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925918360005260018252604060002085600052825280604060002055604051908152a3565b60405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608490fd5b60405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608490fdfea264697066735822122048f998d800ba786f7c6540944829e2026b5ad1c106f4397e6d5d48b65630d19064736f6c63430008130033","sourceMap":"1532:11312:66:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::i;:::-;-1:-1:-1;;;;;1532:11312:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3894:6;1532:11312;;:::i;:::-;;;719:10:74;;3894:6:66;:::i;:::-;1532:11312;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;719:10:74;;1532:11312:66;;;;;;;;;;;;;;;;;;;;;6792:35;;;;1532:11312;;;;6928:34;1532:11312;;;;719:10:74;6928:34:66;:::i;1532:11312::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1532:11312:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1532:11312:66;;;;;-1:-1:-1;;1532:11312:66;;;;-1:-1:-1;;;;;1532:11312:66;;;;;;;;;;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;1532:11312:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1532:11312:66;;;;;-1:-1:-1;;1532:11312:66;;;;;;;;-1:-1:-1;1532:11312:66;;;;;;-1:-1:-1;;;1532:11312:66;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;1532:11312:66;;;;;;;;-1:-1:-1;;;;;1532:11312:66;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;719:10:74;1532:11312:66;;;;;;;;;;-1:-1:-1;;;;;1532:11312:66;;;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;;719:10:74;6021:38:66;719:10:74;;;6021:38:66;:::i;1532:11312::-;-1:-1:-1;;;1532:11312:66;;;;;;;;;;;;;;;;;;;;;;;;;3186:2;1532:11312;;;;;;;;;;;;-1:-1:-1;;1532:11312:66;;;;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;719:10:74;1532:11312:66;;;;;;11264:17;;;11244:37;;11240:243;;1532:11312;;5424:6;;;;;;:::i;11240:243::-;11305:26;;;1532:11312;;;;;;11432:25;1532:11312;;;5424:6;1532:11312;;719:10:74;11432:25:66;;:::i;:::-;11240:243;;;;;;;;1532:11312;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3342:12;1532:11312;;;;;;;;;;;;;;;;;;;;;;;4606:6;1532:11312;;:::i;:::-;;;719:10:74;;4606:6:66;:::i;1532:11312::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1532:11312:66;;;;;-1:-1:-1;;1532:11312:66;;;;-1:-1:-1;;;;;1532:11312:66;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1532:11312:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1532:11312:66;;;;;;:::o;:::-;;;;;;;;-1:-1:-1;;;;;1532:11312:66;;;;;;:::o;7456:788::-;-1:-1:-1;;;;;1532:11312:66;;;;7552:18;;1532:11312;;;7630:16;;;1532:11312;;7568:1;1532:11312;;;;;;;;;;7801:21;;;;1532:11312;;;;;8163:26;1532:11312;;;;;;;;;;;;;;;;;;;;;;;;;;;;8163:26;7456:788::o;1532:11312::-;;;-1:-1:-1;;;1532:11312:66;;;;;;;;;;;;;;;;;-1:-1:-1;;;1532:11312:66;;;;;;;;;;-1:-1:-1;;;1532:11312:66;;;;;;;;;;;;;;;;;-1:-1:-1;;;1532:11312:66;;;;;;;;;;-1:-1:-1;;;1532:11312:66;;;;;;;;;;;;;;;;;-1:-1:-1;;;1532:11312:66;;;;;;;10457:340;-1:-1:-1;;;;;1532:11312:66;;;;10558:19;;1532:11312;;;10636:21;;;1532:11312;;;10758:32;1532:11312;;10575:1;1532:11312;;;;;10575:1;1532:11312;;10575:1;1532:11312;;;;;10575:1;1532:11312;;;;;;;10758:32;10457:340::o;1532:11312::-;;;-1:-1:-1;;;1532:11312:66;;;;;;;;;;;;;;;;;-1:-1:-1;;;1532:11312:66;;;;;;;;;;-1:-1:-1;;;1532:11312:66;;;;;;;;;;;;;;;;;-1:-1:-1;;;1532:11312:66;;;;;;","linkReferences":{}},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decimals()":"313ce567","decreaseAllowance(address,uint256)":"a457c2d7","increaseAllowance(address,uint256)":"39509351","name()":"06fdde03","symbol()":"95d89b41","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name_\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol_\",\"type\":\"string\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"subtractedValue\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"addedValue\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Implementation of the {IERC20} interface. This implementation is agnostic to the way tokens are created. This means that a supply mechanism has to be added in a derived contract using {_mint}. For a generic mechanism see {ERC20PresetMinterPauser}. TIP: For a detailed writeup see our guide https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226[How to implement supply mechanisms]. The default value of {decimals} is 18. To change this, you should override this function so it returns a different value. We have followed general OpenZeppelin Contracts guidelines: functions revert instead returning `false` on failure. This behavior is nonetheless conventional and does not conflict with the expectations of ERC20 applications. Additionally, an {Approval} event is emitted on calls to {transferFrom}. This allows applications to reconstruct the allowance for all accounts just by listening to said events. Other implementations of the EIP may not emit these events, as it isn't required by the specification. Finally, the non-standard {decreaseAllowance} and {increaseAllowance} functions have been added to mitigate the well-known issues around setting allowances. See {IERC20-approve}.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"See {IERC20-allowance}.\"},\"approve(address,uint256)\":{\"details\":\"See {IERC20-approve}. NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on `transferFrom`. This is semantically equivalent to an infinite approval. Requirements: - `spender` cannot be the zero address.\"},\"balanceOf(address)\":{\"details\":\"See {IERC20-balanceOf}.\"},\"constructor\":{\"details\":\"Sets the values for {name} and {symbol}. All two of these values are immutable: they can only be set once during construction.\"},\"decimals()\":{\"details\":\"Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5.05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the default value returned by this function, unless it's overridden. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}.\"},\"decreaseAllowance(address,uint256)\":{\"details\":\"Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`.\"},\"increaseAllowance(address,uint256)\":{\"details\":\"Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address.\"},\"name()\":{\"details\":\"Returns the name of the token.\"},\"symbol()\":{\"details\":\"Returns the symbol of the token, usually a shorter version of the name.\"},\"totalSupply()\":{\"details\":\"See {IERC20-totalSupply}.\"},\"transfer(address,uint256)\":{\"details\":\"See {IERC20-transfer}. Requirements: - `to` cannot be the zero address. - the caller must have a balance of at least `amount`.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. NOTE: Does not update the allowance if the current allowance is the maximum `uint256`. Requirements: - `from` and `to` cannot be the zero address. - `from` must have a balance of at least `amount`. - the caller must have allowance for ``from``'s tokens of at least `amount`.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol\":\"ERC20\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"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/utils/Context.sol\":{\"keccak256\":\"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92\",\"dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"spender","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"stateMutability":"view","type":"function","name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"name","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"allowance(address,address)":{"details":"See {IERC20-allowance}."},"approve(address,uint256)":{"details":"See {IERC20-approve}. NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on `transferFrom`. This is semantically equivalent to an infinite approval. Requirements: - `spender` cannot be the zero address."},"balanceOf(address)":{"details":"See {IERC20-balanceOf}."},"constructor":{"details":"Sets the values for {name} and {symbol}. All two of these values are immutable: they can only be set once during construction."},"decimals()":{"details":"Returns the number of decimals used to get its user representation. For example, if `decimals` equals `2`, a balance of `505` tokens should be displayed to a user as `5.05` (`505 / 10 ** 2`). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the default value returned by this function, unless it's overridden. NOTE: This information is only used for _display_ purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}."},"decreaseAllowance(address,uint256)":{"details":"Atomically decreases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address. - `spender` must have allowance for the caller of at least `subtractedValue`."},"increaseAllowance(address,uint256)":{"details":"Atomically increases the allowance granted to `spender` by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - `spender` cannot be the zero address."},"name()":{"details":"Returns the name of the token."},"symbol()":{"details":"Returns the symbol of the token, usually a shorter version of the name."},"totalSupply()":{"details":"See {IERC20-totalSupply}."},"transfer(address,uint256)":{"details":"See {IERC20-transfer}. Requirements: - `to` cannot be the zero address. - the caller must have a balance of at least `amount`."},"transferFrom(address,address,uint256)":{"details":"See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. NOTE: Does not update the allowance if the current allowance is the maximum `uint256`. Requirements: - `from` and `to` cannot be the zero address. - `from` must have a balance of at least `amount`. - the caller must have allowance for ``from``'s tokens of at least `amount`."}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol":"ERC20"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"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/utils/Context.sol":{"keccak256":"0xe2e337e6dde9ef6b680e07338c493ebea1b5fd09b43424112868e9cc1706bca7","urls":["bzz-raw://6df0ddf21ce9f58271bdfaa85cde98b200ef242a05a3f85c2bc10a8294800a92","dweb:/ipfs/QmRK2Y5Yc6BK7tGKkgsgn3aJEQGi5aakeSPZvS65PV8Xp3"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":55176,"contract":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol:ERC20","label":"_balances","offset":0,"slot":"0","type":"t_mapping(t_address,t_uint256)"},{"astId":55182,"contract":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol:ERC20","label":"_allowances","offset":0,"slot":"1","type":"t_mapping(t_address,t_mapping(t_address,t_uint256))"},{"astId":55184,"contract":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol:ERC20","label":"_totalSupply","offset":0,"slot":"2","type":"t_uint256"},{"astId":55186,"contract":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol:ERC20","label":"_name","offset":0,"slot":"3","type":"t_string_storage"},{"astId":55188,"contract":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol:ERC20","label":"_symbol","offset":0,"slot":"4","type":"t_string_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"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_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/ERC20.sol","id":55748,"exportedSymbols":{"Context":[56659],"ERC20":[55747],"IERC20":[55825],"IERC20Metadata":[55850]},"nodeType":"SourceUnit","src":"105:12740:66","nodes":[{"id":55162,"nodeType":"PragmaDirective","src":"105:23:66","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":55163,"nodeType":"ImportDirective","src":"130:22:66","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"./IERC20.sol","nameLocation":"-1:-1:-1","scope":55748,"sourceUnit":55826,"symbolAliases":[],"unitAlias":""},{"id":55164,"nodeType":"ImportDirective","src":"153:41:66","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","file":"./extensions/IERC20Metadata.sol","nameLocation":"-1:-1:-1","scope":55748,"sourceUnit":55851,"symbolAliases":[],"unitAlias":""},{"id":55165,"nodeType":"ImportDirective","src":"195:33:66","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/Context.sol","file":"../../utils/Context.sol","nameLocation":"-1:-1:-1","scope":55748,"sourceUnit":56660,"symbolAliases":[],"unitAlias":""},{"id":55747,"nodeType":"ContractDefinition","src":"1532:11312:66","nodes":[{"id":55176,"nodeType":"VariableDeclaration","src":"1588:45:66","nodes":[],"constant":false,"mutability":"mutable","name":"_balances","nameLocation":"1624:9:66","scope":55747,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":55175,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":55173,"name":"address","nodeType":"ElementaryTypeName","src":"1596:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"1588:27:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":55174,"name":"uint256","nodeType":"ElementaryTypeName","src":"1607:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"private"},{"id":55182,"nodeType":"VariableDeclaration","src":"1640:67:66","nodes":[],"constant":false,"mutability":"mutable","name":"_allowances","nameLocation":"1696:11:66","scope":55747,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"},"typeName":{"id":55181,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":55177,"name":"address","nodeType":"ElementaryTypeName","src":"1648:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"1640:47:66","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":55180,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":55178,"name":"address","nodeType":"ElementaryTypeName","src":"1667:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"1659:27:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":55179,"name":"uint256","nodeType":"ElementaryTypeName","src":"1678:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}}},"visibility":"private"},{"id":55184,"nodeType":"VariableDeclaration","src":"1714:28:66","nodes":[],"constant":false,"mutability":"mutable","name":"_totalSupply","nameLocation":"1730:12:66","scope":55747,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55183,"name":"uint256","nodeType":"ElementaryTypeName","src":"1714:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"private"},{"id":55186,"nodeType":"VariableDeclaration","src":"1749:20:66","nodes":[],"constant":false,"mutability":"mutable","name":"_name","nameLocation":"1764:5:66","scope":55747,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":55185,"name":"string","nodeType":"ElementaryTypeName","src":"1749:6:66","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"private"},{"id":55188,"nodeType":"VariableDeclaration","src":"1775:22:66","nodes":[],"constant":false,"mutability":"mutable","name":"_symbol","nameLocation":"1790:7:66","scope":55747,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":55187,"name":"string","nodeType":"ElementaryTypeName","src":"1775:6:66","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"private"},{"id":55205,"nodeType":"FunctionDefinition","src":"1980:113:66","nodes":[],"body":{"id":55204,"nodeType":"Block","src":"2036:57:66","nodes":[],"statements":[{"expression":{"id":55198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":55196,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55186,"src":"2046:5:66","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":55197,"name":"name_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55191,"src":"2054:5:66","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"2046:13:66","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":55199,"nodeType":"ExpressionStatement","src":"2046:13:66"},{"expression":{"id":55202,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":55200,"name":"_symbol","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55188,"src":"2069:7:66","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":55201,"name":"symbol_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55193,"src":"2079:7:66","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"2069:17:66","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":55203,"nodeType":"ExpressionStatement","src":"2069:17:66"}]},"documentation":{"id":55189,"nodeType":"StructuredDocumentation","src":"1804:171:66","text":" @dev Sets the values for {name} and {symbol}.\n All two of these values are immutable: they can only be set once during\n construction."},"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":55194,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55191,"mutability":"mutable","name":"name_","nameLocation":"2006:5:66","nodeType":"VariableDeclaration","scope":55205,"src":"1992:19:66","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":55190,"name":"string","nodeType":"ElementaryTypeName","src":"1992:6:66","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":55193,"mutability":"mutable","name":"symbol_","nameLocation":"2027:7:66","nodeType":"VariableDeclaration","scope":55205,"src":"2013:21:66","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":55192,"name":"string","nodeType":"ElementaryTypeName","src":"2013:6:66","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1991:44:66"},"returnParameters":{"id":55195,"nodeType":"ParameterList","parameters":[],"src":"2036:0:66"},"scope":55747,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":55215,"nodeType":"FunctionDefinition","src":"2158:98:66","nodes":[],"body":{"id":55214,"nodeType":"Block","src":"2227:29:66","nodes":[],"statements":[{"expression":{"id":55212,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55186,"src":"2244:5:66","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"functionReturnParameters":55211,"id":55213,"nodeType":"Return","src":"2237:12:66"}]},"baseFunctions":[55837],"documentation":{"id":55206,"nodeType":"StructuredDocumentation","src":"2099:54:66","text":" @dev Returns the name of the token."},"functionSelector":"06fdde03","implemented":true,"kind":"function","modifiers":[],"name":"name","nameLocation":"2167:4:66","overrides":{"id":55208,"nodeType":"OverrideSpecifier","overrides":[],"src":"2194:8:66"},"parameters":{"id":55207,"nodeType":"ParameterList","parameters":[],"src":"2171:2:66"},"returnParameters":{"id":55211,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55210,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55215,"src":"2212:13:66","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":55209,"name":"string","nodeType":"ElementaryTypeName","src":"2212:6:66","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2211:15:66"},"scope":55747,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":55225,"nodeType":"FunctionDefinition","src":"2369:102:66","nodes":[],"body":{"id":55224,"nodeType":"Block","src":"2440:31:66","nodes":[],"statements":[{"expression":{"id":55222,"name":"_symbol","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55188,"src":"2457:7:66","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"functionReturnParameters":55221,"id":55223,"nodeType":"Return","src":"2450:14:66"}]},"baseFunctions":[55843],"documentation":{"id":55216,"nodeType":"StructuredDocumentation","src":"2262:102:66","text":" @dev Returns the symbol of the token, usually a shorter version of the\n name."},"functionSelector":"95d89b41","implemented":true,"kind":"function","modifiers":[],"name":"symbol","nameLocation":"2378:6:66","overrides":{"id":55218,"nodeType":"OverrideSpecifier","overrides":[],"src":"2407:8:66"},"parameters":{"id":55217,"nodeType":"ParameterList","parameters":[],"src":"2384:2:66"},"returnParameters":{"id":55221,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55220,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55225,"src":"2425:13:66","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":55219,"name":"string","nodeType":"ElementaryTypeName","src":"2425:6:66","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"2424:15:66"},"scope":55747,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":55235,"nodeType":"FunctionDefinition","src":"3104:91:66","nodes":[],"body":{"id":55234,"nodeType":"Block","src":"3169:26:66","nodes":[],"statements":[{"expression":{"hexValue":"3138","id":55232,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3186:2:66","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},"functionReturnParameters":55231,"id":55233,"nodeType":"Return","src":"3179:9:66"}]},"baseFunctions":[55849],"documentation":{"id":55226,"nodeType":"StructuredDocumentation","src":"2477:622:66","text":" @dev Returns the number of decimals used to get its user representation.\n For example, if `decimals` equals `2`, a balance of `505` tokens should\n be displayed to a user as `5.05` (`505 / 10 ** 2`).\n Tokens usually opt for a value of 18, imitating the relationship between\n Ether and Wei. This is the default value returned by this function, unless\n it's overridden.\n NOTE: This information is only used for _display_ purposes: it in\n no way affects any of the arithmetic of the contract, including\n {IERC20-balanceOf} and {IERC20-transfer}."},"functionSelector":"313ce567","implemented":true,"kind":"function","modifiers":[],"name":"decimals","nameLocation":"3113:8:66","overrides":{"id":55228,"nodeType":"OverrideSpecifier","overrides":[],"src":"3144:8:66"},"parameters":{"id":55227,"nodeType":"ParameterList","parameters":[],"src":"3121:2:66"},"returnParameters":{"id":55231,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55230,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55235,"src":"3162:5:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":55229,"name":"uint8","nodeType":"ElementaryTypeName","src":"3162:5:66","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"3161:7:66"},"scope":55747,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":55245,"nodeType":"FunctionDefinition","src":"3255:106:66","nodes":[],"body":{"id":55244,"nodeType":"Block","src":"3325:36:66","nodes":[],"statements":[{"expression":{"id":55242,"name":"_totalSupply","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55184,"src":"3342:12:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":55241,"id":55243,"nodeType":"Return","src":"3335:19:66"}]},"baseFunctions":[55774],"documentation":{"id":55236,"nodeType":"StructuredDocumentation","src":"3201:49:66","text":" @dev See {IERC20-totalSupply}."},"functionSelector":"18160ddd","implemented":true,"kind":"function","modifiers":[],"name":"totalSupply","nameLocation":"3264:11:66","overrides":{"id":55238,"nodeType":"OverrideSpecifier","overrides":[],"src":"3298:8:66"},"parameters":{"id":55237,"nodeType":"ParameterList","parameters":[],"src":"3275:2:66"},"returnParameters":{"id":55241,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55240,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55245,"src":"3316:7:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55239,"name":"uint256","nodeType":"ElementaryTypeName","src":"3316:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3315:9:66"},"scope":55747,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":55259,"nodeType":"FunctionDefinition","src":"3419:125:66","nodes":[],"body":{"id":55258,"nodeType":"Block","src":"3502:42:66","nodes":[],"statements":[{"expression":{"baseExpression":{"id":55254,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55176,"src":"3519:9:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":55256,"indexExpression":{"id":55255,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55248,"src":"3529:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3519:18:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":55253,"id":55257,"nodeType":"Return","src":"3512:25:66"}]},"baseFunctions":[55782],"documentation":{"id":55246,"nodeType":"StructuredDocumentation","src":"3367:47:66","text":" @dev See {IERC20-balanceOf}."},"functionSelector":"70a08231","implemented":true,"kind":"function","modifiers":[],"name":"balanceOf","nameLocation":"3428:9:66","overrides":{"id":55250,"nodeType":"OverrideSpecifier","overrides":[],"src":"3475:8:66"},"parameters":{"id":55249,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55248,"mutability":"mutable","name":"account","nameLocation":"3446:7:66","nodeType":"VariableDeclaration","scope":55259,"src":"3438:15:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55247,"name":"address","nodeType":"ElementaryTypeName","src":"3438:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3437:17:66"},"returnParameters":{"id":55253,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55252,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55259,"src":"3493:7:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55251,"name":"uint256","nodeType":"ElementaryTypeName","src":"3493:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3492:9:66"},"scope":55747,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":55284,"nodeType":"FunctionDefinition","src":"3740:189:66","nodes":[],"body":{"id":55283,"nodeType":"Block","src":"3825:104:66","nodes":[],"statements":[{"assignments":[55271],"declarations":[{"constant":false,"id":55271,"mutability":"mutable","name":"owner","nameLocation":"3843:5:66","nodeType":"VariableDeclaration","scope":55283,"src":"3835:13:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55270,"name":"address","nodeType":"ElementaryTypeName","src":"3835:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":55274,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":55272,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56649,"src":"3851:10:66","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":55273,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3851:12:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"3835:28:66"},{"expression":{"arguments":[{"id":55276,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55271,"src":"3883:5:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55277,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55262,"src":"3890:2:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55278,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55264,"src":"3894:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55275,"name":"_transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55507,"src":"3873:9:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55279,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3873:28:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55280,"nodeType":"ExpressionStatement","src":"3873:28:66"},{"expression":{"hexValue":"74727565","id":55281,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3918:4:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":55269,"id":55282,"nodeType":"Return","src":"3911:11:66"}]},"baseFunctions":[55792],"documentation":{"id":55260,"nodeType":"StructuredDocumentation","src":"3550:185:66","text":" @dev See {IERC20-transfer}.\n Requirements:\n - `to` cannot be the zero address.\n - the caller must have a balance of at least `amount`."},"functionSelector":"a9059cbb","implemented":true,"kind":"function","modifiers":[],"name":"transfer","nameLocation":"3749:8:66","overrides":{"id":55266,"nodeType":"OverrideSpecifier","overrides":[],"src":"3801:8:66"},"parameters":{"id":55265,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55262,"mutability":"mutable","name":"to","nameLocation":"3766:2:66","nodeType":"VariableDeclaration","scope":55284,"src":"3758:10:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55261,"name":"address","nodeType":"ElementaryTypeName","src":"3758:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55264,"mutability":"mutable","name":"amount","nameLocation":"3778:6:66","nodeType":"VariableDeclaration","scope":55284,"src":"3770:14:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55263,"name":"uint256","nodeType":"ElementaryTypeName","src":"3770:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3757:28:66"},"returnParameters":{"id":55269,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55268,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55284,"src":"3819:4:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":55267,"name":"bool","nodeType":"ElementaryTypeName","src":"3819:4:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"3818:6:66"},"scope":55747,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":55302,"nodeType":"FunctionDefinition","src":"3987:149:66","nodes":[],"body":{"id":55301,"nodeType":"Block","src":"4085:51:66","nodes":[],"statements":[{"expression":{"baseExpression":{"baseExpression":{"id":55295,"name":"_allowances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55182,"src":"4102:11:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":55297,"indexExpression":{"id":55296,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55287,"src":"4114:5:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4102:18:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":55299,"indexExpression":{"id":55298,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55289,"src":"4121:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4102:27:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":55294,"id":55300,"nodeType":"Return","src":"4095:34:66"}]},"baseFunctions":[55802],"documentation":{"id":55285,"nodeType":"StructuredDocumentation","src":"3935:47:66","text":" @dev See {IERC20-allowance}."},"functionSelector":"dd62ed3e","implemented":true,"kind":"function","modifiers":[],"name":"allowance","nameLocation":"3996:9:66","overrides":{"id":55291,"nodeType":"OverrideSpecifier","overrides":[],"src":"4058:8:66"},"parameters":{"id":55290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55287,"mutability":"mutable","name":"owner","nameLocation":"4014:5:66","nodeType":"VariableDeclaration","scope":55302,"src":"4006:13:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55286,"name":"address","nodeType":"ElementaryTypeName","src":"4006:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55289,"mutability":"mutable","name":"spender","nameLocation":"4029:7:66","nodeType":"VariableDeclaration","scope":55302,"src":"4021:15:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55288,"name":"address","nodeType":"ElementaryTypeName","src":"4021:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4005:32:66"},"returnParameters":{"id":55294,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55293,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55302,"src":"4076:7:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55292,"name":"uint256","nodeType":"ElementaryTypeName","src":"4076:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4075:9:66"},"scope":55747,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":55327,"nodeType":"FunctionDefinition","src":"4444:197:66","nodes":[],"body":{"id":55326,"nodeType":"Block","src":"4533:108:66","nodes":[],"statements":[{"assignments":[55314],"declarations":[{"constant":false,"id":55314,"mutability":"mutable","name":"owner","nameLocation":"4551:5:66","nodeType":"VariableDeclaration","scope":55326,"src":"4543:13:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55313,"name":"address","nodeType":"ElementaryTypeName","src":"4543:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":55317,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":55315,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56649,"src":"4559:10:66","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":55316,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4559:12:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"4543:28:66"},{"expression":{"arguments":[{"id":55319,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55314,"src":"4590:5:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55320,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55305,"src":"4597:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55321,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55307,"src":"4606:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55318,"name":"_approve","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55681,"src":"4581:8:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55322,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4581:32:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55323,"nodeType":"ExpressionStatement","src":"4581:32:66"},{"expression":{"hexValue":"74727565","id":55324,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4630:4:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":55312,"id":55325,"nodeType":"Return","src":"4623:11:66"}]},"baseFunctions":[55812],"documentation":{"id":55303,"nodeType":"StructuredDocumentation","src":"4142:297:66","text":" @dev See {IERC20-approve}.\n NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on\n `transferFrom`. This is semantically equivalent to an infinite approval.\n Requirements:\n - `spender` cannot be the zero address."},"functionSelector":"095ea7b3","implemented":true,"kind":"function","modifiers":[],"name":"approve","nameLocation":"4453:7:66","overrides":{"id":55309,"nodeType":"OverrideSpecifier","overrides":[],"src":"4509:8:66"},"parameters":{"id":55308,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55305,"mutability":"mutable","name":"spender","nameLocation":"4469:7:66","nodeType":"VariableDeclaration","scope":55327,"src":"4461:15:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55304,"name":"address","nodeType":"ElementaryTypeName","src":"4461:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55307,"mutability":"mutable","name":"amount","nameLocation":"4486:6:66","nodeType":"VariableDeclaration","scope":55327,"src":"4478:14:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55306,"name":"uint256","nodeType":"ElementaryTypeName","src":"4478:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4460:33:66"},"returnParameters":{"id":55312,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55311,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55327,"src":"4527:4:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":55310,"name":"bool","nodeType":"ElementaryTypeName","src":"4527:4:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4526:6:66"},"scope":55747,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":55360,"nodeType":"FunctionDefinition","src":"5203:256:66","nodes":[],"body":{"id":55359,"nodeType":"Block","src":"5306:153:66","nodes":[],"statements":[{"assignments":[55341],"declarations":[{"constant":false,"id":55341,"mutability":"mutable","name":"spender","nameLocation":"5324:7:66","nodeType":"VariableDeclaration","scope":55359,"src":"5316:15:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55340,"name":"address","nodeType":"ElementaryTypeName","src":"5316:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":55344,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":55342,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56649,"src":"5334:10:66","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":55343,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5334:12:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"5316:30:66"},{"expression":{"arguments":[{"id":55346,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55330,"src":"5372:4:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55347,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55341,"src":"5378:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55348,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55334,"src":"5387:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55345,"name":"_spendAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55724,"src":"5356:15:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55349,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5356:38:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55350,"nodeType":"ExpressionStatement","src":"5356:38:66"},{"expression":{"arguments":[{"id":55352,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55330,"src":"5414:4:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55353,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55332,"src":"5420:2:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55354,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55334,"src":"5424:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55351,"name":"_transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55507,"src":"5404:9:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55355,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5404:27:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55356,"nodeType":"ExpressionStatement","src":"5404:27:66"},{"expression":{"hexValue":"74727565","id":55357,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5448:4:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":55339,"id":55358,"nodeType":"Return","src":"5441:11:66"}]},"baseFunctions":[55824],"documentation":{"id":55328,"nodeType":"StructuredDocumentation","src":"4647:551:66","text":" @dev See {IERC20-transferFrom}.\n Emits an {Approval} event indicating the updated allowance. This is not\n required by the EIP. See the note at the beginning of {ERC20}.\n NOTE: Does not update the allowance if the current allowance\n is the maximum `uint256`.\n Requirements:\n - `from` and `to` cannot be the zero address.\n - `from` must have a balance of at least `amount`.\n - the caller must have allowance for ``from``'s tokens of at least\n `amount`."},"functionSelector":"23b872dd","implemented":true,"kind":"function","modifiers":[],"name":"transferFrom","nameLocation":"5212:12:66","overrides":{"id":55336,"nodeType":"OverrideSpecifier","overrides":[],"src":"5282:8:66"},"parameters":{"id":55335,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55330,"mutability":"mutable","name":"from","nameLocation":"5233:4:66","nodeType":"VariableDeclaration","scope":55360,"src":"5225:12:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55329,"name":"address","nodeType":"ElementaryTypeName","src":"5225:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55332,"mutability":"mutable","name":"to","nameLocation":"5247:2:66","nodeType":"VariableDeclaration","scope":55360,"src":"5239:10:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55331,"name":"address","nodeType":"ElementaryTypeName","src":"5239:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55334,"mutability":"mutable","name":"amount","nameLocation":"5259:6:66","nodeType":"VariableDeclaration","scope":55360,"src":"5251:14:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55333,"name":"uint256","nodeType":"ElementaryTypeName","src":"5251:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5224:42:66"},"returnParameters":{"id":55339,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55338,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55360,"src":"5300:4:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":55337,"name":"bool","nodeType":"ElementaryTypeName","src":"5300:4:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5299:6:66"},"scope":55747,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":55389,"nodeType":"FunctionDefinition","src":"5854:234:66","nodes":[],"body":{"id":55388,"nodeType":"Block","src":"5948:140:66","nodes":[],"statements":[{"assignments":[55371],"declarations":[{"constant":false,"id":55371,"mutability":"mutable","name":"owner","nameLocation":"5966:5:66","nodeType":"VariableDeclaration","scope":55388,"src":"5958:13:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55370,"name":"address","nodeType":"ElementaryTypeName","src":"5958:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":55374,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":55372,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56649,"src":"5974:10:66","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":55373,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5974:12:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"5958:28:66"},{"expression":{"arguments":[{"id":55376,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55371,"src":"6005:5:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55377,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55363,"src":"6012:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":55383,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":55379,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55371,"src":"6031:5:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55380,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55363,"src":"6038:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":55378,"name":"allowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55302,"src":"6021:9:66","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":55381,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6021:25:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":55382,"name":"addedValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55365,"src":"6049:10:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6021:38:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55375,"name":"_approve","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55681,"src":"5996:8:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55384,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5996:64:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55385,"nodeType":"ExpressionStatement","src":"5996:64:66"},{"expression":{"hexValue":"74727565","id":55386,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"6077:4:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":55369,"id":55387,"nodeType":"Return","src":"6070:11:66"}]},"documentation":{"id":55361,"nodeType":"StructuredDocumentation","src":"5465:384:66","text":" @dev Atomically increases the allowance granted to `spender` by the caller.\n This is an alternative to {approve} that can be used as a mitigation for\n problems described in {IERC20-approve}.\n Emits an {Approval} event indicating the updated allowance.\n Requirements:\n - `spender` cannot be the zero address."},"functionSelector":"39509351","implemented":true,"kind":"function","modifiers":[],"name":"increaseAllowance","nameLocation":"5863:17:66","parameters":{"id":55366,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55363,"mutability":"mutable","name":"spender","nameLocation":"5889:7:66","nodeType":"VariableDeclaration","scope":55389,"src":"5881:15:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55362,"name":"address","nodeType":"ElementaryTypeName","src":"5881:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55365,"mutability":"mutable","name":"addedValue","nameLocation":"5906:10:66","nodeType":"VariableDeclaration","scope":55389,"src":"5898:18:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55364,"name":"uint256","nodeType":"ElementaryTypeName","src":"5898:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5880:37:66"},"returnParameters":{"id":55369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55368,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55389,"src":"5942:4:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":55367,"name":"bool","nodeType":"ElementaryTypeName","src":"5942:4:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5941:6:66"},"scope":55747,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":55430,"nodeType":"FunctionDefinition","src":"6575:427:66","nodes":[],"body":{"id":55429,"nodeType":"Block","src":"6674:328:66","nodes":[],"statements":[{"assignments":[55400],"declarations":[{"constant":false,"id":55400,"mutability":"mutable","name":"owner","nameLocation":"6692:5:66","nodeType":"VariableDeclaration","scope":55429,"src":"6684:13:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55399,"name":"address","nodeType":"ElementaryTypeName","src":"6684:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":55403,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"id":55401,"name":"_msgSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56649,"src":"6700:10:66","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":55402,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6700:12:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"6684:28:66"},{"assignments":[55405],"declarations":[{"constant":false,"id":55405,"mutability":"mutable","name":"currentAllowance","nameLocation":"6730:16:66","nodeType":"VariableDeclaration","scope":55429,"src":"6722:24:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55404,"name":"uint256","nodeType":"ElementaryTypeName","src":"6722:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":55410,"initialValue":{"arguments":[{"id":55407,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55400,"src":"6759:5:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55408,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55392,"src":"6766:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":55406,"name":"allowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55302,"src":"6749:9:66","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":55409,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6749:25:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"6722:52:66"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":55414,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55412,"name":"currentAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55405,"src":"6792:16:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":55413,"name":"subtractedValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55394,"src":"6812:15:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6792:35:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f","id":55415,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"6829:39:66","typeDescriptions":{"typeIdentifier":"t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8","typeString":"literal_string \"ERC20: decreased allowance below zero\""},"value":"ERC20: decreased allowance below zero"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8","typeString":"literal_string \"ERC20: decreased allowance below zero\""}],"id":55411,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"6784:7:66","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":55416,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6784:85:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55417,"nodeType":"ExpressionStatement","src":"6784:85:66"},{"id":55426,"nodeType":"UncheckedBlock","src":"6879:95:66","statements":[{"expression":{"arguments":[{"id":55419,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55400,"src":"6912:5:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55420,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55392,"src":"6919:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":55423,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55421,"name":"currentAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55405,"src":"6928:16:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":55422,"name":"subtractedValue","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55394,"src":"6947:15:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6928:34:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55418,"name":"_approve","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55681,"src":"6903:8:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55424,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6903:60:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55425,"nodeType":"ExpressionStatement","src":"6903:60:66"}]},{"expression":{"hexValue":"74727565","id":55427,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"6991:4:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":55398,"id":55428,"nodeType":"Return","src":"6984:11:66"}]},"documentation":{"id":55390,"nodeType":"StructuredDocumentation","src":"6094:476:66","text":" @dev Atomically decreases the allowance granted to `spender` by the caller.\n This is an alternative to {approve} that can be used as a mitigation for\n problems described in {IERC20-approve}.\n Emits an {Approval} event indicating the updated allowance.\n Requirements:\n - `spender` cannot be the zero address.\n - `spender` must have allowance for the caller of at least\n `subtractedValue`."},"functionSelector":"a457c2d7","implemented":true,"kind":"function","modifiers":[],"name":"decreaseAllowance","nameLocation":"6584:17:66","parameters":{"id":55395,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55392,"mutability":"mutable","name":"spender","nameLocation":"6610:7:66","nodeType":"VariableDeclaration","scope":55430,"src":"6602:15:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55391,"name":"address","nodeType":"ElementaryTypeName","src":"6602:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55394,"mutability":"mutable","name":"subtractedValue","nameLocation":"6627:15:66","nodeType":"VariableDeclaration","scope":55430,"src":"6619:23:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55393,"name":"uint256","nodeType":"ElementaryTypeName","src":"6619:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6601:42:66"},"returnParameters":{"id":55398,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55397,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55430,"src":"6668:4:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":55396,"name":"bool","nodeType":"ElementaryTypeName","src":"6668:4:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"6667:6:66"},"scope":55747,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":55507,"nodeType":"FunctionDefinition","src":"7456:788:66","nodes":[],"body":{"id":55506,"nodeType":"Block","src":"7534:710:66","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":55446,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55441,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55433,"src":"7552:4:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":55444,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7568:1:66","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":55443,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7560:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55442,"name":"address","nodeType":"ElementaryTypeName","src":"7560:7:66","typeDescriptions":{}}},"id":55445,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7560:10:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"7552:18:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a207472616e736665722066726f6d20746865207a65726f2061646472657373","id":55447,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7572:39:66","typeDescriptions":{"typeIdentifier":"t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea","typeString":"literal_string \"ERC20: transfer from the zero address\""},"value":"ERC20: transfer from the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea","typeString":"literal_string \"ERC20: transfer from the zero address\""}],"id":55440,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"7544:7:66","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":55448,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7544:68:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55449,"nodeType":"ExpressionStatement","src":"7544:68:66"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":55456,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55451,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55435,"src":"7630:2:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":55454,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7644:1:66","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":55453,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7636:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55452,"name":"address","nodeType":"ElementaryTypeName","src":"7636:7:66","typeDescriptions":{}}},"id":55455,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7636:10:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"7630:16:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a207472616e7366657220746f20746865207a65726f2061646472657373","id":55457,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7648:37:66","typeDescriptions":{"typeIdentifier":"t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f","typeString":"literal_string \"ERC20: transfer to the zero address\""},"value":"ERC20: transfer to the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f","typeString":"literal_string \"ERC20: transfer to the zero address\""}],"id":55450,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"7622:7:66","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":55458,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7622:64:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55459,"nodeType":"ExpressionStatement","src":"7622:64:66"},{"expression":{"arguments":[{"id":55461,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55433,"src":"7718:4:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55462,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55435,"src":"7724:2:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55463,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55437,"src":"7728:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55460,"name":"_beforeTokenTransfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55735,"src":"7697:20:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55464,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7697:38:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55465,"nodeType":"ExpressionStatement","src":"7697:38:66"},{"assignments":[55467],"declarations":[{"constant":false,"id":55467,"mutability":"mutable","name":"fromBalance","nameLocation":"7754:11:66","nodeType":"VariableDeclaration","scope":55506,"src":"7746:19:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55466,"name":"uint256","nodeType":"ElementaryTypeName","src":"7746:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":55471,"initialValue":{"baseExpression":{"id":55468,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55176,"src":"7768:9:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":55470,"indexExpression":{"id":55469,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55433,"src":"7778:4:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"7768:15:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"7746:37:66"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":55475,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55473,"name":"fromBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55467,"src":"7801:11:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":55474,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55437,"src":"7816:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"7801:21:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365","id":55476,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7824:40:66","typeDescriptions":{"typeIdentifier":"t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6","typeString":"literal_string \"ERC20: transfer amount exceeds balance\""},"value":"ERC20: transfer amount exceeds balance"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6","typeString":"literal_string \"ERC20: transfer amount exceeds balance\""}],"id":55472,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"7793:7:66","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":55477,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7793:72:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55478,"nodeType":"ExpressionStatement","src":"7793:72:66"},{"id":55493,"nodeType":"UncheckedBlock","src":"7875:273:66","statements":[{"expression":{"id":55485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":55479,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55176,"src":"7899:9:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":55481,"indexExpression":{"id":55480,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55433,"src":"7909:4:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"7899:15:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":55484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55482,"name":"fromBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55467,"src":"7917:11:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":55483,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55437,"src":"7931:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"7917:20:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"7899:38:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":55486,"nodeType":"ExpressionStatement","src":"7899:38:66"},{"expression":{"id":55491,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":55487,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55176,"src":"8114:9:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":55489,"indexExpression":{"id":55488,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55435,"src":"8124:2:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8114:13:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":55490,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55437,"src":"8131:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8114:23:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":55492,"nodeType":"ExpressionStatement","src":"8114:23:66"}]},{"eventCall":{"arguments":[{"id":55495,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55433,"src":"8172:4:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55496,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55435,"src":"8178:2:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55497,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55437,"src":"8182:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55494,"name":"Transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55759,"src":"8163:8:66","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8163:26:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55499,"nodeType":"EmitStatement","src":"8158:31:66"},{"expression":{"arguments":[{"id":55501,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55433,"src":"8220:4:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55502,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55435,"src":"8226:2:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55503,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55437,"src":"8230:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55500,"name":"_afterTokenTransfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55746,"src":"8200:19:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55504,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8200:37:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55505,"nodeType":"ExpressionStatement","src":"8200:37:66"}]},"documentation":{"id":55431,"nodeType":"StructuredDocumentation","src":"7008:443:66","text":" @dev Moves `amount` of tokens from `from` to `to`.\n This internal function is equivalent to {transfer}, and can be used to\n e.g. implement automatic token fees, slashing mechanisms, etc.\n Emits a {Transfer} event.\n Requirements:\n - `from` cannot be the zero address.\n - `to` cannot be the zero address.\n - `from` must have a balance of at least `amount`."},"implemented":true,"kind":"function","modifiers":[],"name":"_transfer","nameLocation":"7465:9:66","parameters":{"id":55438,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55433,"mutability":"mutable","name":"from","nameLocation":"7483:4:66","nodeType":"VariableDeclaration","scope":55507,"src":"7475:12:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55432,"name":"address","nodeType":"ElementaryTypeName","src":"7475:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55435,"mutability":"mutable","name":"to","nameLocation":"7497:2:66","nodeType":"VariableDeclaration","scope":55507,"src":"7489:10:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55434,"name":"address","nodeType":"ElementaryTypeName","src":"7489:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55437,"mutability":"mutable","name":"amount","nameLocation":"7509:6:66","nodeType":"VariableDeclaration","scope":55507,"src":"7501:14:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55436,"name":"uint256","nodeType":"ElementaryTypeName","src":"7501:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7474:42:66"},"returnParameters":{"id":55439,"nodeType":"ParameterList","parameters":[],"src":"7534:0:66"},"scope":55747,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":55564,"nodeType":"FunctionDefinition","src":"8520:535:66","nodes":[],"body":{"id":55563,"nodeType":"Block","src":"8585:470:66","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":55521,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55516,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55510,"src":"8603:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":55519,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8622:1:66","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":55518,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8614:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55517,"name":"address","nodeType":"ElementaryTypeName","src":"8614:7:66","typeDescriptions":{}}},"id":55520,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8614:10:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"8603:21:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a206d696e7420746f20746865207a65726f2061646472657373","id":55522,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8626:33:66","typeDescriptions":{"typeIdentifier":"t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e","typeString":"literal_string \"ERC20: mint to the zero address\""},"value":"ERC20: mint to the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e","typeString":"literal_string \"ERC20: mint to the zero address\""}],"id":55515,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"8595:7:66","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":55523,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8595:65:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55524,"nodeType":"ExpressionStatement","src":"8595:65:66"},{"expression":{"arguments":[{"arguments":[{"hexValue":"30","id":55528,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8700:1:66","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":55527,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8692:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55526,"name":"address","nodeType":"ElementaryTypeName","src":"8692:7:66","typeDescriptions":{}}},"id":55529,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8692:10:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55530,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55510,"src":"8704:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55531,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55512,"src":"8713:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55525,"name":"_beforeTokenTransfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55735,"src":"8671:20:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55532,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8671:49:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55533,"nodeType":"ExpressionStatement","src":"8671:49:66"},{"expression":{"id":55536,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":55534,"name":"_totalSupply","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55184,"src":"8731:12:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":55535,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55512,"src":"8747:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8731:22:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":55537,"nodeType":"ExpressionStatement","src":"8731:22:66"},{"id":55544,"nodeType":"UncheckedBlock","src":"8763:175:66","statements":[{"expression":{"id":55542,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":55538,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55176,"src":"8899:9:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":55540,"indexExpression":{"id":55539,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55510,"src":"8909:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8899:18:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":55541,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55512,"src":"8921:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8899:28:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":55543,"nodeType":"ExpressionStatement","src":"8899:28:66"}]},{"eventCall":{"arguments":[{"arguments":[{"hexValue":"30","id":55548,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8969:1:66","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":55547,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8961:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55546,"name":"address","nodeType":"ElementaryTypeName","src":"8961:7:66","typeDescriptions":{}}},"id":55549,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8961:10:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55550,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55510,"src":"8973:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55551,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55512,"src":"8982:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55545,"name":"Transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55759,"src":"8952:8:66","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55552,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8952:37:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55553,"nodeType":"EmitStatement","src":"8947:42:66"},{"expression":{"arguments":[{"arguments":[{"hexValue":"30","id":55557,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9028:1:66","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":55556,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9020:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55555,"name":"address","nodeType":"ElementaryTypeName","src":"9020:7:66","typeDescriptions":{}}},"id":55558,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9020:10:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55559,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55510,"src":"9032:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55560,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55512,"src":"9041:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55554,"name":"_afterTokenTransfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55746,"src":"9000:19:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55561,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9000:48:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55562,"nodeType":"ExpressionStatement","src":"9000:48:66"}]},"documentation":{"id":55508,"nodeType":"StructuredDocumentation","src":"8250:265:66","text":"@dev Creates `amount` tokens and assigns them to `account`, increasing\n the total supply.\n Emits a {Transfer} event with `from` set to the zero address.\n Requirements:\n - `account` cannot be the zero address."},"implemented":true,"kind":"function","modifiers":[],"name":"_mint","nameLocation":"8529:5:66","parameters":{"id":55513,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55510,"mutability":"mutable","name":"account","nameLocation":"8543:7:66","nodeType":"VariableDeclaration","scope":55564,"src":"8535:15:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55509,"name":"address","nodeType":"ElementaryTypeName","src":"8535:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55512,"mutability":"mutable","name":"amount","nameLocation":"8560:6:66","nodeType":"VariableDeclaration","scope":55564,"src":"8552:14:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55511,"name":"uint256","nodeType":"ElementaryTypeName","src":"8552:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8534:33:66"},"returnParameters":{"id":55514,"nodeType":"ParameterList","parameters":[],"src":"8585:0:66"},"scope":55747,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":55636,"nodeType":"FunctionDefinition","src":"9375:659:66","nodes":[],"body":{"id":55635,"nodeType":"Block","src":"9440:594:66","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":55578,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55573,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55567,"src":"9458:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":55576,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9477:1:66","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":55575,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9469:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55574,"name":"address","nodeType":"ElementaryTypeName","src":"9469:7:66","typeDescriptions":{}}},"id":55577,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9469:10:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"9458:21:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a206275726e2066726f6d20746865207a65726f2061646472657373","id":55579,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9481:35:66","typeDescriptions":{"typeIdentifier":"t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f","typeString":"literal_string \"ERC20: burn from the zero address\""},"value":"ERC20: burn from the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f","typeString":"literal_string \"ERC20: burn from the zero address\""}],"id":55572,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"9450:7:66","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":55580,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9450:67:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55581,"nodeType":"ExpressionStatement","src":"9450:67:66"},{"expression":{"arguments":[{"id":55583,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55567,"src":"9549:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"hexValue":"30","id":55586,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9566:1:66","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":55585,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9558:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55584,"name":"address","nodeType":"ElementaryTypeName","src":"9558:7:66","typeDescriptions":{}}},"id":55587,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9558:10:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55588,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55569,"src":"9570:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55582,"name":"_beforeTokenTransfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55735,"src":"9528:20:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55589,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9528:49:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55590,"nodeType":"ExpressionStatement","src":"9528:49:66"},{"assignments":[55592],"declarations":[{"constant":false,"id":55592,"mutability":"mutable","name":"accountBalance","nameLocation":"9596:14:66","nodeType":"VariableDeclaration","scope":55635,"src":"9588:22:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55591,"name":"uint256","nodeType":"ElementaryTypeName","src":"9588:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":55596,"initialValue":{"baseExpression":{"id":55593,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55176,"src":"9613:9:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":55595,"indexExpression":{"id":55594,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55567,"src":"9623:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9613:18:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"9588:43:66"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":55600,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55598,"name":"accountBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55592,"src":"9649:14:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":55599,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55569,"src":"9667:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9649:24:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a206275726e20616d6f756e7420657863656564732062616c616e6365","id":55601,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9675:36:66","typeDescriptions":{"typeIdentifier":"t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd","typeString":"literal_string \"ERC20: burn amount exceeds balance\""},"value":"ERC20: burn amount exceeds balance"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd","typeString":"literal_string \"ERC20: burn amount exceeds balance\""}],"id":55597,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"9641:7:66","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":55602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9641:71:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55603,"nodeType":"ExpressionStatement","src":"9641:71:66"},{"id":55616,"nodeType":"UncheckedBlock","src":"9722:194:66","statements":[{"expression":{"id":55610,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":55604,"name":"_balances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55176,"src":"9746:9:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":55606,"indexExpression":{"id":55605,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55567,"src":"9756:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"9746:18:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":55609,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55607,"name":"accountBalance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55592,"src":"9767:14:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":55608,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55569,"src":"9784:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9767:23:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9746:44:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":55611,"nodeType":"ExpressionStatement","src":"9746:44:66"},{"expression":{"id":55614,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":55612,"name":"_totalSupply","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55184,"src":"9883:12:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":55613,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55569,"src":"9899:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"9883:22:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":55615,"nodeType":"ExpressionStatement","src":"9883:22:66"}]},{"eventCall":{"arguments":[{"id":55618,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55567,"src":"9940:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"hexValue":"30","id":55621,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9957:1:66","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":55620,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"9949:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55619,"name":"address","nodeType":"ElementaryTypeName","src":"9949:7:66","typeDescriptions":{}}},"id":55622,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9949:10:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55623,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55569,"src":"9961:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55617,"name":"Transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55759,"src":"9931:8:66","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55624,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9931:37:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55625,"nodeType":"EmitStatement","src":"9926:42:66"},{"expression":{"arguments":[{"id":55627,"name":"account","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55567,"src":"9999:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"hexValue":"30","id":55630,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10016:1:66","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":55629,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10008:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55628,"name":"address","nodeType":"ElementaryTypeName","src":"10008:7:66","typeDescriptions":{}}},"id":55631,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10008:10:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55632,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55569,"src":"10020:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55626,"name":"_afterTokenTransfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55746,"src":"9979:19:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55633,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9979:48:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55634,"nodeType":"ExpressionStatement","src":"9979:48:66"}]},"documentation":{"id":55565,"nodeType":"StructuredDocumentation","src":"9061:309:66","text":" @dev Destroys `amount` tokens from `account`, reducing the\n total supply.\n Emits a {Transfer} event with `to` set to the zero address.\n Requirements:\n - `account` cannot be the zero address.\n - `account` must have at least `amount` tokens."},"implemented":true,"kind":"function","modifiers":[],"name":"_burn","nameLocation":"9384:5:66","parameters":{"id":55570,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55567,"mutability":"mutable","name":"account","nameLocation":"9398:7:66","nodeType":"VariableDeclaration","scope":55636,"src":"9390:15:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55566,"name":"address","nodeType":"ElementaryTypeName","src":"9390:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55569,"mutability":"mutable","name":"amount","nameLocation":"9415:6:66","nodeType":"VariableDeclaration","scope":55636,"src":"9407:14:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55568,"name":"uint256","nodeType":"ElementaryTypeName","src":"9407:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"9389:33:66"},"returnParameters":{"id":55571,"nodeType":"ParameterList","parameters":[],"src":"9440:0:66"},"scope":55747,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":55681,"nodeType":"FunctionDefinition","src":"10457:340:66","nodes":[],"body":{"id":55680,"nodeType":"Block","src":"10540:257:66","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":55652,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55647,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55639,"src":"10558:5:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":55650,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10575:1:66","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":55649,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10567:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55648,"name":"address","nodeType":"ElementaryTypeName","src":"10567:7:66","typeDescriptions":{}}},"id":55651,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10567:10:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10558:19:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373","id":55653,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10579:38:66","typeDescriptions":{"typeIdentifier":"t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208","typeString":"literal_string \"ERC20: approve from the zero address\""},"value":"ERC20: approve from the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208","typeString":"literal_string \"ERC20: approve from the zero address\""}],"id":55646,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"10550:7:66","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":55654,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10550:68:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55655,"nodeType":"ExpressionStatement","src":"10550:68:66"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":55662,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55657,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55641,"src":"10636:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":55660,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10655:1:66","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":55659,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"10647:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55658,"name":"address","nodeType":"ElementaryTypeName","src":"10647:7:66","typeDescriptions":{}}},"id":55661,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10647:10:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10636:21:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a20617070726f766520746f20746865207a65726f2061646472657373","id":55663,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"10659:36:66","typeDescriptions":{"typeIdentifier":"t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029","typeString":"literal_string \"ERC20: approve to the zero address\""},"value":"ERC20: approve to the zero address"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029","typeString":"literal_string \"ERC20: approve to the zero address\""}],"id":55656,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"10628:7:66","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":55664,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10628:68:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55665,"nodeType":"ExpressionStatement","src":"10628:68:66"},{"expression":{"id":55672,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":55666,"name":"_allowances","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55182,"src":"10707:11:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":55669,"indexExpression":{"id":55667,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55639,"src":"10719:5:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10707:18:66","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":55670,"indexExpression":{"id":55668,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55641,"src":"10726:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"10707:27:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":55671,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55643,"src":"10737:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"10707:36:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":55673,"nodeType":"ExpressionStatement","src":"10707:36:66"},{"eventCall":{"arguments":[{"id":55675,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55639,"src":"10767:5:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55676,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55641,"src":"10774:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55677,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55643,"src":"10783:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55674,"name":"Approval","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55768,"src":"10758:8:66","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55678,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10758:32:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55679,"nodeType":"EmitStatement","src":"10753:37:66"}]},"documentation":{"id":55637,"nodeType":"StructuredDocumentation","src":"10040:412:66","text":" @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens.\n This internal function is equivalent to `approve`, and can be used to\n e.g. set automatic allowances for certain subsystems, etc.\n Emits an {Approval} event.\n Requirements:\n - `owner` cannot be the zero address.\n - `spender` cannot be the zero address."},"implemented":true,"kind":"function","modifiers":[],"name":"_approve","nameLocation":"10466:8:66","parameters":{"id":55644,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55639,"mutability":"mutable","name":"owner","nameLocation":"10483:5:66","nodeType":"VariableDeclaration","scope":55681,"src":"10475:13:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55638,"name":"address","nodeType":"ElementaryTypeName","src":"10475:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55641,"mutability":"mutable","name":"spender","nameLocation":"10498:7:66","nodeType":"VariableDeclaration","scope":55681,"src":"10490:15:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55640,"name":"address","nodeType":"ElementaryTypeName","src":"10490:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55643,"mutability":"mutable","name":"amount","nameLocation":"10515:6:66","nodeType":"VariableDeclaration","scope":55681,"src":"10507:14:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55642,"name":"uint256","nodeType":"ElementaryTypeName","src":"10507:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"10474:48:66"},"returnParameters":{"id":55645,"nodeType":"ParameterList","parameters":[],"src":"10540:0:66"},"scope":55747,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":55724,"nodeType":"FunctionDefinition","src":"11078:411:66","nodes":[],"body":{"id":55723,"nodeType":"Block","src":"11168:321:66","nodes":[],"statements":[{"assignments":[55692],"declarations":[{"constant":false,"id":55692,"mutability":"mutable","name":"currentAllowance","nameLocation":"11186:16:66","nodeType":"VariableDeclaration","scope":55723,"src":"11178:24:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55691,"name":"uint256","nodeType":"ElementaryTypeName","src":"11178:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":55697,"initialValue":{"arguments":[{"id":55694,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55684,"src":"11215:5:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55695,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55686,"src":"11222:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":55693,"name":"allowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55302,"src":"11205:9:66","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view returns (uint256)"}},"id":55696,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11205:25:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"11178:52:66"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":55704,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55698,"name":"currentAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55692,"src":"11244:16:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"arguments":[{"id":55701,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"11269:7:66","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":55700,"name":"uint256","nodeType":"ElementaryTypeName","src":"11269:7:66","typeDescriptions":{}}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"}],"id":55699,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"11264:4:66","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":55702,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11264:13:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_uint256","typeString":"type(uint256)"}},"id":55703,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"11278:3:66","memberName":"max","nodeType":"MemberAccess","src":"11264:17:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11244:37:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":55722,"nodeType":"IfStatement","src":"11240:243:66","trueBody":{"id":55721,"nodeType":"Block","src":"11283:200:66","statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":55708,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55706,"name":"currentAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55692,"src":"11305:16:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":55707,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55688,"src":"11325:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11305:26:66","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"45524332303a20696e73756666696369656e7420616c6c6f77616e6365","id":55709,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"11333:31:66","typeDescriptions":{"typeIdentifier":"t_stringliteral_3b6607e091cba9325f958656d2b5e0622ab7dc0eac71a26ac788cb25bc19f4fe","typeString":"literal_string \"ERC20: insufficient allowance\""},"value":"ERC20: insufficient allowance"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_3b6607e091cba9325f958656d2b5e0622ab7dc0eac71a26ac788cb25bc19f4fe","typeString":"literal_string \"ERC20: insufficient allowance\""}],"id":55705,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"11297:7:66","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":55710,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11297:68:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55711,"nodeType":"ExpressionStatement","src":"11297:68:66"},{"id":55720,"nodeType":"UncheckedBlock","src":"11379:94:66","statements":[{"expression":{"arguments":[{"id":55713,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55684,"src":"11416:5:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55714,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55686,"src":"11423:7:66","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":55717,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55715,"name":"currentAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55692,"src":"11432:16:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":55716,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55688,"src":"11451:6:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11432:25:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":55712,"name":"_approve","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55681,"src":"11407:8:66","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":55718,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11407:51:66","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55719,"nodeType":"ExpressionStatement","src":"11407:51:66"}]}]}}]},"documentation":{"id":55682,"nodeType":"StructuredDocumentation","src":"10803:270:66","text":" @dev Updates `owner` s allowance for `spender` based on spent `amount`.\n Does not update the allowance amount in case of infinite allowance.\n Revert if not enough allowance is available.\n Might emit an {Approval} event."},"implemented":true,"kind":"function","modifiers":[],"name":"_spendAllowance","nameLocation":"11087:15:66","parameters":{"id":55689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55684,"mutability":"mutable","name":"owner","nameLocation":"11111:5:66","nodeType":"VariableDeclaration","scope":55724,"src":"11103:13:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55683,"name":"address","nodeType":"ElementaryTypeName","src":"11103:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55686,"mutability":"mutable","name":"spender","nameLocation":"11126:7:66","nodeType":"VariableDeclaration","scope":55724,"src":"11118:15:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55685,"name":"address","nodeType":"ElementaryTypeName","src":"11118:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55688,"mutability":"mutable","name":"amount","nameLocation":"11143:6:66","nodeType":"VariableDeclaration","scope":55724,"src":"11135:14:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55687,"name":"uint256","nodeType":"ElementaryTypeName","src":"11135:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"11102:48:66"},"returnParameters":{"id":55690,"nodeType":"ParameterList","parameters":[],"src":"11168:0:66"},"scope":55747,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":55735,"nodeType":"FunctionDefinition","src":"12073:91:66","nodes":[],"body":{"id":55734,"nodeType":"Block","src":"12162:2:66","nodes":[],"statements":[]},"documentation":{"id":55725,"nodeType":"StructuredDocumentation","src":"11495:573:66","text":" @dev Hook that is called before any transfer of tokens. This includes\n minting and burning.\n Calling conditions:\n - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens\n will be transferred to `to`.\n - when `from` is zero, `amount` tokens will be minted for `to`.\n - when `to` is zero, `amount` of ``from``'s tokens will be burned.\n - `from` and `to` are never both zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]."},"implemented":true,"kind":"function","modifiers":[],"name":"_beforeTokenTransfer","nameLocation":"12082:20:66","parameters":{"id":55732,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55727,"mutability":"mutable","name":"from","nameLocation":"12111:4:66","nodeType":"VariableDeclaration","scope":55735,"src":"12103:12:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55726,"name":"address","nodeType":"ElementaryTypeName","src":"12103:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55729,"mutability":"mutable","name":"to","nameLocation":"12125:2:66","nodeType":"VariableDeclaration","scope":55735,"src":"12117:10:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55728,"name":"address","nodeType":"ElementaryTypeName","src":"12117:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55731,"mutability":"mutable","name":"amount","nameLocation":"12137:6:66","nodeType":"VariableDeclaration","scope":55735,"src":"12129:14:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55730,"name":"uint256","nodeType":"ElementaryTypeName","src":"12129:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"12102:42:66"},"returnParameters":{"id":55733,"nodeType":"ParameterList","parameters":[],"src":"12162:0:66"},"scope":55747,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":55746,"nodeType":"FunctionDefinition","src":"12752:90:66","nodes":[],"body":{"id":55745,"nodeType":"Block","src":"12840:2:66","nodes":[],"statements":[]},"documentation":{"id":55736,"nodeType":"StructuredDocumentation","src":"12170:577:66","text":" @dev Hook that is called after any transfer of tokens. This includes\n minting and burning.\n Calling conditions:\n - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens\n has been transferred to `to`.\n - when `from` is zero, `amount` tokens have been minted for `to`.\n - when `to` is zero, `amount` of ``from``'s tokens have been burned.\n - `from` and `to` are never both zero.\n To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]."},"implemented":true,"kind":"function","modifiers":[],"name":"_afterTokenTransfer","nameLocation":"12761:19:66","parameters":{"id":55743,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55738,"mutability":"mutable","name":"from","nameLocation":"12789:4:66","nodeType":"VariableDeclaration","scope":55746,"src":"12781:12:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55737,"name":"address","nodeType":"ElementaryTypeName","src":"12781:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55740,"mutability":"mutable","name":"to","nameLocation":"12803:2:66","nodeType":"VariableDeclaration","scope":55746,"src":"12795:10:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55739,"name":"address","nodeType":"ElementaryTypeName","src":"12795:7:66","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55742,"mutability":"mutable","name":"amount","nameLocation":"12815:6:66","nodeType":"VariableDeclaration","scope":55746,"src":"12807:14:66","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55741,"name":"uint256","nodeType":"ElementaryTypeName","src":"12807:7:66","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"12780:42:66"},"returnParameters":{"id":55744,"nodeType":"ParameterList","parameters":[],"src":"12840:0:66"},"scope":55747,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"}],"abstract":false,"baseContracts":[{"baseName":{"id":55167,"name":"Context","nameLocations":["1550:7:66"],"nodeType":"IdentifierPath","referencedDeclaration":56659,"src":"1550:7:66"},"id":55168,"nodeType":"InheritanceSpecifier","src":"1550:7:66"},{"baseName":{"id":55169,"name":"IERC20","nameLocations":["1559:6:66"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"1559:6:66"},"id":55170,"nodeType":"InheritanceSpecifier","src":"1559:6:66"},{"baseName":{"id":55171,"name":"IERC20Metadata","nameLocations":["1567:14:66"],"nodeType":"IdentifierPath","referencedDeclaration":55850,"src":"1567:14:66"},"id":55172,"nodeType":"InheritanceSpecifier","src":"1567:14:66"}],"canonicalName":"ERC20","contractDependencies":[],"contractKind":"contract","documentation":{"id":55166,"nodeType":"StructuredDocumentation","src":"230:1301:66","text":" @dev Implementation of the {IERC20} interface.\n This implementation is agnostic to the way tokens are created. This means\n that a supply mechanism has to be added in a derived contract using {_mint}.\n For a generic mechanism see {ERC20PresetMinterPauser}.\n TIP: For a detailed writeup see our guide\n https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226[How\n to implement supply mechanisms].\n The default value of {decimals} is 18. To change this, you should override\n this function so it returns a different value.\n We have followed general OpenZeppelin Contracts guidelines: functions revert\n instead returning `false` on failure. This behavior is nonetheless\n conventional and does not conflict with the expectations of ERC20\n applications.\n Additionally, an {Approval} event is emitted on calls to {transferFrom}.\n This allows applications to reconstruct the allowance for all accounts just\n by listening to said events. Other implementations of the EIP may not emit\n these events, as it isn't required by the specification.\n Finally, the non-standard {decreaseAllowance} and {increaseAllowance}\n functions have been added to mitigate the well-known issues around setting\n allowances. See {IERC20-approve}."},"fullyImplemented":true,"linearizedBaseContracts":[55747,55850,55825,56659],"name":"ERC20","nameLocation":"1541:5:66","scope":55748,"usedErrors":[]}],"license":"MIT"},"id":66} \ No newline at end of file diff --git a/pkg/contracts/out/ERC20/IERC20.sol/IERC20.json b/pkg/contracts/out/ERC20/IERC20.sol/IERC20.json index 9ebc5b55d..3d97a965f 100644 --- a/pkg/contracts/out/ERC20/IERC20.sol/IERC20.json +++ b/pkg/contracts/out/ERC20/IERC20.sol/IERC20.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"allowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"approve","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"balanceOf","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transfer","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"spender","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC20 standard as defined in the EIP.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `account`.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":\"IERC20\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"spender","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"stateMutability":"view","type":"function","name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"allowance(address,address)":{"details":"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called."},"approve(address,uint256)":{"details":"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event."},"balanceOf(address)":{"details":"Returns the amount of tokens owned by `account`."},"totalSupply()":{"details":"Returns the amount of tokens in existence."},"transfer(address,uint256)":{"details":"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event."},"transferFrom(address,address,uint256)":{"details":"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} 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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":"IERC20"},"evmVersion":"paris","libraries":{}},"sources":{"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","id":17399,"exportedSymbols":{"IERC20":[17398]},"nodeType":"SourceUnit","src":"106:2631:34","nodes":[{"id":17322,"nodeType":"PragmaDirective","src":"106:23:34","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":17398,"nodeType":"ContractDefinition","src":"202:2534:34","nodes":[{"id":17332,"nodeType":"EventDefinition","src":"388:72:34","nodes":[],"anonymous":false,"documentation":{"id":17324,"nodeType":"StructuredDocumentation","src":"225:158:34","text":" @dev Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `value` may be zero."},"eventSelector":"ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","name":"Transfer","nameLocation":"394:8:34","parameters":{"id":17331,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17326,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"419:4:34","nodeType":"VariableDeclaration","scope":17332,"src":"403:20:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17325,"name":"address","nodeType":"ElementaryTypeName","src":"403:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17328,"indexed":true,"mutability":"mutable","name":"to","nameLocation":"441:2:34","nodeType":"VariableDeclaration","scope":17332,"src":"425:18:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17327,"name":"address","nodeType":"ElementaryTypeName","src":"425:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17330,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"453:5:34","nodeType":"VariableDeclaration","scope":17332,"src":"445:13:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17329,"name":"uint256","nodeType":"ElementaryTypeName","src":"445:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"402:57:34"}},{"id":17341,"nodeType":"EventDefinition","src":"619:78:34","nodes":[],"anonymous":false,"documentation":{"id":17333,"nodeType":"StructuredDocumentation","src":"466:148:34","text":" @dev Emitted when the allowance of a `spender` for an `owner` is set by\n a call to {approve}. `value` is the new allowance."},"eventSelector":"8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925","name":"Approval","nameLocation":"625:8:34","parameters":{"id":17340,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17335,"indexed":true,"mutability":"mutable","name":"owner","nameLocation":"650:5:34","nodeType":"VariableDeclaration","scope":17341,"src":"634:21:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17334,"name":"address","nodeType":"ElementaryTypeName","src":"634:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17337,"indexed":true,"mutability":"mutable","name":"spender","nameLocation":"673:7:34","nodeType":"VariableDeclaration","scope":17341,"src":"657:23:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17336,"name":"address","nodeType":"ElementaryTypeName","src":"657:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17339,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"690:5:34","nodeType":"VariableDeclaration","scope":17341,"src":"682:13:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17338,"name":"uint256","nodeType":"ElementaryTypeName","src":"682:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"633:63:34"}},{"id":17347,"nodeType":"FunctionDefinition","src":"774:55:34","nodes":[],"documentation":{"id":17342,"nodeType":"StructuredDocumentation","src":"703:66:34","text":" @dev Returns the amount of tokens in existence."},"functionSelector":"18160ddd","implemented":false,"kind":"function","modifiers":[],"name":"totalSupply","nameLocation":"783:11:34","parameters":{"id":17343,"nodeType":"ParameterList","parameters":[],"src":"794:2:34"},"returnParameters":{"id":17346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17345,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17347,"src":"820:7:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17344,"name":"uint256","nodeType":"ElementaryTypeName","src":"820:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"819:9:34"},"scope":17398,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":17355,"nodeType":"FunctionDefinition","src":"912:68:34","nodes":[],"documentation":{"id":17348,"nodeType":"StructuredDocumentation","src":"835:72:34","text":" @dev Returns the amount of tokens owned by `account`."},"functionSelector":"70a08231","implemented":false,"kind":"function","modifiers":[],"name":"balanceOf","nameLocation":"921:9:34","parameters":{"id":17351,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17350,"mutability":"mutable","name":"account","nameLocation":"939:7:34","nodeType":"VariableDeclaration","scope":17355,"src":"931:15:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17349,"name":"address","nodeType":"ElementaryTypeName","src":"931:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"930:17:34"},"returnParameters":{"id":17354,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17353,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17355,"src":"971:7:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17352,"name":"uint256","nodeType":"ElementaryTypeName","src":"971:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"970:9:34"},"scope":17398,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":17365,"nodeType":"FunctionDefinition","src":"1193:70:34","nodes":[],"documentation":{"id":17356,"nodeType":"StructuredDocumentation","src":"986:202:34","text":" @dev Moves `amount` tokens from the caller's account to `to`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event."},"functionSelector":"a9059cbb","implemented":false,"kind":"function","modifiers":[],"name":"transfer","nameLocation":"1202:8:34","parameters":{"id":17361,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17358,"mutability":"mutable","name":"to","nameLocation":"1219:2:34","nodeType":"VariableDeclaration","scope":17365,"src":"1211:10:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17357,"name":"address","nodeType":"ElementaryTypeName","src":"1211:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17360,"mutability":"mutable","name":"amount","nameLocation":"1231:6:34","nodeType":"VariableDeclaration","scope":17365,"src":"1223:14:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17359,"name":"uint256","nodeType":"ElementaryTypeName","src":"1223:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1210:28:34"},"returnParameters":{"id":17364,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17363,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17365,"src":"1257:4:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":17362,"name":"bool","nodeType":"ElementaryTypeName","src":"1257:4:34","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1256:6:34"},"scope":17398,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":17375,"nodeType":"FunctionDefinition","src":"1538:83:34","nodes":[],"documentation":{"id":17366,"nodeType":"StructuredDocumentation","src":"1269:264:34","text":" @dev Returns the remaining number of tokens that `spender` will be\n allowed to spend on behalf of `owner` through {transferFrom}. This is\n zero by default.\n This value changes when {approve} or {transferFrom} are called."},"functionSelector":"dd62ed3e","implemented":false,"kind":"function","modifiers":[],"name":"allowance","nameLocation":"1547:9:34","parameters":{"id":17371,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17368,"mutability":"mutable","name":"owner","nameLocation":"1565:5:34","nodeType":"VariableDeclaration","scope":17375,"src":"1557:13:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17367,"name":"address","nodeType":"ElementaryTypeName","src":"1557:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17370,"mutability":"mutable","name":"spender","nameLocation":"1580:7:34","nodeType":"VariableDeclaration","scope":17375,"src":"1572:15:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17369,"name":"address","nodeType":"ElementaryTypeName","src":"1572:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1556:32:34"},"returnParameters":{"id":17374,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17373,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17375,"src":"1612:7:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17372,"name":"uint256","nodeType":"ElementaryTypeName","src":"1612:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1611:9:34"},"scope":17398,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":17385,"nodeType":"FunctionDefinition","src":"2274:74:34","nodes":[],"documentation":{"id":17376,"nodeType":"StructuredDocumentation","src":"1627:642:34","text":" @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n Returns a boolean value indicating whether the operation succeeded.\n IMPORTANT: Beware that changing an allowance with this method brings the risk\n that someone may use both the old and the new allowance by unfortunate\n transaction ordering. One possible solution to mitigate this race\n condition is to first reduce the spender's allowance to 0 and set the\n desired value afterwards:\n https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n Emits an {Approval} event."},"functionSelector":"095ea7b3","implemented":false,"kind":"function","modifiers":[],"name":"approve","nameLocation":"2283:7:34","parameters":{"id":17381,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17378,"mutability":"mutable","name":"spender","nameLocation":"2299:7:34","nodeType":"VariableDeclaration","scope":17385,"src":"2291:15:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17377,"name":"address","nodeType":"ElementaryTypeName","src":"2291:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17380,"mutability":"mutable","name":"amount","nameLocation":"2316:6:34","nodeType":"VariableDeclaration","scope":17385,"src":"2308:14:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17379,"name":"uint256","nodeType":"ElementaryTypeName","src":"2308:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2290:33:34"},"returnParameters":{"id":17384,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17383,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17385,"src":"2342:4:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":17382,"name":"bool","nodeType":"ElementaryTypeName","src":"2342:4:34","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2341:6:34"},"scope":17398,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":17397,"nodeType":"FunctionDefinition","src":"2646:88:34","nodes":[],"documentation":{"id":17386,"nodeType":"StructuredDocumentation","src":"2354:287:34","text":" @dev Moves `amount` tokens from `from` to `to` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event."},"functionSelector":"23b872dd","implemented":false,"kind":"function","modifiers":[],"name":"transferFrom","nameLocation":"2655:12:34","parameters":{"id":17393,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17388,"mutability":"mutable","name":"from","nameLocation":"2676:4:34","nodeType":"VariableDeclaration","scope":17397,"src":"2668:12:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17387,"name":"address","nodeType":"ElementaryTypeName","src":"2668:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17390,"mutability":"mutable","name":"to","nameLocation":"2690:2:34","nodeType":"VariableDeclaration","scope":17397,"src":"2682:10:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17389,"name":"address","nodeType":"ElementaryTypeName","src":"2682:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17392,"mutability":"mutable","name":"amount","nameLocation":"2702:6:34","nodeType":"VariableDeclaration","scope":17397,"src":"2694:14:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17391,"name":"uint256","nodeType":"ElementaryTypeName","src":"2694:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2667:42:34"},"returnParameters":{"id":17396,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17395,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17397,"src":"2728:4:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":17394,"name":"bool","nodeType":"ElementaryTypeName","src":"2728:4:34","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2727:6:34"},"scope":17398,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IERC20","contractDependencies":[],"contractKind":"interface","documentation":{"id":17323,"nodeType":"StructuredDocumentation","src":"131:70:34","text":" @dev Interface of the ERC20 standard as defined in the EIP."},"fullyImplemented":false,"linearizedBaseContracts":[17398],"name":"IERC20","nameLocation":"212:6:34","scope":17399,"usedErrors":[]}],"license":"MIT"},"id":34} \ No newline at end of file +{"abi":[{"type":"function","name":"allowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"approve","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"balanceOf","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transfer","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"spender","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC20 standard as defined in the EIP.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `account`.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":\"IERC20\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"spender","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"stateMutability":"view","type":"function","name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"allowance(address,address)":{"details":"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called."},"approve(address,uint256)":{"details":"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event."},"balanceOf(address)":{"details":"Returns the amount of tokens owned by `account`."},"totalSupply()":{"details":"Returns the amount of tokens in existence."},"transfer(address,uint256)":{"details":"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event."},"transferFrom(address,address,uint256)":{"details":"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} 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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":"IERC20"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","id":55826,"exportedSymbols":{"IERC20":[55825]},"nodeType":"SourceUnit","src":"106:2631:67","nodes":[{"id":55749,"nodeType":"PragmaDirective","src":"106:23:67","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":55825,"nodeType":"ContractDefinition","src":"202:2534:67","nodes":[{"id":55759,"nodeType":"EventDefinition","src":"388:72:67","nodes":[],"anonymous":false,"documentation":{"id":55751,"nodeType":"StructuredDocumentation","src":"225:158:67","text":" @dev Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `value` may be zero."},"eventSelector":"ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","name":"Transfer","nameLocation":"394:8:67","parameters":{"id":55758,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55753,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"419:4:67","nodeType":"VariableDeclaration","scope":55759,"src":"403:20:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55752,"name":"address","nodeType":"ElementaryTypeName","src":"403:7:67","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55755,"indexed":true,"mutability":"mutable","name":"to","nameLocation":"441:2:67","nodeType":"VariableDeclaration","scope":55759,"src":"425:18:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55754,"name":"address","nodeType":"ElementaryTypeName","src":"425:7:67","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55757,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"453:5:67","nodeType":"VariableDeclaration","scope":55759,"src":"445:13:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55756,"name":"uint256","nodeType":"ElementaryTypeName","src":"445:7:67","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"402:57:67"}},{"id":55768,"nodeType":"EventDefinition","src":"619:78:67","nodes":[],"anonymous":false,"documentation":{"id":55760,"nodeType":"StructuredDocumentation","src":"466:148:67","text":" @dev Emitted when the allowance of a `spender` for an `owner` is set by\n a call to {approve}. `value` is the new allowance."},"eventSelector":"8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925","name":"Approval","nameLocation":"625:8:67","parameters":{"id":55767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55762,"indexed":true,"mutability":"mutable","name":"owner","nameLocation":"650:5:67","nodeType":"VariableDeclaration","scope":55768,"src":"634:21:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55761,"name":"address","nodeType":"ElementaryTypeName","src":"634:7:67","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55764,"indexed":true,"mutability":"mutable","name":"spender","nameLocation":"673:7:67","nodeType":"VariableDeclaration","scope":55768,"src":"657:23:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55763,"name":"address","nodeType":"ElementaryTypeName","src":"657:7:67","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55766,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"690:5:67","nodeType":"VariableDeclaration","scope":55768,"src":"682:13:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55765,"name":"uint256","nodeType":"ElementaryTypeName","src":"682:7:67","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"633:63:67"}},{"id":55774,"nodeType":"FunctionDefinition","src":"774:55:67","nodes":[],"documentation":{"id":55769,"nodeType":"StructuredDocumentation","src":"703:66:67","text":" @dev Returns the amount of tokens in existence."},"functionSelector":"18160ddd","implemented":false,"kind":"function","modifiers":[],"name":"totalSupply","nameLocation":"783:11:67","parameters":{"id":55770,"nodeType":"ParameterList","parameters":[],"src":"794:2:67"},"returnParameters":{"id":55773,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55772,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55774,"src":"820:7:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55771,"name":"uint256","nodeType":"ElementaryTypeName","src":"820:7:67","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"819:9:67"},"scope":55825,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":55782,"nodeType":"FunctionDefinition","src":"912:68:67","nodes":[],"documentation":{"id":55775,"nodeType":"StructuredDocumentation","src":"835:72:67","text":" @dev Returns the amount of tokens owned by `account`."},"functionSelector":"70a08231","implemented":false,"kind":"function","modifiers":[],"name":"balanceOf","nameLocation":"921:9:67","parameters":{"id":55778,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55777,"mutability":"mutable","name":"account","nameLocation":"939:7:67","nodeType":"VariableDeclaration","scope":55782,"src":"931:15:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55776,"name":"address","nodeType":"ElementaryTypeName","src":"931:7:67","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"930:17:67"},"returnParameters":{"id":55781,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55780,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55782,"src":"971:7:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55779,"name":"uint256","nodeType":"ElementaryTypeName","src":"971:7:67","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"970:9:67"},"scope":55825,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":55792,"nodeType":"FunctionDefinition","src":"1193:70:67","nodes":[],"documentation":{"id":55783,"nodeType":"StructuredDocumentation","src":"986:202:67","text":" @dev Moves `amount` tokens from the caller's account to `to`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event."},"functionSelector":"a9059cbb","implemented":false,"kind":"function","modifiers":[],"name":"transfer","nameLocation":"1202:8:67","parameters":{"id":55788,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55785,"mutability":"mutable","name":"to","nameLocation":"1219:2:67","nodeType":"VariableDeclaration","scope":55792,"src":"1211:10:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55784,"name":"address","nodeType":"ElementaryTypeName","src":"1211:7:67","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55787,"mutability":"mutable","name":"amount","nameLocation":"1231:6:67","nodeType":"VariableDeclaration","scope":55792,"src":"1223:14:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55786,"name":"uint256","nodeType":"ElementaryTypeName","src":"1223:7:67","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1210:28:67"},"returnParameters":{"id":55791,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55790,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55792,"src":"1257:4:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":55789,"name":"bool","nodeType":"ElementaryTypeName","src":"1257:4:67","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1256:6:67"},"scope":55825,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":55802,"nodeType":"FunctionDefinition","src":"1538:83:67","nodes":[],"documentation":{"id":55793,"nodeType":"StructuredDocumentation","src":"1269:264:67","text":" @dev Returns the remaining number of tokens that `spender` will be\n allowed to spend on behalf of `owner` through {transferFrom}. This is\n zero by default.\n This value changes when {approve} or {transferFrom} are called."},"functionSelector":"dd62ed3e","implemented":false,"kind":"function","modifiers":[],"name":"allowance","nameLocation":"1547:9:67","parameters":{"id":55798,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55795,"mutability":"mutable","name":"owner","nameLocation":"1565:5:67","nodeType":"VariableDeclaration","scope":55802,"src":"1557:13:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55794,"name":"address","nodeType":"ElementaryTypeName","src":"1557:7:67","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55797,"mutability":"mutable","name":"spender","nameLocation":"1580:7:67","nodeType":"VariableDeclaration","scope":55802,"src":"1572:15:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55796,"name":"address","nodeType":"ElementaryTypeName","src":"1572:7:67","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1556:32:67"},"returnParameters":{"id":55801,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55800,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55802,"src":"1612:7:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55799,"name":"uint256","nodeType":"ElementaryTypeName","src":"1612:7:67","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1611:9:67"},"scope":55825,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":55812,"nodeType":"FunctionDefinition","src":"2274:74:67","nodes":[],"documentation":{"id":55803,"nodeType":"StructuredDocumentation","src":"1627:642:67","text":" @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n Returns a boolean value indicating whether the operation succeeded.\n IMPORTANT: Beware that changing an allowance with this method brings the risk\n that someone may use both the old and the new allowance by unfortunate\n transaction ordering. One possible solution to mitigate this race\n condition is to first reduce the spender's allowance to 0 and set the\n desired value afterwards:\n https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n Emits an {Approval} event."},"functionSelector":"095ea7b3","implemented":false,"kind":"function","modifiers":[],"name":"approve","nameLocation":"2283:7:67","parameters":{"id":55808,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55805,"mutability":"mutable","name":"spender","nameLocation":"2299:7:67","nodeType":"VariableDeclaration","scope":55812,"src":"2291:15:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55804,"name":"address","nodeType":"ElementaryTypeName","src":"2291:7:67","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55807,"mutability":"mutable","name":"amount","nameLocation":"2316:6:67","nodeType":"VariableDeclaration","scope":55812,"src":"2308:14:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55806,"name":"uint256","nodeType":"ElementaryTypeName","src":"2308:7:67","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2290:33:67"},"returnParameters":{"id":55811,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55810,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55812,"src":"2342:4:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":55809,"name":"bool","nodeType":"ElementaryTypeName","src":"2342:4:67","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2341:6:67"},"scope":55825,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":55824,"nodeType":"FunctionDefinition","src":"2646:88:67","nodes":[],"documentation":{"id":55813,"nodeType":"StructuredDocumentation","src":"2354:287:67","text":" @dev Moves `amount` tokens from `from` to `to` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event."},"functionSelector":"23b872dd","implemented":false,"kind":"function","modifiers":[],"name":"transferFrom","nameLocation":"2655:12:67","parameters":{"id":55820,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55815,"mutability":"mutable","name":"from","nameLocation":"2676:4:67","nodeType":"VariableDeclaration","scope":55824,"src":"2668:12:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55814,"name":"address","nodeType":"ElementaryTypeName","src":"2668:7:67","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55817,"mutability":"mutable","name":"to","nameLocation":"2690:2:67","nodeType":"VariableDeclaration","scope":55824,"src":"2682:10:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55816,"name":"address","nodeType":"ElementaryTypeName","src":"2682:7:67","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55819,"mutability":"mutable","name":"amount","nameLocation":"2702:6:67","nodeType":"VariableDeclaration","scope":55824,"src":"2694:14:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55818,"name":"uint256","nodeType":"ElementaryTypeName","src":"2694:7:67","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2667:42:67"},"returnParameters":{"id":55823,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55822,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55824,"src":"2728:4:67","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":55821,"name":"bool","nodeType":"ElementaryTypeName","src":"2728:4:67","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2727:6:67"},"scope":55825,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IERC20","contractDependencies":[],"contractKind":"interface","documentation":{"id":55750,"nodeType":"StructuredDocumentation","src":"131:70:67","text":" @dev Interface of the ERC20 standard as defined in the EIP."},"fullyImplemented":false,"linearizedBaseContracts":[55825],"name":"IERC20","nameLocation":"212:6:67","scope":55826,"usedErrors":[]}],"license":"MIT"},"id":67} \ No newline at end of file diff --git a/pkg/contracts/out/FAllo.sol/FAllo.json b/pkg/contracts/out/FAllo.sol/FAllo.json index 7a0203b03..e2e14cd87 100644 --- a/pkg/contracts/out/FAllo.sol/FAllo.json +++ b/pkg/contracts/out/FAllo.sol/FAllo.json @@ -1 +1 @@ -{"abi":[{"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":"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":"address"}],"stateMutability":"view"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"createPoolWithCustomStrategy(bytes32,address,bytes,address,uint256,(uint256,string),address[])":"e1007d4a","getPool(uint256)":"068bcd8d","getRegistry()":"5ab1bd53"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"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\"}],\"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\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/interfaces/FAllo.sol\":\"FAllo\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"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"}],"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":"address","name":"","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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/FAllo.sol":"FAllo"},"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/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"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"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/interfaces/FAllo.sol","id":33114,"exportedSymbols":{"FAllo":[33113],"IAllo":[314],"Metadata":[802]},"nodeType":"SourceUnit","src":"42:636:65","nodes":[{"id":33074,"nodeType":"PragmaDirective","src":"42:24:65","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":33076,"nodeType":"ImportDirective","src":"68:66:65","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IAllo.sol","file":"allo-v2-contracts/core/interfaces/IAllo.sol","nameLocation":"-1:-1:-1","scope":33114,"sourceUnit":315,"symbolAliases":[{"foreign":{"id":33075,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":314,"src":"76:5:65","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":33078,"nodeType":"ImportDirective","src":"135:73:65","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":33114,"sourceUnit":507,"symbolAliases":[{"foreign":{"id":33077,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":802,"src":"143:8:65","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":33113,"nodeType":"ContractDefinition","src":"210:467:65","nodes":[{"id":33099,"nodeType":"FunctionDefinition","src":"232:301:65","nodes":[],"functionSelector":"e1007d4a","implemented":false,"kind":"function","modifiers":[],"name":"createPoolWithCustomStrategy","nameLocation":"241:28:65","parameters":{"id":33095,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33080,"mutability":"mutable","name":"_profileId","nameLocation":"287:10:65","nodeType":"VariableDeclaration","scope":33099,"src":"279:18:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":33079,"name":"bytes32","nodeType":"ElementaryTypeName","src":"279:7:65","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":33082,"mutability":"mutable","name":"_strategy","nameLocation":"315:9:65","nodeType":"VariableDeclaration","scope":33099,"src":"307:17:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33081,"name":"address","nodeType":"ElementaryTypeName","src":"307:7:65","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33084,"mutability":"mutable","name":"_initStrategyData","nameLocation":"347:17:65","nodeType":"VariableDeclaration","scope":33099,"src":"334:30:65","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":33083,"name":"bytes","nodeType":"ElementaryTypeName","src":"334:5:65","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":33086,"mutability":"mutable","name":"_token","nameLocation":"382:6:65","nodeType":"VariableDeclaration","scope":33099,"src":"374:14:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33085,"name":"address","nodeType":"ElementaryTypeName","src":"374:7:65","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33088,"mutability":"mutable","name":"_amount","nameLocation":"406:7:65","nodeType":"VariableDeclaration","scope":33099,"src":"398:15:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33087,"name":"uint256","nodeType":"ElementaryTypeName","src":"398:7:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33091,"mutability":"mutable","name":"_metadata","nameLocation":"439:9:65","nodeType":"VariableDeclaration","scope":33099,"src":"423:25:65","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":33090,"nodeType":"UserDefinedTypeName","pathNode":{"id":33089,"name":"Metadata","nameLocations":["423:8:65"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"423:8:65"},"referencedDeclaration":802,"src":"423:8:65","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":33094,"mutability":"mutable","name":"_managers","nameLocation":"475:9:65","nodeType":"VariableDeclaration","scope":33099,"src":"458:26:65","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":33092,"name":"address","nodeType":"ElementaryTypeName","src":"458:7:65","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":33093,"nodeType":"ArrayTypeName","src":"458:9:65","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"269:221:65"},"returnParameters":{"id":33098,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33097,"mutability":"mutable","name":"poolId","nameLocation":"525:6:65","nodeType":"VariableDeclaration","scope":33099,"src":"517:14:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33096,"name":"uint256","nodeType":"ElementaryTypeName","src":"517:7:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"516:16:65"},"scope":33113,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":33104,"nodeType":"FunctionDefinition","src":"539:55:65","nodes":[],"functionSelector":"5ab1bd53","implemented":false,"kind":"function","modifiers":[],"name":"getRegistry","nameLocation":"548:11:65","parameters":{"id":33100,"nodeType":"ParameterList","parameters":[],"src":"559:2:65"},"returnParameters":{"id":33103,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33102,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":33104,"src":"585:7:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33101,"name":"address","nodeType":"ElementaryTypeName","src":"585:7:65","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"584:9:65"},"scope":33113,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":33112,"nodeType":"FunctionDefinition","src":"599:76:65","nodes":[],"functionSelector":"068bcd8d","implemented":false,"kind":"function","modifiers":[],"name":"getPool","nameLocation":"608:7:65","parameters":{"id":33107,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33106,"mutability":"mutable","name":"_poolId","nameLocation":"624:7:65","nodeType":"VariableDeclaration","scope":33112,"src":"616:15:65","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33105,"name":"uint256","nodeType":"ElementaryTypeName","src":"616:7:65","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"615:17:65"},"returnParameters":{"id":33111,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33110,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":33112,"src":"656:17:65","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$23_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":33109,"nodeType":"UserDefinedTypeName","pathNode":{"id":33108,"name":"IAllo.Pool","nameLocations":["656:5:65","662:4:65"],"nodeType":"IdentifierPath","referencedDeclaration":23,"src":"656:10:65"},"referencedDeclaration":23,"src":"656:10:65","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$23_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"src":"655:19:65"},"scope":33113,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"FAllo","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[33113],"name":"FAllo","nameLocation":"220:5:65","scope":33114,"usedErrors":[]}],"license":"AGPL-3.0-only"},"id":65} \ No newline at end of file +{"abi":[{"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":"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":"address"}],"stateMutability":"view"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"createPoolWithCustomStrategy(bytes32,address,bytes,address,uint256,(uint256,string),address[])":"e1007d4a","getPool(uint256)":"068bcd8d","getRegistry()":"5ab1bd53"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"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\"}],\"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\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/interfaces/FAllo.sol\":\"FAllo\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]},\"pkg/contracts/src/interfaces/FAllo.sol\":{\"keccak256\":\"0x32f38cb4400a07a99ae68a9beb91e5649886487172fd50561da6763464efc437\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://cb4f0cee2f3fbede7be5e8e1d7ee8034086359cd07b9dab49c4a991388e5c458\",\"dweb:/ipfs/QmS26kA8cZ9shWwxcbF17Kes8L7Jgw85EQVydDmwb34mjM\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"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"}],"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":"address","name":"","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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/FAllo.sol":"FAllo"},"evmVersion":"paris","libraries":{},"viaIR":true},"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/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"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"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/interfaces/FAllo.sol","id":76809,"exportedSymbols":{"FAllo":[76808],"IAllo":[2610],"Metadata":[3098]},"nodeType":"SourceUnit","src":"42:636:124","nodes":[{"id":76769,"nodeType":"PragmaDirective","src":"42:24:124","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":76771,"nodeType":"ImportDirective","src":"68:66:124","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IAllo.sol","file":"allo-v2-contracts/core/interfaces/IAllo.sol","nameLocation":"-1:-1:-1","scope":76809,"sourceUnit":2611,"symbolAliases":[{"foreign":{"id":76770,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"76:5:124","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":76773,"nodeType":"ImportDirective","src":"135:73:124","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":76809,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":76772,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"143:8:124","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":76808,"nodeType":"ContractDefinition","src":"210:467:124","nodes":[{"id":76794,"nodeType":"FunctionDefinition","src":"232:301:124","nodes":[],"functionSelector":"e1007d4a","implemented":false,"kind":"function","modifiers":[],"name":"createPoolWithCustomStrategy","nameLocation":"241:28:124","parameters":{"id":76790,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76775,"mutability":"mutable","name":"_profileId","nameLocation":"287:10:124","nodeType":"VariableDeclaration","scope":76794,"src":"279:18:124","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":76774,"name":"bytes32","nodeType":"ElementaryTypeName","src":"279:7:124","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":76777,"mutability":"mutable","name":"_strategy","nameLocation":"315:9:124","nodeType":"VariableDeclaration","scope":76794,"src":"307:17:124","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76776,"name":"address","nodeType":"ElementaryTypeName","src":"307:7:124","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":76779,"mutability":"mutable","name":"_initStrategyData","nameLocation":"347:17:124","nodeType":"VariableDeclaration","scope":76794,"src":"334:30:124","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":76778,"name":"bytes","nodeType":"ElementaryTypeName","src":"334:5:124","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":76781,"mutability":"mutable","name":"_token","nameLocation":"382:6:124","nodeType":"VariableDeclaration","scope":76794,"src":"374:14:124","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76780,"name":"address","nodeType":"ElementaryTypeName","src":"374:7:124","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":76783,"mutability":"mutable","name":"_amount","nameLocation":"406:7:124","nodeType":"VariableDeclaration","scope":76794,"src":"398:15:124","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76782,"name":"uint256","nodeType":"ElementaryTypeName","src":"398:7:124","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76786,"mutability":"mutable","name":"_metadata","nameLocation":"439:9:124","nodeType":"VariableDeclaration","scope":76794,"src":"423:25:124","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":76785,"nodeType":"UserDefinedTypeName","pathNode":{"id":76784,"name":"Metadata","nameLocations":["423:8:124"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"423:8:124"},"referencedDeclaration":3098,"src":"423:8:124","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":76789,"mutability":"mutable","name":"_managers","nameLocation":"475:9:124","nodeType":"VariableDeclaration","scope":76794,"src":"458:26:124","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":76787,"name":"address","nodeType":"ElementaryTypeName","src":"458:7:124","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76788,"nodeType":"ArrayTypeName","src":"458:9:124","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"269:221:124"},"returnParameters":{"id":76793,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76792,"mutability":"mutable","name":"poolId","nameLocation":"525:6:124","nodeType":"VariableDeclaration","scope":76794,"src":"517:14:124","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76791,"name":"uint256","nodeType":"ElementaryTypeName","src":"517:7:124","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"516:16:124"},"scope":76808,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":76799,"nodeType":"FunctionDefinition","src":"539:55:124","nodes":[],"functionSelector":"5ab1bd53","implemented":false,"kind":"function","modifiers":[],"name":"getRegistry","nameLocation":"548:11:124","parameters":{"id":76795,"nodeType":"ParameterList","parameters":[],"src":"559:2:124"},"returnParameters":{"id":76798,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76797,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":76799,"src":"585:7:124","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76796,"name":"address","nodeType":"ElementaryTypeName","src":"585:7:124","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"584:9:124"},"scope":76808,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":76807,"nodeType":"FunctionDefinition","src":"599:76:124","nodes":[],"functionSelector":"068bcd8d","implemented":false,"kind":"function","modifiers":[],"name":"getPool","nameLocation":"608:7:124","parameters":{"id":76802,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76801,"mutability":"mutable","name":"_poolId","nameLocation":"624:7:124","nodeType":"VariableDeclaration","scope":76807,"src":"616:15:124","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76800,"name":"uint256","nodeType":"ElementaryTypeName","src":"616:7:124","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"615:17:124"},"returnParameters":{"id":76806,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76805,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":76807,"src":"656:17:124","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":76804,"nodeType":"UserDefinedTypeName","pathNode":{"id":76803,"name":"IAllo.Pool","nameLocations":["656:5:124","662:4:124"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"656:10:124"},"referencedDeclaration":2319,"src":"656:10:124","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"src":"655:19:124"},"scope":76808,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"FAllo","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[76808],"name":"FAllo","nameLocation":"220:5:124","scope":76809,"usedErrors":[]}],"license":"AGPL-3.0-only"},"id":124} \ No newline at end of file diff --git a/pkg/contracts/out/GV2ERC20.sol/GV2ERC20.json b/pkg/contracts/out/GV2ERC20.sol/GV2ERC20.json index 8cbfcb8a6..ec0562d01 100644 --- a/pkg/contracts/out/GV2ERC20.sol/GV2ERC20.json +++ b/pkg/contracts/out/GV2ERC20.sol/GV2ERC20.json @@ -1 +1 @@ -{"abi":[{"type":"constructor","inputs":[{"name":"name_","type":"string","internalType":"string"},{"name":"symbol_","type":"string","internalType":"string"},{"name":"decimals_","type":"uint8","internalType":"uint8"}],"stateMutability":"nonpayable"},{"type":"function","name":"DOMAIN_SEPARATOR","inputs":[],"outputs":[{"name":"result","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"allowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"}],"outputs":[{"name":"result","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"approve","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"balanceOf","inputs":[{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"result","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"burn","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decimals","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"decreaseAllowance","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"difference","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"directSpendAllowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"directTransfer","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"increaseAllowance","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"difference","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"mint","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"nonces","inputs":[{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"result","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"permit","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"result","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transfer","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"spender","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"AllowanceOverflow","inputs":[]},{"type":"error","name":"AllowanceUnderflow","inputs":[]},{"type":"error","name":"InsufficientAllowance","inputs":[]},{"type":"error","name":"InsufficientBalance","inputs":[]},{"type":"error","name":"InvalidPermit","inputs":[]},{"type":"error","name":"PermitExpired","inputs":[]},{"type":"error","name":"TotalSupplyOverflow","inputs":[]}],"bytecode":{"object":"0x6080604052346200033a5762000f9d803803806200001d816200033f565b9283398101906060818303126200033a5780516001600160401b03908181116200033a57836200004f91840162000365565b90602093848401518281116200033a576040916200006f91860162000365565b9301519260ff84168094036200033a57825190828211620003245760008054926001958685811c9516801562000319575b8986101462000305578190601f95868111620002b2575b5089908683116001146200024e57849262000242575b5050600019600383901b1c191690861b1781555b81519384116200022e5784548581811c9116801562000223575b888210146200020f57838111620001c7575b5086928411600114620001615783949596509262000155575b5050600019600383901b1c191690821b1790555b60ff196002541617600255604051610bc59081620003d88239f35b01519050388062000126565b9190601f1984169685845280842093905b888210620001af575050838596971062000195575b505050811b0190556200013a565b015160001960f88460031b161c1916905538808062000187565b80878596829496860151815501950193019062000172565b8582528782208480870160051c8201928a881062000205575b0160051c019086905b828110620001f95750506200010d565b838155018690620001e9565b92508192620001e0565b634e487b7160e01b82526022600452602482fd5b90607f1690620000fb565b634e487b7160e01b81526041600452602490fd5b015190503880620000cd565b8480528a85208994509190601f198416865b8d8282106200029b575050841162000281575b505050811b018155620000e1565b015160001960f88460031b161c1916905538808062000273565b8385015186558c9790950194938401930162000260565b9091508380528984208680850160051c8201928c8610620002fb575b918a91869594930160051c01915b828110620002ec575050620000b7565b8681558594508a9101620002dc565b92508192620002ce565b634e487b7160e01b83526022600452602483fd5b94607f1694620000a0565b634e487b7160e01b600052604160045260246000fd5b600080fd5b6040519190601f01601f191682016001600160401b038111838210176200032457604052565b919080601f840112156200033a5782516001600160401b03811162000324576020906200039b601f8201601f191683016200033f565b928184528282870101116200033a5760005b818110620003c357508260009394955001015290565b8581018301518482018401528201620003ad56fe60806040908082526004908136101561001757600080fd5b600092833560e01c91826306fdde031461089a57508163095ea7b31461084257816318160ddd1461081b57816323b872dd14610761578163313ce5671461073f5781633644e5151461071b57816339509351146106a457816340c10f191461062357816370a08231146105ef5781637ecebe00146105bb57816395d89b41146104b85781639dc29fac14610438578163a457c2d7146103c0578163a9059cbb1461033c578163d30ed3b3146102de578163d505accf146101af578163dd62ed3e14610171575063f83d1791146100ec57600080fd5b3461016d576100fa366109cd565b919290925a60a01b17925a60a01b17906387a211a28460601b17600c526020600c20908154908185116101625750839003905583526020600c20818154019055602052600c5160601c9060018060a01b0316600080516020610b50833981519152602080a380f35b63f4d678b88752601cfd5b5080fd5b83903461016d578060031936011261016d5760209161018e61099c565b906101976109b7565b8452637f5e9f20600c52526034600c20549051908152f35b8391503461016d5760e036600319011261016d576101cb61099c565b906101d46109b7565b90604435606435906084359260ff841684036102da576101f2610a02565b938151968442116102ce5760c09060018060a01b038091169716976338377508600c52878a5260209687600c20968754976001890190557f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9835289898401528a868401526060830197878952608084015260a08301526119018b5287522082526042601e20885260ff16845260a435815260c435606052838060808960015afa50843d51036102c2576303faf4f960a51b861790526034602c2055600080516020610b708339815191529190a380f35b8763ddafbaef8852601cfd5b89631a15a3cc8a52601cfd5b8680fd5b50503461016d576102ee366109cd565b91905a905a60a01b17602052637f5e9f20600c5260a01b1783526034600c2091825490600019820361031e578480f35b8183116103315750039055388080808480f35b6313be252b8552601cfd5b905082346103bd57816003193601126103bd5761035761099c565b90602435915a60a01b17906387a211a2600c5233815260209485600c20908154908186116103b2575084900390555282600c208181540190558252600c5160601c33600080516020610b508339815191528480a35160018152f35b63f4d678b88452601cfd5b80fd5b905082346103bd57816003193601126103bd576103db61099c565b602435905a60a01b17602052637f5e9f20600c523382526034600c2090815481811061042c5760209550038091558152602c5160601c90600080516020610b70833981519152843392a35160018152f35b85638301ab388552601cfd5b8391503461016d573660031901126103bd5761045261099c565b602435905a60a01b17906387a211a2600c528183526020600c208054948583116104ad57508184950390556805345cdf77eb68f44c818154039055825260018060a01b0316600080516020610b50833981519152602083a380f35b63f4d678b88552601cfd5b8391503461016d578160031936011261016d5780519082600180549081811c908083169283156105b1575b602093848410811461059e57838852908115610582575060011461054a575b505050829003601f01601f19168201926001600160401b038411838510176105375750829182610533925282610953565b0390f35b634e487b7160e01b815260418552602490fd5b809293508652828620918387935b83851061056e5750505050830101858080610502565b805488860183015293019284908201610558565b60ff1916878501525050151560051b8401019050858080610502565b634e487b7160e01b895260228a52602489fd5b91607f16916104e3565b83903461016d57602036600319011261016d576020916105d961099c565b906338377508600c525281600c20549051908152f35b83903461016d57602036600319011261016d5760209161060d61099c565b906387a211a2600c525281600c20549051908152f35b9050346106a05736600319011261016d5761063c61099c565b90602435915a60a01b17906805345cdf77eb68f44c8054918483019283106106955750556387a211a2600c5282526020600c20818154019055602052600c5160601c81600080516020610b50833981519152602080a380f35b63e5cfe9578652601cfd5b8280fd5b905082346103bd57816003193601126103bd576106bf61099c565b5a60a01b17602052637f5e9f20600c523381526034600c20928354906024358201918210610710575080602094558152602c5160601c90600080516020610b70833981519152843392a35160018152f35b63f90670668352601cfd5b83903461016d578160031936011261016d57602090610738610a02565b9051908152f35b83903461016d578160031936011261016d5760209060ff600254169051908152f35b905082346103bd57610772366109cd565b9092915a60a01b17925a60a01b178360601b92602096338852600c94637f5e9f208117865260348620805460001981036107f8575b50506387a211a2178552878520908154908186116103b2575084900390555284822080548201905584525160601c906001600160a01b0316600080516020610b508339815191528480a35160018152f35b80871161080f5786900390556387a211a28a6107a7565b836313be252b8652601cfd5b83903461016d578160031936011261016d576020906805345cdf77eb68f44c549051908152f35b83903461016d578060031936011261016d5760209161085f61099c565b602435908452637f5e9f20600c52338252806034600c20558152602c5160601c90600080516020610b70833981519152843392a35160018152f35b90849250346106a057826003193601126106a057828354600181811c90808316928315610949575b602093848410811461059e57838852908115610582575060011461091157505050829003601f01601f19168201926001600160401b038411838510176105375750829182610533925282610953565b919250858052828620918387935b8385106109355750505050830101858080610502565b80548886018301529301928490820161091f565b91607f16916108c2565b6020808252825181830181905290939260005b82811061098857505060409293506000838284010152601f8019910116010190565b818101860151848201604001528501610966565b600435906001600160a01b03821682036109b257565b600080fd5b602435906001600160a01b03821682036109b257565b60609060031901126109b2576001600160a01b039060043582811681036109b2579160243590811681036109b2579060443590565b60405160009081549160019280841c848216948515610b45575b6020928383108714610b315782865283860196908115610b175750600114610adc575b505050819003601f01601f19168101916001600160401b03831182841017610ac65760a09260405281518120907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8352527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660408201524660608201523060808201522090565b634e487b7160e01b600052604160045260246000fd5b919250600080528260002091836000935b838510610b035750505050820101388080610a3f565b805487860183015293019284908201610aed565b60ff191687525050151560051b8301019050388080610a3f565b634e487b7160e01b85526022600452602485fd5b90607f1690610a1c56feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925a264697066735822122086424f59bdea91ffbbc0f44d8b36a88deb75ba06b0192d822ab00a042fe48aa364736f6c63430008130033","sourceMap":"290:2060:94:-:0;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;290:2060:94;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;;;-1:-1:-1;;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;290:2060:94;;;;;;;;;;;;;;;;543:21;290:2060;;;543:21;290:2060;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;290:2060:94;;;;;;;;;;;;;;;;-1:-1:-1;;;290:2060:94;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;-1:-1:-1;;290:2060:94;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;-1:-1:-1;;;290:2060:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;-1:-1:-1;290:2060:94;;-1:-1:-1;290:2060:94;;;;;;;;;-1:-1:-1;;290:2060:94;;;-1:-1:-1;;;;;290:2060:94;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;290:2060:94;;;;;;;;;;-1:-1:-1;;290:2060:94;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040908082526004908136101561001757600080fd5b600092833560e01c91826306fdde031461089a57508163095ea7b31461084257816318160ddd1461081b57816323b872dd14610761578163313ce5671461073f5781633644e5151461071b57816339509351146106a457816340c10f191461062357816370a08231146105ef5781637ecebe00146105bb57816395d89b41146104b85781639dc29fac14610438578163a457c2d7146103c0578163a9059cbb1461033c578163d30ed3b3146102de578163d505accf146101af578163dd62ed3e14610171575063f83d1791146100ec57600080fd5b3461016d576100fa366109cd565b919290925a60a01b17925a60a01b17906387a211a28460601b17600c526020600c20908154908185116101625750839003905583526020600c20818154019055602052600c5160601c9060018060a01b0316600080516020610b50833981519152602080a380f35b63f4d678b88752601cfd5b5080fd5b83903461016d578060031936011261016d5760209161018e61099c565b906101976109b7565b8452637f5e9f20600c52526034600c20549051908152f35b8391503461016d5760e036600319011261016d576101cb61099c565b906101d46109b7565b90604435606435906084359260ff841684036102da576101f2610a02565b938151968442116102ce5760c09060018060a01b038091169716976338377508600c52878a5260209687600c20968754976001890190557f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9835289898401528a868401526060830197878952608084015260a08301526119018b5287522082526042601e20885260ff16845260a435815260c435606052838060808960015afa50843d51036102c2576303faf4f960a51b861790526034602c2055600080516020610b708339815191529190a380f35b8763ddafbaef8852601cfd5b89631a15a3cc8a52601cfd5b8680fd5b50503461016d576102ee366109cd565b91905a905a60a01b17602052637f5e9f20600c5260a01b1783526034600c2091825490600019820361031e578480f35b8183116103315750039055388080808480f35b6313be252b8552601cfd5b905082346103bd57816003193601126103bd5761035761099c565b90602435915a60a01b17906387a211a2600c5233815260209485600c20908154908186116103b2575084900390555282600c208181540190558252600c5160601c33600080516020610b508339815191528480a35160018152f35b63f4d678b88452601cfd5b80fd5b905082346103bd57816003193601126103bd576103db61099c565b602435905a60a01b17602052637f5e9f20600c523382526034600c2090815481811061042c5760209550038091558152602c5160601c90600080516020610b70833981519152843392a35160018152f35b85638301ab388552601cfd5b8391503461016d573660031901126103bd5761045261099c565b602435905a60a01b17906387a211a2600c528183526020600c208054948583116104ad57508184950390556805345cdf77eb68f44c818154039055825260018060a01b0316600080516020610b50833981519152602083a380f35b63f4d678b88552601cfd5b8391503461016d578160031936011261016d5780519082600180549081811c908083169283156105b1575b602093848410811461059e57838852908115610582575060011461054a575b505050829003601f01601f19168201926001600160401b038411838510176105375750829182610533925282610953565b0390f35b634e487b7160e01b815260418552602490fd5b809293508652828620918387935b83851061056e5750505050830101858080610502565b805488860183015293019284908201610558565b60ff1916878501525050151560051b8401019050858080610502565b634e487b7160e01b895260228a52602489fd5b91607f16916104e3565b83903461016d57602036600319011261016d576020916105d961099c565b906338377508600c525281600c20549051908152f35b83903461016d57602036600319011261016d5760209161060d61099c565b906387a211a2600c525281600c20549051908152f35b9050346106a05736600319011261016d5761063c61099c565b90602435915a60a01b17906805345cdf77eb68f44c8054918483019283106106955750556387a211a2600c5282526020600c20818154019055602052600c5160601c81600080516020610b50833981519152602080a380f35b63e5cfe9578652601cfd5b8280fd5b905082346103bd57816003193601126103bd576106bf61099c565b5a60a01b17602052637f5e9f20600c523381526034600c20928354906024358201918210610710575080602094558152602c5160601c90600080516020610b70833981519152843392a35160018152f35b63f90670668352601cfd5b83903461016d578160031936011261016d57602090610738610a02565b9051908152f35b83903461016d578160031936011261016d5760209060ff600254169051908152f35b905082346103bd57610772366109cd565b9092915a60a01b17925a60a01b178360601b92602096338852600c94637f5e9f208117865260348620805460001981036107f8575b50506387a211a2178552878520908154908186116103b2575084900390555284822080548201905584525160601c906001600160a01b0316600080516020610b508339815191528480a35160018152f35b80871161080f5786900390556387a211a28a6107a7565b836313be252b8652601cfd5b83903461016d578160031936011261016d576020906805345cdf77eb68f44c549051908152f35b83903461016d578060031936011261016d5760209161085f61099c565b602435908452637f5e9f20600c52338252806034600c20558152602c5160601c90600080516020610b70833981519152843392a35160018152f35b90849250346106a057826003193601126106a057828354600181811c90808316928315610949575b602093848410811461059e57838852908115610582575060011461091157505050829003601f01601f19168201926001600160401b038411838510176105375750829182610533925282610953565b919250858052828620918387935b8385106109355750505050830101858080610502565b80548886018301529301928490820161091f565b91607f16916108c2565b6020808252825181830181905290939260005b82811061098857505060409293506000838284010152601f8019910116010190565b818101860151848201604001528501610966565b600435906001600160a01b03821682036109b257565b600080fd5b602435906001600160a01b03821682036109b257565b60609060031901126109b2576001600160a01b039060043582811681036109b2579160243590811681036109b2579060443590565b60405160009081549160019280841c848216948515610b45575b6020928383108714610b315782865283860196908115610b175750600114610adc575b505050819003601f01601f19168101916001600160401b03831182841017610ac65760a09260405281518120907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8352527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660408201524660608201523060808201522090565b634e487b7160e01b600052604160045260246000fd5b919250600080528260002091836000935b838510610b035750505050820101388080610a3f565b805487860183015293019284908201610aed565b60ff191687525050151560051b8301019050388080610a3f565b634e487b7160e01b85526022600452602485fd5b90607f1690610a1c56feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925a264697066735822122086424f59bdea91ffbbc0f44d8b36a88deb75ba06b0192d822ab00a042fe48aa364736f6c63430008130033","sourceMap":"290:2060:94:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11081:1934:13;290:2060:94;11081:1934:13;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2261:81;;;;;;;;;;;;;21786:1164:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11081:1934;290:2060:94;11081:1934:13;;;;21786:1164;-1:-1:-1;;;;;;;;;;;21786:1164:13;;;290:2060:94;;21786:1164:13;;;;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::i;:::-;5674:184:13;;;;;;;;;;290:2060:94;;;;;;;;;;;;;;;-1:-1:-1;;290:2060:94;;;;;;:::i;:::-;;;;:::i;:::-;;;;;;;;;;;;;;;;;14252:18:13;;:::i;:::-;14323:2708;;;;;;;;;290:2060:94;11081:1934:13;290:2060:94;11081:1934:13;;;;14323:2708;;;;;;;;;;;;290:2060:94;14323:2708:13;;;;;;;;290:2060:94;14323:2708:13;;;;;;;;;;;;;;;;;290:2060:94;14323:2708:13;;;;;;290:2060:94;14323:2708:13;;;11081:1934;14323:2708;;;;;;;;;;;;;;;;290:2060:94;14323:2708:13;;;290:2060:94;;14323:2708:13;;290:2060:94;;;14323:2708:13;;;290:2060:94;14323:2708:13;290:2060:94;14323:2708:13;;;;;;;;;-1:-1:-1;;;14323:2708:13;;;;;;;;-1:-1:-1;;;;;;;;;;;14323:2708:13;;;290:2060:94;;14323:2708:13;;;;;;;;;;;;;;290:2060:94;;;;;;;;;;;;;:::i;:::-;2261:81;;;;;;;;23520:810:13;;;;;2261:81:94;;;23520:810:13;;;;;;;;11081:1934;;;23520:810;;;;290:2060:94;;;23520:810:13;;;;;;;;;;;;;;290:2060:94;;;23520:810:13;;;;;;290:2060:94;;;;;;;;;;;;;;;;;:::i;:::-;;;;2261:81;;;;;9295:1143:13;;;;;;;290:2060:94;9295:1143:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;9295:1143:13;;;290:2060:94;;;;;9295:1143:13;;;;;;290:2060:94;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;2261:81;;;;;290:2060;8037:861:13;;;;;;;;;;;;;;;;;;290:2060:94;8037:861:13;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8037:861:13;;;;290:2060:94;;;;;8037:861:13;;;;;;;290:2060:94;;;;;;;;-1:-1:-1;;290:2060:94;;;;;;:::i;:::-;;;2261:81;;;;;20311:887:13;;;;;;;290:2060:94;20311:887:13;;;;;;;;;;;;;;;;;;;;;;;;;;290:2060:94;11081:1934:13;;;;20311:887;-1:-1:-1;;;;;;;;;;;290:2060:94;20311:887:13;;290:2060:94;;20311:887:13;;;;;;290:2060:94;;;;;;;;;;;;;;;;;;;769:7;290:2060;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;290:2060:94;;;;;-1:-1:-1;;290:2060:94;;;;-1:-1:-1;;;;;290:2060:94;;;;;;;;;;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;290:2060:94;;;;;-1:-1:-1;;290:2060:94;;;;;;;;-1:-1:-1;290:2060:94;;;;;;-1:-1:-1;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;290:2060:94;;;;;;;;:::i;:::-;13632:205:13;;;;;;;;;290:2060:94;;;;;;;;;;;;;;-1:-1:-1;;290:2060:94;;;;;;;;:::i;:::-;5240:148:13;;;;;;;;;290:2060:94;;;;;;;;;;;;;-1:-1:-1;;290:2060:94;;;;;;:::i;:::-;;;;2261:81;;;;;18729:946:13;;;;;;;;;;;;;;;;;;;;290:2060:94;18729:946:13;;;;;;;;290:2060:94;18729:946:13;;;;;;-1:-1:-1;;;;;;;;;;;290:2060:94;18729:946:13;;290:2060:94;;18729:946:13;;;;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2261:81;;;;290:2060;6847:884:13;;;;;;;;;;;;;290:2060:94;;;6847:884:13;;;;;;;;;290:2060:94;6847:884:13;;;;;;;;;-1:-1:-1;;;;;;;;;;;6847:884:13;;;;290:2060:94;;;;;6847:884:13;;;;;;290:2060:94;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;871:9;290:2060;;;;;;;;;;;;;;;;;;:::i;:::-;2261:81;;;;;;;;;;;;11081:1934:13;;;;;;;;;;;;;;;;;;;;;;;;;;;290:2060:94;11081:1934:13;;;;;;;;;;;;;;;;;;-1:-1:-1;11081:1934:13;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11081:1934:13;-1:-1:-1;;;;;;;;;;;11081:1934:13;;;290:2060:94;;;;;11081:1934:13;;;;;;;;;;;;;;;;;;;;;;290:2060:94;;;;;;;;;;;;;;;4968:68:13;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;6128:413:13;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;6128:413:13;;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;290:2060:94;;;;;-1:-1:-1;;290:2060:94;;;;-1:-1:-1;;;;;290:2060:94;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;290:2060:94;;;;;;:::o;:::-;;;;;;;;-1:-1:-1;;;;;290:2060:94;;;;;;:::o;:::-;;;;;;;;;-1:-1:-1;;;;;11081:1934:13;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;:::o;17096:1062:13:-;17222:87;;663:5:94;290:2060;;;;;;;;;;;;;;;;;17096:1062:13;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;290:2060:94;;;;;-1:-1:-1;;290:2060:94;;;;-1:-1:-1;;;;;290:2060:94;;;;;;;;17508:644:13;290:2060:94;17222:87:13;290:2060:94;;;17431:24:13;;17508:644;;;;;;17222:87;17508:644;;;;;;;;;;;;;;17096:1062;:::o;290:2060:94:-;;;;663:5;290:2060;;;;;663:5;290:2060;;;;;663:5;290:2060;;;663:5;290:2060;;;663:5;290:2060;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;290:2060:94;;;-1:-1:-1;;290:2060:94;;;;;;;;-1:-1:-1;290:2060:94;;;;;;-1:-1:-1;;;290:2060:94;;;;;;;;;;;;;;","linkReferences":{}},"methodIdentifiers":{"DOMAIN_SEPARATOR()":"3644e515","allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","burn(address,uint256)":"9dc29fac","decimals()":"313ce567","decreaseAllowance(address,uint256)":"a457c2d7","directSpendAllowance(address,address,uint256)":"d30ed3b3","directTransfer(address,address,uint256)":"f83d1791","increaseAllowance(address,uint256)":"39509351","mint(address,uint256)":"40c10f19","name()":"06fdde03","nonces(address)":"7ecebe00","permit(address,address,uint256,uint256,uint8,bytes32,bytes32)":"d505accf","symbol()":"95d89b41","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name_\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol_\",\"type\":\"string\"},{\"internalType\":\"uint8\",\"name\":\"decimals_\",\"type\":\"uint8\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"AllowanceOverflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AllowanceUnderflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InsufficientAllowance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InsufficientBalance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidPermit\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PermitExpired\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TotalSupplyOverflow\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"result\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"difference\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"directSpendAllowance\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"directTransfer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"difference\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"permit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"WARNING! This mock is strictly intended for testing purposes only. Do NOT copy anything here into production code unless you really know what you are doing.\",\"errors\":{\"AllowanceOverflow()\":[{\"details\":\"The allowance has overflowed.\"}],\"AllowanceUnderflow()\":[{\"details\":\"The allowance has underflowed.\"}],\"InsufficientAllowance()\":[{\"details\":\"Insufficient allowance.\"}],\"InsufficientBalance()\":[{\"details\":\"Insufficient balance.\"}],\"InvalidPermit()\":[{\"details\":\"The permit is invalid.\"}],\"PermitExpired()\":[{\"details\":\"The permit has expired.\"}],\"TotalSupplyOverflow()\":[{\"details\":\"The total supply has overflowed.\"}]},\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `amount` tokens is approved by `owner` to be used by `spender`.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `amount` tokens is transferred from `from` to `to`.\"}},\"kind\":\"dev\",\"methods\":{\"DOMAIN_SEPARATOR()\":{\"details\":\"Returns the EIP-2612 domains separator.\"},\"allowance(address,address)\":{\"details\":\"Returns the amount of tokens that `spender` can spend on behalf of `owner`.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Emits a {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `owner`.\"},\"decimals()\":{\"details\":\"Returns the decimals places of the token.\"},\"decreaseAllowance(address,uint256)\":{\"details\":\"Atomically decreases the allowance granted to `spender` by the caller. Emits a {Approval} event.\"},\"increaseAllowance(address,uint256)\":{\"details\":\"Atomically increases the allowance granted to `spender` by the caller. Emits a {Approval} event.\"},\"name()\":{\"details\":\"Returns the name of the token.\"},\"nonces(address)\":{\"details\":\"Returns the current nonce for `owner`. This value is used to compute the signature for EIP-2612 permit.\"},\"permit(address,address,uint256,uint256,uint8,bytes32,bytes32)\":{\"details\":\"Sets `value` as the allowance of `spender` over the tokens of `owner`, authorized by a signed approval by `owner`. Emits a {Approval} event.\"},\"symbol()\":{\"details\":\"Returns the symbol of the token.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Transfer `amount` tokens from the caller to `to`. Requirements: - `from` must at least have `amount`. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfers `amount` tokens from `from` to `to`. Note: Does not update the allowance if it is the maximum uint256 value. Requirements: - `from` must at least have `amount`. - The caller must have at least `amount` of allowance to transfer the tokens of `from`. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/script/GV2ERC20.sol\":\"GV2ERC20\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"lib/allo-v2/lib/solady/src/tokens/ERC20.sol\":{\"keccak256\":\"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea\",\"dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK\"]},\"pkg/contracts/script/GV2ERC20.sol\":{\"keccak256\":\"0x72e3d7c5f055490e976b03abf0b7773b5cefd7e305021d0ea83cba3e142118f9\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://3f19911b75ab3e0d2d41f5d9f4754f21d78b500905da3342b61bc54e502d4c97\",\"dweb:/ipfs/QmU4zPrrTWQY3eUYegHZzLjs2jyRgGtgyZp4J2ZQxj8Vp2\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint8","name":"decimals_","type":"uint8"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"AllowanceOverflow"},{"inputs":[],"type":"error","name":"AllowanceUnderflow"},{"inputs":[],"type":"error","name":"InsufficientAllowance"},{"inputs":[],"type":"error","name":"InsufficientBalance"},{"inputs":[],"type":"error","name":"InvalidPermit"},{"inputs":[],"type":"error","name":"PermitExpired"},{"inputs":[],"type":"error","name":"TotalSupplyOverflow"},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"spender","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"result","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"stateMutability":"view","type":"function","name":"allowance","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"burn"},{"inputs":[],"stateMutability":"view","type":"function","name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"difference","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"directSpendAllowance"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"directTransfer"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"difference","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"mint"},{"inputs":[],"stateMutability":"view","type":"function","name":"name","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"nonces","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"permit"},{"inputs":[],"stateMutability":"view","type":"function","name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"DOMAIN_SEPARATOR()":{"details":"Returns the EIP-2612 domains separator."},"allowance(address,address)":{"details":"Returns the amount of tokens that `spender` can spend on behalf of `owner`."},"approve(address,uint256)":{"details":"Sets `amount` as the allowance of `spender` over the caller's tokens. Emits a {Approval} event."},"balanceOf(address)":{"details":"Returns the amount of tokens owned by `owner`."},"decimals()":{"details":"Returns the decimals places of the token."},"decreaseAllowance(address,uint256)":{"details":"Atomically decreases the allowance granted to `spender` by the caller. Emits a {Approval} event."},"increaseAllowance(address,uint256)":{"details":"Atomically increases the allowance granted to `spender` by the caller. Emits a {Approval} event."},"name()":{"details":"Returns the name of the token."},"nonces(address)":{"details":"Returns the current nonce for `owner`. This value is used to compute the signature for EIP-2612 permit."},"permit(address,address,uint256,uint256,uint8,bytes32,bytes32)":{"details":"Sets `value` as the allowance of `spender` over the tokens of `owner`, authorized by a signed approval by `owner`. Emits a {Approval} event."},"symbol()":{"details":"Returns the symbol of the token."},"totalSupply()":{"details":"Returns the amount of tokens in existence."},"transfer(address,uint256)":{"details":"Transfer `amount` tokens from the caller to `to`. Requirements: - `from` must at least have `amount`. Emits a {Transfer} event."},"transferFrom(address,address,uint256)":{"details":"Transfers `amount` tokens from `from` to `to`. Note: Does not update the allowance if it is the maximum uint256 value. Requirements: - `from` must at least have `amount`. - The caller must have at least `amount` of allowance to transfer the tokens of `from`. Emits a {Transfer} 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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/script/GV2ERC20.sol":"GV2ERC20"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"lib/allo-v2/lib/solady/src/tokens/ERC20.sol":{"keccak256":"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4","urls":["bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea","dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK"],"license":"MIT"},"pkg/contracts/script/GV2ERC20.sol":{"keccak256":"0x72e3d7c5f055490e976b03abf0b7773b5cefd7e305021d0ea83cba3e142118f9","urls":["bzz-raw://3f19911b75ab3e0d2d41f5d9f4754f21d78b500905da3342b61bc54e502d4c97","dweb:/ipfs/QmU4zPrrTWQY3eUYegHZzLjs2jyRgGtgyZp4J2ZQxj8Vp2"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":64306,"contract":"pkg/contracts/script/GV2ERC20.sol:GV2ERC20","label":"_name","offset":0,"slot":"0","type":"t_string_storage"},{"astId":64308,"contract":"pkg/contracts/script/GV2ERC20.sol:GV2ERC20","label":"_symbol","offset":0,"slot":"1","type":"t_string_storage"},{"astId":64310,"contract":"pkg/contracts/script/GV2ERC20.sol:GV2ERC20","label":"_decimals","offset":0,"slot":"2","type":"t_uint8"}],"types":{"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/script/GV2ERC20.sol","id":64521,"exportedSymbols":{"ERC20":[4491],"GV2ERC20":[64520]},"nodeType":"SourceUnit","src":"42:2309:94","nodes":[{"id":64299,"nodeType":"PragmaDirective","src":"42:24:94","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":64301,"nodeType":"ImportDirective","src":"68:50:94","nodes":[],"absolutePath":"lib/allo-v2/lib/solady/src/tokens/ERC20.sol","file":"solady/src/tokens/ERC20.sol","nameLocation":"-1:-1:-1","scope":64521,"sourceUnit":4492,"symbolAliases":[{"foreign":{"id":64300,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4491,"src":"76:5:94","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":64520,"nodeType":"ContractDefinition","src":"290:2060:94","nodes":[{"id":64306,"nodeType":"VariableDeclaration","src":"323:21:94","nodes":[],"constant":false,"mutability":"mutable","name":"_name","nameLocation":"339:5:94","scope":64520,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":64305,"name":"string","nodeType":"ElementaryTypeName","src":"323:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"id":64308,"nodeType":"VariableDeclaration","src":"350:23:94","nodes":[],"constant":false,"mutability":"mutable","name":"_symbol","nameLocation":"366:7:94","scope":64520,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":64307,"name":"string","nodeType":"ElementaryTypeName","src":"350:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"id":64310,"nodeType":"VariableDeclaration","src":"379:24:94","nodes":[],"constant":false,"mutability":"mutable","name":"_decimals","nameLocation":"394:9:94","scope":64520,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":64309,"name":"uint8","nodeType":"ElementaryTypeName","src":"379:5:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"id":64332,"nodeType":"FunctionDefinition","src":"410:161:94","nodes":[],"body":{"id":64331,"nodeType":"Block","src":"483:88:94","nodes":[],"statements":[{"expression":{"id":64321,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":64319,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64306,"src":"493:5:94","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":64320,"name":"name_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64312,"src":"501:5:94","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"493:13:94","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":64322,"nodeType":"ExpressionStatement","src":"493:13:94"},{"expression":{"id":64325,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":64323,"name":"_symbol","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64308,"src":"516:7:94","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":64324,"name":"symbol_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64314,"src":"526:7:94","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"516:17:94","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":64326,"nodeType":"ExpressionStatement","src":"516:17:94"},{"expression":{"id":64329,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":64327,"name":"_decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64310,"src":"543:9:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":64328,"name":"decimals_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64316,"src":"555:9:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"543:21:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":64330,"nodeType":"ExpressionStatement","src":"543:21:94"}]},"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":64317,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64312,"mutability":"mutable","name":"name_","nameLocation":"436:5:94","nodeType":"VariableDeclaration","scope":64332,"src":"422:19:94","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":64311,"name":"string","nodeType":"ElementaryTypeName","src":"422:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":64314,"mutability":"mutable","name":"symbol_","nameLocation":"457:7:94","nodeType":"VariableDeclaration","scope":64332,"src":"443:21:94","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":64313,"name":"string","nodeType":"ElementaryTypeName","src":"443:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":64316,"mutability":"mutable","name":"decimals_","nameLocation":"472:9:94","nodeType":"VariableDeclaration","scope":64332,"src":"466:15:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":64315,"name":"uint8","nodeType":"ElementaryTypeName","src":"466:5:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"421:61:94"},"returnParameters":{"id":64318,"nodeType":"ParameterList","parameters":[],"src":"483:0:94"},"scope":64520,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":64341,"nodeType":"FunctionDefinition","src":"577:98:94","nodes":[],"body":{"id":64340,"nodeType":"Block","src":"646:29:94","nodes":[],"statements":[{"expression":{"id":64338,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64306,"src":"663:5:94","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"functionReturnParameters":64337,"id":64339,"nodeType":"Return","src":"656:12:94"}]},"baseFunctions":[4167],"functionSelector":"06fdde03","implemented":true,"kind":"function","modifiers":[],"name":"name","nameLocation":"586:4:94","overrides":{"id":64334,"nodeType":"OverrideSpecifier","overrides":[],"src":"613:8:94"},"parameters":{"id":64333,"nodeType":"ParameterList","parameters":[],"src":"590:2:94"},"returnParameters":{"id":64337,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64336,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64341,"src":"631:13:94","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":64335,"name":"string","nodeType":"ElementaryTypeName","src":"631:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"630:15:94"},"scope":64520,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":64350,"nodeType":"FunctionDefinition","src":"681:102:94","nodes":[],"body":{"id":64349,"nodeType":"Block","src":"752:31:94","nodes":[],"statements":[{"expression":{"id":64347,"name":"_symbol","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64308,"src":"769:7:94","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"functionReturnParameters":64346,"id":64348,"nodeType":"Return","src":"762:14:94"}]},"baseFunctions":[4173],"functionSelector":"95d89b41","implemented":true,"kind":"function","modifiers":[],"name":"symbol","nameLocation":"690:6:94","overrides":{"id":64343,"nodeType":"OverrideSpecifier","overrides":[],"src":"719:8:94"},"parameters":{"id":64342,"nodeType":"ParameterList","parameters":[],"src":"696:2:94"},"returnParameters":{"id":64346,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64345,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64350,"src":"737:13:94","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":64344,"name":"string","nodeType":"ElementaryTypeName","src":"737:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"736:15:94"},"scope":64520,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":64359,"nodeType":"FunctionDefinition","src":"789:98:94","nodes":[],"body":{"id":64358,"nodeType":"Block","src":"854:33:94","nodes":[],"statements":[{"expression":{"id":64356,"name":"_decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64310,"src":"871:9:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"functionReturnParameters":64355,"id":64357,"nodeType":"Return","src":"864:16:94"}]},"baseFunctions":[4182],"functionSelector":"313ce567","implemented":true,"kind":"function","modifiers":[],"name":"decimals","nameLocation":"798:8:94","overrides":{"id":64352,"nodeType":"OverrideSpecifier","overrides":[],"src":"829:8:94"},"parameters":{"id":64351,"nodeType":"ParameterList","parameters":[],"src":"806:2:94"},"returnParameters":{"id":64355,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64354,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64359,"src":"847:5:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":64353,"name":"uint8","nodeType":"ElementaryTypeName","src":"847:5:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"846:7:94"},"scope":64520,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":64374,"nodeType":"FunctionDefinition","src":"893:102:94","nodes":[],"body":{"id":64373,"nodeType":"Block","src":"949:46:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":64368,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64361,"src":"977:2:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64367,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64519,"src":"965:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":64369,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"965:15:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":64370,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64363,"src":"982:5:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":64366,"name":"_mint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4392,"src":"959:5:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":64371,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"959:29:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":64372,"nodeType":"ExpressionStatement","src":"959:29:94"}]},"functionSelector":"40c10f19","implemented":true,"kind":"function","modifiers":[],"name":"mint","nameLocation":"902:4:94","parameters":{"id":64364,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64361,"mutability":"mutable","name":"to","nameLocation":"915:2:94","nodeType":"VariableDeclaration","scope":64374,"src":"907:10:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64360,"name":"address","nodeType":"ElementaryTypeName","src":"907:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64363,"mutability":"mutable","name":"value","nameLocation":"927:5:94","nodeType":"VariableDeclaration","scope":64374,"src":"919:13:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":64362,"name":"uint256","nodeType":"ElementaryTypeName","src":"919:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"906:27:94"},"returnParameters":{"id":64365,"nodeType":"ParameterList","parameters":[],"src":"949:0:94"},"scope":64520,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":64389,"nodeType":"FunctionDefinition","src":"1001:106:94","nodes":[],"body":{"id":64388,"nodeType":"Block","src":"1059:48:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":64383,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64376,"src":"1087:4:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64382,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64519,"src":"1075:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":64384,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1075:17:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":64385,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64378,"src":"1094:5:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":64381,"name":"_burn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4420,"src":"1069:5:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":64386,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1069:31:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":64387,"nodeType":"ExpressionStatement","src":"1069:31:94"}]},"functionSelector":"9dc29fac","implemented":true,"kind":"function","modifiers":[],"name":"burn","nameLocation":"1010:4:94","parameters":{"id":64379,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64376,"mutability":"mutable","name":"from","nameLocation":"1023:4:94","nodeType":"VariableDeclaration","scope":64389,"src":"1015:12:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64375,"name":"address","nodeType":"ElementaryTypeName","src":"1015:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64378,"mutability":"mutable","name":"value","nameLocation":"1037:5:94","nodeType":"VariableDeclaration","scope":64389,"src":"1029:13:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":64377,"name":"uint256","nodeType":"ElementaryTypeName","src":"1029:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1014:29:94"},"returnParameters":{"id":64380,"nodeType":"ParameterList","parameters":[],"src":"1059:0:94"},"scope":64520,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":64409,"nodeType":"FunctionDefinition","src":"1113:151:94","nodes":[],"body":{"id":64408,"nodeType":"Block","src":"1194:70:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":64400,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64391,"src":"1226:4:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64399,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64519,"src":"1214:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":64401,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1214:17:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":64403,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64393,"src":"1245:2:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64402,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64519,"src":"1233:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":64404,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1233:15:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":64405,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64395,"src":"1250:6:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":64398,"name":"_transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4444,"src":"1204:9:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":64406,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1204:53:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":64407,"nodeType":"ExpressionStatement","src":"1204:53:94"}]},"functionSelector":"f83d1791","implemented":true,"kind":"function","modifiers":[],"name":"directTransfer","nameLocation":"1122:14:94","parameters":{"id":64396,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64391,"mutability":"mutable","name":"from","nameLocation":"1145:4:94","nodeType":"VariableDeclaration","scope":64409,"src":"1137:12:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64390,"name":"address","nodeType":"ElementaryTypeName","src":"1137:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64393,"mutability":"mutable","name":"to","nameLocation":"1159:2:94","nodeType":"VariableDeclaration","scope":64409,"src":"1151:10:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64392,"name":"address","nodeType":"ElementaryTypeName","src":"1151:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64395,"mutability":"mutable","name":"amount","nameLocation":"1171:6:94","nodeType":"VariableDeclaration","scope":64409,"src":"1163:14:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":64394,"name":"uint256","nodeType":"ElementaryTypeName","src":"1163:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1136:42:94"},"returnParameters":{"id":64397,"nodeType":"ParameterList","parameters":[],"src":"1194:0:94"},"scope":64520,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":64429,"nodeType":"FunctionDefinition","src":"1270:175:94","nodes":[],"body":{"id":64428,"nodeType":"Block","src":"1363:82:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":64420,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64411,"src":"1401:5:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64419,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64519,"src":"1389:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":64421,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1389:18:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":64423,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64413,"src":"1421:7:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64422,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64519,"src":"1409:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":64424,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1409:20:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":64425,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64415,"src":"1431:6:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":64418,"name":"_spendAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4456,"src":"1373:15:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":64426,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1373:65:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":64427,"nodeType":"ExpressionStatement","src":"1373:65:94"}]},"functionSelector":"d30ed3b3","implemented":true,"kind":"function","modifiers":[],"name":"directSpendAllowance","nameLocation":"1279:20:94","parameters":{"id":64416,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64411,"mutability":"mutable","name":"owner","nameLocation":"1308:5:94","nodeType":"VariableDeclaration","scope":64429,"src":"1300:13:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64410,"name":"address","nodeType":"ElementaryTypeName","src":"1300:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64413,"mutability":"mutable","name":"spender","nameLocation":"1323:7:94","nodeType":"VariableDeclaration","scope":64429,"src":"1315:15:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64412,"name":"address","nodeType":"ElementaryTypeName","src":"1315:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64415,"mutability":"mutable","name":"amount","nameLocation":"1340:6:94","nodeType":"VariableDeclaration","scope":64429,"src":"1332:14:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":64414,"name":"uint256","nodeType":"ElementaryTypeName","src":"1332:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1299:48:94"},"returnParameters":{"id":64417,"nodeType":"ParameterList","parameters":[],"src":"1363:0:94"},"scope":64520,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":64448,"nodeType":"FunctionDefinition","src":"1451:148:94","nodes":[],"body":{"id":64447,"nodeType":"Block","src":"1536:63:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":64442,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64431,"src":"1580:2:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64441,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64519,"src":"1568:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":64443,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1568:15:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":64444,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64433,"src":"1585:6:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":64439,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"1553:5:94","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_GV2ERC20_$64520_$","typeString":"type(contract super GV2ERC20)"}},"id":64440,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1559:8:94","memberName":"transfer","nodeType":"MemberAccess","referencedDeclaration":4282,"src":"1553:14:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) returns (bool)"}},"id":64445,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1553:39:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":64438,"id":64446,"nodeType":"Return","src":"1546:46:94"}]},"baseFunctions":[4282],"functionSelector":"a9059cbb","implemented":true,"kind":"function","modifiers":[],"name":"transfer","nameLocation":"1460:8:94","overrides":{"id":64435,"nodeType":"OverrideSpecifier","overrides":[],"src":"1512:8:94"},"parameters":{"id":64434,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64431,"mutability":"mutable","name":"to","nameLocation":"1477:2:94","nodeType":"VariableDeclaration","scope":64448,"src":"1469:10:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64430,"name":"address","nodeType":"ElementaryTypeName","src":"1469:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64433,"mutability":"mutable","name":"amount","nameLocation":"1489:6:94","nodeType":"VariableDeclaration","scope":64448,"src":"1481:14:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":64432,"name":"uint256","nodeType":"ElementaryTypeName","src":"1481:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1468:28:94"},"returnParameters":{"id":64438,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64437,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64448,"src":"1530:4:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":64436,"name":"bool","nodeType":"ElementaryTypeName","src":"1530:4:94","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1529:6:94"},"scope":64520,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":64472,"nodeType":"FunctionDefinition","src":"1605:189:94","nodes":[],"body":{"id":64471,"nodeType":"Block","src":"1708:86:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":64463,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64450,"src":"1756:4:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64462,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64519,"src":"1744:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":64464,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1744:17:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":64466,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64452,"src":"1775:2:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64465,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64519,"src":"1763:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":64467,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1763:15:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":64468,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64454,"src":"1780:6:94","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":64460,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"1725:5:94","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_GV2ERC20_$64520_$","typeString":"type(contract super GV2ERC20)"}},"id":64461,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1731:12:94","memberName":"transferFrom","nodeType":"MemberAccess","referencedDeclaration":4310,"src":"1725:18:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,address,uint256) returns (bool)"}},"id":64469,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1725:62:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":64459,"id":64470,"nodeType":"Return","src":"1718:69:94"}]},"baseFunctions":[4310],"functionSelector":"23b872dd","implemented":true,"kind":"function","modifiers":[],"name":"transferFrom","nameLocation":"1614:12:94","overrides":{"id":64456,"nodeType":"OverrideSpecifier","overrides":[],"src":"1684:8:94"},"parameters":{"id":64455,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64450,"mutability":"mutable","name":"from","nameLocation":"1635:4:94","nodeType":"VariableDeclaration","scope":64472,"src":"1627:12:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64449,"name":"address","nodeType":"ElementaryTypeName","src":"1627:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64452,"mutability":"mutable","name":"to","nameLocation":"1649:2:94","nodeType":"VariableDeclaration","scope":64472,"src":"1641:10:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64451,"name":"address","nodeType":"ElementaryTypeName","src":"1641:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64454,"mutability":"mutable","name":"amount","nameLocation":"1661:6:94","nodeType":"VariableDeclaration","scope":64472,"src":"1653:14:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":64453,"name":"uint256","nodeType":"ElementaryTypeName","src":"1653:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1626:42:94"},"returnParameters":{"id":64459,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64458,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64472,"src":"1702:4:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":64457,"name":"bool","nodeType":"ElementaryTypeName","src":"1702:4:94","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1701:6:94"},"scope":64520,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":64491,"nodeType":"FunctionDefinition","src":"1800:184:94","nodes":[],"body":{"id":64490,"nodeType":"Block","src":"1903:81:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":64485,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64474,"src":"1956:7:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64484,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64519,"src":"1944:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":64486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1944:20:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":64487,"name":"difference","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64476,"src":"1966:10:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":64482,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"1920:5:94","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_GV2ERC20_$64520_$","typeString":"type(contract super GV2ERC20)"}},"id":64483,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1926:17:94","memberName":"increaseAllowance","nodeType":"MemberAccess","referencedDeclaration":4240,"src":"1920:23:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) returns (bool)"}},"id":64488,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1920:57:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":64481,"id":64489,"nodeType":"Return","src":"1913:64:94"}]},"baseFunctions":[4240],"functionSelector":"39509351","implemented":true,"kind":"function","modifiers":[],"name":"increaseAllowance","nameLocation":"1809:17:94","overrides":{"id":64478,"nodeType":"OverrideSpecifier","overrides":[],"src":"1879:8:94"},"parameters":{"id":64477,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64474,"mutability":"mutable","name":"spender","nameLocation":"1835:7:94","nodeType":"VariableDeclaration","scope":64491,"src":"1827:15:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64473,"name":"address","nodeType":"ElementaryTypeName","src":"1827:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64476,"mutability":"mutable","name":"difference","nameLocation":"1852:10:94","nodeType":"VariableDeclaration","scope":64491,"src":"1844:18:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":64475,"name":"uint256","nodeType":"ElementaryTypeName","src":"1844:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1826:37:94"},"returnParameters":{"id":64481,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64480,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64491,"src":"1897:4:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":64479,"name":"bool","nodeType":"ElementaryTypeName","src":"1897:4:94","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1896:6:94"},"scope":64520,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":64510,"nodeType":"FunctionDefinition","src":"1990:184:94","nodes":[],"body":{"id":64509,"nodeType":"Block","src":"2093:81:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":64504,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64493,"src":"2146:7:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64503,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64519,"src":"2134:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":64505,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2134:20:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":64506,"name":"difference","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64495,"src":"2156:10:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":64501,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"2110:5:94","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_GV2ERC20_$64520_$","typeString":"type(contract super GV2ERC20)"}},"id":64502,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2116:17:94","memberName":"decreaseAllowance","nodeType":"MemberAccess","referencedDeclaration":4254,"src":"2110:23:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) returns (bool)"}},"id":64507,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2110:57:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":64500,"id":64508,"nodeType":"Return","src":"2103:64:94"}]},"baseFunctions":[4254],"functionSelector":"a457c2d7","implemented":true,"kind":"function","modifiers":[],"name":"decreaseAllowance","nameLocation":"1999:17:94","overrides":{"id":64497,"nodeType":"OverrideSpecifier","overrides":[],"src":"2069:8:94"},"parameters":{"id":64496,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64493,"mutability":"mutable","name":"spender","nameLocation":"2025:7:94","nodeType":"VariableDeclaration","scope":64510,"src":"2017:15:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64492,"name":"address","nodeType":"ElementaryTypeName","src":"2017:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64495,"mutability":"mutable","name":"difference","nameLocation":"2042:10:94","nodeType":"VariableDeclaration","scope":64510,"src":"2034:18:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":64494,"name":"uint256","nodeType":"ElementaryTypeName","src":"2034:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2016:37:94"},"returnParameters":{"id":64500,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64499,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64510,"src":"2087:4:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":64498,"name":"bool","nodeType":"ElementaryTypeName","src":"2087:4:94","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2086:6:94"},"scope":64520,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":64519,"nodeType":"FunctionDefinition","src":"2180:168:94","nodes":[],"body":{"id":64518,"nodeType":"Block","src":"2251:97:94","nodes":[],"statements":[{"AST":{"nodeType":"YulBlock","src":"2286:56:94","statements":[{"nodeType":"YulAssignment","src":"2300:32:94","value":{"arguments":[{"name":"a","nodeType":"YulIdentifier","src":"2313:1:94"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2320:3:94","type":"","value":"160"},{"arguments":[],"functionName":{"name":"gas","nodeType":"YulIdentifier","src":"2325:3:94"},"nodeType":"YulFunctionCall","src":"2325:5:94"}],"functionName":{"name":"shl","nodeType":"YulIdentifier","src":"2316:3:94"},"nodeType":"YulFunctionCall","src":"2316:15:94"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"2310:2:94"},"nodeType":"YulFunctionCall","src":"2310:22:94"},"variableNames":[{"name":"result","nodeType":"YulIdentifier","src":"2300:6:94"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":64512,"isOffset":false,"isSlot":false,"src":"2313:1:94","valueSize":1},{"declaration":64515,"isOffset":false,"isSlot":false,"src":"2300:6:94","valueSize":1}],"flags":["memory-safe"],"id":64517,"nodeType":"InlineAssembly","src":"2261:81:94"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_brutalized","nameLocation":"2189:11:94","parameters":{"id":64513,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64512,"mutability":"mutable","name":"a","nameLocation":"2209:1:94","nodeType":"VariableDeclaration","scope":64519,"src":"2201:9:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64511,"name":"address","nodeType":"ElementaryTypeName","src":"2201:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2200:11:94"},"returnParameters":{"id":64516,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64515,"mutability":"mutable","name":"result","nameLocation":"2243:6:94","nodeType":"VariableDeclaration","scope":64519,"src":"2235:14:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64514,"name":"address","nodeType":"ElementaryTypeName","src":"2235:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2234:16:94"},"scope":64520,"stateMutability":"view","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[{"baseName":{"id":64303,"name":"ERC20","nameLocations":["311:5:94"],"nodeType":"IdentifierPath","referencedDeclaration":4491,"src":"311:5:94"},"id":64304,"nodeType":"InheritanceSpecifier","src":"311:5:94"}],"canonicalName":"GV2ERC20","contractDependencies":[],"contractKind":"contract","documentation":{"id":64302,"nodeType":"StructuredDocumentation","src":"120:170:94","text":"@dev WARNING! This mock is strictly intended for testing purposes only.\n Do NOT copy anything here into production code unless you really know what you are doing."},"fullyImplemented":true,"linearizedBaseContracts":[64520,4491],"name":"GV2ERC20","nameLocation":"299:8:94","scope":64521,"usedErrors":[4101,4104,4107,4110,4113,4116,4119]}],"license":"AGPL-3.0-only"},"id":94} \ No newline at end of file +{"abi":[{"type":"constructor","inputs":[{"name":"name_","type":"string","internalType":"string"},{"name":"symbol_","type":"string","internalType":"string"},{"name":"decimals_","type":"uint8","internalType":"uint8"}],"stateMutability":"nonpayable"},{"type":"function","name":"DOMAIN_SEPARATOR","inputs":[],"outputs":[{"name":"result","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"allowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"}],"outputs":[{"name":"result","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"approve","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"balanceOf","inputs":[{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"result","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"burn","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"decimals","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"decreaseAllowance","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"difference","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"directSpendAllowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"directTransfer","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"increaseAllowance","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"difference","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"mint","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"nonces","inputs":[{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"result","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"permit","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"result","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transfer","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"spender","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"amount","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"AllowanceOverflow","inputs":[]},{"type":"error","name":"AllowanceUnderflow","inputs":[]},{"type":"error","name":"InsufficientAllowance","inputs":[]},{"type":"error","name":"InsufficientBalance","inputs":[]},{"type":"error","name":"InvalidPermit","inputs":[]},{"type":"error","name":"PermitExpired","inputs":[]},{"type":"error","name":"TotalSupplyOverflow","inputs":[]}],"bytecode":{"object":"0x6080604052346200033a5762000f9d803803806200001d816200033f565b9283398101906060818303126200033a5780516001600160401b03908181116200033a57836200004f91840162000365565b90602093848401518281116200033a576040916200006f91860162000365565b9301519260ff84168094036200033a57825190828211620003245760008054926001958685811c9516801562000319575b8986101462000305578190601f95868111620002b2575b5089908683116001146200024e57849262000242575b5050600019600383901b1c191690861b1781555b81519384116200022e5784548581811c9116801562000223575b888210146200020f57838111620001c7575b5086928411600114620001615783949596509262000155575b5050600019600383901b1c191690821b1790555b60ff196002541617600255604051610bc59081620003d88239f35b01519050388062000126565b9190601f1984169685845280842093905b888210620001af575050838596971062000195575b505050811b0190556200013a565b015160001960f88460031b161c1916905538808062000187565b80878596829496860151815501950193019062000172565b8582528782208480870160051c8201928a881062000205575b0160051c019086905b828110620001f95750506200010d565b838155018690620001e9565b92508192620001e0565b634e487b7160e01b82526022600452602482fd5b90607f1690620000fb565b634e487b7160e01b81526041600452602490fd5b015190503880620000cd565b8480528a85208994509190601f198416865b8d8282106200029b575050841162000281575b505050811b018155620000e1565b015160001960f88460031b161c1916905538808062000273565b8385015186558c9790950194938401930162000260565b9091508380528984208680850160051c8201928c8610620002fb575b918a91869594930160051c01915b828110620002ec575050620000b7565b8681558594508a9101620002dc565b92508192620002ce565b634e487b7160e01b83526022600452602483fd5b94607f1694620000a0565b634e487b7160e01b600052604160045260246000fd5b600080fd5b6040519190601f01601f191682016001600160401b038111838210176200032457604052565b919080601f840112156200033a5782516001600160401b03811162000324576020906200039b601f8201601f191683016200033f565b928184528282870101116200033a5760005b818110620003c357508260009394955001015290565b8581018301518482018401528201620003ad56fe60806040908082526004908136101561001757600080fd5b600092833560e01c91826306fdde031461089a57508163095ea7b31461084257816318160ddd1461081b57816323b872dd14610761578163313ce5671461073f5781633644e5151461071b57816339509351146106a457816340c10f191461062357816370a08231146105ef5781637ecebe00146105bb57816395d89b41146104b85781639dc29fac14610438578163a457c2d7146103c0578163a9059cbb1461033c578163d30ed3b3146102de578163d505accf146101af578163dd62ed3e14610171575063f83d1791146100ec57600080fd5b3461016d576100fa366109cd565b919290925a60a01b17925a60a01b17906387a211a28460601b17600c526020600c20908154908185116101625750839003905583526020600c20818154019055602052600c5160601c9060018060a01b0316600080516020610b50833981519152602080a380f35b63f4d678b88752601cfd5b5080fd5b83903461016d578060031936011261016d5760209161018e61099c565b906101976109b7565b8452637f5e9f20600c52526034600c20549051908152f35b8391503461016d5760e036600319011261016d576101cb61099c565b906101d46109b7565b90604435606435906084359260ff841684036102da576101f2610a02565b938151968442116102ce5760c09060018060a01b038091169716976338377508600c52878a5260209687600c20968754976001890190557f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9835289898401528a868401526060830197878952608084015260a08301526119018b5287522082526042601e20885260ff16845260a435815260c435606052838060808960015afa50843d51036102c2576303faf4f960a51b861790526034602c2055600080516020610b708339815191529190a380f35b8763ddafbaef8852601cfd5b89631a15a3cc8a52601cfd5b8680fd5b50503461016d576102ee366109cd565b91905a905a60a01b17602052637f5e9f20600c5260a01b1783526034600c2091825490600019820361031e578480f35b8183116103315750039055388080808480f35b6313be252b8552601cfd5b905082346103bd57816003193601126103bd5761035761099c565b90602435915a60a01b17906387a211a2600c5233815260209485600c20908154908186116103b2575084900390555282600c208181540190558252600c5160601c33600080516020610b508339815191528480a35160018152f35b63f4d678b88452601cfd5b80fd5b905082346103bd57816003193601126103bd576103db61099c565b602435905a60a01b17602052637f5e9f20600c523382526034600c2090815481811061042c5760209550038091558152602c5160601c90600080516020610b70833981519152843392a35160018152f35b85638301ab388552601cfd5b8391503461016d573660031901126103bd5761045261099c565b602435905a60a01b17906387a211a2600c528183526020600c208054948583116104ad57508184950390556805345cdf77eb68f44c818154039055825260018060a01b0316600080516020610b50833981519152602083a380f35b63f4d678b88552601cfd5b8391503461016d578160031936011261016d5780519082600180549081811c908083169283156105b1575b602093848410811461059e57838852908115610582575060011461054a575b505050829003601f01601f19168201926001600160401b038411838510176105375750829182610533925282610953565b0390f35b634e487b7160e01b815260418552602490fd5b809293508652828620918387935b83851061056e5750505050830101858080610502565b805488860183015293019284908201610558565b60ff1916878501525050151560051b8401019050858080610502565b634e487b7160e01b895260228a52602489fd5b91607f16916104e3565b83903461016d57602036600319011261016d576020916105d961099c565b906338377508600c525281600c20549051908152f35b83903461016d57602036600319011261016d5760209161060d61099c565b906387a211a2600c525281600c20549051908152f35b9050346106a05736600319011261016d5761063c61099c565b90602435915a60a01b17906805345cdf77eb68f44c8054918483019283106106955750556387a211a2600c5282526020600c20818154019055602052600c5160601c81600080516020610b50833981519152602080a380f35b63e5cfe9578652601cfd5b8280fd5b905082346103bd57816003193601126103bd576106bf61099c565b5a60a01b17602052637f5e9f20600c523381526034600c20928354906024358201918210610710575080602094558152602c5160601c90600080516020610b70833981519152843392a35160018152f35b63f90670668352601cfd5b83903461016d578160031936011261016d57602090610738610a02565b9051908152f35b83903461016d578160031936011261016d5760209060ff600254169051908152f35b905082346103bd57610772366109cd565b9092915a60a01b17925a60a01b178360601b92602096338852600c94637f5e9f208117865260348620805460001981036107f8575b50506387a211a2178552878520908154908186116103b2575084900390555284822080548201905584525160601c906001600160a01b0316600080516020610b508339815191528480a35160018152f35b80871161080f5786900390556387a211a28a6107a7565b836313be252b8652601cfd5b83903461016d578160031936011261016d576020906805345cdf77eb68f44c549051908152f35b83903461016d578060031936011261016d5760209161085f61099c565b602435908452637f5e9f20600c52338252806034600c20558152602c5160601c90600080516020610b70833981519152843392a35160018152f35b90849250346106a057826003193601126106a057828354600181811c90808316928315610949575b602093848410811461059e57838852908115610582575060011461091157505050829003601f01601f19168201926001600160401b038411838510176105375750829182610533925282610953565b919250858052828620918387935b8385106109355750505050830101858080610502565b80548886018301529301928490820161091f565b91607f16916108c2565b6020808252825181830181905290939260005b82811061098857505060409293506000838284010152601f8019910116010190565b818101860151848201604001528501610966565b600435906001600160a01b03821682036109b257565b600080fd5b602435906001600160a01b03821682036109b257565b60609060031901126109b2576001600160a01b039060043582811681036109b2579160243590811681036109b2579060443590565b60405160009081549160019280841c848216948515610b45575b6020928383108714610b315782865283860196908115610b175750600114610adc575b505050819003601f01601f19168101916001600160401b03831182841017610ac65760a09260405281518120907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8352527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660408201524660608201523060808201522090565b634e487b7160e01b600052604160045260246000fd5b919250600080528260002091836000935b838510610b035750505050820101388080610a3f565b805487860183015293019284908201610aed565b60ff191687525050151560051b8301019050388080610a3f565b634e487b7160e01b85526022600452602485fd5b90607f1690610a1c56feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925a264697066735822122086424f59bdea91ffbbc0f44d8b36a88deb75ba06b0192d822ab00a042fe48aa364736f6c63430008130033","sourceMap":"290:2060:94:-:0;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;290:2060:94;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;;;-1:-1:-1;;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;290:2060:94;;;;;;;;;;;;;;;;543:21;290:2060;;;543:21;290:2060;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;290:2060:94;;;;;;;;;;;;;;;;-1:-1:-1;;;290:2060:94;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;-1:-1:-1;;290:2060:94;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;-1:-1:-1;;;290:2060:94;;;;;;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;-1:-1:-1;290:2060:94;;-1:-1:-1;290:2060:94;;;;;;;;;-1:-1:-1;;290:2060:94;;;-1:-1:-1;;;;;290:2060:94;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;290:2060:94;;;;;;;;;;-1:-1:-1;;290:2060:94;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040908082526004908136101561001757600080fd5b600092833560e01c91826306fdde031461089a57508163095ea7b31461084257816318160ddd1461081b57816323b872dd14610761578163313ce5671461073f5781633644e5151461071b57816339509351146106a457816340c10f191461062357816370a08231146105ef5781637ecebe00146105bb57816395d89b41146104b85781639dc29fac14610438578163a457c2d7146103c0578163a9059cbb1461033c578163d30ed3b3146102de578163d505accf146101af578163dd62ed3e14610171575063f83d1791146100ec57600080fd5b3461016d576100fa366109cd565b919290925a60a01b17925a60a01b17906387a211a28460601b17600c526020600c20908154908185116101625750839003905583526020600c20818154019055602052600c5160601c9060018060a01b0316600080516020610b50833981519152602080a380f35b63f4d678b88752601cfd5b5080fd5b83903461016d578060031936011261016d5760209161018e61099c565b906101976109b7565b8452637f5e9f20600c52526034600c20549051908152f35b8391503461016d5760e036600319011261016d576101cb61099c565b906101d46109b7565b90604435606435906084359260ff841684036102da576101f2610a02565b938151968442116102ce5760c09060018060a01b038091169716976338377508600c52878a5260209687600c20968754976001890190557f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9835289898401528a868401526060830197878952608084015260a08301526119018b5287522082526042601e20885260ff16845260a435815260c435606052838060808960015afa50843d51036102c2576303faf4f960a51b861790526034602c2055600080516020610b708339815191529190a380f35b8763ddafbaef8852601cfd5b89631a15a3cc8a52601cfd5b8680fd5b50503461016d576102ee366109cd565b91905a905a60a01b17602052637f5e9f20600c5260a01b1783526034600c2091825490600019820361031e578480f35b8183116103315750039055388080808480f35b6313be252b8552601cfd5b905082346103bd57816003193601126103bd5761035761099c565b90602435915a60a01b17906387a211a2600c5233815260209485600c20908154908186116103b2575084900390555282600c208181540190558252600c5160601c33600080516020610b508339815191528480a35160018152f35b63f4d678b88452601cfd5b80fd5b905082346103bd57816003193601126103bd576103db61099c565b602435905a60a01b17602052637f5e9f20600c523382526034600c2090815481811061042c5760209550038091558152602c5160601c90600080516020610b70833981519152843392a35160018152f35b85638301ab388552601cfd5b8391503461016d573660031901126103bd5761045261099c565b602435905a60a01b17906387a211a2600c528183526020600c208054948583116104ad57508184950390556805345cdf77eb68f44c818154039055825260018060a01b0316600080516020610b50833981519152602083a380f35b63f4d678b88552601cfd5b8391503461016d578160031936011261016d5780519082600180549081811c908083169283156105b1575b602093848410811461059e57838852908115610582575060011461054a575b505050829003601f01601f19168201926001600160401b038411838510176105375750829182610533925282610953565b0390f35b634e487b7160e01b815260418552602490fd5b809293508652828620918387935b83851061056e5750505050830101858080610502565b805488860183015293019284908201610558565b60ff1916878501525050151560051b8401019050858080610502565b634e487b7160e01b895260228a52602489fd5b91607f16916104e3565b83903461016d57602036600319011261016d576020916105d961099c565b906338377508600c525281600c20549051908152f35b83903461016d57602036600319011261016d5760209161060d61099c565b906387a211a2600c525281600c20549051908152f35b9050346106a05736600319011261016d5761063c61099c565b90602435915a60a01b17906805345cdf77eb68f44c8054918483019283106106955750556387a211a2600c5282526020600c20818154019055602052600c5160601c81600080516020610b50833981519152602080a380f35b63e5cfe9578652601cfd5b8280fd5b905082346103bd57816003193601126103bd576106bf61099c565b5a60a01b17602052637f5e9f20600c523381526034600c20928354906024358201918210610710575080602094558152602c5160601c90600080516020610b70833981519152843392a35160018152f35b63f90670668352601cfd5b83903461016d578160031936011261016d57602090610738610a02565b9051908152f35b83903461016d578160031936011261016d5760209060ff600254169051908152f35b905082346103bd57610772366109cd565b9092915a60a01b17925a60a01b178360601b92602096338852600c94637f5e9f208117865260348620805460001981036107f8575b50506387a211a2178552878520908154908186116103b2575084900390555284822080548201905584525160601c906001600160a01b0316600080516020610b508339815191528480a35160018152f35b80871161080f5786900390556387a211a28a6107a7565b836313be252b8652601cfd5b83903461016d578160031936011261016d576020906805345cdf77eb68f44c549051908152f35b83903461016d578060031936011261016d5760209161085f61099c565b602435908452637f5e9f20600c52338252806034600c20558152602c5160601c90600080516020610b70833981519152843392a35160018152f35b90849250346106a057826003193601126106a057828354600181811c90808316928315610949575b602093848410811461059e57838852908115610582575060011461091157505050829003601f01601f19168201926001600160401b038411838510176105375750829182610533925282610953565b919250858052828620918387935b8385106109355750505050830101858080610502565b80548886018301529301928490820161091f565b91607f16916108c2565b6020808252825181830181905290939260005b82811061098857505060409293506000838284010152601f8019910116010190565b818101860151848201604001528501610966565b600435906001600160a01b03821682036109b257565b600080fd5b602435906001600160a01b03821682036109b257565b60609060031901126109b2576001600160a01b039060043582811681036109b2579160243590811681036109b2579060443590565b60405160009081549160019280841c848216948515610b45575b6020928383108714610b315782865283860196908115610b175750600114610adc575b505050819003601f01601f19168101916001600160401b03831182841017610ac65760a09260405281518120907f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f8352527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660408201524660608201523060808201522090565b634e487b7160e01b600052604160045260246000fd5b919250600080528260002091836000935b838510610b035750505050820101388080610a3f565b805487860183015293019284908201610aed565b60ff191687525050151560051b8301019050388080610a3f565b634e487b7160e01b85526022600452602485fd5b90607f1690610a1c56feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925a264697066735822122086424f59bdea91ffbbc0f44d8b36a88deb75ba06b0192d822ab00a042fe48aa364736f6c63430008130033","sourceMap":"290:2060:94:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11081:1934:13;290:2060:94;11081:1934:13;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2261:81;;;;;;;;;;;;;21786:1164:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11081:1934;290:2060:94;11081:1934:13;;;;21786:1164;-1:-1:-1;;;;;;;;;;;21786:1164:13;;;290:2060:94;;21786:1164:13;;;;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::i;:::-;5674:184:13;;;;;;;;;;290:2060:94;;;;;;;;;;;;;;;-1:-1:-1;;290:2060:94;;;;;;:::i;:::-;;;;:::i;:::-;;;;;;;;;;;;;;;;;14252:18:13;;:::i;:::-;14323:2708;;;;;;;;;290:2060:94;11081:1934:13;290:2060:94;11081:1934:13;;;;14323:2708;;;;;;;;;;;;290:2060:94;14323:2708:13;;;;;;;;290:2060:94;14323:2708:13;;;;;;;;;;;;;;;;;290:2060:94;14323:2708:13;;;;;;290:2060:94;14323:2708:13;;;11081:1934;14323:2708;;;;;;;;;;;;;;;;290:2060:94;14323:2708:13;;;290:2060:94;;14323:2708:13;;290:2060:94;;;14323:2708:13;;;290:2060:94;14323:2708:13;290:2060:94;14323:2708:13;;;;;;;;;-1:-1:-1;;;14323:2708:13;;;;;;;;-1:-1:-1;;;;;;;;;;;14323:2708:13;;;290:2060:94;;14323:2708:13;;;;;;;;;;;;;;290:2060:94;;;;;;;;;;;;;:::i;:::-;2261:81;;;;;;;;23520:810:13;;;;;2261:81:94;;;23520:810:13;;;;;;;;11081:1934;;;23520:810;;;;290:2060:94;;;23520:810:13;;;;;;;;;;;;;;290:2060:94;;;23520:810:13;;;;;;290:2060:94;;;;;;;;;;;;;;;;;:::i;:::-;;;;2261:81;;;;;9295:1143:13;;;;;;;290:2060:94;9295:1143:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;9295:1143:13;;;290:2060:94;;;;;9295:1143:13;;;;;;290:2060:94;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;2261:81;;;;;290:2060;8037:861:13;;;;;;;;;;;;;;;;;;290:2060:94;8037:861:13;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8037:861:13;;;;290:2060:94;;;;;8037:861:13;;;;;;;290:2060:94;;;;;;;;-1:-1:-1;;290:2060:94;;;;;;:::i;:::-;;;2261:81;;;;;20311:887:13;;;;;;;290:2060:94;20311:887:13;;;;;;;;;;;;;;;;;;;;;;;;;;290:2060:94;11081:1934:13;;;;20311:887;-1:-1:-1;;;;;;;;;;;290:2060:94;20311:887:13;;290:2060:94;;20311:887:13;;;;;;290:2060:94;;;;;;;;;;;;;;;;;;;769:7;290:2060;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;290:2060:94;;;;;-1:-1:-1;;290:2060:94;;;;-1:-1:-1;;;;;290:2060:94;;;;;;;;;;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;290:2060:94;;;;;-1:-1:-1;;290:2060:94;;;;;;;;-1:-1:-1;290:2060:94;;;;;;-1:-1:-1;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;290:2060:94;;;;;;;;:::i;:::-;13632:205:13;;;;;;;;;290:2060:94;;;;;;;;;;;;;;-1:-1:-1;;290:2060:94;;;;;;;;:::i;:::-;5240:148:13;;;;;;;;;290:2060:94;;;;;;;;;;;;;-1:-1:-1;;290:2060:94;;;;;;:::i;:::-;;;;2261:81;;;;;18729:946:13;;;;;;;;;;;;;;;;;;;;290:2060:94;18729:946:13;;;;;;;;290:2060:94;18729:946:13;;;;;;-1:-1:-1;;;;;;;;;;;290:2060:94;18729:946:13;;290:2060:94;;18729:946:13;;;;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2261:81;;;;290:2060;6847:884:13;;;;;;;;;;;;;290:2060:94;;;6847:884:13;;;;;;;;;290:2060:94;6847:884:13;;;;;;;;;-1:-1:-1;;;;;;;;;;;6847:884:13;;;;290:2060:94;;;;;6847:884:13;;;;;;290:2060:94;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;871:9;290:2060;;;;;;;;;;;;;;;;;;:::i;:::-;2261:81;;;;;;;;;;;;11081:1934:13;;;;;;;;;;;;;;;;;;;;;;;;;;;290:2060:94;11081:1934:13;;;;;;;;;;;;;;;;;;-1:-1:-1;11081:1934:13;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11081:1934:13;-1:-1:-1;;;;;;;;;;;11081:1934:13;;;290:2060:94;;;;;11081:1934:13;;;;;;;;;;;;;;;;;;;;;;290:2060:94;;;;;;;;;;;;;;;4968:68:13;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;6128:413:13;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;6128:413:13;;;;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;290:2060:94;;;;;-1:-1:-1;;290:2060:94;;;;-1:-1:-1;;;;;290:2060:94;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;290:2060:94;;;;;;:::o;:::-;;;;;;;;-1:-1:-1;;;;;290:2060:94;;;;;;:::o;:::-;;;;;;;;;-1:-1:-1;;;;;11081:1934:13;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;:::o;17096:1062:13:-;17222:87;;663:5:94;290:2060;;;;;;;;;;;;;;;;;17096:1062:13;290:2060:94;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;290:2060:94;;;;;-1:-1:-1;;290:2060:94;;;;-1:-1:-1;;;;;290:2060:94;;;;;;;;17508:644:13;290:2060:94;17222:87:13;290:2060:94;;;17431:24:13;;17508:644;;;;;;17222:87;17508:644;;;;;;;;;;;;;;17096:1062;:::o;290:2060:94:-;;;;663:5;290:2060;;;;;663:5;290:2060;;;;;663:5;290:2060;;;663:5;290:2060;;;663:5;290:2060;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;290:2060:94;;;-1:-1:-1;;290:2060:94;;;;;;;;-1:-1:-1;290:2060:94;;;;;;-1:-1:-1;;;290:2060:94;;;;;;;;;;;;;;","linkReferences":{}},"methodIdentifiers":{"DOMAIN_SEPARATOR()":"3644e515","allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","burn(address,uint256)":"9dc29fac","decimals()":"313ce567","decreaseAllowance(address,uint256)":"a457c2d7","directSpendAllowance(address,address,uint256)":"d30ed3b3","directTransfer(address,address,uint256)":"f83d1791","increaseAllowance(address,uint256)":"39509351","mint(address,uint256)":"40c10f19","name()":"06fdde03","nonces(address)":"7ecebe00","permit(address,address,uint256,uint256,uint8,bytes32,bytes32)":"d505accf","symbol()":"95d89b41","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"string\",\"name\":\"name_\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"symbol_\",\"type\":\"string\"},{\"internalType\":\"uint8\",\"name\":\"decimals_\",\"type\":\"uint8\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"AllowanceOverflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"AllowanceUnderflow\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InsufficientAllowance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InsufficientBalance\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidPermit\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PermitExpired\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"TotalSupplyOverflow\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"result\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"burn\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"difference\",\"type\":\"uint256\"}],\"name\":\"decreaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"directSpendAllowance\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"directTransfer\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"difference\",\"type\":\"uint256\"}],\"name\":\"increaseAllowance\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"mint\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"permit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"WARNING! This mock is strictly intended for testing purposes only. Do NOT copy anything here into production code unless you really know what you are doing.\",\"errors\":{\"AllowanceOverflow()\":[{\"details\":\"The allowance has overflowed.\"}],\"AllowanceUnderflow()\":[{\"details\":\"The allowance has underflowed.\"}],\"InsufficientAllowance()\":[{\"details\":\"Insufficient allowance.\"}],\"InsufficientBalance()\":[{\"details\":\"Insufficient balance.\"}],\"InvalidPermit()\":[{\"details\":\"The permit is invalid.\"}],\"PermitExpired()\":[{\"details\":\"The permit has expired.\"}],\"TotalSupplyOverflow()\":[{\"details\":\"The total supply has overflowed.\"}]},\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when `amount` tokens is approved by `owner` to be used by `spender`.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `amount` tokens is transferred from `from` to `to`.\"}},\"kind\":\"dev\",\"methods\":{\"DOMAIN_SEPARATOR()\":{\"details\":\"Returns the EIP-2612 domains separator.\"},\"allowance(address,address)\":{\"details\":\"Returns the amount of tokens that `spender` can spend on behalf of `owner`.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Emits a {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `owner`.\"},\"decimals()\":{\"details\":\"Returns the decimals places of the token.\"},\"decreaseAllowance(address,uint256)\":{\"details\":\"Atomically decreases the allowance granted to `spender` by the caller. Emits a {Approval} event.\"},\"increaseAllowance(address,uint256)\":{\"details\":\"Atomically increases the allowance granted to `spender` by the caller. Emits a {Approval} event.\"},\"name()\":{\"details\":\"Returns the name of the token.\"},\"nonces(address)\":{\"details\":\"Returns the current nonce for `owner`. This value is used to compute the signature for EIP-2612 permit.\"},\"permit(address,address,uint256,uint256,uint8,bytes32,bytes32)\":{\"details\":\"Sets `value` as the allowance of `spender` over the tokens of `owner`, authorized by a signed approval by `owner`. Emits a {Approval} event.\"},\"symbol()\":{\"details\":\"Returns the symbol of the token.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Transfer `amount` tokens from the caller to `to`. Requirements: - `from` must at least have `amount`. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Transfers `amount` tokens from `from` to `to`. Note: Does not update the allowance if it is the maximum uint256 value. Requirements: - `from` must at least have `amount`. - The caller must have at least `amount` of allowance to transfer the tokens of `from`. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/script/GV2ERC20.sol\":\"GV2ERC20\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"lib/allo-v2/lib/solady/src/tokens/ERC20.sol\":{\"keccak256\":\"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea\",\"dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK\"]},\"pkg/contracts/script/GV2ERC20.sol\":{\"keccak256\":\"0x72e3d7c5f055490e976b03abf0b7773b5cefd7e305021d0ea83cba3e142118f9\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://3f19911b75ab3e0d2d41f5d9f4754f21d78b500905da3342b61bc54e502d4c97\",\"dweb:/ipfs/QmU4zPrrTWQY3eUYegHZzLjs2jyRgGtgyZp4J2ZQxj8Vp2\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint8","name":"decimals_","type":"uint8"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"type":"error","name":"AllowanceOverflow"},{"inputs":[],"type":"error","name":"AllowanceUnderflow"},{"inputs":[],"type":"error","name":"InsufficientAllowance"},{"inputs":[],"type":"error","name":"InsufficientBalance"},{"inputs":[],"type":"error","name":"InvalidPermit"},{"inputs":[],"type":"error","name":"PermitExpired"},{"inputs":[],"type":"error","name":"TotalSupplyOverflow"},{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"spender","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"amount","type":"uint256","indexed":false}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"result","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"stateMutability":"view","type":"function","name":"allowance","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"burn"},{"inputs":[],"stateMutability":"view","type":"function","name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"difference","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"directSpendAllowance"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"directTransfer"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"difference","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"mint"},{"inputs":[],"stateMutability":"view","type":"function","name":"name","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"nonces","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"permit"},{"inputs":[],"stateMutability":"view","type":"function","name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"result","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"DOMAIN_SEPARATOR()":{"details":"Returns the EIP-2612 domains separator."},"allowance(address,address)":{"details":"Returns the amount of tokens that `spender` can spend on behalf of `owner`."},"approve(address,uint256)":{"details":"Sets `amount` as the allowance of `spender` over the caller's tokens. Emits a {Approval} event."},"balanceOf(address)":{"details":"Returns the amount of tokens owned by `owner`."},"decimals()":{"details":"Returns the decimals places of the token."},"decreaseAllowance(address,uint256)":{"details":"Atomically decreases the allowance granted to `spender` by the caller. Emits a {Approval} event."},"increaseAllowance(address,uint256)":{"details":"Atomically increases the allowance granted to `spender` by the caller. Emits a {Approval} event."},"name()":{"details":"Returns the name of the token."},"nonces(address)":{"details":"Returns the current nonce for `owner`. This value is used to compute the signature for EIP-2612 permit."},"permit(address,address,uint256,uint256,uint8,bytes32,bytes32)":{"details":"Sets `value` as the allowance of `spender` over the tokens of `owner`, authorized by a signed approval by `owner`. Emits a {Approval} event."},"symbol()":{"details":"Returns the symbol of the token."},"totalSupply()":{"details":"Returns the amount of tokens in existence."},"transfer(address,uint256)":{"details":"Transfer `amount` tokens from the caller to `to`. Requirements: - `from` must at least have `amount`. Emits a {Transfer} event."},"transferFrom(address,address,uint256)":{"details":"Transfers `amount` tokens from `from` to `to`. Note: Does not update the allowance if it is the maximum uint256 value. Requirements: - `from` must at least have `amount`. - The caller must have at least `amount` of allowance to transfer the tokens of `from`. Emits a {Transfer} 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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/script/GV2ERC20.sol":"GV2ERC20"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"lib/allo-v2/lib/solady/src/tokens/ERC20.sol":{"keccak256":"0x264e4675697d05dfb9bbe9cc91c6bda7962d934f1e940336fd75d509b7f396c4","urls":["bzz-raw://5856338689f03f36c057203c5085243e104b8487274432062ebf076b512edeea","dweb:/ipfs/QmXrqgaWQikKkHfoBkYPxeMTJWUY5uf7kSmipNbpU35XwK"],"license":"MIT"},"pkg/contracts/script/GV2ERC20.sol":{"keccak256":"0x72e3d7c5f055490e976b03abf0b7773b5cefd7e305021d0ea83cba3e142118f9","urls":["bzz-raw://3f19911b75ab3e0d2d41f5d9f4754f21d78b500905da3342b61bc54e502d4c97","dweb:/ipfs/QmU4zPrrTWQY3eUYegHZzLjs2jyRgGtgyZp4J2ZQxj8Vp2"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":65325,"contract":"pkg/contracts/script/GV2ERC20.sol:GV2ERC20","label":"_name","offset":0,"slot":"0","type":"t_string_storage"},{"astId":65327,"contract":"pkg/contracts/script/GV2ERC20.sol:GV2ERC20","label":"_symbol","offset":0,"slot":"1","type":"t_string_storage"},{"astId":65329,"contract":"pkg/contracts/script/GV2ERC20.sol:GV2ERC20","label":"_decimals","offset":0,"slot":"2","type":"t_uint8"}],"types":{"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/script/GV2ERC20.sol","id":65540,"exportedSymbols":{"ERC20":[4491],"GV2ERC20":[65539]},"nodeType":"SourceUnit","src":"42:2309:94","nodes":[{"id":65318,"nodeType":"PragmaDirective","src":"42:24:94","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":65320,"nodeType":"ImportDirective","src":"68:50:94","nodes":[],"absolutePath":"lib/allo-v2/lib/solady/src/tokens/ERC20.sol","file":"solady/src/tokens/ERC20.sol","nameLocation":"-1:-1:-1","scope":65540,"sourceUnit":4492,"symbolAliases":[{"foreign":{"id":65319,"name":"ERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4491,"src":"76:5:94","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65539,"nodeType":"ContractDefinition","src":"290:2060:94","nodes":[{"id":65325,"nodeType":"VariableDeclaration","src":"323:21:94","nodes":[],"constant":false,"mutability":"mutable","name":"_name","nameLocation":"339:5:94","scope":65539,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":65324,"name":"string","nodeType":"ElementaryTypeName","src":"323:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"id":65327,"nodeType":"VariableDeclaration","src":"350:23:94","nodes":[],"constant":false,"mutability":"mutable","name":"_symbol","nameLocation":"366:7:94","scope":65539,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":65326,"name":"string","nodeType":"ElementaryTypeName","src":"350:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"id":65329,"nodeType":"VariableDeclaration","src":"379:24:94","nodes":[],"constant":false,"mutability":"mutable","name":"_decimals","nameLocation":"394:9:94","scope":65539,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":65328,"name":"uint8","nodeType":"ElementaryTypeName","src":"379:5:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"id":65351,"nodeType":"FunctionDefinition","src":"410:161:94","nodes":[],"body":{"id":65350,"nodeType":"Block","src":"483:88:94","nodes":[],"statements":[{"expression":{"id":65340,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":65338,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65325,"src":"493:5:94","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":65339,"name":"name_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65331,"src":"501:5:94","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"493:13:94","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":65341,"nodeType":"ExpressionStatement","src":"493:13:94"},{"expression":{"id":65344,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":65342,"name":"_symbol","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65327,"src":"516:7:94","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":65343,"name":"symbol_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65333,"src":"526:7:94","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"516:17:94","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":65345,"nodeType":"ExpressionStatement","src":"516:17:94"},{"expression":{"id":65348,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":65346,"name":"_decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65329,"src":"543:9:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":65347,"name":"decimals_","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65335,"src":"555:9:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"src":"543:21:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":65349,"nodeType":"ExpressionStatement","src":"543:21:94"}]},"implemented":true,"kind":"constructor","modifiers":[],"name":"","nameLocation":"-1:-1:-1","parameters":{"id":65336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65331,"mutability":"mutable","name":"name_","nameLocation":"436:5:94","nodeType":"VariableDeclaration","scope":65351,"src":"422:19:94","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65330,"name":"string","nodeType":"ElementaryTypeName","src":"422:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65333,"mutability":"mutable","name":"symbol_","nameLocation":"457:7:94","nodeType":"VariableDeclaration","scope":65351,"src":"443:21:94","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65332,"name":"string","nodeType":"ElementaryTypeName","src":"443:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":65335,"mutability":"mutable","name":"decimals_","nameLocation":"472:9:94","nodeType":"VariableDeclaration","scope":65351,"src":"466:15:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":65334,"name":"uint8","nodeType":"ElementaryTypeName","src":"466:5:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"421:61:94"},"returnParameters":{"id":65337,"nodeType":"ParameterList","parameters":[],"src":"483:0:94"},"scope":65539,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":65360,"nodeType":"FunctionDefinition","src":"577:98:94","nodes":[],"body":{"id":65359,"nodeType":"Block","src":"646:29:94","nodes":[],"statements":[{"expression":{"id":65357,"name":"_name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65325,"src":"663:5:94","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"functionReturnParameters":65356,"id":65358,"nodeType":"Return","src":"656:12:94"}]},"baseFunctions":[4167],"functionSelector":"06fdde03","implemented":true,"kind":"function","modifiers":[],"name":"name","nameLocation":"586:4:94","overrides":{"id":65353,"nodeType":"OverrideSpecifier","overrides":[],"src":"613:8:94"},"parameters":{"id":65352,"nodeType":"ParameterList","parameters":[],"src":"590:2:94"},"returnParameters":{"id":65356,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65355,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65360,"src":"631:13:94","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65354,"name":"string","nodeType":"ElementaryTypeName","src":"631:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"630:15:94"},"scope":65539,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":65369,"nodeType":"FunctionDefinition","src":"681:102:94","nodes":[],"body":{"id":65368,"nodeType":"Block","src":"752:31:94","nodes":[],"statements":[{"expression":{"id":65366,"name":"_symbol","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65327,"src":"769:7:94","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"functionReturnParameters":65365,"id":65367,"nodeType":"Return","src":"762:14:94"}]},"baseFunctions":[4173],"functionSelector":"95d89b41","implemented":true,"kind":"function","modifiers":[],"name":"symbol","nameLocation":"690:6:94","overrides":{"id":65362,"nodeType":"OverrideSpecifier","overrides":[],"src":"719:8:94"},"parameters":{"id":65361,"nodeType":"ParameterList","parameters":[],"src":"696:2:94"},"returnParameters":{"id":65365,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65364,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65369,"src":"737:13:94","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65363,"name":"string","nodeType":"ElementaryTypeName","src":"737:6:94","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"736:15:94"},"scope":65539,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":65378,"nodeType":"FunctionDefinition","src":"789:98:94","nodes":[],"body":{"id":65377,"nodeType":"Block","src":"854:33:94","nodes":[],"statements":[{"expression":{"id":65375,"name":"_decimals","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65329,"src":"871:9:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"functionReturnParameters":65374,"id":65376,"nodeType":"Return","src":"864:16:94"}]},"baseFunctions":[4182],"functionSelector":"313ce567","implemented":true,"kind":"function","modifiers":[],"name":"decimals","nameLocation":"798:8:94","overrides":{"id":65371,"nodeType":"OverrideSpecifier","overrides":[],"src":"829:8:94"},"parameters":{"id":65370,"nodeType":"ParameterList","parameters":[],"src":"806:2:94"},"returnParameters":{"id":65374,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65373,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65378,"src":"847:5:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":65372,"name":"uint8","nodeType":"ElementaryTypeName","src":"847:5:94","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"846:7:94"},"scope":65539,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":65393,"nodeType":"FunctionDefinition","src":"893:102:94","nodes":[],"body":{"id":65392,"nodeType":"Block","src":"949:46:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65387,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65380,"src":"977:2:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65386,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65538,"src":"965:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":65388,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"965:15:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":65389,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65382,"src":"982:5:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":65385,"name":"_mint","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4392,"src":"959:5:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":65390,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"959:29:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":65391,"nodeType":"ExpressionStatement","src":"959:29:94"}]},"functionSelector":"40c10f19","implemented":true,"kind":"function","modifiers":[],"name":"mint","nameLocation":"902:4:94","parameters":{"id":65383,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65380,"mutability":"mutable","name":"to","nameLocation":"915:2:94","nodeType":"VariableDeclaration","scope":65393,"src":"907:10:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65379,"name":"address","nodeType":"ElementaryTypeName","src":"907:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65382,"mutability":"mutable","name":"value","nameLocation":"927:5:94","nodeType":"VariableDeclaration","scope":65393,"src":"919:13:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65381,"name":"uint256","nodeType":"ElementaryTypeName","src":"919:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"906:27:94"},"returnParameters":{"id":65384,"nodeType":"ParameterList","parameters":[],"src":"949:0:94"},"scope":65539,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":65408,"nodeType":"FunctionDefinition","src":"1001:106:94","nodes":[],"body":{"id":65407,"nodeType":"Block","src":"1059:48:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65402,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65395,"src":"1087:4:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65401,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65538,"src":"1075:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":65403,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1075:17:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":65404,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65397,"src":"1094:5:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":65400,"name":"_burn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4420,"src":"1069:5:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":65405,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1069:31:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":65406,"nodeType":"ExpressionStatement","src":"1069:31:94"}]},"functionSelector":"9dc29fac","implemented":true,"kind":"function","modifiers":[],"name":"burn","nameLocation":"1010:4:94","parameters":{"id":65398,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65395,"mutability":"mutable","name":"from","nameLocation":"1023:4:94","nodeType":"VariableDeclaration","scope":65408,"src":"1015:12:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65394,"name":"address","nodeType":"ElementaryTypeName","src":"1015:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65397,"mutability":"mutable","name":"value","nameLocation":"1037:5:94","nodeType":"VariableDeclaration","scope":65408,"src":"1029:13:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65396,"name":"uint256","nodeType":"ElementaryTypeName","src":"1029:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1014:29:94"},"returnParameters":{"id":65399,"nodeType":"ParameterList","parameters":[],"src":"1059:0:94"},"scope":65539,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":65428,"nodeType":"FunctionDefinition","src":"1113:151:94","nodes":[],"body":{"id":65427,"nodeType":"Block","src":"1194:70:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65419,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65410,"src":"1226:4:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65418,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65538,"src":"1214:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":65420,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1214:17:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":65422,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65412,"src":"1245:2:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65421,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65538,"src":"1233:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":65423,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1233:15:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":65424,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65414,"src":"1250:6:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":65417,"name":"_transfer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4444,"src":"1204:9:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":65425,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1204:53:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":65426,"nodeType":"ExpressionStatement","src":"1204:53:94"}]},"functionSelector":"f83d1791","implemented":true,"kind":"function","modifiers":[],"name":"directTransfer","nameLocation":"1122:14:94","parameters":{"id":65415,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65410,"mutability":"mutable","name":"from","nameLocation":"1145:4:94","nodeType":"VariableDeclaration","scope":65428,"src":"1137:12:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65409,"name":"address","nodeType":"ElementaryTypeName","src":"1137:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65412,"mutability":"mutable","name":"to","nameLocation":"1159:2:94","nodeType":"VariableDeclaration","scope":65428,"src":"1151:10:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65411,"name":"address","nodeType":"ElementaryTypeName","src":"1151:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65414,"mutability":"mutable","name":"amount","nameLocation":"1171:6:94","nodeType":"VariableDeclaration","scope":65428,"src":"1163:14:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65413,"name":"uint256","nodeType":"ElementaryTypeName","src":"1163:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1136:42:94"},"returnParameters":{"id":65416,"nodeType":"ParameterList","parameters":[],"src":"1194:0:94"},"scope":65539,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":65448,"nodeType":"FunctionDefinition","src":"1270:175:94","nodes":[],"body":{"id":65447,"nodeType":"Block","src":"1363:82:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65439,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65430,"src":"1401:5:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65438,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65538,"src":"1389:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":65440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1389:18:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":65442,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65432,"src":"1421:7:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65441,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65538,"src":"1409:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":65443,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1409:20:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":65444,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65434,"src":"1431:6:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":65437,"name":"_spendAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":4456,"src":"1373:15:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":65445,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1373:65:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":65446,"nodeType":"ExpressionStatement","src":"1373:65:94"}]},"functionSelector":"d30ed3b3","implemented":true,"kind":"function","modifiers":[],"name":"directSpendAllowance","nameLocation":"1279:20:94","parameters":{"id":65435,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65430,"mutability":"mutable","name":"owner","nameLocation":"1308:5:94","nodeType":"VariableDeclaration","scope":65448,"src":"1300:13:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65429,"name":"address","nodeType":"ElementaryTypeName","src":"1300:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65432,"mutability":"mutable","name":"spender","nameLocation":"1323:7:94","nodeType":"VariableDeclaration","scope":65448,"src":"1315:15:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65431,"name":"address","nodeType":"ElementaryTypeName","src":"1315:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65434,"mutability":"mutable","name":"amount","nameLocation":"1340:6:94","nodeType":"VariableDeclaration","scope":65448,"src":"1332:14:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65433,"name":"uint256","nodeType":"ElementaryTypeName","src":"1332:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1299:48:94"},"returnParameters":{"id":65436,"nodeType":"ParameterList","parameters":[],"src":"1363:0:94"},"scope":65539,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":65467,"nodeType":"FunctionDefinition","src":"1451:148:94","nodes":[],"body":{"id":65466,"nodeType":"Block","src":"1536:63:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65461,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65450,"src":"1580:2:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65460,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65538,"src":"1568:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":65462,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1568:15:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":65463,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65452,"src":"1585:6:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":65458,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"1553:5:94","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_GV2ERC20_$65539_$","typeString":"type(contract super GV2ERC20)"}},"id":65459,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1559:8:94","memberName":"transfer","nodeType":"MemberAccess","referencedDeclaration":4282,"src":"1553:14:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) returns (bool)"}},"id":65464,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1553:39:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":65457,"id":65465,"nodeType":"Return","src":"1546:46:94"}]},"baseFunctions":[4282],"functionSelector":"a9059cbb","implemented":true,"kind":"function","modifiers":[],"name":"transfer","nameLocation":"1460:8:94","overrides":{"id":65454,"nodeType":"OverrideSpecifier","overrides":[],"src":"1512:8:94"},"parameters":{"id":65453,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65450,"mutability":"mutable","name":"to","nameLocation":"1477:2:94","nodeType":"VariableDeclaration","scope":65467,"src":"1469:10:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65449,"name":"address","nodeType":"ElementaryTypeName","src":"1469:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65452,"mutability":"mutable","name":"amount","nameLocation":"1489:6:94","nodeType":"VariableDeclaration","scope":65467,"src":"1481:14:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65451,"name":"uint256","nodeType":"ElementaryTypeName","src":"1481:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1468:28:94"},"returnParameters":{"id":65457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65456,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65467,"src":"1530:4:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":65455,"name":"bool","nodeType":"ElementaryTypeName","src":"1530:4:94","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1529:6:94"},"scope":65539,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":65491,"nodeType":"FunctionDefinition","src":"1605:189:94","nodes":[],"body":{"id":65490,"nodeType":"Block","src":"1708:86:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65482,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65469,"src":"1756:4:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65481,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65538,"src":"1744:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":65483,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1744:17:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":65485,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65471,"src":"1775:2:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65484,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65538,"src":"1763:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":65486,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1763:15:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":65487,"name":"amount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65473,"src":"1780:6:94","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":65479,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"1725:5:94","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_GV2ERC20_$65539_$","typeString":"type(contract super GV2ERC20)"}},"id":65480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1731:12:94","memberName":"transferFrom","nodeType":"MemberAccess","referencedDeclaration":4310,"src":"1725:18:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,address,uint256) returns (bool)"}},"id":65488,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1725:62:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":65478,"id":65489,"nodeType":"Return","src":"1718:69:94"}]},"baseFunctions":[4310],"functionSelector":"23b872dd","implemented":true,"kind":"function","modifiers":[],"name":"transferFrom","nameLocation":"1614:12:94","overrides":{"id":65475,"nodeType":"OverrideSpecifier","overrides":[],"src":"1684:8:94"},"parameters":{"id":65474,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65469,"mutability":"mutable","name":"from","nameLocation":"1635:4:94","nodeType":"VariableDeclaration","scope":65491,"src":"1627:12:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65468,"name":"address","nodeType":"ElementaryTypeName","src":"1627:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65471,"mutability":"mutable","name":"to","nameLocation":"1649:2:94","nodeType":"VariableDeclaration","scope":65491,"src":"1641:10:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65470,"name":"address","nodeType":"ElementaryTypeName","src":"1641:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65473,"mutability":"mutable","name":"amount","nameLocation":"1661:6:94","nodeType":"VariableDeclaration","scope":65491,"src":"1653:14:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65472,"name":"uint256","nodeType":"ElementaryTypeName","src":"1653:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1626:42:94"},"returnParameters":{"id":65478,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65477,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65491,"src":"1702:4:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":65476,"name":"bool","nodeType":"ElementaryTypeName","src":"1702:4:94","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1701:6:94"},"scope":65539,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":65510,"nodeType":"FunctionDefinition","src":"1800:184:94","nodes":[],"body":{"id":65509,"nodeType":"Block","src":"1903:81:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65504,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65493,"src":"1956:7:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65503,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65538,"src":"1944:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":65505,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1944:20:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":65506,"name":"difference","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65495,"src":"1966:10:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":65501,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"1920:5:94","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_GV2ERC20_$65539_$","typeString":"type(contract super GV2ERC20)"}},"id":65502,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1926:17:94","memberName":"increaseAllowance","nodeType":"MemberAccess","referencedDeclaration":4240,"src":"1920:23:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) returns (bool)"}},"id":65507,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1920:57:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":65500,"id":65508,"nodeType":"Return","src":"1913:64:94"}]},"baseFunctions":[4240],"functionSelector":"39509351","implemented":true,"kind":"function","modifiers":[],"name":"increaseAllowance","nameLocation":"1809:17:94","overrides":{"id":65497,"nodeType":"OverrideSpecifier","overrides":[],"src":"1879:8:94"},"parameters":{"id":65496,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65493,"mutability":"mutable","name":"spender","nameLocation":"1835:7:94","nodeType":"VariableDeclaration","scope":65510,"src":"1827:15:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65492,"name":"address","nodeType":"ElementaryTypeName","src":"1827:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65495,"mutability":"mutable","name":"difference","nameLocation":"1852:10:94","nodeType":"VariableDeclaration","scope":65510,"src":"1844:18:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65494,"name":"uint256","nodeType":"ElementaryTypeName","src":"1844:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1826:37:94"},"returnParameters":{"id":65500,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65499,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65510,"src":"1897:4:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":65498,"name":"bool","nodeType":"ElementaryTypeName","src":"1897:4:94","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1896:6:94"},"scope":65539,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":65529,"nodeType":"FunctionDefinition","src":"1990:184:94","nodes":[],"body":{"id":65528,"nodeType":"Block","src":"2093:81:94","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"id":65523,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65512,"src":"2146:7:94","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65522,"name":"_brutalized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65538,"src":"2134:11:94","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_address_$","typeString":"function (address) view returns (address)"}},"id":65524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2134:20:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":65525,"name":"difference","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65514,"src":"2156:10:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":65520,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"2110:5:94","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_GV2ERC20_$65539_$","typeString":"type(contract super GV2ERC20)"}},"id":65521,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2116:17:94","memberName":"decreaseAllowance","nodeType":"MemberAccess","referencedDeclaration":4254,"src":"2110:23:94","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) returns (bool)"}},"id":65526,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2110:57:94","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":65519,"id":65527,"nodeType":"Return","src":"2103:64:94"}]},"baseFunctions":[4254],"functionSelector":"a457c2d7","implemented":true,"kind":"function","modifiers":[],"name":"decreaseAllowance","nameLocation":"1999:17:94","overrides":{"id":65516,"nodeType":"OverrideSpecifier","overrides":[],"src":"2069:8:94"},"parameters":{"id":65515,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65512,"mutability":"mutable","name":"spender","nameLocation":"2025:7:94","nodeType":"VariableDeclaration","scope":65529,"src":"2017:15:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65511,"name":"address","nodeType":"ElementaryTypeName","src":"2017:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":65514,"mutability":"mutable","name":"difference","nameLocation":"2042:10:94","nodeType":"VariableDeclaration","scope":65529,"src":"2034:18:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65513,"name":"uint256","nodeType":"ElementaryTypeName","src":"2034:7:94","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2016:37:94"},"returnParameters":{"id":65519,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65518,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65529,"src":"2087:4:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":65517,"name":"bool","nodeType":"ElementaryTypeName","src":"2087:4:94","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2086:6:94"},"scope":65539,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":65538,"nodeType":"FunctionDefinition","src":"2180:168:94","nodes":[],"body":{"id":65537,"nodeType":"Block","src":"2251:97:94","nodes":[],"statements":[{"AST":{"nodeType":"YulBlock","src":"2286:56:94","statements":[{"nodeType":"YulAssignment","src":"2300:32:94","value":{"arguments":[{"name":"a","nodeType":"YulIdentifier","src":"2313:1:94"},{"arguments":[{"kind":"number","nodeType":"YulLiteral","src":"2320:3:94","type":"","value":"160"},{"arguments":[],"functionName":{"name":"gas","nodeType":"YulIdentifier","src":"2325:3:94"},"nodeType":"YulFunctionCall","src":"2325:5:94"}],"functionName":{"name":"shl","nodeType":"YulIdentifier","src":"2316:3:94"},"nodeType":"YulFunctionCall","src":"2316:15:94"}],"functionName":{"name":"or","nodeType":"YulIdentifier","src":"2310:2:94"},"nodeType":"YulFunctionCall","src":"2310:22:94"},"variableNames":[{"name":"result","nodeType":"YulIdentifier","src":"2300:6:94"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":65531,"isOffset":false,"isSlot":false,"src":"2313:1:94","valueSize":1},{"declaration":65534,"isOffset":false,"isSlot":false,"src":"2300:6:94","valueSize":1}],"flags":["memory-safe"],"id":65536,"nodeType":"InlineAssembly","src":"2261:81:94"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_brutalized","nameLocation":"2189:11:94","parameters":{"id":65532,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65531,"mutability":"mutable","name":"a","nameLocation":"2209:1:94","nodeType":"VariableDeclaration","scope":65538,"src":"2201:9:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65530,"name":"address","nodeType":"ElementaryTypeName","src":"2201:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2200:11:94"},"returnParameters":{"id":65535,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65534,"mutability":"mutable","name":"result","nameLocation":"2243:6:94","nodeType":"VariableDeclaration","scope":65538,"src":"2235:14:94","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65533,"name":"address","nodeType":"ElementaryTypeName","src":"2235:7:94","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2234:16:94"},"scope":65539,"stateMutability":"view","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[{"baseName":{"id":65322,"name":"ERC20","nameLocations":["311:5:94"],"nodeType":"IdentifierPath","referencedDeclaration":4491,"src":"311:5:94"},"id":65323,"nodeType":"InheritanceSpecifier","src":"311:5:94"}],"canonicalName":"GV2ERC20","contractDependencies":[],"contractKind":"contract","documentation":{"id":65321,"nodeType":"StructuredDocumentation","src":"120:170:94","text":"@dev WARNING! This mock is strictly intended for testing purposes only.\n Do NOT copy anything here into production code unless you really know what you are doing."},"fullyImplemented":true,"linearizedBaseContracts":[65539,4491],"name":"GV2ERC20","nameLocation":"299:8:94","scope":65540,"usedErrors":[4101,4104,4107,4110,4113,4116,4119]}],"license":"AGPL-3.0-only"},"id":94} \ No newline at end of file diff --git a/pkg/contracts/out/IAllo.sol/IAllo.json b/pkg/contracts/out/IAllo.sol/IAllo.json index eec655d21..db3dd2181 100644 --- a/pkg/contracts/out/IAllo.sol/IAllo.json +++ b/pkg/contracts/out/IAllo.sol/IAllo.json @@ -1 +1 @@ -{"abi":[{"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":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"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":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"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":"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":"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":"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":"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":"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":"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}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"addPoolManager(uint256,address)":"2cf682b0","addToCloneableStrategies(address)":"41bba0b4","allocate(uint256,bytes)":"2ec38188","batchAllocate(uint256[],bytes[])":"c6dff1cf","batchRegisterRecipient(uint256[],bytes[])":"1a20bd88","distribute(uint256,address[],bytes)":"3a5fbd92","fundPool(uint256,uint256)":"5acd6fac","getBaseFee()":"15e812ad","getFeeDenominator()":"f4e1fc41","getPercentFee()":"4edbaadc","getPool(uint256)":"068bcd8d","getRegistry()":"5ab1bd53","getStrategy(uint256)":"cfc0cc34","getTreasury()":"3b19e84a","initialize(address,address,address,uint256,uint256)":"a6b63eb8","isCloneableStrategy(address)":"ab2ec589","isPoolAdmin(uint256,address)":"ab3febc6","isPoolManager(uint256,address)":"29e40d4b","recoverFunds(address,address)":"24ae6a27","registerRecipient(uint256,bytes)":"075c0e9c","removeFromCloneableStrategies(address)":"031e2fa1","removePoolManager(uint256,address)":"7f5a70bd","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\":[{\"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\":\"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\":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\":[{\"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\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"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\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"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\":\"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\":\"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\":[{\"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\":[{\"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 \",\"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\"}},\"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\"}},\"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\":\"'msg.sender' must be a pool admin.\",\"params\":{\"_manager\":\"The address of the manager to add\",\"_poolId\":\"The ID of the pool to add the manager to\"}},\"addToCloneableStrategies(address)\":{\"details\":\"'msg.sender' must be the Allo contract owner.\",\"params\":{\"_strategy\":\"The address of the strategy to add\"}},\"allocate(uint256,bytes)\":{\"details\":\"Each strategy will handle the allocation of funds differently.\",\"params\":{\"_data\":\"The data to pass to the strategy and may be handled differently by each strategy.\",\"_poolId\":\"The ID of the pool to allocate funds from\"}},\"batchAllocate(uint256[],bytes[])\":{\"details\":\"Each strategy will handle the allocation of funds differently\"},\"batchRegisterRecipient(uint256[],bytes[])\":{\"params\":{\"_data\":\"The data to pass to the strategy and may be handled differently by each strategy\",\"_poolIds\":\"The pool ID's to register the recipients for\"}},\"distribute(uint256,address[],bytes)\":{\"details\":\"Each strategy will handle the distribution of funds differently\",\"params\":{\"_data\":\"The data to pass to the strategy and may be handled differently by each strategy\",\"_poolId\":\"The ID of the pool to distribute from\",\"_recipientIds\":\"The recipient ids to distribute to\"}},\"fundPool(uint256,uint256)\":{\"details\":\"'msg.value' must be greater than 0 if the token is the native token or '_amount' must be greater than 0 if the token is not the native token.\",\"params\":{\"_amount\":\"The amount to fund the pool with\",\"_poolId\":\"The ID of the pool to fund\"}},\"getBaseFee()\":{\"returns\":{\"_0\":\"baseFee The current base fee\"}},\"getFeeDenominator()\":{\"details\":\"1e18 represents 100%\",\"returns\":{\"_0\":\"feeDenominator The current fee denominator\"}},\"getPercentFee()\":{\"returns\":{\"_0\":\"percentFee The current percentage for the fee\"}},\"getPool(uint256)\":{\"params\":{\"_poolId\":\"The ID of the pool to check\"},\"returns\":{\"_0\":\"pool The 'Pool' struct for the ID of the pool passed in\"}},\"getRegistry()\":{\"returns\":{\"_0\":\"registry The current registry address\"}},\"getStrategy(uint256)\":{\"params\":{\"_poolId\":\"The ID of the pool to check\"},\"returns\":{\"_0\":\"strategy The address of the strategy for the ID of the pool passed in\"}},\"getTreasury()\":{\"returns\":{\"_0\":\"treasury The current treasury address\"}},\"initialize(address,address,address,uint256,uint256)\":{\"params\":{\"_baseFee\":\"Base fee amount\",\"_owner\":\"Address of the owner\",\"_percentFee\":\"Percentage for the fee\",\"_registry\":\"Address of the registry contract\",\"_treasury\":\"Address of the treasury\"}},\"isCloneableStrategy(address)\":{\"params\":{\"_strategy\":\"The address of the strategy to check\"},\"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 to check\"},\"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 to check\"},\"returns\":{\"_0\":\"'true' if the '_address' is a pool manager, otherwise 'false'\"}},\"recoverFunds(address,address)\":{\"details\":\"'msg.sender' must be a pool admin.\",\"params\":{\"_recipient\":\"The address to send the recovered funds to\",\"_token\":\"The token to recover\"}},\"registerRecipient(uint256,bytes)\":{\"params\":{\"_poolId\":\"The ID of the pool to register the recipient for\"}},\"removeFromCloneableStrategies(address)\":{\"details\":\"'msg.sender' must be the Allo contract owner.\",\"params\":{\"_strategy\":\"The address of the strategy to remove\"}},\"removePoolManager(uint256,address)\":{\"details\":\"'msg.sender' must be a pool admin.\",\"params\":{\"_manager\":\"The address of the manager to remove\",\"_poolId\":\"The ID of the pool to remove the manager from\"}},\"updateBaseFee(uint256)\":{\"details\":\"'msg.sender' must be the Allo contract owner.\",\"params\":{\"_baseFee\":\"The new base fee\"}},\"updatePercentFee(uint256)\":{\"details\":\"'msg.sender' must be the Allo contract owner.\",\"params\":{\"_percentFee\":\"The new percentage for the fee\"}},\"updatePoolMetadata(uint256,(uint256,string))\":{\"details\":\"'msg.sender' must be a pool admin.\",\"params\":{\"_metadata\":\"The new metadata to set\",\"_poolId\":\"The ID of the pool to update\"}},\"updateRegistry(address)\":{\"details\":\"'msg.sender' must be the Allo contract owner.\",\"params\":{\"_registry\":\"The new registry address\"}},\"updateTreasury(address)\":{\"details\":\"'msg.sender' must be the Allo contract owner.\",\"params\":{\"_treasury\":\"The new treasury address\"}}},\"title\":\"Allo Interface\",\"version\":1},\"userdoc\":{\"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\":{\"addPoolManager(uint256,address)\":{\"notice\":\"Adds a pool manager to the pool.\"},\"addToCloneableStrategies(address)\":{\"notice\":\"Adds a strategy to the cloneable strategies.\"},\"allocate(uint256,bytes)\":{\"notice\":\"Allocates funds to a recipient.\"},\"batchAllocate(uint256[],bytes[])\":{\"notice\":\"Allocates funds to multiple recipients.\"},\"batchRegisterRecipient(uint256[],bytes[])\":{\"notice\":\"Registers a batch of recipients.\"},\"distribute(uint256,address[],bytes)\":{\"notice\":\"Distributes funds to recipients and emits {Distributed} event if successful\"},\"fundPool(uint256,uint256)\":{\"notice\":\"Funds a pool.\"},\"getBaseFee()\":{\"notice\":\"Returns the current base fee\"},\"getFeeDenominator()\":{\"notice\":\"Returns the current fee denominator\"},\"getPercentFee()\":{\"notice\":\"Returns the current percent fee\"},\"getPool(uint256)\":{\"notice\":\"Returns the 'Pool' struct for a given 'poolId'\"},\"getRegistry()\":{\"notice\":\"Returns the current registry address\"},\"getStrategy(uint256)\":{\"notice\":\"Returns the address of the strategy for a given 'poolId'\"},\"getTreasury()\":{\"notice\":\"Returns the current treasury address\"},\"initialize(address,address,address,uint256,uint256)\":{\"notice\":\"Initialize the Allo contract\"},\"isCloneableStrategy(address)\":{\"notice\":\"Checks if a strategy is cloneable (is in the cloneableStrategies mapping).\"},\"isPoolAdmin(uint256,address)\":{\"notice\":\"Checks if an address is a pool admin.\"},\"isPoolManager(uint256,address)\":{\"notice\":\"Checks if an address is a pool manager.\"},\"recoverFunds(address,address)\":{\"notice\":\"Recovers funds from a pool.\"},\"registerRecipient(uint256,bytes)\":{\"notice\":\"Registers a recipient and emits {Registered} event if successful and may be handled differently by each strategy.\"},\"removeFromCloneableStrategies(address)\":{\"notice\":\"Removes a strategy from the cloneable strategies.\"},\"removePoolManager(uint256,address)\":{\"notice\":\"Removes a pool manager from the pool.\"},\"updateBaseFee(uint256)\":{\"notice\":\"Updates the base fee.\"},\"updatePercentFee(uint256)\":{\"notice\":\"Updates the percentage for the fee.\"},\"updatePoolMetadata(uint256,(uint256,string))\":{\"notice\":\"Updates a pools metadata.\"},\"updateRegistry(address)\":{\"notice\":\"Update the registry address.\"},\"updateTreasury(address)\":{\"notice\":\"Updates the treasury address.\"}},\"notice\":\"Interface for the Allo contract. It exposes all functions needed to use the Allo protocol.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":\"IAllo\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"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":"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":"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":[{"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":"","type":"address[]"}]},{"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":"view","type":"function","name":"getFeeDenominator","outputs":[{"internalType":"uint256","name":"","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":"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":"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":[{"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":[{"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":"'msg.sender' must be a pool admin.","params":{"_manager":"The address of the manager to add","_poolId":"The ID of the pool to add the manager to"}},"addToCloneableStrategies(address)":{"details":"'msg.sender' must be the Allo contract owner.","params":{"_strategy":"The address of the strategy to add"}},"allocate(uint256,bytes)":{"details":"Each strategy will handle the allocation of funds differently.","params":{"_data":"The data to pass to the strategy and may be handled differently by each strategy.","_poolId":"The ID of the pool to allocate funds from"}},"batchAllocate(uint256[],bytes[])":{"details":"Each strategy will handle the allocation of funds differently"},"batchRegisterRecipient(uint256[],bytes[])":{"params":{"_data":"The data to pass to the strategy and may be handled differently by each strategy","_poolIds":"The pool ID's to register the recipients for"}},"distribute(uint256,address[],bytes)":{"details":"Each strategy will handle the distribution of funds differently","params":{"_data":"The data to pass to the strategy and may be handled differently by each strategy","_poolId":"The ID of the pool to distribute from","_recipientIds":"The recipient ids to distribute to"}},"fundPool(uint256,uint256)":{"details":"'msg.value' must be greater than 0 if the token is the native token or '_amount' must be greater than 0 if the token is not the native token.","params":{"_amount":"The amount to fund the pool with","_poolId":"The ID of the pool to fund"}},"getBaseFee()":{"returns":{"_0":"baseFee The current base fee"}},"getFeeDenominator()":{"details":"1e18 represents 100%","returns":{"_0":"feeDenominator The current fee denominator"}},"getPercentFee()":{"returns":{"_0":"percentFee The current percentage for the fee"}},"getPool(uint256)":{"params":{"_poolId":"The ID of the pool to check"},"returns":{"_0":"pool The 'Pool' struct for the ID of the pool passed in"}},"getRegistry()":{"returns":{"_0":"registry The current registry address"}},"getStrategy(uint256)":{"params":{"_poolId":"The ID of the pool to check"},"returns":{"_0":"strategy The address of the strategy for the ID of the pool passed in"}},"getTreasury()":{"returns":{"_0":"treasury The current treasury address"}},"initialize(address,address,address,uint256,uint256)":{"params":{"_baseFee":"Base fee amount","_owner":"Address of the owner","_percentFee":"Percentage for the fee","_registry":"Address of the registry contract","_treasury":"Address of the treasury"}},"isCloneableStrategy(address)":{"params":{"_strategy":"The address of the strategy to check"},"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 to check"},"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 to check"},"returns":{"_0":"'true' if the '_address' is a pool manager, otherwise 'false'"}},"recoverFunds(address,address)":{"details":"'msg.sender' must be a pool admin.","params":{"_recipient":"The address to send the recovered funds to","_token":"The token to recover"}},"registerRecipient(uint256,bytes)":{"params":{"_poolId":"The ID of the pool to register the recipient for"}},"removeFromCloneableStrategies(address)":{"details":"'msg.sender' must be the Allo contract owner.","params":{"_strategy":"The address of the strategy to remove"}},"removePoolManager(uint256,address)":{"details":"'msg.sender' must be a pool admin.","params":{"_manager":"The address of the manager to remove","_poolId":"The ID of the pool to remove the manager from"}},"updateBaseFee(uint256)":{"details":"'msg.sender' must be the Allo contract owner.","params":{"_baseFee":"The new base fee"}},"updatePercentFee(uint256)":{"details":"'msg.sender' must be the Allo contract owner.","params":{"_percentFee":"The new percentage for the fee"}},"updatePoolMetadata(uint256,(uint256,string))":{"details":"'msg.sender' must be a pool admin.","params":{"_metadata":"The new metadata to set","_poolId":"The ID of the pool to update"}},"updateRegistry(address)":{"details":"'msg.sender' must be the Allo contract owner.","params":{"_registry":"The new registry address"}},"updateTreasury(address)":{"details":"'msg.sender' must be the Allo contract owner.","params":{"_treasury":"The new treasury address"}}},"version":1},"userdoc":{"kind":"user","methods":{"addPoolManager(uint256,address)":{"notice":"Adds a pool manager to the pool."},"addToCloneableStrategies(address)":{"notice":"Adds a strategy to the cloneable strategies."},"allocate(uint256,bytes)":{"notice":"Allocates funds to a recipient."},"batchAllocate(uint256[],bytes[])":{"notice":"Allocates funds to multiple recipients."},"batchRegisterRecipient(uint256[],bytes[])":{"notice":"Registers a batch of recipients."},"distribute(uint256,address[],bytes)":{"notice":"Distributes funds to recipients and emits {Distributed} event if successful"},"fundPool(uint256,uint256)":{"notice":"Funds a pool."},"getBaseFee()":{"notice":"Returns the current base fee"},"getFeeDenominator()":{"notice":"Returns the current fee denominator"},"getPercentFee()":{"notice":"Returns the current percent fee"},"getPool(uint256)":{"notice":"Returns the 'Pool' struct for a given 'poolId'"},"getRegistry()":{"notice":"Returns the current registry address"},"getStrategy(uint256)":{"notice":"Returns the address of the strategy for a given 'poolId'"},"getTreasury()":{"notice":"Returns the current treasury address"},"initialize(address,address,address,uint256,uint256)":{"notice":"Initialize the Allo contract"},"isCloneableStrategy(address)":{"notice":"Checks if a strategy is cloneable (is in the cloneableStrategies mapping)."},"isPoolAdmin(uint256,address)":{"notice":"Checks if an address is a pool admin."},"isPoolManager(uint256,address)":{"notice":"Checks if an address is a pool manager."},"recoverFunds(address,address)":{"notice":"Recovers funds from a pool."},"registerRecipient(uint256,bytes)":{"notice":"Registers a recipient and emits {Registered} event if successful and may be handled differently by each strategy."},"removeFromCloneableStrategies(address)":{"notice":"Removes a strategy from the cloneable strategies."},"removePoolManager(uint256,address)":{"notice":"Removes a pool manager from the pool."},"updateBaseFee(uint256)":{"notice":"Updates the base fee."},"updatePercentFee(uint256)":{"notice":"Updates the percentage for the fee."},"updatePoolMetadata(uint256,(uint256,string))":{"notice":"Updates a pools metadata."},"updateRegistry(address)":{"notice":"Update 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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/IAllo.sol":"IAllo"},"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/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/allo-v2/contracts/core/interfaces/IAllo.sol","id":315,"exportedSymbols":{"IAllo":[314],"IRegistry":[506],"IStrategy":[673],"Metadata":[802]},"nodeType":"SourceUnit","src":"42:15030:0","nodes":[{"id":1,"nodeType":"PragmaDirective","src":"42:24:0","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":3,"nodeType":"ImportDirective","src":"82:42:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"./IRegistry.sol","nameLocation":"-1:-1:-1","scope":315,"sourceUnit":507,"symbolAliases":[{"foreign":{"id":2,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":506,"src":"90:9:0","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":5,"nodeType":"ImportDirective","src":"125:42:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IStrategy.sol","file":"./IStrategy.sol","nameLocation":"-1:-1:-1","scope":315,"sourceUnit":674,"symbolAliases":[{"foreign":{"id":4,"name":"IStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":673,"src":"133:9:0","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":7,"nodeType":"ImportDirective","src":"190:51:0","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"../libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":315,"sourceUnit":803,"symbolAliases":[{"foreign":{"id":6,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":802,"src":"198:8:0","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":314,"nodeType":"ContractDefinition","src":"4531:10540:0","nodes":[{"id":23,"nodeType":"StructDefinition","src":"4718:180:0","nodes":[],"canonicalName":"IAllo.Pool","members":[{"constant":false,"id":10,"mutability":"mutable","name":"profileId","nameLocation":"4748:9:0","nodeType":"VariableDeclaration","scope":23,"src":"4740:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":9,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4740:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":13,"mutability":"mutable","name":"strategy","nameLocation":"4777:8:0","nodeType":"VariableDeclaration","scope":23,"src":"4767:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$673","typeString":"contract IStrategy"},"typeName":{"id":12,"nodeType":"UserDefinedTypeName","pathNode":{"id":11,"name":"IStrategy","nameLocations":["4767:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":673,"src":"4767:9:0"},"referencedDeclaration":673,"src":"4767:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$673","typeString":"contract IStrategy"}},"visibility":"internal"},{"constant":false,"id":15,"mutability":"mutable","name":"token","nameLocation":"4803:5:0","nodeType":"VariableDeclaration","scope":23,"src":"4795:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":14,"name":"address","nodeType":"ElementaryTypeName","src":"4795:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":18,"mutability":"mutable","name":"metadata","nameLocation":"4827:8:0","nodeType":"VariableDeclaration","scope":23,"src":"4818:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":17,"nodeType":"UserDefinedTypeName","pathNode":{"id":16,"name":"Metadata","nameLocations":["4818:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"4818:8:0"},"referencedDeclaration":802,"src":"4818:8:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":20,"mutability":"mutable","name":"managerRole","nameLocation":"4853:11:0","nodeType":"VariableDeclaration","scope":23,"src":"4845:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":19,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4845:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":22,"mutability":"mutable","name":"adminRole","nameLocation":"4882:9:0","nodeType":"VariableDeclaration","scope":23,"src":"4874:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":21,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4874:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"name":"Pool","nameLocation":"4725:4:0","scope":314,"visibility":"public"},{"id":40,"nodeType":"EventDefinition","src":"5405:193:0","nodes":[],"anonymous":false,"documentation":{"id":24,"nodeType":"StructuredDocumentation","src":"4998:402:0","text":"@notice Event emitted when a new pool is created\n @param poolId ID of the pool created\n @param profileId ID of the profile the pool is associated with\n @param strategy Address of the strategy contract\n @param token Address of the token pool was funded with when created\n @param amount Amount pool was funded with when created\n @param metadata Pool metadata"},"eventSelector":"69bcb5a6cf6a3c95185cbb451e77787240c866dd2e8332597e3013ff18a1aba1","name":"PoolCreated","nameLocation":"5411:11:0","parameters":{"id":39,"nodeType":"ParameterList","parameters":[{"constant":false,"id":26,"indexed":true,"mutability":"mutable","name":"poolId","nameLocation":"5448:6:0","nodeType":"VariableDeclaration","scope":40,"src":"5432:22:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":25,"name":"uint256","nodeType":"ElementaryTypeName","src":"5432:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":28,"indexed":true,"mutability":"mutable","name":"profileId","nameLocation":"5480:9:0","nodeType":"VariableDeclaration","scope":40,"src":"5464:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":27,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5464:7:0","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":31,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"5509:8:0","nodeType":"VariableDeclaration","scope":40,"src":"5499:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$673","typeString":"contract IStrategy"},"typeName":{"id":30,"nodeType":"UserDefinedTypeName","pathNode":{"id":29,"name":"IStrategy","nameLocations":["5499:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":673,"src":"5499:9:0"},"referencedDeclaration":673,"src":"5499:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$673","typeString":"contract IStrategy"}},"visibility":"internal"},{"constant":false,"id":33,"indexed":false,"mutability":"mutable","name":"token","nameLocation":"5535:5:0","nodeType":"VariableDeclaration","scope":40,"src":"5527:13:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32,"name":"address","nodeType":"ElementaryTypeName","src":"5527:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":35,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"5558:6:0","nodeType":"VariableDeclaration","scope":40,"src":"5550:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":34,"name":"uint256","nodeType":"ElementaryTypeName","src":"5550:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":38,"indexed":false,"mutability":"mutable","name":"metadata","nameLocation":"5583:8:0","nodeType":"VariableDeclaration","scope":40,"src":"5574:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":37,"nodeType":"UserDefinedTypeName","pathNode":{"id":36,"name":"Metadata","nameLocations":["5574:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"5574:8:0"},"referencedDeclaration":802,"src":"5574:8:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"5422:175:0"}},{"id":48,"nodeType":"EventDefinition","src":"5761:69:0","nodes":[],"anonymous":false,"documentation":{"id":41,"nodeType":"StructuredDocumentation","src":"5604:152:0","text":"@notice Emitted when a pools metadata is updated\n @param poolId ID of the pool updated\n @param metadata Pool metadata that was updated"},"eventSelector":"14f52b76bda9e4c482842cefda2968d332933577988f224e80aae18fba10edf0","name":"PoolMetadataUpdated","nameLocation":"5767:19:0","parameters":{"id":47,"nodeType":"ParameterList","parameters":[{"constant":false,"id":43,"indexed":true,"mutability":"mutable","name":"poolId","nameLocation":"5803:6:0","nodeType":"VariableDeclaration","scope":48,"src":"5787:22:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":42,"name":"uint256","nodeType":"ElementaryTypeName","src":"5787:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":46,"indexed":false,"mutability":"mutable","name":"metadata","nameLocation":"5820:8:0","nodeType":"VariableDeclaration","scope":48,"src":"5811:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":45,"nodeType":"UserDefinedTypeName","pathNode":{"id":44,"name":"Metadata","nameLocations":["5811:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"5811:8:0"},"referencedDeclaration":802,"src":"5811:8:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"5786:43:0"}},{"id":57,"nodeType":"EventDefinition","src":"6032:70:0","nodes":[],"anonymous":false,"documentation":{"id":49,"nodeType":"StructuredDocumentation","src":"5836:191:0","text":"@notice Emitted when a pool is funded\n @param poolId ID of the pool funded\n @param amount Amount funded to the pool\n @param fee Amount of the fee paid to the treasury"},"eventSelector":"bf59838198f4ea92f663f5c1fc697f151a1b746b7dff86d564f250a55cbb4851","name":"PoolFunded","nameLocation":"6038:10:0","parameters":{"id":56,"nodeType":"ParameterList","parameters":[{"constant":false,"id":51,"indexed":true,"mutability":"mutable","name":"poolId","nameLocation":"6065:6:0","nodeType":"VariableDeclaration","scope":57,"src":"6049:22:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":50,"name":"uint256","nodeType":"ElementaryTypeName","src":"6049:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":53,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6081:6:0","nodeType":"VariableDeclaration","scope":57,"src":"6073:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":52,"name":"uint256","nodeType":"ElementaryTypeName","src":"6073:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":55,"indexed":false,"mutability":"mutable","name":"fee","nameLocation":"6097:3:0","nodeType":"VariableDeclaration","scope":57,"src":"6089:11:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":54,"name":"uint256","nodeType":"ElementaryTypeName","src":"6089:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6048:53:0"}},{"id":64,"nodeType":"EventDefinition","src":"6271:58:0","nodes":[],"anonymous":false,"documentation":{"id":58,"nodeType":"StructuredDocumentation","src":"6108:158:0","text":"@notice Emitted when the base fee is paid\n @param poolId ID of the pool the base fee was paid for\n @param amount Amount of the base fee paid"},"eventSelector":"02e340b51c6ae66fd22509c9b016f224c47a54063d4259fe3d860958e9eaac72","name":"BaseFeePaid","nameLocation":"6277:11:0","parameters":{"id":63,"nodeType":"ParameterList","parameters":[{"constant":false,"id":60,"indexed":true,"mutability":"mutable","name":"poolId","nameLocation":"6305:6:0","nodeType":"VariableDeclaration","scope":64,"src":"6289:22:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":59,"name":"uint256","nodeType":"ElementaryTypeName","src":"6289:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":62,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6321:6:0","nodeType":"VariableDeclaration","scope":64,"src":"6313:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":61,"name":"uint256","nodeType":"ElementaryTypeName","src":"6313:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6288:40:0"}},{"id":69,"nodeType":"EventDefinition","src":"6448:40:0","nodes":[],"anonymous":false,"documentation":{"id":65,"nodeType":"StructuredDocumentation","src":"6335:108:0","text":"@notice Emitted when the treasury address is updated\n @param treasury Address of the new treasury"},"eventSelector":"7dae230f18360d76a040c81f050aa14eb9d6dc7901b20fc5d855e2a20fe814d1","name":"TreasuryUpdated","nameLocation":"6454:15:0","parameters":{"id":68,"nodeType":"ParameterList","parameters":[{"constant":false,"id":67,"indexed":false,"mutability":"mutable","name":"treasury","nameLocation":"6478:8:0","nodeType":"VariableDeclaration","scope":69,"src":"6470:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":66,"name":"address","nodeType":"ElementaryTypeName","src":"6470:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6469:18:0"}},{"id":74,"nodeType":"EventDefinition","src":"6603:44:0","nodes":[],"anonymous":false,"documentation":{"id":70,"nodeType":"StructuredDocumentation","src":"6494:104:0","text":"@notice Emitted when the percent fee is updated\n @param percentFee New percentage for the fee"},"eventSelector":"9e826789de2de708fd9f09edea1182545e543893caa8ff71f8eb3aab50a4b065","name":"PercentFeeUpdated","nameLocation":"6609:17:0","parameters":{"id":73,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72,"indexed":false,"mutability":"mutable","name":"percentFee","nameLocation":"6635:10:0","nodeType":"VariableDeclaration","scope":74,"src":"6627:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71,"name":"uint256","nodeType":"ElementaryTypeName","src":"6627:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6626:20:0"}},{"id":79,"nodeType":"EventDefinition","src":"6749:38:0","nodes":[],"anonymous":false,"documentation":{"id":75,"nodeType":"StructuredDocumentation","src":"6653:91:0","text":"@notice Emitted when the base fee is updated\n @param baseFee New base fee amount"},"eventSelector":"803bee7e92bbc6ae7a1551f9f4ed3e31a8ea8df32e93332f41b0028f1091f9c3","name":"BaseFeeUpdated","nameLocation":"6755:14:0","parameters":{"id":78,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77,"indexed":false,"mutability":"mutable","name":"baseFee","nameLocation":"6778:7:0","nodeType":"VariableDeclaration","scope":79,"src":"6770:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76,"name":"uint256","nodeType":"ElementaryTypeName","src":"6770:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6769:17:0"}},{"id":84,"nodeType":"EventDefinition","src":"6906:40:0","nodes":[],"anonymous":false,"documentation":{"id":80,"nodeType":"StructuredDocumentation","src":"6793:108:0","text":"@notice Emitted when the registry address is updated\n @param registry Address of the new registry"},"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"6912:15:0","parameters":{"id":83,"nodeType":"ParameterList","parameters":[{"constant":false,"id":82,"indexed":false,"mutability":"mutable","name":"registry","nameLocation":"6936:8:0","nodeType":"VariableDeclaration","scope":84,"src":"6928:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":81,"name":"address","nodeType":"ElementaryTypeName","src":"6928:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6927:18:0"}},{"id":89,"nodeType":"EventDefinition","src":"7099:41:0","nodes":[],"anonymous":false,"documentation":{"id":85,"nodeType":"StructuredDocumentation","src":"6952:142:0","text":"@notice Emitted when a strategy is approved and added to the cloneable strategies\n @param strategy Address of the strategy approved"},"eventSelector":"960dd94cbb79169f09a4e445d58b895df2d9bffa5b31055d0932d801724a20d1","name":"StrategyApproved","nameLocation":"7105:16:0","parameters":{"id":88,"nodeType":"ParameterList","parameters":[{"constant":false,"id":87,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7130:8:0","nodeType":"VariableDeclaration","scope":89,"src":"7122:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":86,"name":"address","nodeType":"ElementaryTypeName","src":"7122:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7121:18:0"}},{"id":94,"nodeType":"EventDefinition","src":"7283:40:0","nodes":[],"anonymous":false,"documentation":{"id":90,"nodeType":"StructuredDocumentation","src":"7146:132:0","text":"@notice Emitted when a strategy is removed from the cloneable strategies\n @param strategy Address of the strategy removed"},"eventSelector":"09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4","name":"StrategyRemoved","nameLocation":"7289:15:0","parameters":{"id":93,"nodeType":"ParameterList","parameters":[{"constant":false,"id":92,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7313:8:0","nodeType":"VariableDeclaration","scope":94,"src":"7305:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":91,"name":"address","nodeType":"ElementaryTypeName","src":"7305:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7304:18:0"}},{"id":108,"nodeType":"FunctionDefinition","src":"7750:176:0","nodes":[],"documentation":{"id":95,"nodeType":"StructuredDocumentation","src":"7465:280:0","text":"@notice Initialize the Allo contract\n @param _owner Address of the owner\n @param _registry Address of the registry contract\n @param _treasury Address of the treasury\n @param _percentFee Percentage for the fee\n @param _baseFee Base fee amount"},"functionSelector":"a6b63eb8","implemented":false,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"7759:10:0","parameters":{"id":106,"nodeType":"ParameterList","parameters":[{"constant":false,"id":97,"mutability":"mutable","name":"_owner","nameLocation":"7787:6:0","nodeType":"VariableDeclaration","scope":108,"src":"7779:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":96,"name":"address","nodeType":"ElementaryTypeName","src":"7779:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":99,"mutability":"mutable","name":"_registry","nameLocation":"7811:9:0","nodeType":"VariableDeclaration","scope":108,"src":"7803:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":98,"name":"address","nodeType":"ElementaryTypeName","src":"7803:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":101,"mutability":"mutable","name":"_treasury","nameLocation":"7846:9:0","nodeType":"VariableDeclaration","scope":108,"src":"7830:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":100,"name":"address","nodeType":"ElementaryTypeName","src":"7830:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":103,"mutability":"mutable","name":"_percentFee","nameLocation":"7873:11:0","nodeType":"VariableDeclaration","scope":108,"src":"7865:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":102,"name":"uint256","nodeType":"ElementaryTypeName","src":"7865:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":105,"mutability":"mutable","name":"_baseFee","nameLocation":"7902:8:0","nodeType":"VariableDeclaration","scope":108,"src":"7894:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":104,"name":"uint256","nodeType":"ElementaryTypeName","src":"7894:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7769:147:0"},"returnParameters":{"id":107,"nodeType":"ParameterList","parameters":[],"src":"7925:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":117,"nodeType":"FunctionDefinition","src":"8123:81:0","nodes":[],"documentation":{"id":109,"nodeType":"StructuredDocumentation","src":"7932:186:0","text":"@notice Updates a pools metadata.\n @dev 'msg.sender' must be a pool admin.\n @param _poolId The ID of the pool to update\n @param _metadata The new metadata to set"},"functionSelector":"5f9ca138","implemented":false,"kind":"function","modifiers":[],"name":"updatePoolMetadata","nameLocation":"8132:18:0","parameters":{"id":115,"nodeType":"ParameterList","parameters":[{"constant":false,"id":111,"mutability":"mutable","name":"_poolId","nameLocation":"8159:7:0","nodeType":"VariableDeclaration","scope":117,"src":"8151:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":110,"name":"uint256","nodeType":"ElementaryTypeName","src":"8151:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":114,"mutability":"mutable","name":"_metadata","nameLocation":"8184:9:0","nodeType":"VariableDeclaration","scope":117,"src":"8168:25:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":113,"nodeType":"UserDefinedTypeName","pathNode":{"id":112,"name":"Metadata","nameLocations":["8168:8:0"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"8168:8:0"},"referencedDeclaration":802,"src":"8168:8:0","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"8150:44:0"},"returnParameters":{"id":116,"nodeType":"ParameterList","parameters":[],"src":"8203:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":123,"nodeType":"FunctionDefinition","src":"8364:52:0","nodes":[],"documentation":{"id":118,"nodeType":"StructuredDocumentation","src":"8210:149:0","text":"@notice Update the registry address.\n @dev 'msg.sender' must be the Allo contract owner.\n @param _registry The new registry address"},"functionSelector":"1a5da6c8","implemented":false,"kind":"function","modifiers":[],"name":"updateRegistry","nameLocation":"8373:14:0","parameters":{"id":121,"nodeType":"ParameterList","parameters":[{"constant":false,"id":120,"mutability":"mutable","name":"_registry","nameLocation":"8396:9:0","nodeType":"VariableDeclaration","scope":123,"src":"8388:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":119,"name":"address","nodeType":"ElementaryTypeName","src":"8388:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8387:19:0"},"returnParameters":{"id":122,"nodeType":"ParameterList","parameters":[],"src":"8415:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":129,"nodeType":"FunctionDefinition","src":"8577:60:0","nodes":[],"documentation":{"id":124,"nodeType":"StructuredDocumentation","src":"8422:150:0","text":"@notice Updates the treasury address.\n @dev 'msg.sender' must be the Allo contract owner.\n @param _treasury The new treasury address"},"functionSelector":"7f51bb1f","implemented":false,"kind":"function","modifiers":[],"name":"updateTreasury","nameLocation":"8586:14:0","parameters":{"id":127,"nodeType":"ParameterList","parameters":[{"constant":false,"id":126,"mutability":"mutable","name":"_treasury","nameLocation":"8617:9:0","nodeType":"VariableDeclaration","scope":129,"src":"8601:25:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":125,"name":"address","nodeType":"ElementaryTypeName","src":"8601:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"8600:27:0"},"returnParameters":{"id":128,"nodeType":"ParameterList","parameters":[],"src":"8636:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":135,"nodeType":"FunctionDefinition","src":"8812:56:0","nodes":[],"documentation":{"id":130,"nodeType":"StructuredDocumentation","src":"8643:164:0","text":"@notice Updates the percentage for the fee.\n @dev 'msg.sender' must be the Allo contract owner.\n @param _percentFee The new percentage for the fee"},"functionSelector":"f54fc4a0","implemented":false,"kind":"function","modifiers":[],"name":"updatePercentFee","nameLocation":"8821:16:0","parameters":{"id":133,"nodeType":"ParameterList","parameters":[{"constant":false,"id":132,"mutability":"mutable","name":"_percentFee","nameLocation":"8846:11:0","nodeType":"VariableDeclaration","scope":135,"src":"8838:19:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":131,"name":"uint256","nodeType":"ElementaryTypeName","src":"8838:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8837:21:0"},"returnParameters":{"id":134,"nodeType":"ParameterList","parameters":[],"src":"8867:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":141,"nodeType":"FunctionDefinition","src":"9012:50:0","nodes":[],"documentation":{"id":136,"nodeType":"StructuredDocumentation","src":"8874:133:0","text":"@notice Updates the base fee.\n @dev 'msg.sender' must be the Allo contract owner.\n @param _baseFee The new base fee"},"functionSelector":"8e690186","implemented":false,"kind":"function","modifiers":[],"name":"updateBaseFee","nameLocation":"9021:13:0","parameters":{"id":139,"nodeType":"ParameterList","parameters":[{"constant":false,"id":138,"mutability":"mutable","name":"_baseFee","nameLocation":"9043:8:0","nodeType":"VariableDeclaration","scope":141,"src":"9035:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":137,"name":"uint256","nodeType":"ElementaryTypeName","src":"9035:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"9034:18:0"},"returnParameters":{"id":140,"nodeType":"ParameterList","parameters":[],"src":"9061:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":147,"nodeType":"FunctionDefinition","src":"9248:62:0","nodes":[],"documentation":{"id":142,"nodeType":"StructuredDocumentation","src":"9068:175:0","text":"@notice Adds a strategy to the cloneable strategies.\n @dev 'msg.sender' must be the Allo contract owner.\n @param _strategy The address of the strategy to add"},"functionSelector":"41bba0b4","implemented":false,"kind":"function","modifiers":[],"name":"addToCloneableStrategies","nameLocation":"9257:24:0","parameters":{"id":145,"nodeType":"ParameterList","parameters":[{"constant":false,"id":144,"mutability":"mutable","name":"_strategy","nameLocation":"9290:9:0","nodeType":"VariableDeclaration","scope":147,"src":"9282:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":143,"name":"address","nodeType":"ElementaryTypeName","src":"9282:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9281:19:0"},"returnParameters":{"id":146,"nodeType":"ParameterList","parameters":[],"src":"9309:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":153,"nodeType":"FunctionDefinition","src":"9504:67:0","nodes":[],"documentation":{"id":148,"nodeType":"StructuredDocumentation","src":"9316:183:0","text":"@notice Removes a strategy from the cloneable strategies.\n @dev 'msg.sender' must be the Allo contract owner.\n @param _strategy The address of the strategy to remove"},"functionSelector":"031e2fa1","implemented":false,"kind":"function","modifiers":[],"name":"removeFromCloneableStrategies","nameLocation":"9513:29:0","parameters":{"id":151,"nodeType":"ParameterList","parameters":[{"constant":false,"id":150,"mutability":"mutable","name":"_strategy","nameLocation":"9551:9:0","nodeType":"VariableDeclaration","scope":153,"src":"9543:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":149,"name":"address","nodeType":"ElementaryTypeName","src":"9543:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9542:19:0"},"returnParameters":{"id":152,"nodeType":"ParameterList","parameters":[],"src":"9570:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":161,"nodeType":"FunctionDefinition","src":"9796:68:0","nodes":[],"documentation":{"id":154,"nodeType":"StructuredDocumentation","src":"9577:214:0","text":"@notice Adds a pool manager to the pool.\n @dev 'msg.sender' must be a pool admin.\n @param _poolId The ID of the pool to add the manager to\n @param _manager The address of the manager to add"},"functionSelector":"2cf682b0","implemented":false,"kind":"function","modifiers":[],"name":"addPoolManager","nameLocation":"9805:14:0","parameters":{"id":159,"nodeType":"ParameterList","parameters":[{"constant":false,"id":156,"mutability":"mutable","name":"_poolId","nameLocation":"9828:7:0","nodeType":"VariableDeclaration","scope":161,"src":"9820:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":155,"name":"uint256","nodeType":"ElementaryTypeName","src":"9820:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":158,"mutability":"mutable","name":"_manager","nameLocation":"9845:8:0","nodeType":"VariableDeclaration","scope":161,"src":"9837:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":157,"name":"address","nodeType":"ElementaryTypeName","src":"9837:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9819:35:0"},"returnParameters":{"id":160,"nodeType":"ParameterList","parameters":[],"src":"9863:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":169,"nodeType":"FunctionDefinition","src":"10102:71:0","nodes":[],"documentation":{"id":162,"nodeType":"StructuredDocumentation","src":"9870:227:0","text":"@notice Removes a pool manager from the pool.\n @dev 'msg.sender' must be a pool admin.\n @param _poolId The ID of the pool to remove the manager from\n @param _manager The address of the manager to remove"},"functionSelector":"7f5a70bd","implemented":false,"kind":"function","modifiers":[],"name":"removePoolManager","nameLocation":"10111:17:0","parameters":{"id":167,"nodeType":"ParameterList","parameters":[{"constant":false,"id":164,"mutability":"mutable","name":"_poolId","nameLocation":"10137:7:0","nodeType":"VariableDeclaration","scope":169,"src":"10129:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":163,"name":"uint256","nodeType":"ElementaryTypeName","src":"10129:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":166,"mutability":"mutable","name":"_manager","nameLocation":"10154:8:0","nodeType":"VariableDeclaration","scope":169,"src":"10146:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":165,"name":"address","nodeType":"ElementaryTypeName","src":"10146:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10128:35:0"},"returnParameters":{"id":168,"nodeType":"ParameterList","parameters":[],"src":"10172:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":177,"nodeType":"FunctionDefinition","src":"10383:67:0","nodes":[],"documentation":{"id":170,"nodeType":"StructuredDocumentation","src":"10179:199:0","text":"@notice Recovers funds from a pool.\n @dev 'msg.sender' must be a pool admin.\n @param _token The token to recover\n @param _recipient The address to send the recovered funds to"},"functionSelector":"24ae6a27","implemented":false,"kind":"function","modifiers":[],"name":"recoverFunds","nameLocation":"10392:12:0","parameters":{"id":175,"nodeType":"ParameterList","parameters":[{"constant":false,"id":172,"mutability":"mutable","name":"_token","nameLocation":"10413:6:0","nodeType":"VariableDeclaration","scope":177,"src":"10405:14:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":171,"name":"address","nodeType":"ElementaryTypeName","src":"10405:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":174,"mutability":"mutable","name":"_recipient","nameLocation":"10429:10:0","nodeType":"VariableDeclaration","scope":177,"src":"10421:18:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":173,"name":"address","nodeType":"ElementaryTypeName","src":"10421:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10404:36:0"},"returnParameters":{"id":176,"nodeType":"ParameterList","parameters":[],"src":"10449:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":187,"nodeType":"FunctionDefinition","src":"10658:99:0","nodes":[],"documentation":{"id":178,"nodeType":"StructuredDocumentation","src":"10456:197:0","text":"@notice Registers a recipient and emits {Registered} event if successful and may be handled differently by each strategy.\n @param _poolId The ID of the pool to register the recipient for"},"functionSelector":"075c0e9c","implemented":false,"kind":"function","modifiers":[],"name":"registerRecipient","nameLocation":"10667:17:0","parameters":{"id":183,"nodeType":"ParameterList","parameters":[{"constant":false,"id":180,"mutability":"mutable","name":"_poolId","nameLocation":"10693:7:0","nodeType":"VariableDeclaration","scope":187,"src":"10685:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":179,"name":"uint256","nodeType":"ElementaryTypeName","src":"10685:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":182,"mutability":"mutable","name":"_data","nameLocation":"10715:5:0","nodeType":"VariableDeclaration","scope":187,"src":"10702:18:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":181,"name":"bytes","nodeType":"ElementaryTypeName","src":"10702:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"10684:37:0"},"returnParameters":{"id":186,"nodeType":"ParameterList","parameters":[{"constant":false,"id":185,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":187,"src":"10748:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":184,"name":"address","nodeType":"ElementaryTypeName","src":"10748:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10747:9:0"},"scope":314,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":200,"nodeType":"FunctionDefinition","src":"10983:133:0","nodes":[],"documentation":{"id":188,"nodeType":"StructuredDocumentation","src":"10763:215:0","text":"@notice Registers a batch of recipients.\n @param _poolIds The pool ID's to register the recipients for\n @param _data The data to pass to the strategy and may be handled differently by each strategy"},"functionSelector":"1a20bd88","implemented":false,"kind":"function","modifiers":[],"name":"batchRegisterRecipient","nameLocation":"10992:22:0","parameters":{"id":195,"nodeType":"ParameterList","parameters":[{"constant":false,"id":191,"mutability":"mutable","name":"_poolIds","nameLocation":"11032:8:0","nodeType":"VariableDeclaration","scope":200,"src":"11015:25:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":189,"name":"uint256","nodeType":"ElementaryTypeName","src":"11015:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":190,"nodeType":"ArrayTypeName","src":"11015:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"},{"constant":false,"id":194,"mutability":"mutable","name":"_data","nameLocation":"11057:5:0","nodeType":"VariableDeclaration","scope":200,"src":"11042:20:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":192,"name":"bytes","nodeType":"ElementaryTypeName","src":"11042:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":193,"nodeType":"ArrayTypeName","src":"11042:7:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"11014:49:0"},"returnParameters":{"id":199,"nodeType":"ParameterList","parameters":[{"constant":false,"id":198,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":200,"src":"11098:16:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":196,"name":"address","nodeType":"ElementaryTypeName","src":"11098:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":197,"nodeType":"ArrayTypeName","src":"11098:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"11097:18:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":208,"nodeType":"FunctionDefinition","src":"11427:69:0","nodes":[],"documentation":{"id":201,"nodeType":"StructuredDocumentation","src":"11122:300:0","text":"@notice Funds a pool.\n @dev 'msg.value' must be greater than 0 if the token is the native token\n or '_amount' must be greater than 0 if the token is not the native token.\n @param _poolId The ID of the pool to fund\n @param _amount The amount to fund the pool with"},"functionSelector":"5acd6fac","implemented":false,"kind":"function","modifiers":[],"name":"fundPool","nameLocation":"11436:8:0","parameters":{"id":206,"nodeType":"ParameterList","parameters":[{"constant":false,"id":203,"mutability":"mutable","name":"_poolId","nameLocation":"11453:7:0","nodeType":"VariableDeclaration","scope":208,"src":"11445:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":202,"name":"uint256","nodeType":"ElementaryTypeName","src":"11445:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":205,"mutability":"mutable","name":"_amount","nameLocation":"11470:7:0","nodeType":"VariableDeclaration","scope":208,"src":"11462:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":204,"name":"uint256","nodeType":"ElementaryTypeName","src":"11462:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"11444:34:0"},"returnParameters":{"id":207,"nodeType":"ParameterList","parameters":[],"src":"11495:0:0"},"scope":314,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":216,"nodeType":"FunctionDefinition","src":"11794:72:0","nodes":[],"documentation":{"id":209,"nodeType":"StructuredDocumentation","src":"11502:287:0","text":"@notice Allocates funds to a recipient.\n @dev Each strategy will handle the allocation of funds differently.\n @param _poolId The ID of the pool to allocate funds from\n @param _data The data to pass to the strategy and may be handled differently by each strategy."},"functionSelector":"2ec38188","implemented":false,"kind":"function","modifiers":[],"name":"allocate","nameLocation":"11803:8:0","parameters":{"id":214,"nodeType":"ParameterList","parameters":[{"constant":false,"id":211,"mutability":"mutable","name":"_poolId","nameLocation":"11820:7:0","nodeType":"VariableDeclaration","scope":216,"src":"11812:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":210,"name":"uint256","nodeType":"ElementaryTypeName","src":"11812:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":213,"mutability":"mutable","name":"_data","nameLocation":"11842:5:0","nodeType":"VariableDeclaration","scope":216,"src":"11829:18:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":212,"name":"bytes","nodeType":"ElementaryTypeName","src":"11829:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"11811:37:0"},"returnParameters":{"id":215,"nodeType":"ParameterList","parameters":[],"src":"11865:0:0"},"scope":314,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":226,"nodeType":"FunctionDefinition","src":"12003:84:0","nodes":[],"documentation":{"id":217,"nodeType":"StructuredDocumentation","src":"11872:126:0","text":"@notice Allocates funds to multiple recipients.\n @dev Each strategy will handle the allocation of funds differently"},"functionSelector":"c6dff1cf","implemented":false,"kind":"function","modifiers":[],"name":"batchAllocate","nameLocation":"12012:13:0","parameters":{"id":224,"nodeType":"ParameterList","parameters":[{"constant":false,"id":220,"mutability":"mutable","name":"_poolIds","nameLocation":"12045:8:0","nodeType":"VariableDeclaration","scope":226,"src":"12026:27:0","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_calldata_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":218,"name":"uint256","nodeType":"ElementaryTypeName","src":"12026:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":219,"nodeType":"ArrayTypeName","src":"12026:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"},{"constant":false,"id":223,"mutability":"mutable","name":"_datas","nameLocation":"12070:6:0","nodeType":"VariableDeclaration","scope":226,"src":"12055:21:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":221,"name":"bytes","nodeType":"ElementaryTypeName","src":"12055:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":222,"nodeType":"ArrayTypeName","src":"12055:7:0","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"12025:52:0"},"returnParameters":{"id":225,"nodeType":"ParameterList","parameters":[],"src":"12086:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":237,"nodeType":"FunctionDefinition","src":"12489:98:0","nodes":[],"documentation":{"id":227,"nodeType":"StructuredDocumentation","src":"12093:391:0","text":"@notice Distributes funds to recipients and emits {Distributed} event if successful\n @dev Each strategy will handle the distribution of funds differently\n @param _poolId The ID of the pool to distribute from\n @param _recipientIds The recipient ids to distribute to\n @param _data The data to pass to the strategy and may be handled differently by each strategy"},"functionSelector":"3a5fbd92","implemented":false,"kind":"function","modifiers":[],"name":"distribute","nameLocation":"12498:10:0","parameters":{"id":235,"nodeType":"ParameterList","parameters":[{"constant":false,"id":229,"mutability":"mutable","name":"_poolId","nameLocation":"12517:7:0","nodeType":"VariableDeclaration","scope":237,"src":"12509:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":228,"name":"uint256","nodeType":"ElementaryTypeName","src":"12509:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":232,"mutability":"mutable","name":"_recipientIds","nameLocation":"12543:13:0","nodeType":"VariableDeclaration","scope":237,"src":"12526:30:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":230,"name":"address","nodeType":"ElementaryTypeName","src":"12526:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":231,"nodeType":"ArrayTypeName","src":"12526:9:0","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":234,"mutability":"mutable","name":"_data","nameLocation":"12571:5:0","nodeType":"VariableDeclaration","scope":237,"src":"12558:18:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":233,"name":"bytes","nodeType":"ElementaryTypeName","src":"12558:5:0","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"12508:69:0"},"returnParameters":{"id":236,"nodeType":"ParameterList","parameters":[],"src":"12586:0:0"},"scope":314,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":247,"nodeType":"FunctionDefinition","src":"12922:85:0","nodes":[],"documentation":{"id":238,"nodeType":"StructuredDocumentation","src":"12696:221:0","text":"@notice Checks if an address is a pool admin.\n @param _poolId The ID of the pool to check\n @param _address The address to check\n @return 'true' if the '_address' is a pool admin, otherwise 'false'"},"functionSelector":"ab3febc6","implemented":false,"kind":"function","modifiers":[],"name":"isPoolAdmin","nameLocation":"12931:11:0","parameters":{"id":243,"nodeType":"ParameterList","parameters":[{"constant":false,"id":240,"mutability":"mutable","name":"_poolId","nameLocation":"12951:7:0","nodeType":"VariableDeclaration","scope":247,"src":"12943:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":239,"name":"uint256","nodeType":"ElementaryTypeName","src":"12943:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":242,"mutability":"mutable","name":"_address","nameLocation":"12968:8:0","nodeType":"VariableDeclaration","scope":247,"src":"12960:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":241,"name":"address","nodeType":"ElementaryTypeName","src":"12960:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12942:35:0"},"returnParameters":{"id":246,"nodeType":"ParameterList","parameters":[{"constant":false,"id":245,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":247,"src":"13001:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":244,"name":"bool","nodeType":"ElementaryTypeName","src":"13001:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13000:6:0"},"scope":314,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":257,"nodeType":"FunctionDefinition","src":"13243:87:0","nodes":[],"documentation":{"id":248,"nodeType":"StructuredDocumentation","src":"13013:225:0","text":"@notice Checks if an address is a pool manager.\n @param _poolId The ID of the pool to check\n @param _address The address to check\n @return 'true' if the '_address' is a pool manager, otherwise 'false'"},"functionSelector":"29e40d4b","implemented":false,"kind":"function","modifiers":[],"name":"isPoolManager","nameLocation":"13252:13:0","parameters":{"id":253,"nodeType":"ParameterList","parameters":[{"constant":false,"id":250,"mutability":"mutable","name":"_poolId","nameLocation":"13274:7:0","nodeType":"VariableDeclaration","scope":257,"src":"13266:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":249,"name":"uint256","nodeType":"ElementaryTypeName","src":"13266:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":252,"mutability":"mutable","name":"_address","nameLocation":"13291:8:0","nodeType":"VariableDeclaration","scope":257,"src":"13283:16:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":251,"name":"address","nodeType":"ElementaryTypeName","src":"13283:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13265:35:0"},"returnParameters":{"id":256,"nodeType":"ParameterList","parameters":[{"constant":false,"id":255,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":257,"src":"13324:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":254,"name":"bool","nodeType":"ElementaryTypeName","src":"13324:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13323:6:0"},"scope":314,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":265,"nodeType":"FunctionDefinition","src":"13563:77:0","nodes":[],"documentation":{"id":258,"nodeType":"StructuredDocumentation","src":"13336:222:0","text":"@notice Checks if a strategy is cloneable (is in the cloneableStrategies mapping).\n @param _strategy The address of the strategy to check\n @return 'true' if the '_strategy' is cloneable, otherwise 'false'"},"functionSelector":"ab2ec589","implemented":false,"kind":"function","modifiers":[],"name":"isCloneableStrategy","nameLocation":"13572:19:0","parameters":{"id":261,"nodeType":"ParameterList","parameters":[{"constant":false,"id":260,"mutability":"mutable","name":"_strategy","nameLocation":"13600:9:0","nodeType":"VariableDeclaration","scope":265,"src":"13592:17:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":259,"name":"address","nodeType":"ElementaryTypeName","src":"13592:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13591:19:0"},"returnParameters":{"id":264,"nodeType":"ParameterList","parameters":[{"constant":false,"id":263,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":265,"src":"13634:4:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":262,"name":"bool","nodeType":"ElementaryTypeName","src":"13634:4:0","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13633:6:0"},"scope":314,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":273,"nodeType":"FunctionDefinition","src":"13856:70:0","nodes":[],"documentation":{"id":266,"nodeType":"StructuredDocumentation","src":"13646:205:0","text":"@notice Returns the address of the strategy for a given 'poolId'\n @param _poolId The ID of the pool to check\n @return strategy The address of the strategy for the ID of the pool passed in"},"functionSelector":"cfc0cc34","implemented":false,"kind":"function","modifiers":[],"name":"getStrategy","nameLocation":"13865:11:0","parameters":{"id":269,"nodeType":"ParameterList","parameters":[{"constant":false,"id":268,"mutability":"mutable","name":"_poolId","nameLocation":"13885:7:0","nodeType":"VariableDeclaration","scope":273,"src":"13877:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":267,"name":"uint256","nodeType":"ElementaryTypeName","src":"13877:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"13876:17:0"},"returnParameters":{"id":272,"nodeType":"ParameterList","parameters":[{"constant":false,"id":271,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":273,"src":"13917:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":270,"name":"address","nodeType":"ElementaryTypeName","src":"13917:7:0","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13916:9:0"},"scope":314,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":279,"nodeType":"FunctionDefinition","src":"14042:57:0","nodes":[],"documentation":{"id":274,"nodeType":"StructuredDocumentation","src":"13932:105:0","text":"@notice Returns the current percent fee\n @return percentFee The current percentage for the fee"},"functionSelector":"4edbaadc","implemented":false,"kind":"function","modifiers":[],"name":"getPercentFee","nameLocation":"14051:13:0","parameters":{"id":275,"nodeType":"ParameterList","parameters":[],"src":"14064:2:0"},"returnParameters":{"id":278,"nodeType":"ParameterList","parameters":[{"constant":false,"id":277,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":279,"src":"14090:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":276,"name":"uint256","nodeType":"ElementaryTypeName","src":"14090:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14089:9:0"},"scope":314,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":285,"nodeType":"FunctionDefinition","src":"14195:54:0","nodes":[],"documentation":{"id":280,"nodeType":"StructuredDocumentation","src":"14105:85:0","text":"@notice Returns the current base fee\n @return baseFee The current base fee"},"functionSelector":"15e812ad","implemented":false,"kind":"function","modifiers":[],"name":"getBaseFee","nameLocation":"14204:10:0","parameters":{"id":281,"nodeType":"ParameterList","parameters":[],"src":"14214:2:0"},"returnParameters":{"id":284,"nodeType":"ParameterList","parameters":[{"constant":false,"id":283,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":285,"src":"14240:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":282,"name":"uint256","nodeType":"ElementaryTypeName","src":"14240:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14239:9:0"},"scope":314,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":291,"nodeType":"FunctionDefinition","src":"14362:63:0","nodes":[],"documentation":{"id":286,"nodeType":"StructuredDocumentation","src":"14255:102:0","text":"@notice Returns the current treasury address\n @return treasury The current treasury address"},"functionSelector":"3b19e84a","implemented":false,"kind":"function","modifiers":[],"name":"getTreasury","nameLocation":"14371:11:0","parameters":{"id":287,"nodeType":"ParameterList","parameters":[],"src":"14382:2:0"},"returnParameters":{"id":290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":289,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":291,"src":"14408:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":288,"name":"address","nodeType":"ElementaryTypeName","src":"14408:15:0","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"14407:17:0"},"scope":314,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":298,"nodeType":"FunctionDefinition","src":"14538:57:0","nodes":[],"documentation":{"id":292,"nodeType":"StructuredDocumentation","src":"14431:102:0","text":"@notice Returns the current registry address\n @return registry The current registry address"},"functionSelector":"5ab1bd53","implemented":false,"kind":"function","modifiers":[],"name":"getRegistry","nameLocation":"14547:11:0","parameters":{"id":293,"nodeType":"ParameterList","parameters":[],"src":"14558:2:0"},"returnParameters":{"id":297,"nodeType":"ParameterList","parameters":[{"constant":false,"id":296,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":298,"src":"14584:9:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$506","typeString":"contract IRegistry"},"typeName":{"id":295,"nodeType":"UserDefinedTypeName","pathNode":{"id":294,"name":"IRegistry","nameLocations":["14584:9:0"],"nodeType":"IdentifierPath","referencedDeclaration":506,"src":"14584:9:0"},"referencedDeclaration":506,"src":"14584:9:0","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$506","typeString":"contract IRegistry"}},"visibility":"internal"}],"src":"14583:11:0"},"scope":314,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":307,"nodeType":"FunctionDefinition","src":"14787:70:0","nodes":[],"documentation":{"id":299,"nodeType":"StructuredDocumentation","src":"14601:181:0","text":"@notice Returns the 'Pool' struct for a given 'poolId'\n @param _poolId The ID of the pool to check\n @return pool The 'Pool' struct for the ID of the pool passed in"},"functionSelector":"068bcd8d","implemented":false,"kind":"function","modifiers":[],"name":"getPool","nameLocation":"14796:7:0","parameters":{"id":302,"nodeType":"ParameterList","parameters":[{"constant":false,"id":301,"mutability":"mutable","name":"_poolId","nameLocation":"14812:7:0","nodeType":"VariableDeclaration","scope":307,"src":"14804:15:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":300,"name":"uint256","nodeType":"ElementaryTypeName","src":"14804:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14803:17:0"},"returnParameters":{"id":306,"nodeType":"ParameterList","parameters":[{"constant":false,"id":305,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":307,"src":"14844:11:0","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$23_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":304,"nodeType":"UserDefinedTypeName","pathNode":{"id":303,"name":"Pool","nameLocations":["14844:4:0"],"nodeType":"IdentifierPath","referencedDeclaration":23,"src":"14844:4:0"},"referencedDeclaration":23,"src":"14844:4:0","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$23_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"src":"14843:13:0"},"scope":314,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":313,"nodeType":"FunctionDefinition","src":"15008:61:0","nodes":[],"documentation":{"id":308,"nodeType":"StructuredDocumentation","src":"14863:140:0","text":"@notice Returns the current fee denominator\n @dev 1e18 represents 100%\n @return feeDenominator The current fee denominator"},"functionSelector":"f4e1fc41","implemented":false,"kind":"function","modifiers":[],"name":"getFeeDenominator","nameLocation":"15017:17:0","parameters":{"id":309,"nodeType":"ParameterList","parameters":[],"src":"15034:2:0"},"returnParameters":{"id":312,"nodeType":"ParameterList","parameters":[{"constant":false,"id":311,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":313,"src":"15060:7:0","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":310,"name":"uint256","nodeType":"ElementaryTypeName","src":"15060:7:0","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"15059:9:0"},"scope":314,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IAllo","contractDependencies":[],"contractKind":"interface","documentation":{"id":8,"nodeType":"StructuredDocumentation","src":"4234:297:0","text":"@title Allo Interface\n @author @thelostone-mc , @0xKurt , @codenamejason , @0xZakk , @nfrgosselin \n @notice Interface for the Allo contract. It exposes all functions needed to use the Allo protocol."},"fullyImplemented":false,"linearizedBaseContracts":[314],"name":"IAllo","nameLocation":"4541:5:0","scope":315,"usedErrors":[]}],"license":"AGPL-3.0-only"},"id":0} \ No newline at end of file +{"abi":[{"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":"","type":"address[]","internalType":"address[]"}],"stateMutability":"nonpayable"},{"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":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"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":"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":"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":"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":"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":"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":"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}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"addPoolManager(uint256,address)":"2cf682b0","addToCloneableStrategies(address)":"41bba0b4","allocate(uint256,bytes)":"2ec38188","batchAllocate(uint256[],bytes[])":"c6dff1cf","batchRegisterRecipient(uint256[],bytes[])":"1a20bd88","distribute(uint256,address[],bytes)":"3a5fbd92","fundPool(uint256,uint256)":"5acd6fac","getBaseFee()":"15e812ad","getFeeDenominator()":"f4e1fc41","getPercentFee()":"4edbaadc","getPool(uint256)":"068bcd8d","getRegistry()":"5ab1bd53","getStrategy(uint256)":"cfc0cc34","getTreasury()":"3b19e84a","initialize(address,address,address,uint256,uint256)":"a6b63eb8","isCloneableStrategy(address)":"ab2ec589","isPoolAdmin(uint256,address)":"ab3febc6","isPoolManager(uint256,address)":"29e40d4b","recoverFunds(address,address)":"24ae6a27","registerRecipient(uint256,bytes)":"075c0e9c","removeFromCloneableStrategies(address)":"031e2fa1","removePoolManager(uint256,address)":"7f5a70bd","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\":[{\"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\":\"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\":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\":[{\"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\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"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\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"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\":\"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\":\"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\":[{\"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\":[{\"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 \",\"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\"}},\"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\"}},\"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\":\"'msg.sender' must be a pool admin.\",\"params\":{\"_manager\":\"The address of the manager to add\",\"_poolId\":\"The ID of the pool to add the manager to\"}},\"addToCloneableStrategies(address)\":{\"details\":\"'msg.sender' must be the Allo contract owner.\",\"params\":{\"_strategy\":\"The address of the strategy to add\"}},\"allocate(uint256,bytes)\":{\"details\":\"Each strategy will handle the allocation of funds differently.\",\"params\":{\"_data\":\"The data to pass to the strategy and may be handled differently by each strategy.\",\"_poolId\":\"The ID of the pool to allocate funds from\"}},\"batchAllocate(uint256[],bytes[])\":{\"details\":\"Each strategy will handle the allocation of funds differently\"},\"batchRegisterRecipient(uint256[],bytes[])\":{\"params\":{\"_data\":\"The data to pass to the strategy and may be handled differently by each strategy\",\"_poolIds\":\"The pool ID's to register the recipients for\"}},\"distribute(uint256,address[],bytes)\":{\"details\":\"Each strategy will handle the distribution of funds differently\",\"params\":{\"_data\":\"The data to pass to the strategy and may be handled differently by each strategy\",\"_poolId\":\"The ID of the pool to distribute from\",\"_recipientIds\":\"The recipient ids to distribute to\"}},\"fundPool(uint256,uint256)\":{\"details\":\"'msg.value' must be greater than 0 if the token is the native token or '_amount' must be greater than 0 if the token is not the native token.\",\"params\":{\"_amount\":\"The amount to fund the pool with\",\"_poolId\":\"The ID of the pool to fund\"}},\"getBaseFee()\":{\"returns\":{\"_0\":\"baseFee The current base fee\"}},\"getFeeDenominator()\":{\"details\":\"1e18 represents 100%\",\"returns\":{\"_0\":\"feeDenominator The current fee denominator\"}},\"getPercentFee()\":{\"returns\":{\"_0\":\"percentFee The current percentage for the fee\"}},\"getPool(uint256)\":{\"params\":{\"_poolId\":\"The ID of the pool to check\"},\"returns\":{\"_0\":\"pool The 'Pool' struct for the ID of the pool passed in\"}},\"getRegistry()\":{\"returns\":{\"_0\":\"registry The current registry address\"}},\"getStrategy(uint256)\":{\"params\":{\"_poolId\":\"The ID of the pool to check\"},\"returns\":{\"_0\":\"strategy The address of the strategy for the ID of the pool passed in\"}},\"getTreasury()\":{\"returns\":{\"_0\":\"treasury The current treasury address\"}},\"initialize(address,address,address,uint256,uint256)\":{\"params\":{\"_baseFee\":\"Base fee amount\",\"_owner\":\"Address of the owner\",\"_percentFee\":\"Percentage for the fee\",\"_registry\":\"Address of the registry contract\",\"_treasury\":\"Address of the treasury\"}},\"isCloneableStrategy(address)\":{\"params\":{\"_strategy\":\"The address of the strategy to check\"},\"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 to check\"},\"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 to check\"},\"returns\":{\"_0\":\"'true' if the '_address' is a pool manager, otherwise 'false'\"}},\"recoverFunds(address,address)\":{\"details\":\"'msg.sender' must be a pool admin.\",\"params\":{\"_recipient\":\"The address to send the recovered funds to\",\"_token\":\"The token to recover\"}},\"registerRecipient(uint256,bytes)\":{\"params\":{\"_poolId\":\"The ID of the pool to register the recipient for\"}},\"removeFromCloneableStrategies(address)\":{\"details\":\"'msg.sender' must be the Allo contract owner.\",\"params\":{\"_strategy\":\"The address of the strategy to remove\"}},\"removePoolManager(uint256,address)\":{\"details\":\"'msg.sender' must be a pool admin.\",\"params\":{\"_manager\":\"The address of the manager to remove\",\"_poolId\":\"The ID of the pool to remove the manager from\"}},\"updateBaseFee(uint256)\":{\"details\":\"'msg.sender' must be the Allo contract owner.\",\"params\":{\"_baseFee\":\"The new base fee\"}},\"updatePercentFee(uint256)\":{\"details\":\"'msg.sender' must be the Allo contract owner.\",\"params\":{\"_percentFee\":\"The new percentage for the fee\"}},\"updatePoolMetadata(uint256,(uint256,string))\":{\"details\":\"'msg.sender' must be a pool admin.\",\"params\":{\"_metadata\":\"The new metadata to set\",\"_poolId\":\"The ID of the pool to update\"}},\"updateRegistry(address)\":{\"details\":\"'msg.sender' must be the Allo contract owner.\",\"params\":{\"_registry\":\"The new registry address\"}},\"updateTreasury(address)\":{\"details\":\"'msg.sender' must be the Allo contract owner.\",\"params\":{\"_treasury\":\"The new treasury address\"}}},\"title\":\"Allo Interface\",\"version\":1},\"userdoc\":{\"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\":{\"addPoolManager(uint256,address)\":{\"notice\":\"Adds a pool manager to the pool.\"},\"addToCloneableStrategies(address)\":{\"notice\":\"Adds a strategy to the cloneable strategies.\"},\"allocate(uint256,bytes)\":{\"notice\":\"Allocates funds to a recipient.\"},\"batchAllocate(uint256[],bytes[])\":{\"notice\":\"Allocates funds to multiple recipients.\"},\"batchRegisterRecipient(uint256[],bytes[])\":{\"notice\":\"Registers a batch of recipients.\"},\"distribute(uint256,address[],bytes)\":{\"notice\":\"Distributes funds to recipients and emits {Distributed} event if successful\"},\"fundPool(uint256,uint256)\":{\"notice\":\"Funds a pool.\"},\"getBaseFee()\":{\"notice\":\"Returns the current base fee\"},\"getFeeDenominator()\":{\"notice\":\"Returns the current fee denominator\"},\"getPercentFee()\":{\"notice\":\"Returns the current percent fee\"},\"getPool(uint256)\":{\"notice\":\"Returns the 'Pool' struct for a given 'poolId'\"},\"getRegistry()\":{\"notice\":\"Returns the current registry address\"},\"getStrategy(uint256)\":{\"notice\":\"Returns the address of the strategy for a given 'poolId'\"},\"getTreasury()\":{\"notice\":\"Returns the current treasury address\"},\"initialize(address,address,address,uint256,uint256)\":{\"notice\":\"Initialize the Allo contract\"},\"isCloneableStrategy(address)\":{\"notice\":\"Checks if a strategy is cloneable (is in the cloneableStrategies mapping).\"},\"isPoolAdmin(uint256,address)\":{\"notice\":\"Checks if an address is a pool admin.\"},\"isPoolManager(uint256,address)\":{\"notice\":\"Checks if an address is a pool manager.\"},\"recoverFunds(address,address)\":{\"notice\":\"Recovers funds from a pool.\"},\"registerRecipient(uint256,bytes)\":{\"notice\":\"Registers a recipient and emits {Registered} event if successful and may be handled differently by each strategy.\"},\"removeFromCloneableStrategies(address)\":{\"notice\":\"Removes a strategy from the cloneable strategies.\"},\"removePoolManager(uint256,address)\":{\"notice\":\"Removes a pool manager from the pool.\"},\"updateBaseFee(uint256)\":{\"notice\":\"Updates the base fee.\"},\"updatePercentFee(uint256)\":{\"notice\":\"Updates the percentage for the fee.\"},\"updatePoolMetadata(uint256,(uint256,string))\":{\"notice\":\"Updates a pools metadata.\"},\"updateRegistry(address)\":{\"notice\":\"Update the registry address.\"},\"updateTreasury(address)\":{\"notice\":\"Updates the treasury address.\"}},\"notice\":\"Interface for the Allo contract. It exposes all functions needed to use the Allo protocol.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/allo-v2/contracts/core/interfaces/IAllo.sol\":\"IAllo\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"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":"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":"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":[{"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":"","type":"address[]"}]},{"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":"view","type":"function","name":"getFeeDenominator","outputs":[{"internalType":"uint256","name":"","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":"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":"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":[{"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":[{"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":"'msg.sender' must be a pool admin.","params":{"_manager":"The address of the manager to add","_poolId":"The ID of the pool to add the manager to"}},"addToCloneableStrategies(address)":{"details":"'msg.sender' must be the Allo contract owner.","params":{"_strategy":"The address of the strategy to add"}},"allocate(uint256,bytes)":{"details":"Each strategy will handle the allocation of funds differently.","params":{"_data":"The data to pass to the strategy and may be handled differently by each strategy.","_poolId":"The ID of the pool to allocate funds from"}},"batchAllocate(uint256[],bytes[])":{"details":"Each strategy will handle the allocation of funds differently"},"batchRegisterRecipient(uint256[],bytes[])":{"params":{"_data":"The data to pass to the strategy and may be handled differently by each strategy","_poolIds":"The pool ID's to register the recipients for"}},"distribute(uint256,address[],bytes)":{"details":"Each strategy will handle the distribution of funds differently","params":{"_data":"The data to pass to the strategy and may be handled differently by each strategy","_poolId":"The ID of the pool to distribute from","_recipientIds":"The recipient ids to distribute to"}},"fundPool(uint256,uint256)":{"details":"'msg.value' must be greater than 0 if the token is the native token or '_amount' must be greater than 0 if the token is not the native token.","params":{"_amount":"The amount to fund the pool with","_poolId":"The ID of the pool to fund"}},"getBaseFee()":{"returns":{"_0":"baseFee The current base fee"}},"getFeeDenominator()":{"details":"1e18 represents 100%","returns":{"_0":"feeDenominator The current fee denominator"}},"getPercentFee()":{"returns":{"_0":"percentFee The current percentage for the fee"}},"getPool(uint256)":{"params":{"_poolId":"The ID of the pool to check"},"returns":{"_0":"pool The 'Pool' struct for the ID of the pool passed in"}},"getRegistry()":{"returns":{"_0":"registry The current registry address"}},"getStrategy(uint256)":{"params":{"_poolId":"The ID of the pool to check"},"returns":{"_0":"strategy The address of the strategy for the ID of the pool passed in"}},"getTreasury()":{"returns":{"_0":"treasury The current treasury address"}},"initialize(address,address,address,uint256,uint256)":{"params":{"_baseFee":"Base fee amount","_owner":"Address of the owner","_percentFee":"Percentage for the fee","_registry":"Address of the registry contract","_treasury":"Address of the treasury"}},"isCloneableStrategy(address)":{"params":{"_strategy":"The address of the strategy to check"},"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 to check"},"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 to check"},"returns":{"_0":"'true' if the '_address' is a pool manager, otherwise 'false'"}},"recoverFunds(address,address)":{"details":"'msg.sender' must be a pool admin.","params":{"_recipient":"The address to send the recovered funds to","_token":"The token to recover"}},"registerRecipient(uint256,bytes)":{"params":{"_poolId":"The ID of the pool to register the recipient for"}},"removeFromCloneableStrategies(address)":{"details":"'msg.sender' must be the Allo contract owner.","params":{"_strategy":"The address of the strategy to remove"}},"removePoolManager(uint256,address)":{"details":"'msg.sender' must be a pool admin.","params":{"_manager":"The address of the manager to remove","_poolId":"The ID of the pool to remove the manager from"}},"updateBaseFee(uint256)":{"details":"'msg.sender' must be the Allo contract owner.","params":{"_baseFee":"The new base fee"}},"updatePercentFee(uint256)":{"details":"'msg.sender' must be the Allo contract owner.","params":{"_percentFee":"The new percentage for the fee"}},"updatePoolMetadata(uint256,(uint256,string))":{"details":"'msg.sender' must be a pool admin.","params":{"_metadata":"The new metadata to set","_poolId":"The ID of the pool to update"}},"updateRegistry(address)":{"details":"'msg.sender' must be the Allo contract owner.","params":{"_registry":"The new registry address"}},"updateTreasury(address)":{"details":"'msg.sender' must be the Allo contract owner.","params":{"_treasury":"The new treasury address"}}},"version":1},"userdoc":{"kind":"user","methods":{"addPoolManager(uint256,address)":{"notice":"Adds a pool manager to the pool."},"addToCloneableStrategies(address)":{"notice":"Adds a strategy to the cloneable strategies."},"allocate(uint256,bytes)":{"notice":"Allocates funds to a recipient."},"batchAllocate(uint256[],bytes[])":{"notice":"Allocates funds to multiple recipients."},"batchRegisterRecipient(uint256[],bytes[])":{"notice":"Registers a batch of recipients."},"distribute(uint256,address[],bytes)":{"notice":"Distributes funds to recipients and emits {Distributed} event if successful"},"fundPool(uint256,uint256)":{"notice":"Funds a pool."},"getBaseFee()":{"notice":"Returns the current base fee"},"getFeeDenominator()":{"notice":"Returns the current fee denominator"},"getPercentFee()":{"notice":"Returns the current percent fee"},"getPool(uint256)":{"notice":"Returns the 'Pool' struct for a given 'poolId'"},"getRegistry()":{"notice":"Returns the current registry address"},"getStrategy(uint256)":{"notice":"Returns the address of the strategy for a given 'poolId'"},"getTreasury()":{"notice":"Returns the current treasury address"},"initialize(address,address,address,uint256,uint256)":{"notice":"Initialize the Allo contract"},"isCloneableStrategy(address)":{"notice":"Checks if a strategy is cloneable (is in the cloneableStrategies mapping)."},"isPoolAdmin(uint256,address)":{"notice":"Checks if an address is a pool admin."},"isPoolManager(uint256,address)":{"notice":"Checks if an address is a pool manager."},"recoverFunds(address,address)":{"notice":"Recovers funds from a pool."},"registerRecipient(uint256,bytes)":{"notice":"Registers a recipient and emits {Registered} event if successful and may be handled differently by each strategy."},"removeFromCloneableStrategies(address)":{"notice":"Removes a strategy from the cloneable strategies."},"removePoolManager(uint256,address)":{"notice":"Removes a pool manager from the pool."},"updateBaseFee(uint256)":{"notice":"Updates the base fee."},"updatePercentFee(uint256)":{"notice":"Updates the percentage for the fee."},"updatePoolMetadata(uint256,(uint256,string))":{"notice":"Updates a pools metadata."},"updateRegistry(address)":{"notice":"Update 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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/IAllo.sol":"IAllo"},"evmVersion":"paris","libraries":{},"viaIR":true},"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/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/allo-v2/contracts/core/interfaces/IAllo.sol","id":2611,"exportedSymbols":{"IAllo":[2610],"IRegistry":[2802],"IStrategy":[2969],"Metadata":[3098]},"nodeType":"SourceUnit","src":"42:15030:3","nodes":[{"id":2297,"nodeType":"PragmaDirective","src":"42:24:3","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":2299,"nodeType":"ImportDirective","src":"82:42:3","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"./IRegistry.sol","nameLocation":"-1:-1:-1","scope":2611,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":2298,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"90:9:3","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":2301,"nodeType":"ImportDirective","src":"125:42:3","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IStrategy.sol","file":"./IStrategy.sol","nameLocation":"-1:-1:-1","scope":2611,"sourceUnit":2970,"symbolAliases":[{"foreign":{"id":2300,"name":"IStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2969,"src":"133:9:3","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":2303,"nodeType":"ImportDirective","src":"190:51:3","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"../libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":2611,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":2302,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"198:8:3","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":2610,"nodeType":"ContractDefinition","src":"4531:10540:3","nodes":[{"id":2319,"nodeType":"StructDefinition","src":"4718:180:3","nodes":[],"canonicalName":"IAllo.Pool","members":[{"constant":false,"id":2306,"mutability":"mutable","name":"profileId","nameLocation":"4748:9:3","nodeType":"VariableDeclaration","scope":2319,"src":"4740:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2305,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4740:7:3","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2309,"mutability":"mutable","name":"strategy","nameLocation":"4777:8:3","nodeType":"VariableDeclaration","scope":2319,"src":"4767:18:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},"typeName":{"id":2308,"nodeType":"UserDefinedTypeName","pathNode":{"id":2307,"name":"IStrategy","nameLocations":["4767:9:3"],"nodeType":"IdentifierPath","referencedDeclaration":2969,"src":"4767:9:3"},"referencedDeclaration":2969,"src":"4767:9:3","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"visibility":"internal"},{"constant":false,"id":2311,"mutability":"mutable","name":"token","nameLocation":"4803:5:3","nodeType":"VariableDeclaration","scope":2319,"src":"4795:13:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2310,"name":"address","nodeType":"ElementaryTypeName","src":"4795:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":2314,"mutability":"mutable","name":"metadata","nameLocation":"4827:8:3","nodeType":"VariableDeclaration","scope":2319,"src":"4818:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":2313,"nodeType":"UserDefinedTypeName","pathNode":{"id":2312,"name":"Metadata","nameLocations":["4818:8:3"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"4818:8:3"},"referencedDeclaration":3098,"src":"4818:8:3","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":2316,"mutability":"mutable","name":"managerRole","nameLocation":"4853:11:3","nodeType":"VariableDeclaration","scope":2319,"src":"4845:19:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2315,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4845:7:3","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2318,"mutability":"mutable","name":"adminRole","nameLocation":"4882:9:3","nodeType":"VariableDeclaration","scope":2319,"src":"4874:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2317,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4874:7:3","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"name":"Pool","nameLocation":"4725:4:3","scope":2610,"visibility":"public"},{"id":2336,"nodeType":"EventDefinition","src":"5405:193:3","nodes":[],"anonymous":false,"documentation":{"id":2320,"nodeType":"StructuredDocumentation","src":"4998:402:3","text":"@notice Event emitted when a new pool is created\n @param poolId ID of the pool created\n @param profileId ID of the profile the pool is associated with\n @param strategy Address of the strategy contract\n @param token Address of the token pool was funded with when created\n @param amount Amount pool was funded with when created\n @param metadata Pool metadata"},"eventSelector":"69bcb5a6cf6a3c95185cbb451e77787240c866dd2e8332597e3013ff18a1aba1","name":"PoolCreated","nameLocation":"5411:11:3","parameters":{"id":2335,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2322,"indexed":true,"mutability":"mutable","name":"poolId","nameLocation":"5448:6:3","nodeType":"VariableDeclaration","scope":2336,"src":"5432:22:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2321,"name":"uint256","nodeType":"ElementaryTypeName","src":"5432:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2324,"indexed":true,"mutability":"mutable","name":"profileId","nameLocation":"5480:9:3","nodeType":"VariableDeclaration","scope":2336,"src":"5464:25:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2323,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5464:7:3","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2327,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"5509:8:3","nodeType":"VariableDeclaration","scope":2336,"src":"5499:18:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"},"typeName":{"id":2326,"nodeType":"UserDefinedTypeName","pathNode":{"id":2325,"name":"IStrategy","nameLocations":["5499:9:3"],"nodeType":"IdentifierPath","referencedDeclaration":2969,"src":"5499:9:3"},"referencedDeclaration":2969,"src":"5499:9:3","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}},"visibility":"internal"},{"constant":false,"id":2329,"indexed":false,"mutability":"mutable","name":"token","nameLocation":"5535:5:3","nodeType":"VariableDeclaration","scope":2336,"src":"5527:13:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2328,"name":"address","nodeType":"ElementaryTypeName","src":"5527:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":2331,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"5558:6:3","nodeType":"VariableDeclaration","scope":2336,"src":"5550:14:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2330,"name":"uint256","nodeType":"ElementaryTypeName","src":"5550:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2334,"indexed":false,"mutability":"mutable","name":"metadata","nameLocation":"5583:8:3","nodeType":"VariableDeclaration","scope":2336,"src":"5574:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":2333,"nodeType":"UserDefinedTypeName","pathNode":{"id":2332,"name":"Metadata","nameLocations":["5574:8:3"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"5574:8:3"},"referencedDeclaration":3098,"src":"5574:8:3","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"5422:175:3"}},{"id":2344,"nodeType":"EventDefinition","src":"5761:69:3","nodes":[],"anonymous":false,"documentation":{"id":2337,"nodeType":"StructuredDocumentation","src":"5604:152:3","text":"@notice Emitted when a pools metadata is updated\n @param poolId ID of the pool updated\n @param metadata Pool metadata that was updated"},"eventSelector":"14f52b76bda9e4c482842cefda2968d332933577988f224e80aae18fba10edf0","name":"PoolMetadataUpdated","nameLocation":"5767:19:3","parameters":{"id":2343,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2339,"indexed":true,"mutability":"mutable","name":"poolId","nameLocation":"5803:6:3","nodeType":"VariableDeclaration","scope":2344,"src":"5787:22:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2338,"name":"uint256","nodeType":"ElementaryTypeName","src":"5787:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2342,"indexed":false,"mutability":"mutable","name":"metadata","nameLocation":"5820:8:3","nodeType":"VariableDeclaration","scope":2344,"src":"5811:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":2341,"nodeType":"UserDefinedTypeName","pathNode":{"id":2340,"name":"Metadata","nameLocations":["5811:8:3"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"5811:8:3"},"referencedDeclaration":3098,"src":"5811:8:3","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"5786:43:3"}},{"id":2353,"nodeType":"EventDefinition","src":"6032:70:3","nodes":[],"anonymous":false,"documentation":{"id":2345,"nodeType":"StructuredDocumentation","src":"5836:191:3","text":"@notice Emitted when a pool is funded\n @param poolId ID of the pool funded\n @param amount Amount funded to the pool\n @param fee Amount of the fee paid to the treasury"},"eventSelector":"bf59838198f4ea92f663f5c1fc697f151a1b746b7dff86d564f250a55cbb4851","name":"PoolFunded","nameLocation":"6038:10:3","parameters":{"id":2352,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2347,"indexed":true,"mutability":"mutable","name":"poolId","nameLocation":"6065:6:3","nodeType":"VariableDeclaration","scope":2353,"src":"6049:22:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2346,"name":"uint256","nodeType":"ElementaryTypeName","src":"6049:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2349,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6081:6:3","nodeType":"VariableDeclaration","scope":2353,"src":"6073:14:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2348,"name":"uint256","nodeType":"ElementaryTypeName","src":"6073:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2351,"indexed":false,"mutability":"mutable","name":"fee","nameLocation":"6097:3:3","nodeType":"VariableDeclaration","scope":2353,"src":"6089:11:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2350,"name":"uint256","nodeType":"ElementaryTypeName","src":"6089:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6048:53:3"}},{"id":2360,"nodeType":"EventDefinition","src":"6271:58:3","nodes":[],"anonymous":false,"documentation":{"id":2354,"nodeType":"StructuredDocumentation","src":"6108:158:3","text":"@notice Emitted when the base fee is paid\n @param poolId ID of the pool the base fee was paid for\n @param amount Amount of the base fee paid"},"eventSelector":"02e340b51c6ae66fd22509c9b016f224c47a54063d4259fe3d860958e9eaac72","name":"BaseFeePaid","nameLocation":"6277:11:3","parameters":{"id":2359,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2356,"indexed":true,"mutability":"mutable","name":"poolId","nameLocation":"6305:6:3","nodeType":"VariableDeclaration","scope":2360,"src":"6289:22:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2355,"name":"uint256","nodeType":"ElementaryTypeName","src":"6289:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2358,"indexed":false,"mutability":"mutable","name":"amount","nameLocation":"6321:6:3","nodeType":"VariableDeclaration","scope":2360,"src":"6313:14:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2357,"name":"uint256","nodeType":"ElementaryTypeName","src":"6313:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6288:40:3"}},{"id":2365,"nodeType":"EventDefinition","src":"6448:40:3","nodes":[],"anonymous":false,"documentation":{"id":2361,"nodeType":"StructuredDocumentation","src":"6335:108:3","text":"@notice Emitted when the treasury address is updated\n @param treasury Address of the new treasury"},"eventSelector":"7dae230f18360d76a040c81f050aa14eb9d6dc7901b20fc5d855e2a20fe814d1","name":"TreasuryUpdated","nameLocation":"6454:15:3","parameters":{"id":2364,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2363,"indexed":false,"mutability":"mutable","name":"treasury","nameLocation":"6478:8:3","nodeType":"VariableDeclaration","scope":2365,"src":"6470:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2362,"name":"address","nodeType":"ElementaryTypeName","src":"6470:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6469:18:3"}},{"id":2370,"nodeType":"EventDefinition","src":"6603:44:3","nodes":[],"anonymous":false,"documentation":{"id":2366,"nodeType":"StructuredDocumentation","src":"6494:104:3","text":"@notice Emitted when the percent fee is updated\n @param percentFee New percentage for the fee"},"eventSelector":"9e826789de2de708fd9f09edea1182545e543893caa8ff71f8eb3aab50a4b065","name":"PercentFeeUpdated","nameLocation":"6609:17:3","parameters":{"id":2369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2368,"indexed":false,"mutability":"mutable","name":"percentFee","nameLocation":"6635:10:3","nodeType":"VariableDeclaration","scope":2370,"src":"6627:18:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2367,"name":"uint256","nodeType":"ElementaryTypeName","src":"6627:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6626:20:3"}},{"id":2375,"nodeType":"EventDefinition","src":"6749:38:3","nodes":[],"anonymous":false,"documentation":{"id":2371,"nodeType":"StructuredDocumentation","src":"6653:91:3","text":"@notice Emitted when the base fee is updated\n @param baseFee New base fee amount"},"eventSelector":"803bee7e92bbc6ae7a1551f9f4ed3e31a8ea8df32e93332f41b0028f1091f9c3","name":"BaseFeeUpdated","nameLocation":"6755:14:3","parameters":{"id":2374,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2373,"indexed":false,"mutability":"mutable","name":"baseFee","nameLocation":"6778:7:3","nodeType":"VariableDeclaration","scope":2375,"src":"6770:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2372,"name":"uint256","nodeType":"ElementaryTypeName","src":"6770:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6769:17:3"}},{"id":2380,"nodeType":"EventDefinition","src":"6906:40:3","nodes":[],"anonymous":false,"documentation":{"id":2376,"nodeType":"StructuredDocumentation","src":"6793:108:3","text":"@notice Emitted when the registry address is updated\n @param registry Address of the new registry"},"eventSelector":"d6ceddf6d2a22f21c7c81675c518004eff43bc5c8a6fc32a0b748e69d58671cd","name":"RegistryUpdated","nameLocation":"6912:15:3","parameters":{"id":2379,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2378,"indexed":false,"mutability":"mutable","name":"registry","nameLocation":"6936:8:3","nodeType":"VariableDeclaration","scope":2380,"src":"6928:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2377,"name":"address","nodeType":"ElementaryTypeName","src":"6928:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6927:18:3"}},{"id":2385,"nodeType":"EventDefinition","src":"7099:41:3","nodes":[],"anonymous":false,"documentation":{"id":2381,"nodeType":"StructuredDocumentation","src":"6952:142:3","text":"@notice Emitted when a strategy is approved and added to the cloneable strategies\n @param strategy Address of the strategy approved"},"eventSelector":"960dd94cbb79169f09a4e445d58b895df2d9bffa5b31055d0932d801724a20d1","name":"StrategyApproved","nameLocation":"7105:16:3","parameters":{"id":2384,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2383,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7130:8:3","nodeType":"VariableDeclaration","scope":2385,"src":"7122:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2382,"name":"address","nodeType":"ElementaryTypeName","src":"7122:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7121:18:3"}},{"id":2390,"nodeType":"EventDefinition","src":"7283:40:3","nodes":[],"anonymous":false,"documentation":{"id":2386,"nodeType":"StructuredDocumentation","src":"7146:132:3","text":"@notice Emitted when a strategy is removed from the cloneable strategies\n @param strategy Address of the strategy removed"},"eventSelector":"09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4","name":"StrategyRemoved","nameLocation":"7289:15:3","parameters":{"id":2389,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2388,"indexed":false,"mutability":"mutable","name":"strategy","nameLocation":"7313:8:3","nodeType":"VariableDeclaration","scope":2390,"src":"7305:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2387,"name":"address","nodeType":"ElementaryTypeName","src":"7305:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7304:18:3"}},{"id":2404,"nodeType":"FunctionDefinition","src":"7750:176:3","nodes":[],"documentation":{"id":2391,"nodeType":"StructuredDocumentation","src":"7465:280:3","text":"@notice Initialize the Allo contract\n @param _owner Address of the owner\n @param _registry Address of the registry contract\n @param _treasury Address of the treasury\n @param _percentFee Percentage for the fee\n @param _baseFee Base fee amount"},"functionSelector":"a6b63eb8","implemented":false,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"7759:10:3","parameters":{"id":2402,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2393,"mutability":"mutable","name":"_owner","nameLocation":"7787:6:3","nodeType":"VariableDeclaration","scope":2404,"src":"7779:14:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2392,"name":"address","nodeType":"ElementaryTypeName","src":"7779:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":2395,"mutability":"mutable","name":"_registry","nameLocation":"7811:9:3","nodeType":"VariableDeclaration","scope":2404,"src":"7803:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2394,"name":"address","nodeType":"ElementaryTypeName","src":"7803:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":2397,"mutability":"mutable","name":"_treasury","nameLocation":"7846:9:3","nodeType":"VariableDeclaration","scope":2404,"src":"7830:25:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":2396,"name":"address","nodeType":"ElementaryTypeName","src":"7830:15:3","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":2399,"mutability":"mutable","name":"_percentFee","nameLocation":"7873:11:3","nodeType":"VariableDeclaration","scope":2404,"src":"7865:19:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2398,"name":"uint256","nodeType":"ElementaryTypeName","src":"7865:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2401,"mutability":"mutable","name":"_baseFee","nameLocation":"7902:8:3","nodeType":"VariableDeclaration","scope":2404,"src":"7894:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2400,"name":"uint256","nodeType":"ElementaryTypeName","src":"7894:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"7769:147:3"},"returnParameters":{"id":2403,"nodeType":"ParameterList","parameters":[],"src":"7925:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2413,"nodeType":"FunctionDefinition","src":"8123:81:3","nodes":[],"documentation":{"id":2405,"nodeType":"StructuredDocumentation","src":"7932:186:3","text":"@notice Updates a pools metadata.\n @dev 'msg.sender' must be a pool admin.\n @param _poolId The ID of the pool to update\n @param _metadata The new metadata to set"},"functionSelector":"5f9ca138","implemented":false,"kind":"function","modifiers":[],"name":"updatePoolMetadata","nameLocation":"8132:18:3","parameters":{"id":2411,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2407,"mutability":"mutable","name":"_poolId","nameLocation":"8159:7:3","nodeType":"VariableDeclaration","scope":2413,"src":"8151:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2406,"name":"uint256","nodeType":"ElementaryTypeName","src":"8151:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2410,"mutability":"mutable","name":"_metadata","nameLocation":"8184:9:3","nodeType":"VariableDeclaration","scope":2413,"src":"8168:25:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":2409,"nodeType":"UserDefinedTypeName","pathNode":{"id":2408,"name":"Metadata","nameLocations":["8168:8:3"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"8168:8:3"},"referencedDeclaration":3098,"src":"8168:8:3","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"8150:44:3"},"returnParameters":{"id":2412,"nodeType":"ParameterList","parameters":[],"src":"8203:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2419,"nodeType":"FunctionDefinition","src":"8364:52:3","nodes":[],"documentation":{"id":2414,"nodeType":"StructuredDocumentation","src":"8210:149:3","text":"@notice Update the registry address.\n @dev 'msg.sender' must be the Allo contract owner.\n @param _registry The new registry address"},"functionSelector":"1a5da6c8","implemented":false,"kind":"function","modifiers":[],"name":"updateRegistry","nameLocation":"8373:14:3","parameters":{"id":2417,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2416,"mutability":"mutable","name":"_registry","nameLocation":"8396:9:3","nodeType":"VariableDeclaration","scope":2419,"src":"8388:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2415,"name":"address","nodeType":"ElementaryTypeName","src":"8388:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8387:19:3"},"returnParameters":{"id":2418,"nodeType":"ParameterList","parameters":[],"src":"8415:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2425,"nodeType":"FunctionDefinition","src":"8577:60:3","nodes":[],"documentation":{"id":2420,"nodeType":"StructuredDocumentation","src":"8422:150:3","text":"@notice Updates the treasury address.\n @dev 'msg.sender' must be the Allo contract owner.\n @param _treasury The new treasury address"},"functionSelector":"7f51bb1f","implemented":false,"kind":"function","modifiers":[],"name":"updateTreasury","nameLocation":"8586:14:3","parameters":{"id":2423,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2422,"mutability":"mutable","name":"_treasury","nameLocation":"8617:9:3","nodeType":"VariableDeclaration","scope":2425,"src":"8601:25:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":2421,"name":"address","nodeType":"ElementaryTypeName","src":"8601:15:3","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"8600:27:3"},"returnParameters":{"id":2424,"nodeType":"ParameterList","parameters":[],"src":"8636:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2431,"nodeType":"FunctionDefinition","src":"8812:56:3","nodes":[],"documentation":{"id":2426,"nodeType":"StructuredDocumentation","src":"8643:164:3","text":"@notice Updates the percentage for the fee.\n @dev 'msg.sender' must be the Allo contract owner.\n @param _percentFee The new percentage for the fee"},"functionSelector":"f54fc4a0","implemented":false,"kind":"function","modifiers":[],"name":"updatePercentFee","nameLocation":"8821:16:3","parameters":{"id":2429,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2428,"mutability":"mutable","name":"_percentFee","nameLocation":"8846:11:3","nodeType":"VariableDeclaration","scope":2431,"src":"8838:19:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2427,"name":"uint256","nodeType":"ElementaryTypeName","src":"8838:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"8837:21:3"},"returnParameters":{"id":2430,"nodeType":"ParameterList","parameters":[],"src":"8867:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2437,"nodeType":"FunctionDefinition","src":"9012:50:3","nodes":[],"documentation":{"id":2432,"nodeType":"StructuredDocumentation","src":"8874:133:3","text":"@notice Updates the base fee.\n @dev 'msg.sender' must be the Allo contract owner.\n @param _baseFee The new base fee"},"functionSelector":"8e690186","implemented":false,"kind":"function","modifiers":[],"name":"updateBaseFee","nameLocation":"9021:13:3","parameters":{"id":2435,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2434,"mutability":"mutable","name":"_baseFee","nameLocation":"9043:8:3","nodeType":"VariableDeclaration","scope":2437,"src":"9035:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2433,"name":"uint256","nodeType":"ElementaryTypeName","src":"9035:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"9034:18:3"},"returnParameters":{"id":2436,"nodeType":"ParameterList","parameters":[],"src":"9061:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2443,"nodeType":"FunctionDefinition","src":"9248:62:3","nodes":[],"documentation":{"id":2438,"nodeType":"StructuredDocumentation","src":"9068:175:3","text":"@notice Adds a strategy to the cloneable strategies.\n @dev 'msg.sender' must be the Allo contract owner.\n @param _strategy The address of the strategy to add"},"functionSelector":"41bba0b4","implemented":false,"kind":"function","modifiers":[],"name":"addToCloneableStrategies","nameLocation":"9257:24:3","parameters":{"id":2441,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2440,"mutability":"mutable","name":"_strategy","nameLocation":"9290:9:3","nodeType":"VariableDeclaration","scope":2443,"src":"9282:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2439,"name":"address","nodeType":"ElementaryTypeName","src":"9282:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9281:19:3"},"returnParameters":{"id":2442,"nodeType":"ParameterList","parameters":[],"src":"9309:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2449,"nodeType":"FunctionDefinition","src":"9504:67:3","nodes":[],"documentation":{"id":2444,"nodeType":"StructuredDocumentation","src":"9316:183:3","text":"@notice Removes a strategy from the cloneable strategies.\n @dev 'msg.sender' must be the Allo contract owner.\n @param _strategy The address of the strategy to remove"},"functionSelector":"031e2fa1","implemented":false,"kind":"function","modifiers":[],"name":"removeFromCloneableStrategies","nameLocation":"9513:29:3","parameters":{"id":2447,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2446,"mutability":"mutable","name":"_strategy","nameLocation":"9551:9:3","nodeType":"VariableDeclaration","scope":2449,"src":"9543:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2445,"name":"address","nodeType":"ElementaryTypeName","src":"9543:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9542:19:3"},"returnParameters":{"id":2448,"nodeType":"ParameterList","parameters":[],"src":"9570:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2457,"nodeType":"FunctionDefinition","src":"9796:68:3","nodes":[],"documentation":{"id":2450,"nodeType":"StructuredDocumentation","src":"9577:214:3","text":"@notice Adds a pool manager to the pool.\n @dev 'msg.sender' must be a pool admin.\n @param _poolId The ID of the pool to add the manager to\n @param _manager The address of the manager to add"},"functionSelector":"2cf682b0","implemented":false,"kind":"function","modifiers":[],"name":"addPoolManager","nameLocation":"9805:14:3","parameters":{"id":2455,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2452,"mutability":"mutable","name":"_poolId","nameLocation":"9828:7:3","nodeType":"VariableDeclaration","scope":2457,"src":"9820:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2451,"name":"uint256","nodeType":"ElementaryTypeName","src":"9820:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2454,"mutability":"mutable","name":"_manager","nameLocation":"9845:8:3","nodeType":"VariableDeclaration","scope":2457,"src":"9837:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2453,"name":"address","nodeType":"ElementaryTypeName","src":"9837:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9819:35:3"},"returnParameters":{"id":2456,"nodeType":"ParameterList","parameters":[],"src":"9863:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2465,"nodeType":"FunctionDefinition","src":"10102:71:3","nodes":[],"documentation":{"id":2458,"nodeType":"StructuredDocumentation","src":"9870:227:3","text":"@notice Removes a pool manager from the pool.\n @dev 'msg.sender' must be a pool admin.\n @param _poolId The ID of the pool to remove the manager from\n @param _manager The address of the manager to remove"},"functionSelector":"7f5a70bd","implemented":false,"kind":"function","modifiers":[],"name":"removePoolManager","nameLocation":"10111:17:3","parameters":{"id":2463,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2460,"mutability":"mutable","name":"_poolId","nameLocation":"10137:7:3","nodeType":"VariableDeclaration","scope":2465,"src":"10129:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2459,"name":"uint256","nodeType":"ElementaryTypeName","src":"10129:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2462,"mutability":"mutable","name":"_manager","nameLocation":"10154:8:3","nodeType":"VariableDeclaration","scope":2465,"src":"10146:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2461,"name":"address","nodeType":"ElementaryTypeName","src":"10146:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10128:35:3"},"returnParameters":{"id":2464,"nodeType":"ParameterList","parameters":[],"src":"10172:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2473,"nodeType":"FunctionDefinition","src":"10383:67:3","nodes":[],"documentation":{"id":2466,"nodeType":"StructuredDocumentation","src":"10179:199:3","text":"@notice Recovers funds from a pool.\n @dev 'msg.sender' must be a pool admin.\n @param _token The token to recover\n @param _recipient The address to send the recovered funds to"},"functionSelector":"24ae6a27","implemented":false,"kind":"function","modifiers":[],"name":"recoverFunds","nameLocation":"10392:12:3","parameters":{"id":2471,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2468,"mutability":"mutable","name":"_token","nameLocation":"10413:6:3","nodeType":"VariableDeclaration","scope":2473,"src":"10405:14:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2467,"name":"address","nodeType":"ElementaryTypeName","src":"10405:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":2470,"mutability":"mutable","name":"_recipient","nameLocation":"10429:10:3","nodeType":"VariableDeclaration","scope":2473,"src":"10421:18:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2469,"name":"address","nodeType":"ElementaryTypeName","src":"10421:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10404:36:3"},"returnParameters":{"id":2472,"nodeType":"ParameterList","parameters":[],"src":"10449:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2483,"nodeType":"FunctionDefinition","src":"10658:99:3","nodes":[],"documentation":{"id":2474,"nodeType":"StructuredDocumentation","src":"10456:197:3","text":"@notice Registers a recipient and emits {Registered} event if successful and may be handled differently by each strategy.\n @param _poolId The ID of the pool to register the recipient for"},"functionSelector":"075c0e9c","implemented":false,"kind":"function","modifiers":[],"name":"registerRecipient","nameLocation":"10667:17:3","parameters":{"id":2479,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2476,"mutability":"mutable","name":"_poolId","nameLocation":"10693:7:3","nodeType":"VariableDeclaration","scope":2483,"src":"10685:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2475,"name":"uint256","nodeType":"ElementaryTypeName","src":"10685:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2478,"mutability":"mutable","name":"_data","nameLocation":"10715:5:3","nodeType":"VariableDeclaration","scope":2483,"src":"10702:18:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":2477,"name":"bytes","nodeType":"ElementaryTypeName","src":"10702:5:3","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"10684:37:3"},"returnParameters":{"id":2482,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2481,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2483,"src":"10748:7:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2480,"name":"address","nodeType":"ElementaryTypeName","src":"10748:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10747:9:3"},"scope":2610,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":2496,"nodeType":"FunctionDefinition","src":"10983:133:3","nodes":[],"documentation":{"id":2484,"nodeType":"StructuredDocumentation","src":"10763:215:3","text":"@notice Registers a batch of recipients.\n @param _poolIds The pool ID's to register the recipients for\n @param _data The data to pass to the strategy and may be handled differently by each strategy"},"functionSelector":"1a20bd88","implemented":false,"kind":"function","modifiers":[],"name":"batchRegisterRecipient","nameLocation":"10992:22:3","parameters":{"id":2491,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2487,"mutability":"mutable","name":"_poolIds","nameLocation":"11032:8:3","nodeType":"VariableDeclaration","scope":2496,"src":"11015:25:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":2485,"name":"uint256","nodeType":"ElementaryTypeName","src":"11015:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2486,"nodeType":"ArrayTypeName","src":"11015:9:3","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"},{"constant":false,"id":2490,"mutability":"mutable","name":"_data","nameLocation":"11057:5:3","nodeType":"VariableDeclaration","scope":2496,"src":"11042:20:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":2488,"name":"bytes","nodeType":"ElementaryTypeName","src":"11042:5:3","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":2489,"nodeType":"ArrayTypeName","src":"11042:7:3","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"11014:49:3"},"returnParameters":{"id":2495,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2494,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2496,"src":"11098:16:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":2492,"name":"address","nodeType":"ElementaryTypeName","src":"11098:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2493,"nodeType":"ArrayTypeName","src":"11098:9:3","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"11097:18:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2504,"nodeType":"FunctionDefinition","src":"11427:69:3","nodes":[],"documentation":{"id":2497,"nodeType":"StructuredDocumentation","src":"11122:300:3","text":"@notice Funds a pool.\n @dev 'msg.value' must be greater than 0 if the token is the native token\n or '_amount' must be greater than 0 if the token is not the native token.\n @param _poolId The ID of the pool to fund\n @param _amount The amount to fund the pool with"},"functionSelector":"5acd6fac","implemented":false,"kind":"function","modifiers":[],"name":"fundPool","nameLocation":"11436:8:3","parameters":{"id":2502,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2499,"mutability":"mutable","name":"_poolId","nameLocation":"11453:7:3","nodeType":"VariableDeclaration","scope":2504,"src":"11445:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2498,"name":"uint256","nodeType":"ElementaryTypeName","src":"11445:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2501,"mutability":"mutable","name":"_amount","nameLocation":"11470:7:3","nodeType":"VariableDeclaration","scope":2504,"src":"11462:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2500,"name":"uint256","nodeType":"ElementaryTypeName","src":"11462:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"11444:34:3"},"returnParameters":{"id":2503,"nodeType":"ParameterList","parameters":[],"src":"11495:0:3"},"scope":2610,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":2512,"nodeType":"FunctionDefinition","src":"11794:72:3","nodes":[],"documentation":{"id":2505,"nodeType":"StructuredDocumentation","src":"11502:287:3","text":"@notice Allocates funds to a recipient.\n @dev Each strategy will handle the allocation of funds differently.\n @param _poolId The ID of the pool to allocate funds from\n @param _data The data to pass to the strategy and may be handled differently by each strategy."},"functionSelector":"2ec38188","implemented":false,"kind":"function","modifiers":[],"name":"allocate","nameLocation":"11803:8:3","parameters":{"id":2510,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2507,"mutability":"mutable","name":"_poolId","nameLocation":"11820:7:3","nodeType":"VariableDeclaration","scope":2512,"src":"11812:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2506,"name":"uint256","nodeType":"ElementaryTypeName","src":"11812:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2509,"mutability":"mutable","name":"_data","nameLocation":"11842:5:3","nodeType":"VariableDeclaration","scope":2512,"src":"11829:18:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":2508,"name":"bytes","nodeType":"ElementaryTypeName","src":"11829:5:3","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"11811:37:3"},"returnParameters":{"id":2511,"nodeType":"ParameterList","parameters":[],"src":"11865:0:3"},"scope":2610,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":2522,"nodeType":"FunctionDefinition","src":"12003:84:3","nodes":[],"documentation":{"id":2513,"nodeType":"StructuredDocumentation","src":"11872:126:3","text":"@notice Allocates funds to multiple recipients.\n @dev Each strategy will handle the allocation of funds differently"},"functionSelector":"c6dff1cf","implemented":false,"kind":"function","modifiers":[],"name":"batchAllocate","nameLocation":"12012:13:3","parameters":{"id":2520,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2516,"mutability":"mutable","name":"_poolIds","nameLocation":"12045:8:3","nodeType":"VariableDeclaration","scope":2522,"src":"12026:27:3","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_calldata_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":2514,"name":"uint256","nodeType":"ElementaryTypeName","src":"12026:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":2515,"nodeType":"ArrayTypeName","src":"12026:9:3","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"},{"constant":false,"id":2519,"mutability":"mutable","name":"_datas","nameLocation":"12070:6:3","nodeType":"VariableDeclaration","scope":2522,"src":"12055:21:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":2517,"name":"bytes","nodeType":"ElementaryTypeName","src":"12055:5:3","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":2518,"nodeType":"ArrayTypeName","src":"12055:7:3","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"src":"12025:52:3"},"returnParameters":{"id":2521,"nodeType":"ParameterList","parameters":[],"src":"12086:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2533,"nodeType":"FunctionDefinition","src":"12489:98:3","nodes":[],"documentation":{"id":2523,"nodeType":"StructuredDocumentation","src":"12093:391:3","text":"@notice Distributes funds to recipients and emits {Distributed} event if successful\n @dev Each strategy will handle the distribution of funds differently\n @param _poolId The ID of the pool to distribute from\n @param _recipientIds The recipient ids to distribute to\n @param _data The data to pass to the strategy and may be handled differently by each strategy"},"functionSelector":"3a5fbd92","implemented":false,"kind":"function","modifiers":[],"name":"distribute","nameLocation":"12498:10:3","parameters":{"id":2531,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2525,"mutability":"mutable","name":"_poolId","nameLocation":"12517:7:3","nodeType":"VariableDeclaration","scope":2533,"src":"12509:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2524,"name":"uint256","nodeType":"ElementaryTypeName","src":"12509:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2528,"mutability":"mutable","name":"_recipientIds","nameLocation":"12543:13:3","nodeType":"VariableDeclaration","scope":2533,"src":"12526:30:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":2526,"name":"address","nodeType":"ElementaryTypeName","src":"12526:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2527,"nodeType":"ArrayTypeName","src":"12526:9:3","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":2530,"mutability":"mutable","name":"_data","nameLocation":"12571:5:3","nodeType":"VariableDeclaration","scope":2533,"src":"12558:18:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":2529,"name":"bytes","nodeType":"ElementaryTypeName","src":"12558:5:3","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"12508:69:3"},"returnParameters":{"id":2532,"nodeType":"ParameterList","parameters":[],"src":"12586:0:3"},"scope":2610,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2543,"nodeType":"FunctionDefinition","src":"12922:85:3","nodes":[],"documentation":{"id":2534,"nodeType":"StructuredDocumentation","src":"12696:221:3","text":"@notice Checks if an address is a pool admin.\n @param _poolId The ID of the pool to check\n @param _address The address to check\n @return 'true' if the '_address' is a pool admin, otherwise 'false'"},"functionSelector":"ab3febc6","implemented":false,"kind":"function","modifiers":[],"name":"isPoolAdmin","nameLocation":"12931:11:3","parameters":{"id":2539,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2536,"mutability":"mutable","name":"_poolId","nameLocation":"12951:7:3","nodeType":"VariableDeclaration","scope":2543,"src":"12943:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2535,"name":"uint256","nodeType":"ElementaryTypeName","src":"12943:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2538,"mutability":"mutable","name":"_address","nameLocation":"12968:8:3","nodeType":"VariableDeclaration","scope":2543,"src":"12960:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2537,"name":"address","nodeType":"ElementaryTypeName","src":"12960:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12942:35:3"},"returnParameters":{"id":2542,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2541,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2543,"src":"13001:4:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2540,"name":"bool","nodeType":"ElementaryTypeName","src":"13001:4:3","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13000:6:3"},"scope":2610,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2553,"nodeType":"FunctionDefinition","src":"13243:87:3","nodes":[],"documentation":{"id":2544,"nodeType":"StructuredDocumentation","src":"13013:225:3","text":"@notice Checks if an address is a pool manager.\n @param _poolId The ID of the pool to check\n @param _address The address to check\n @return 'true' if the '_address' is a pool manager, otherwise 'false'"},"functionSelector":"29e40d4b","implemented":false,"kind":"function","modifiers":[],"name":"isPoolManager","nameLocation":"13252:13:3","parameters":{"id":2549,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2546,"mutability":"mutable","name":"_poolId","nameLocation":"13274:7:3","nodeType":"VariableDeclaration","scope":2553,"src":"13266:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2545,"name":"uint256","nodeType":"ElementaryTypeName","src":"13266:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2548,"mutability":"mutable","name":"_address","nameLocation":"13291:8:3","nodeType":"VariableDeclaration","scope":2553,"src":"13283:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2547,"name":"address","nodeType":"ElementaryTypeName","src":"13283:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13265:35:3"},"returnParameters":{"id":2552,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2551,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2553,"src":"13324:4:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2550,"name":"bool","nodeType":"ElementaryTypeName","src":"13324:4:3","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13323:6:3"},"scope":2610,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2561,"nodeType":"FunctionDefinition","src":"13563:77:3","nodes":[],"documentation":{"id":2554,"nodeType":"StructuredDocumentation","src":"13336:222:3","text":"@notice Checks if a strategy is cloneable (is in the cloneableStrategies mapping).\n @param _strategy The address of the strategy to check\n @return 'true' if the '_strategy' is cloneable, otherwise 'false'"},"functionSelector":"ab2ec589","implemented":false,"kind":"function","modifiers":[],"name":"isCloneableStrategy","nameLocation":"13572:19:3","parameters":{"id":2557,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2556,"mutability":"mutable","name":"_strategy","nameLocation":"13600:9:3","nodeType":"VariableDeclaration","scope":2561,"src":"13592:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2555,"name":"address","nodeType":"ElementaryTypeName","src":"13592:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13591:19:3"},"returnParameters":{"id":2560,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2559,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2561,"src":"13634:4:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2558,"name":"bool","nodeType":"ElementaryTypeName","src":"13634:4:3","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"13633:6:3"},"scope":2610,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2569,"nodeType":"FunctionDefinition","src":"13856:70:3","nodes":[],"documentation":{"id":2562,"nodeType":"StructuredDocumentation","src":"13646:205:3","text":"@notice Returns the address of the strategy for a given 'poolId'\n @param _poolId The ID of the pool to check\n @return strategy The address of the strategy for the ID of the pool passed in"},"functionSelector":"cfc0cc34","implemented":false,"kind":"function","modifiers":[],"name":"getStrategy","nameLocation":"13865:11:3","parameters":{"id":2565,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2564,"mutability":"mutable","name":"_poolId","nameLocation":"13885:7:3","nodeType":"VariableDeclaration","scope":2569,"src":"13877:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2563,"name":"uint256","nodeType":"ElementaryTypeName","src":"13877:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"13876:17:3"},"returnParameters":{"id":2568,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2567,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2569,"src":"13917:7:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2566,"name":"address","nodeType":"ElementaryTypeName","src":"13917:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13916:9:3"},"scope":2610,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2575,"nodeType":"FunctionDefinition","src":"14042:57:3","nodes":[],"documentation":{"id":2570,"nodeType":"StructuredDocumentation","src":"13932:105:3","text":"@notice Returns the current percent fee\n @return percentFee The current percentage for the fee"},"functionSelector":"4edbaadc","implemented":false,"kind":"function","modifiers":[],"name":"getPercentFee","nameLocation":"14051:13:3","parameters":{"id":2571,"nodeType":"ParameterList","parameters":[],"src":"14064:2:3"},"returnParameters":{"id":2574,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2573,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2575,"src":"14090:7:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2572,"name":"uint256","nodeType":"ElementaryTypeName","src":"14090:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14089:9:3"},"scope":2610,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2581,"nodeType":"FunctionDefinition","src":"14195:54:3","nodes":[],"documentation":{"id":2576,"nodeType":"StructuredDocumentation","src":"14105:85:3","text":"@notice Returns the current base fee\n @return baseFee The current base fee"},"functionSelector":"15e812ad","implemented":false,"kind":"function","modifiers":[],"name":"getBaseFee","nameLocation":"14204:10:3","parameters":{"id":2577,"nodeType":"ParameterList","parameters":[],"src":"14214:2:3"},"returnParameters":{"id":2580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2579,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2581,"src":"14240:7:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2578,"name":"uint256","nodeType":"ElementaryTypeName","src":"14240:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14239:9:3"},"scope":2610,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2587,"nodeType":"FunctionDefinition","src":"14362:63:3","nodes":[],"documentation":{"id":2582,"nodeType":"StructuredDocumentation","src":"14255:102:3","text":"@notice Returns the current treasury address\n @return treasury The current treasury address"},"functionSelector":"3b19e84a","implemented":false,"kind":"function","modifiers":[],"name":"getTreasury","nameLocation":"14371:11:3","parameters":{"id":2583,"nodeType":"ParameterList","parameters":[],"src":"14382:2:3"},"returnParameters":{"id":2586,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2585,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2587,"src":"14408:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":2584,"name":"address","nodeType":"ElementaryTypeName","src":"14408:15:3","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"14407:17:3"},"scope":2610,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2594,"nodeType":"FunctionDefinition","src":"14538:57:3","nodes":[],"documentation":{"id":2588,"nodeType":"StructuredDocumentation","src":"14431:102:3","text":"@notice Returns the current registry address\n @return registry The current registry address"},"functionSelector":"5ab1bd53","implemented":false,"kind":"function","modifiers":[],"name":"getRegistry","nameLocation":"14547:11:3","parameters":{"id":2589,"nodeType":"ParameterList","parameters":[],"src":"14558:2:3"},"returnParameters":{"id":2593,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2592,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2594,"src":"14584:9:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":2591,"nodeType":"UserDefinedTypeName","pathNode":{"id":2590,"name":"IRegistry","nameLocations":["14584:9:3"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"14584:9:3"},"referencedDeclaration":2802,"src":"14584:9:3","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"internal"}],"src":"14583:11:3"},"scope":2610,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2603,"nodeType":"FunctionDefinition","src":"14787:70:3","nodes":[],"documentation":{"id":2595,"nodeType":"StructuredDocumentation","src":"14601:181:3","text":"@notice Returns the 'Pool' struct for a given 'poolId'\n @param _poolId The ID of the pool to check\n @return pool The 'Pool' struct for the ID of the pool passed in"},"functionSelector":"068bcd8d","implemented":false,"kind":"function","modifiers":[],"name":"getPool","nameLocation":"14796:7:3","parameters":{"id":2598,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2597,"mutability":"mutable","name":"_poolId","nameLocation":"14812:7:3","nodeType":"VariableDeclaration","scope":2603,"src":"14804:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2596,"name":"uint256","nodeType":"ElementaryTypeName","src":"14804:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"14803:17:3"},"returnParameters":{"id":2602,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2601,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2603,"src":"14844:11:3","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool"},"typeName":{"id":2600,"nodeType":"UserDefinedTypeName","pathNode":{"id":2599,"name":"Pool","nameLocations":["14844:4:3"],"nodeType":"IdentifierPath","referencedDeclaration":2319,"src":"14844:4:3"},"referencedDeclaration":2319,"src":"14844:4:3","typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_storage_ptr","typeString":"struct IAllo.Pool"}},"visibility":"internal"}],"src":"14843:13:3"},"scope":2610,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2609,"nodeType":"FunctionDefinition","src":"15008:61:3","nodes":[],"documentation":{"id":2604,"nodeType":"StructuredDocumentation","src":"14863:140:3","text":"@notice Returns the current fee denominator\n @dev 1e18 represents 100%\n @return feeDenominator The current fee denominator"},"functionSelector":"f4e1fc41","implemented":false,"kind":"function","modifiers":[],"name":"getFeeDenominator","nameLocation":"15017:17:3","parameters":{"id":2605,"nodeType":"ParameterList","parameters":[],"src":"15034:2:3"},"returnParameters":{"id":2608,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2607,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":2609,"src":"15060:7:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2606,"name":"uint256","nodeType":"ElementaryTypeName","src":"15060:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"15059:9:3"},"scope":2610,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IAllo","contractDependencies":[],"contractKind":"interface","documentation":{"id":2304,"nodeType":"StructuredDocumentation","src":"4234:297:3","text":"@title Allo Interface\n @author @thelostone-mc , @0xKurt , @codenamejason , @0xZakk , @nfrgosselin \n @notice Interface for the Allo contract. It exposes all functions needed to use the Allo protocol."},"fullyImplemented":false,"linearizedBaseContracts":[2610],"name":"IAllo","nameLocation":"4541:5:3","scope":2611,"usedErrors":[]}],"license":"AGPL-3.0-only"},"id":3} \ No newline at end of file diff --git a/pkg/contracts/out/IArbitrator.sol/IArbitrator.json b/pkg/contracts/out/IArbitrator.sol/IArbitrator.json index 8ee4aa4cb..0dbd21f3c 100644 --- a/pkg/contracts/out/IArbitrator.sol/IArbitrator.json +++ b/pkg/contracts/out/IArbitrator.sol/IArbitrator.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"arbitrationCost","inputs":[{"name":"_extraData","type":"bytes","internalType":"bytes"},{"name":"_feeToken","type":"address","internalType":"contract IERC20"}],"outputs":[{"name":"cost","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"arbitrationCost","inputs":[{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"cost","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"createDispute","inputs":[{"name":"_numberOfChoices","type":"uint256","internalType":"uint256"},{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"disputeID","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"createDispute","inputs":[{"name":"_numberOfChoices","type":"uint256","internalType":"uint256"},{"name":"_extraData","type":"bytes","internalType":"bytes"},{"name":"_feeToken","type":"address","internalType":"contract IERC20"},{"name":"_feeAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"disputeID","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"currentRuling","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"ruling","type":"uint256","internalType":"uint256"},{"name":"tied","type":"bool","internalType":"bool"},{"name":"overridden","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"registerSafe","inputs":[{"name":"_safe","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"AcceptedFeeToken","inputs":[{"name":"_token","type":"address","indexed":true,"internalType":"contract IERC20"},{"name":"_accepted","type":"bool","indexed":true,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"DisputeCreation","inputs":[{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_arbitrable","type":"address","indexed":true,"internalType":"contract IArbitrable"}],"anonymous":false},{"type":"event","name":"NewCurrencyRate","inputs":[{"name":"_feeToken","type":"address","indexed":true,"internalType":"contract IERC20"},{"name":"_rateInEth","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"_rateDecimals","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"Ruling","inputs":[{"name":"_arbitrable","type":"address","indexed":true,"internalType":"contract IArbitrable"},{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_ruling","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"arbitrationCost(bytes)":"f7434ea9","arbitrationCost(bytes,address)":"d98493f6","createDispute(uint256,bytes)":"c13517e1","createDispute(uint256,bytes,address,uint256)":"f6506db4","currentRuling(uint256)":"1c3db16d","registerSafe(address)":"88d5b732"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IERC20\",\"name\":\"_token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bool\",\"name\":\"_accepted\",\"type\":\"bool\"}],\"name\":\"AcceptedFeeToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"contract IArbitrable\",\"name\":\"_arbitrable\",\"type\":\"address\"}],\"name\":\"DisputeCreation\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IERC20\",\"name\":\"_feeToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"_rateInEth\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"_rateDecimals\",\"type\":\"uint8\"}],\"name\":\"NewCurrencyRate\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrable\",\"name\":\"_arbitrable\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"Ruling\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"},{\"internalType\":\"contract IERC20\",\"name\":\"_feeToken\",\"type\":\"address\"}],\"name\":\"arbitrationCost\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"cost\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"arbitrationCost\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"cost\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_numberOfChoices\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"createDispute\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeID\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_numberOfChoices\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"},{\"internalType\":\"contract IERC20\",\"name\":\"_feeToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_feeAmount\",\"type\":\"uint256\"}],\"name\":\"createDispute\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeID\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"}],\"name\":\"currentRuling\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"ruling\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"tied\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"overridden\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"registerSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"AcceptedFeeToken(address,bool)\":{\"details\":\"To be emitted when an ERC20 token is added or removed as a method to pay fees.\",\"params\":{\"_accepted\":\"Whether the token is accepted or not.\",\"_token\":\"The ERC20 token.\"}},\"DisputeCreation(uint256,address)\":{\"details\":\"To be emitted when a dispute is created.\",\"params\":{\"_arbitrable\":\"The contract which created the dispute.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\"}},\"NewCurrencyRate(address,uint64,uint8)\":{\"details\":\"To be emitted when the fee for a particular ERC20 token is updated.\",\"params\":{\"_feeToken\":\"The ERC20 token.\",\"_rateDecimals\":\"The new decimals of the fee token rate.\",\"_rateInEth\":\"The new rate of the fee token in ETH.\"}},\"Ruling(address,uint256,uint256)\":{\"details\":\"To be raised when a ruling is given.\",\"params\":{\"_arbitrable\":\"The arbitrable receiving the ruling.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"The ruling which was given.\"}}},\"kind\":\"dev\",\"methods\":{\"arbitrationCost(bytes)\":{\"details\":\"Compute the cost of arbitration denominated in the native currency, typically ETH. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\"},\"returns\":{\"cost\":\"The arbitration cost in ETH.\"}},\"arbitrationCost(bytes,address)\":{\"details\":\"Compute the cost of arbitration denominated in `_feeToken`. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\",\"_feeToken\":\"The ERC20 token used to pay fees.\"},\"returns\":{\"cost\":\"The arbitration cost in `_feeToken`.\"}},\"createDispute(uint256,bytes)\":{\"details\":\"Create a dispute and pay for the fees in the native currency, typically ETH. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\",\"_numberOfChoices\":\"The number of choices the arbitrator can choose from in this dispute.\"},\"returns\":{\"disputeID\":\"The identifier of the dispute created.\"}},\"createDispute(uint256,bytes,address,uint256)\":{\"details\":\"Create a dispute and pay for the fees in a supported ERC20 token. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\",\"_feeAmount\":\"Amount of the ERC20 token used to pay fees.\",\"_feeToken\":\"The ERC20 token used to pay fees.\",\"_numberOfChoices\":\"The number of choices the arbitrator can choose from in this dispute.\"},\"returns\":{\"disputeID\":\"The identifier of the dispute created.\"}},\"currentRuling(uint256)\":{\"details\":\"Gets the current ruling of a specified dispute.\",\"params\":{\"_disputeID\":\"The ID of the dispute.\"},\"returns\":{\"overridden\":\"Whether the ruling was overridden by appeal funding or not.\",\"ruling\":\"The current ruling.\",\"tied\":\"Whether it's a tie or not.\"}},\"registerSafe(address)\":{\"details\":\"Authorize the safe to execute a ruling on the source contract.<\",\"params\":{\"_safe\":\"that acts as the Tribunal safe that can rule disputes from the source Strategy.\"}}},\"title\":\"Arbitrator Arbitrator interface that implements the new arbitration standard. Unlike the ERC-792 this standard is not concerned with appeals, so each arbitrator can implement an appeal system that suits it the most. When developing arbitrator contracts we need to: - Define the functions for dispute creation (createDispute). Don't forget to store the arbitrated contract and the disputeID (which should be unique, may nbDisputes). - Define the functions for cost display (arbitrationCost). - Allow giving rulings. For this a function must call arbitrable.rule(disputeID, ruling).\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrator.sol\":\"IArbitrator\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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\":{\"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.25+commit.b61c2a91"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"contract IERC20","name":"_token","type":"address","indexed":true},{"internalType":"bool","name":"_accepted","type":"bool","indexed":true}],"type":"event","name":"AcceptedFeeToken","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256","indexed":true},{"internalType":"contract IArbitrable","name":"_arbitrable","type":"address","indexed":true}],"type":"event","name":"DisputeCreation","anonymous":false},{"inputs":[{"internalType":"contract IERC20","name":"_feeToken","type":"address","indexed":true},{"internalType":"uint64","name":"_rateInEth","type":"uint64","indexed":false},{"internalType":"uint8","name":"_rateDecimals","type":"uint8","indexed":false}],"type":"event","name":"NewCurrencyRate","anonymous":false},{"inputs":[{"internalType":"contract IArbitrable","name":"_arbitrable","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":"bytes","name":"_extraData","type":"bytes"},{"internalType":"contract IERC20","name":"_feeToken","type":"address"}],"stateMutability":"view","type":"function","name":"arbitrationCost","outputs":[{"internalType":"uint256","name":"cost","type":"uint256"}]},{"inputs":[{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"view","type":"function","name":"arbitrationCost","outputs":[{"internalType":"uint256","name":"cost","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_numberOfChoices","type":"uint256"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"createDispute","outputs":[{"internalType":"uint256","name":"disputeID","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_numberOfChoices","type":"uint256"},{"internalType":"bytes","name":"_extraData","type":"bytes"},{"internalType":"contract IERC20","name":"_feeToken","type":"address"},{"internalType":"uint256","name":"_feeAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"createDispute","outputs":[{"internalType":"uint256","name":"disputeID","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"}],"stateMutability":"view","type":"function","name":"currentRuling","outputs":[{"internalType":"uint256","name":"ruling","type":"uint256"},{"internalType":"bool","name":"tied","type":"bool"},{"internalType":"bool","name":"overridden","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"registerSafe"}],"devdoc":{"kind":"dev","methods":{"arbitrationCost(bytes)":{"details":"Compute the cost of arbitration denominated in the native currency, typically ETH. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes)."},"returns":{"cost":"The arbitration cost in ETH."}},"arbitrationCost(bytes,address)":{"details":"Compute the cost of arbitration denominated in `_feeToken`. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).","_feeToken":"The ERC20 token used to pay fees."},"returns":{"cost":"The arbitration cost in `_feeToken`."}},"createDispute(uint256,bytes)":{"details":"Create a dispute and pay for the fees in the native currency, typically ETH. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).","_numberOfChoices":"The number of choices the arbitrator can choose from in this dispute."},"returns":{"disputeID":"The identifier of the dispute created."}},"createDispute(uint256,bytes,address,uint256)":{"details":"Create a dispute and pay for the fees in a supported ERC20 token. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).","_feeAmount":"Amount of the ERC20 token used to pay fees.","_feeToken":"The ERC20 token used to pay fees.","_numberOfChoices":"The number of choices the arbitrator can choose from in this dispute."},"returns":{"disputeID":"The identifier of the dispute created."}},"currentRuling(uint256)":{"details":"Gets the current ruling of a specified dispute.","params":{"_disputeID":"The ID of the dispute."},"returns":{"overridden":"Whether the ruling was overridden by appeal funding or not.","ruling":"The current ruling.","tied":"Whether it's a tie or not."}},"registerSafe(address)":{"details":"Authorize the safe to execute a ruling on the source contract.<","params":{"_safe":"that acts as the Tribunal safe that can rule disputes from the source Strategy."}}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrator.sol":"IArbitrator"},"evmVersion":"paris","libraries":{}},"sources":{"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrator.sol","id":638,"exportedSymbols":{"IArbitrable":[533],"IArbitrator":[637],"IERC20":[1944]},"nodeType":"SourceUnit","src":"33:5673:3","nodes":[{"id":535,"nodeType":"PragmaDirective","src":"33:24:3","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":536,"nodeType":"ImportDirective","src":"59:56:3","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"@openzeppelin/contracts/token/ERC20/IERC20.sol","nameLocation":"-1:-1:-1","scope":638,"sourceUnit":1945,"symbolAliases":[],"unitAlias":""},{"id":537,"nodeType":"ImportDirective","src":"116:27:3","nodes":[],"absolutePath":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrable.sol","file":"./IArbitrable.sol","nameLocation":"-1:-1:-1","scope":638,"sourceUnit":534,"symbolAliases":[],"unitAlias":""},{"id":637,"nodeType":"ContractDefinition","src":"761:4944:3","nodes":[{"id":546,"nodeType":"EventDefinition","src":"994:83:3","nodes":[],"anonymous":false,"documentation":{"id":539,"nodeType":"StructuredDocumentation","src":"789:200:3","text":"@dev To be emitted when a dispute is created.\n @param _disputeID The identifier of the dispute in the Arbitrator contract.\n @param _arbitrable The contract which created the dispute."},"eventSelector":"141dfc18aa6a56fc816f44f0e9e2f1ebc92b15ab167770e17db5b084c10ed995","name":"DisputeCreation","nameLocation":"1000:15:3","parameters":{"id":545,"nodeType":"ParameterList","parameters":[{"constant":false,"id":541,"indexed":true,"mutability":"mutable","name":"_disputeID","nameLocation":"1032:10:3","nodeType":"VariableDeclaration","scope":546,"src":"1016:26:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":540,"name":"uint256","nodeType":"ElementaryTypeName","src":"1016:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":544,"indexed":true,"mutability":"mutable","name":"_arbitrable","nameLocation":"1064:11:3","nodeType":"VariableDeclaration","scope":546,"src":"1044:31:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"},"typeName":{"id":543,"nodeType":"UserDefinedTypeName","pathNode":{"id":542,"name":"IArbitrable","nameLocations":["1044:11:3"],"nodeType":"IdentifierPath","referencedDeclaration":533,"src":"1044:11:3"},"referencedDeclaration":533,"src":"1044:11:3","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"}},"visibility":"internal"}],"src":"1015:61:3"}},{"id":556,"nodeType":"EventDefinition","src":"1332:91:3","nodes":[],"anonymous":false,"documentation":{"id":547,"nodeType":"StructuredDocumentation","src":"1083:244:3","text":"@dev To be raised when a ruling is given.\n @param _arbitrable The arbitrable receiving the ruling.\n @param _disputeID The identifier of the dispute in the Arbitrator contract.\n @param _ruling The ruling which was given."},"eventSelector":"394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e75622276","name":"Ruling","nameLocation":"1338:6:3","parameters":{"id":555,"nodeType":"ParameterList","parameters":[{"constant":false,"id":550,"indexed":true,"mutability":"mutable","name":"_arbitrable","nameLocation":"1365:11:3","nodeType":"VariableDeclaration","scope":556,"src":"1345:31:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"},"typeName":{"id":549,"nodeType":"UserDefinedTypeName","pathNode":{"id":548,"name":"IArbitrable","nameLocations":["1345:11:3"],"nodeType":"IdentifierPath","referencedDeclaration":533,"src":"1345:11:3"},"referencedDeclaration":533,"src":"1345:11:3","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"}},"visibility":"internal"},{"constant":false,"id":552,"indexed":true,"mutability":"mutable","name":"_disputeID","nameLocation":"1394:10:3","nodeType":"VariableDeclaration","scope":556,"src":"1378:26:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":551,"name":"uint256","nodeType":"ElementaryTypeName","src":"1378:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":554,"indexed":false,"mutability":"mutable","name":"_ruling","nameLocation":"1414:7:3","nodeType":"VariableDeclaration","scope":556,"src":"1406:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":553,"name":"uint256","nodeType":"ElementaryTypeName","src":"1406:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1344:78:3"}},{"id":564,"nodeType":"EventDefinition","src":"1623:70:3","nodes":[],"anonymous":false,"documentation":{"id":557,"nodeType":"StructuredDocumentation","src":"1429:189:3","text":"@dev To be emitted when an ERC20 token is added or removed as a method to pay fees.\n @param _token The ERC20 token.\n @param _accepted Whether the token is accepted or not."},"eventSelector":"541615e167511d757a7067a700eb54431b256bb458dfdce0ac58bf2ed0aefd44","name":"AcceptedFeeToken","nameLocation":"1629:16:3","parameters":{"id":563,"nodeType":"ParameterList","parameters":[{"constant":false,"id":560,"indexed":true,"mutability":"mutable","name":"_token","nameLocation":"1661:6:3","nodeType":"VariableDeclaration","scope":564,"src":"1646:21:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$1944","typeString":"contract IERC20"},"typeName":{"id":559,"nodeType":"UserDefinedTypeName","pathNode":{"id":558,"name":"IERC20","nameLocations":["1646:6:3"],"nodeType":"IdentifierPath","referencedDeclaration":1944,"src":"1646:6:3"},"referencedDeclaration":1944,"src":"1646:6:3","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$1944","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":562,"indexed":true,"mutability":"mutable","name":"_accepted","nameLocation":"1682:9:3","nodeType":"VariableDeclaration","scope":564,"src":"1669:22:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":561,"name":"bool","nodeType":"ElementaryTypeName","src":"1669:4:3","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1645:47:3"}},{"id":574,"nodeType":"EventDefinition","src":"1955:88:3","nodes":[],"anonymous":false,"documentation":{"id":565,"nodeType":"StructuredDocumentation","src":"1699:251:3","text":"@dev To be emitted when the fee for a particular ERC20 token is updated.\n @param _feeToken The ERC20 token.\n @param _rateInEth The new rate of the fee token in ETH.\n @param _rateDecimals The new decimals of the fee token rate."},"eventSelector":"e6996b7f03e9bd02228b99d3d946932e3197f505f60542c4cfbc919441d8a4e6","name":"NewCurrencyRate","nameLocation":"1961:15:3","parameters":{"id":573,"nodeType":"ParameterList","parameters":[{"constant":false,"id":568,"indexed":true,"mutability":"mutable","name":"_feeToken","nameLocation":"1992:9:3","nodeType":"VariableDeclaration","scope":574,"src":"1977:24:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$1944","typeString":"contract IERC20"},"typeName":{"id":567,"nodeType":"UserDefinedTypeName","pathNode":{"id":566,"name":"IERC20","nameLocations":["1977:6:3"],"nodeType":"IdentifierPath","referencedDeclaration":1944,"src":"1977:6:3"},"referencedDeclaration":1944,"src":"1977:6:3","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$1944","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":570,"indexed":false,"mutability":"mutable","name":"_rateInEth","nameLocation":"2010:10:3","nodeType":"VariableDeclaration","scope":574,"src":"2003:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":569,"name":"uint64","nodeType":"ElementaryTypeName","src":"2003:6:3","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":572,"indexed":false,"mutability":"mutable","name":"_rateDecimals","nameLocation":"2028:13:3","nodeType":"VariableDeclaration","scope":574,"src":"2022:19:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":571,"name":"uint8","nodeType":"ElementaryTypeName","src":"2022:5:3","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"1976:66:3"}},{"id":584,"nodeType":"FunctionDefinition","src":"2659:145:3","nodes":[],"documentation":{"id":575,"nodeType":"StructuredDocumentation","src":"2049:605:3","text":"@dev Create a dispute and pay for the fees in the native currency, typically ETH.\n Must be called by the arbitrable contract.\n Must pay at least arbitrationCost(_extraData).\n @param _numberOfChoices The number of choices the arbitrator can choose from in this dispute.\n @param _extraData Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\n @return disputeID The identifier of the dispute created."},"functionSelector":"c13517e1","implemented":false,"kind":"function","modifiers":[],"name":"createDispute","nameLocation":"2668:13:3","parameters":{"id":580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":577,"mutability":"mutable","name":"_numberOfChoices","nameLocation":"2690:16:3","nodeType":"VariableDeclaration","scope":584,"src":"2682:24:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":576,"name":"uint256","nodeType":"ElementaryTypeName","src":"2682:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":579,"mutability":"mutable","name":"_extraData","nameLocation":"2723:10:3","nodeType":"VariableDeclaration","scope":584,"src":"2708:25:3","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":578,"name":"bytes","nodeType":"ElementaryTypeName","src":"2708:5:3","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"2681:53:3"},"returnParameters":{"id":583,"nodeType":"ParameterList","parameters":[{"constant":false,"id":582,"mutability":"mutable","name":"disputeID","nameLocation":"2793:9:3","nodeType":"VariableDeclaration","scope":584,"src":"2785:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":581,"name":"uint256","nodeType":"ElementaryTypeName","src":"2785:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2784:19:3"},"scope":637,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":599,"nodeType":"FunctionDefinition","src":"3538:167:3","nodes":[],"documentation":{"id":585,"nodeType":"StructuredDocumentation","src":"2810:723:3","text":"@dev Create a dispute and pay for the fees in a supported ERC20 token.\n Must be called by the arbitrable contract.\n Must pay at least arbitrationCost(_extraData).\n @param _numberOfChoices The number of choices the arbitrator can choose from in this dispute.\n @param _extraData Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\n @param _feeToken The ERC20 token used to pay fees.\n @param _feeAmount Amount of the ERC20 token used to pay fees.\n @return disputeID The identifier of the dispute created."},"functionSelector":"f6506db4","implemented":false,"kind":"function","modifiers":[],"name":"createDispute","nameLocation":"3547:13:3","parameters":{"id":595,"nodeType":"ParameterList","parameters":[{"constant":false,"id":587,"mutability":"mutable","name":"_numberOfChoices","nameLocation":"3569:16:3","nodeType":"VariableDeclaration","scope":599,"src":"3561:24:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":586,"name":"uint256","nodeType":"ElementaryTypeName","src":"3561:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":589,"mutability":"mutable","name":"_extraData","nameLocation":"3602:10:3","nodeType":"VariableDeclaration","scope":599,"src":"3587:25:3","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":588,"name":"bytes","nodeType":"ElementaryTypeName","src":"3587:5:3","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":592,"mutability":"mutable","name":"_feeToken","nameLocation":"3621:9:3","nodeType":"VariableDeclaration","scope":599,"src":"3614:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$1944","typeString":"contract IERC20"},"typeName":{"id":591,"nodeType":"UserDefinedTypeName","pathNode":{"id":590,"name":"IERC20","nameLocations":["3614:6:3"],"nodeType":"IdentifierPath","referencedDeclaration":1944,"src":"3614:6:3"},"referencedDeclaration":1944,"src":"3614:6:3","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$1944","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":594,"mutability":"mutable","name":"_feeAmount","nameLocation":"3640:10:3","nodeType":"VariableDeclaration","scope":599,"src":"3632:18:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":593,"name":"uint256","nodeType":"ElementaryTypeName","src":"3632:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3560:91:3"},"returnParameters":{"id":598,"nodeType":"ParameterList","parameters":[{"constant":false,"id":597,"mutability":"mutable","name":"disputeID","nameLocation":"3694:9:3","nodeType":"VariableDeclaration","scope":599,"src":"3686:17:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":596,"name":"uint256","nodeType":"ElementaryTypeName","src":"3686:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3685:19:3"},"scope":637,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":607,"nodeType":"FunctionDefinition","src":"4254:89:3","nodes":[],"documentation":{"id":600,"nodeType":"StructuredDocumentation","src":"3711:538:3","text":"@dev Compute the cost of arbitration denominated in the native currency, typically ETH.\n It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.\n @param _extraData Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\n @return cost The arbitration cost in ETH."},"functionSelector":"f7434ea9","implemented":false,"kind":"function","modifiers":[],"name":"arbitrationCost","nameLocation":"4263:15:3","parameters":{"id":603,"nodeType":"ParameterList","parameters":[{"constant":false,"id":602,"mutability":"mutable","name":"_extraData","nameLocation":"4294:10:3","nodeType":"VariableDeclaration","scope":607,"src":"4279:25:3","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":601,"name":"bytes","nodeType":"ElementaryTypeName","src":"4279:5:3","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"4278:27:3"},"returnParameters":{"id":606,"nodeType":"ParameterList","parameters":[{"constant":false,"id":605,"mutability":"mutable","name":"cost","nameLocation":"4337:4:3","nodeType":"VariableDeclaration","scope":607,"src":"4329:12:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":604,"name":"uint256","nodeType":"ElementaryTypeName","src":"4329:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4328:14:3"},"scope":637,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":618,"nodeType":"FunctionDefinition","src":"4936:107:3","nodes":[],"documentation":{"id":608,"nodeType":"StructuredDocumentation","src":"4349:582:3","text":"@dev Compute the cost of arbitration denominated in `_feeToken`.\n It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.\n @param _extraData Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\n @param _feeToken The ERC20 token used to pay fees.\n @return cost The arbitration cost in `_feeToken`."},"functionSelector":"d98493f6","implemented":false,"kind":"function","modifiers":[],"name":"arbitrationCost","nameLocation":"4945:15:3","parameters":{"id":614,"nodeType":"ParameterList","parameters":[{"constant":false,"id":610,"mutability":"mutable","name":"_extraData","nameLocation":"4976:10:3","nodeType":"VariableDeclaration","scope":618,"src":"4961:25:3","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":609,"name":"bytes","nodeType":"ElementaryTypeName","src":"4961:5:3","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":613,"mutability":"mutable","name":"_feeToken","nameLocation":"4995:9:3","nodeType":"VariableDeclaration","scope":618,"src":"4988:16:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$1944","typeString":"contract IERC20"},"typeName":{"id":612,"nodeType":"UserDefinedTypeName","pathNode":{"id":611,"name":"IERC20","nameLocations":["4988:6:3"],"nodeType":"IdentifierPath","referencedDeclaration":1944,"src":"4988:6:3"},"referencedDeclaration":1944,"src":"4988:6:3","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$1944","typeString":"contract IERC20"}},"visibility":"internal"}],"src":"4960:45:3"},"returnParameters":{"id":617,"nodeType":"ParameterList","parameters":[{"constant":false,"id":616,"mutability":"mutable","name":"cost","nameLocation":"5037:4:3","nodeType":"VariableDeclaration","scope":618,"src":"5029:12:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":615,"name":"uint256","nodeType":"ElementaryTypeName","src":"5029:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5028:14:3"},"scope":637,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":630,"nodeType":"FunctionDefinition","src":"5337:110:3","nodes":[],"documentation":{"id":619,"nodeType":"StructuredDocumentation","src":"5049:283:3","text":"@dev Gets the current ruling of a specified dispute.\n @param _disputeID The ID of the dispute.\n @return ruling The current ruling.\n @return tied Whether it's a tie or not.\n @return overridden Whether the ruling was overridden by appeal funding or not."},"functionSelector":"1c3db16d","implemented":false,"kind":"function","modifiers":[],"name":"currentRuling","nameLocation":"5346:13:3","parameters":{"id":622,"nodeType":"ParameterList","parameters":[{"constant":false,"id":621,"mutability":"mutable","name":"_disputeID","nameLocation":"5368:10:3","nodeType":"VariableDeclaration","scope":630,"src":"5360:18:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":620,"name":"uint256","nodeType":"ElementaryTypeName","src":"5360:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5359:20:3"},"returnParameters":{"id":629,"nodeType":"ParameterList","parameters":[{"constant":false,"id":624,"mutability":"mutable","name":"ruling","nameLocation":"5411:6:3","nodeType":"VariableDeclaration","scope":630,"src":"5403:14:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":623,"name":"uint256","nodeType":"ElementaryTypeName","src":"5403:7:3","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":626,"mutability":"mutable","name":"tied","nameLocation":"5424:4:3","nodeType":"VariableDeclaration","scope":630,"src":"5419:9:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":625,"name":"bool","nodeType":"ElementaryTypeName","src":"5419:4:3","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":628,"mutability":"mutable","name":"overridden","nameLocation":"5435:10:3","nodeType":"VariableDeclaration","scope":630,"src":"5430:15:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":627,"name":"bool","nodeType":"ElementaryTypeName","src":"5430:4:3","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5402:44:3"},"scope":637,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":636,"nodeType":"FunctionDefinition","src":"5657:46:3","nodes":[],"documentation":{"id":631,"nodeType":"StructuredDocumentation","src":"5479:173:3","text":"@dev Authorize the safe to execute a ruling on the source contract.<\n @param _safe that acts as the Tribunal safe that can rule disputes from the source Strategy."},"functionSelector":"88d5b732","implemented":false,"kind":"function","modifiers":[],"name":"registerSafe","nameLocation":"5666:12:3","parameters":{"id":634,"nodeType":"ParameterList","parameters":[{"constant":false,"id":633,"mutability":"mutable","name":"_safe","nameLocation":"5687:5:3","nodeType":"VariableDeclaration","scope":636,"src":"5679:13:3","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":632,"name":"address","nodeType":"ElementaryTypeName","src":"5679:7:3","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5678:15:3"},"returnParameters":{"id":635,"nodeType":"ParameterList","parameters":[],"src":"5702:0:3"},"scope":637,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IArbitrator","contractDependencies":[],"contractKind":"interface","documentation":{"id":538,"nodeType":"StructuredDocumentation","src":"145:616:3","text":"@title Arbitrator\n Arbitrator interface that implements the new arbitration standard.\n Unlike the ERC-792 this standard is not concerned with appeals, so each arbitrator can implement an appeal system that suits it the most.\n When developing arbitrator contracts we need to:\n - Define the functions for dispute creation (createDispute). Don't forget to store the arbitrated contract and the disputeID (which should be unique, may nbDisputes).\n - Define the functions for cost display (arbitrationCost).\n - Allow giving rulings. For this a function must call arbitrable.rule(disputeID, ruling)."},"fullyImplemented":false,"linearizedBaseContracts":[637],"name":"IArbitrator","nameLocation":"771:11:3","scope":638,"usedErrors":[],"usedEvents":[546,556,564,574]}],"license":"MIT"},"id":3} \ No newline at end of file +{"abi":[{"type":"function","name":"arbitrationCost","inputs":[{"name":"_extraData","type":"bytes","internalType":"bytes"},{"name":"_feeToken","type":"address","internalType":"contract IERC20"}],"outputs":[{"name":"cost","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"arbitrationCost","inputs":[{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"cost","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"createDispute","inputs":[{"name":"_numberOfChoices","type":"uint256","internalType":"uint256"},{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"disputeID","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"createDispute","inputs":[{"name":"_numberOfChoices","type":"uint256","internalType":"uint256"},{"name":"_extraData","type":"bytes","internalType":"bytes"},{"name":"_feeToken","type":"address","internalType":"contract IERC20"},{"name":"_feeAmount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"disputeID","type":"uint256","internalType":"uint256"}],"stateMutability":"nonpayable"},{"type":"function","name":"currentRuling","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"ruling","type":"uint256","internalType":"uint256"},{"name":"tied","type":"bool","internalType":"bool"},{"name":"overridden","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"registerSafe","inputs":[{"name":"_safe","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"AcceptedFeeToken","inputs":[{"name":"_token","type":"address","indexed":true,"internalType":"contract IERC20"},{"name":"_accepted","type":"bool","indexed":true,"internalType":"bool"}],"anonymous":false},{"type":"event","name":"DisputeCreation","inputs":[{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_arbitrable","type":"address","indexed":true,"internalType":"contract IArbitrable"}],"anonymous":false},{"type":"event","name":"NewCurrencyRate","inputs":[{"name":"_feeToken","type":"address","indexed":true,"internalType":"contract IERC20"},{"name":"_rateInEth","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"_rateDecimals","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"Ruling","inputs":[{"name":"_arbitrable","type":"address","indexed":true,"internalType":"contract IArbitrable"},{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_ruling","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"arbitrationCost(bytes)":"f7434ea9","arbitrationCost(bytes,address)":"d98493f6","createDispute(uint256,bytes)":"c13517e1","createDispute(uint256,bytes,address,uint256)":"f6506db4","currentRuling(uint256)":"1c3db16d","registerSafe(address)":"88d5b732"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IERC20\",\"name\":\"_token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bool\",\"name\":\"_accepted\",\"type\":\"bool\"}],\"name\":\"AcceptedFeeToken\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"contract IArbitrable\",\"name\":\"_arbitrable\",\"type\":\"address\"}],\"name\":\"DisputeCreation\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IERC20\",\"name\":\"_feeToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"_rateInEth\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"_rateDecimals\",\"type\":\"uint8\"}],\"name\":\"NewCurrencyRate\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IArbitrable\",\"name\":\"_arbitrable\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"}],\"name\":\"Ruling\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"},{\"internalType\":\"contract IERC20\",\"name\":\"_feeToken\",\"type\":\"address\"}],\"name\":\"arbitrationCost\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"cost\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"arbitrationCost\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"cost\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_numberOfChoices\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"createDispute\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeID\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_numberOfChoices\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"},{\"internalType\":\"contract IERC20\",\"name\":\"_feeToken\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_feeAmount\",\"type\":\"uint256\"}],\"name\":\"createDispute\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeID\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"}],\"name\":\"currentRuling\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"ruling\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"tied\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"overridden\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"registerSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"events\":{\"AcceptedFeeToken(address,bool)\":{\"details\":\"To be emitted when an ERC20 token is added or removed as a method to pay fees.\",\"params\":{\"_accepted\":\"Whether the token is accepted or not.\",\"_token\":\"The ERC20 token.\"}},\"DisputeCreation(uint256,address)\":{\"details\":\"To be emitted when a dispute is created.\",\"params\":{\"_arbitrable\":\"The contract which created the dispute.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\"}},\"NewCurrencyRate(address,uint64,uint8)\":{\"details\":\"To be emitted when the fee for a particular ERC20 token is updated.\",\"params\":{\"_feeToken\":\"The ERC20 token.\",\"_rateDecimals\":\"The new decimals of the fee token rate.\",\"_rateInEth\":\"The new rate of the fee token in ETH.\"}},\"Ruling(address,uint256,uint256)\":{\"details\":\"To be raised when a ruling is given.\",\"params\":{\"_arbitrable\":\"The arbitrable receiving the ruling.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\",\"_ruling\":\"The ruling which was given.\"}}},\"kind\":\"dev\",\"methods\":{\"arbitrationCost(bytes)\":{\"details\":\"Compute the cost of arbitration denominated in the native currency, typically ETH. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\"},\"returns\":{\"cost\":\"The arbitration cost in ETH.\"}},\"arbitrationCost(bytes,address)\":{\"details\":\"Compute the cost of arbitration denominated in `_feeToken`. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\",\"_feeToken\":\"The ERC20 token used to pay fees.\"},\"returns\":{\"cost\":\"The arbitration cost in `_feeToken`.\"}},\"createDispute(uint256,bytes)\":{\"details\":\"Create a dispute and pay for the fees in the native currency, typically ETH. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\",\"_numberOfChoices\":\"The number of choices the arbitrator can choose from in this dispute.\"},\"returns\":{\"disputeID\":\"The identifier of the dispute created.\"}},\"createDispute(uint256,bytes,address,uint256)\":{\"details\":\"Create a dispute and pay for the fees in a supported ERC20 token. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\",\"_feeAmount\":\"Amount of the ERC20 token used to pay fees.\",\"_feeToken\":\"The ERC20 token used to pay fees.\",\"_numberOfChoices\":\"The number of choices the arbitrator can choose from in this dispute.\"},\"returns\":{\"disputeID\":\"The identifier of the dispute created.\"}},\"currentRuling(uint256)\":{\"details\":\"Gets the current ruling of a specified dispute.\",\"params\":{\"_disputeID\":\"The ID of the dispute.\"},\"returns\":{\"overridden\":\"Whether the ruling was overridden by appeal funding or not.\",\"ruling\":\"The current ruling.\",\"tied\":\"Whether it's a tie or not.\"}},\"registerSafe(address)\":{\"details\":\"Authorize the safe to execute a ruling on the source contract.<\",\"params\":{\"_safe\":\"that acts as the Tribunal safe that can rule disputes from the source Strategy.\"}}},\"title\":\"Arbitrator Arbitrator interface that implements the new arbitration standard. Unlike the ERC-792 this standard is not concerned with appeals, so each arbitrator can implement an appeal system that suits it the most. When developing arbitrator contracts we need to: - Define the functions for dispute creation (createDispute). Don't forget to store the arbitrated contract and the disputeID (which should be unique, may nbDisputes). - Define the functions for cost display (arbitrationCost). - Allow giving rulings. For this a function must call arbitrable.rule(disputeID, ruling).\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/interfaces/IArbitrator.sol\":\"IArbitrator\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"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\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"contract IERC20","name":"_token","type":"address","indexed":true},{"internalType":"bool","name":"_accepted","type":"bool","indexed":true}],"type":"event","name":"AcceptedFeeToken","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256","indexed":true},{"internalType":"contract IArbitrable","name":"_arbitrable","type":"address","indexed":true}],"type":"event","name":"DisputeCreation","anonymous":false},{"inputs":[{"internalType":"contract IERC20","name":"_feeToken","type":"address","indexed":true},{"internalType":"uint64","name":"_rateInEth","type":"uint64","indexed":false},{"internalType":"uint8","name":"_rateDecimals","type":"uint8","indexed":false}],"type":"event","name":"NewCurrencyRate","anonymous":false},{"inputs":[{"internalType":"contract IArbitrable","name":"_arbitrable","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":"bytes","name":"_extraData","type":"bytes"},{"internalType":"contract IERC20","name":"_feeToken","type":"address"}],"stateMutability":"view","type":"function","name":"arbitrationCost","outputs":[{"internalType":"uint256","name":"cost","type":"uint256"}]},{"inputs":[{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"view","type":"function","name":"arbitrationCost","outputs":[{"internalType":"uint256","name":"cost","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_numberOfChoices","type":"uint256"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"createDispute","outputs":[{"internalType":"uint256","name":"disputeID","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_numberOfChoices","type":"uint256"},{"internalType":"bytes","name":"_extraData","type":"bytes"},{"internalType":"contract IERC20","name":"_feeToken","type":"address"},{"internalType":"uint256","name":"_feeAmount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"createDispute","outputs":[{"internalType":"uint256","name":"disputeID","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"}],"stateMutability":"view","type":"function","name":"currentRuling","outputs":[{"internalType":"uint256","name":"ruling","type":"uint256"},{"internalType":"bool","name":"tied","type":"bool"},{"internalType":"bool","name":"overridden","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"registerSafe"}],"devdoc":{"kind":"dev","methods":{"arbitrationCost(bytes)":{"details":"Compute the cost of arbitration denominated in the native currency, typically ETH. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes)."},"returns":{"cost":"The arbitration cost in ETH."}},"arbitrationCost(bytes,address)":{"details":"Compute the cost of arbitration denominated in `_feeToken`. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).","_feeToken":"The ERC20 token used to pay fees."},"returns":{"cost":"The arbitration cost in `_feeToken`."}},"createDispute(uint256,bytes)":{"details":"Create a dispute and pay for the fees in the native currency, typically ETH. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).","_numberOfChoices":"The number of choices the arbitrator can choose from in this dispute."},"returns":{"disputeID":"The identifier of the dispute created."}},"createDispute(uint256,bytes,address,uint256)":{"details":"Create a dispute and pay for the fees in a supported ERC20 token. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).","_feeAmount":"Amount of the ERC20 token used to pay fees.","_feeToken":"The ERC20 token used to pay fees.","_numberOfChoices":"The number of choices the arbitrator can choose from in this dispute."},"returns":{"disputeID":"The identifier of the dispute created."}},"currentRuling(uint256)":{"details":"Gets the current ruling of a specified dispute.","params":{"_disputeID":"The ID of the dispute."},"returns":{"overridden":"Whether the ruling was overridden by appeal funding or not.","ruling":"The current ruling.","tied":"Whether it's a tie or not."}},"registerSafe(address)":{"details":"Authorize the safe to execute a ruling on the source contract.<","params":{"_safe":"that acts as the Tribunal safe that can rule disputes from the source Strategy."}}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/IArbitrator.sol":"IArbitrator"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"},"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"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","id":76950,"exportedSymbols":{"IArbitrable":[76845],"IArbitrator":[76949],"IERC20":[55825]},"nodeType":"SourceUnit","src":"33:5673:126","nodes":[{"id":76847,"nodeType":"PragmaDirective","src":"33:24:126","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":76848,"nodeType":"ImportDirective","src":"59:56:126","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"@openzeppelin/contracts/token/ERC20/IERC20.sol","nameLocation":"-1:-1:-1","scope":76950,"sourceUnit":55826,"symbolAliases":[],"unitAlias":""},{"id":76849,"nodeType":"ImportDirective","src":"116:27:126","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"./IArbitrable.sol","nameLocation":"-1:-1:-1","scope":76950,"sourceUnit":76846,"symbolAliases":[],"unitAlias":""},{"id":76949,"nodeType":"ContractDefinition","src":"761:4944:126","nodes":[{"id":76858,"nodeType":"EventDefinition","src":"994:83:126","nodes":[],"anonymous":false,"documentation":{"id":76851,"nodeType":"StructuredDocumentation","src":"789:200:126","text":"@dev To be emitted when a dispute is created.\n @param _disputeID The identifier of the dispute in the Arbitrator contract.\n @param _arbitrable The contract which created the dispute."},"eventSelector":"141dfc18aa6a56fc816f44f0e9e2f1ebc92b15ab167770e17db5b084c10ed995","name":"DisputeCreation","nameLocation":"1000:15:126","parameters":{"id":76857,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76853,"indexed":true,"mutability":"mutable","name":"_disputeID","nameLocation":"1032:10:126","nodeType":"VariableDeclaration","scope":76858,"src":"1016:26:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76852,"name":"uint256","nodeType":"ElementaryTypeName","src":"1016:7:126","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76856,"indexed":true,"mutability":"mutable","name":"_arbitrable","nameLocation":"1064:11:126","nodeType":"VariableDeclaration","scope":76858,"src":"1044:31:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"},"typeName":{"id":76855,"nodeType":"UserDefinedTypeName","pathNode":{"id":76854,"name":"IArbitrable","nameLocations":["1044:11:126"],"nodeType":"IdentifierPath","referencedDeclaration":76845,"src":"1044:11:126"},"referencedDeclaration":76845,"src":"1044:11:126","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"}},"visibility":"internal"}],"src":"1015:61:126"}},{"id":76868,"nodeType":"EventDefinition","src":"1332:91:126","nodes":[],"anonymous":false,"documentation":{"id":76859,"nodeType":"StructuredDocumentation","src":"1083:244:126","text":"@dev To be raised when a ruling is given.\n @param _arbitrable The arbitrable receiving the ruling.\n @param _disputeID The identifier of the dispute in the Arbitrator contract.\n @param _ruling The ruling which was given."},"eventSelector":"394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e75622276","name":"Ruling","nameLocation":"1338:6:126","parameters":{"id":76867,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76862,"indexed":true,"mutability":"mutable","name":"_arbitrable","nameLocation":"1365:11:126","nodeType":"VariableDeclaration","scope":76868,"src":"1345:31:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"},"typeName":{"id":76861,"nodeType":"UserDefinedTypeName","pathNode":{"id":76860,"name":"IArbitrable","nameLocations":["1345:11:126"],"nodeType":"IdentifierPath","referencedDeclaration":76845,"src":"1345:11:126"},"referencedDeclaration":76845,"src":"1345:11:126","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"}},"visibility":"internal"},{"constant":false,"id":76864,"indexed":true,"mutability":"mutable","name":"_disputeID","nameLocation":"1394:10:126","nodeType":"VariableDeclaration","scope":76868,"src":"1378:26:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76863,"name":"uint256","nodeType":"ElementaryTypeName","src":"1378:7:126","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76866,"indexed":false,"mutability":"mutable","name":"_ruling","nameLocation":"1414:7:126","nodeType":"VariableDeclaration","scope":76868,"src":"1406:15:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76865,"name":"uint256","nodeType":"ElementaryTypeName","src":"1406:7:126","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1344:78:126"}},{"id":76876,"nodeType":"EventDefinition","src":"1623:70:126","nodes":[],"anonymous":false,"documentation":{"id":76869,"nodeType":"StructuredDocumentation","src":"1429:189:126","text":"@dev To be emitted when an ERC20 token is added or removed as a method to pay fees.\n @param _token The ERC20 token.\n @param _accepted Whether the token is accepted or not."},"eventSelector":"541615e167511d757a7067a700eb54431b256bb458dfdce0ac58bf2ed0aefd44","name":"AcceptedFeeToken","nameLocation":"1629:16:126","parameters":{"id":76875,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76872,"indexed":true,"mutability":"mutable","name":"_token","nameLocation":"1661:6:126","nodeType":"VariableDeclaration","scope":76876,"src":"1646:21:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":76871,"nodeType":"UserDefinedTypeName","pathNode":{"id":76870,"name":"IERC20","nameLocations":["1646:6:126"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"1646:6:126"},"referencedDeclaration":55825,"src":"1646:6:126","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":76874,"indexed":true,"mutability":"mutable","name":"_accepted","nameLocation":"1682:9:126","nodeType":"VariableDeclaration","scope":76876,"src":"1669:22:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":76873,"name":"bool","nodeType":"ElementaryTypeName","src":"1669:4:126","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1645:47:126"}},{"id":76886,"nodeType":"EventDefinition","src":"1955:88:126","nodes":[],"anonymous":false,"documentation":{"id":76877,"nodeType":"StructuredDocumentation","src":"1699:251:126","text":"@dev To be emitted when the fee for a particular ERC20 token is updated.\n @param _feeToken The ERC20 token.\n @param _rateInEth The new rate of the fee token in ETH.\n @param _rateDecimals The new decimals of the fee token rate."},"eventSelector":"e6996b7f03e9bd02228b99d3d946932e3197f505f60542c4cfbc919441d8a4e6","name":"NewCurrencyRate","nameLocation":"1961:15:126","parameters":{"id":76885,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76880,"indexed":true,"mutability":"mutable","name":"_feeToken","nameLocation":"1992:9:126","nodeType":"VariableDeclaration","scope":76886,"src":"1977:24:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":76879,"nodeType":"UserDefinedTypeName","pathNode":{"id":76878,"name":"IERC20","nameLocations":["1977:6:126"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"1977:6:126"},"referencedDeclaration":55825,"src":"1977:6:126","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":76882,"indexed":false,"mutability":"mutable","name":"_rateInEth","nameLocation":"2010:10:126","nodeType":"VariableDeclaration","scope":76886,"src":"2003:17:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":76881,"name":"uint64","nodeType":"ElementaryTypeName","src":"2003:6:126","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"visibility":"internal"},{"constant":false,"id":76884,"indexed":false,"mutability":"mutable","name":"_rateDecimals","nameLocation":"2028:13:126","nodeType":"VariableDeclaration","scope":76886,"src":"2022:19:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":76883,"name":"uint8","nodeType":"ElementaryTypeName","src":"2022:5:126","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"1976:66:126"}},{"id":76896,"nodeType":"FunctionDefinition","src":"2659:145:126","nodes":[],"documentation":{"id":76887,"nodeType":"StructuredDocumentation","src":"2049:605:126","text":"@dev Create a dispute and pay for the fees in the native currency, typically ETH.\n Must be called by the arbitrable contract.\n Must pay at least arbitrationCost(_extraData).\n @param _numberOfChoices The number of choices the arbitrator can choose from in this dispute.\n @param _extraData Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\n @return disputeID The identifier of the dispute created."},"functionSelector":"c13517e1","implemented":false,"kind":"function","modifiers":[],"name":"createDispute","nameLocation":"2668:13:126","parameters":{"id":76892,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76889,"mutability":"mutable","name":"_numberOfChoices","nameLocation":"2690:16:126","nodeType":"VariableDeclaration","scope":76896,"src":"2682:24:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76888,"name":"uint256","nodeType":"ElementaryTypeName","src":"2682:7:126","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76891,"mutability":"mutable","name":"_extraData","nameLocation":"2723:10:126","nodeType":"VariableDeclaration","scope":76896,"src":"2708:25:126","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":76890,"name":"bytes","nodeType":"ElementaryTypeName","src":"2708:5:126","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"2681:53:126"},"returnParameters":{"id":76895,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76894,"mutability":"mutable","name":"disputeID","nameLocation":"2793:9:126","nodeType":"VariableDeclaration","scope":76896,"src":"2785:17:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76893,"name":"uint256","nodeType":"ElementaryTypeName","src":"2785:7:126","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2784:19:126"},"scope":76949,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":76911,"nodeType":"FunctionDefinition","src":"3538:167:126","nodes":[],"documentation":{"id":76897,"nodeType":"StructuredDocumentation","src":"2810:723:126","text":"@dev Create a dispute and pay for the fees in a supported ERC20 token.\n Must be called by the arbitrable contract.\n Must pay at least arbitrationCost(_extraData).\n @param _numberOfChoices The number of choices the arbitrator can choose from in this dispute.\n @param _extraData Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\n @param _feeToken The ERC20 token used to pay fees.\n @param _feeAmount Amount of the ERC20 token used to pay fees.\n @return disputeID The identifier of the dispute created."},"functionSelector":"f6506db4","implemented":false,"kind":"function","modifiers":[],"name":"createDispute","nameLocation":"3547:13:126","parameters":{"id":76907,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76899,"mutability":"mutable","name":"_numberOfChoices","nameLocation":"3569:16:126","nodeType":"VariableDeclaration","scope":76911,"src":"3561:24:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76898,"name":"uint256","nodeType":"ElementaryTypeName","src":"3561:7:126","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76901,"mutability":"mutable","name":"_extraData","nameLocation":"3602:10:126","nodeType":"VariableDeclaration","scope":76911,"src":"3587:25:126","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":76900,"name":"bytes","nodeType":"ElementaryTypeName","src":"3587:5:126","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":76904,"mutability":"mutable","name":"_feeToken","nameLocation":"3621:9:126","nodeType":"VariableDeclaration","scope":76911,"src":"3614:16:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":76903,"nodeType":"UserDefinedTypeName","pathNode":{"id":76902,"name":"IERC20","nameLocations":["3614:6:126"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"3614:6:126"},"referencedDeclaration":55825,"src":"3614:6:126","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":76906,"mutability":"mutable","name":"_feeAmount","nameLocation":"3640:10:126","nodeType":"VariableDeclaration","scope":76911,"src":"3632:18:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76905,"name":"uint256","nodeType":"ElementaryTypeName","src":"3632:7:126","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3560:91:126"},"returnParameters":{"id":76910,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76909,"mutability":"mutable","name":"disputeID","nameLocation":"3694:9:126","nodeType":"VariableDeclaration","scope":76911,"src":"3686:17:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76908,"name":"uint256","nodeType":"ElementaryTypeName","src":"3686:7:126","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3685:19:126"},"scope":76949,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":76919,"nodeType":"FunctionDefinition","src":"4254:89:126","nodes":[],"documentation":{"id":76912,"nodeType":"StructuredDocumentation","src":"3711:538:126","text":"@dev Compute the cost of arbitration denominated in the native currency, typically ETH.\n It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.\n @param _extraData Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\n @return cost The arbitration cost in ETH."},"functionSelector":"f7434ea9","implemented":false,"kind":"function","modifiers":[],"name":"arbitrationCost","nameLocation":"4263:15:126","parameters":{"id":76915,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76914,"mutability":"mutable","name":"_extraData","nameLocation":"4294:10:126","nodeType":"VariableDeclaration","scope":76919,"src":"4279:25:126","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":76913,"name":"bytes","nodeType":"ElementaryTypeName","src":"4279:5:126","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"4278:27:126"},"returnParameters":{"id":76918,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76917,"mutability":"mutable","name":"cost","nameLocation":"4337:4:126","nodeType":"VariableDeclaration","scope":76919,"src":"4329:12:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76916,"name":"uint256","nodeType":"ElementaryTypeName","src":"4329:7:126","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4328:14:126"},"scope":76949,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":76930,"nodeType":"FunctionDefinition","src":"4936:107:126","nodes":[],"documentation":{"id":76920,"nodeType":"StructuredDocumentation","src":"4349:582:126","text":"@dev Compute the cost of arbitration denominated in `_feeToken`.\n It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.\n @param _extraData Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\n @param _feeToken The ERC20 token used to pay fees.\n @return cost The arbitration cost in `_feeToken`."},"functionSelector":"d98493f6","implemented":false,"kind":"function","modifiers":[],"name":"arbitrationCost","nameLocation":"4945:15:126","parameters":{"id":76926,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76922,"mutability":"mutable","name":"_extraData","nameLocation":"4976:10:126","nodeType":"VariableDeclaration","scope":76930,"src":"4961:25:126","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":76921,"name":"bytes","nodeType":"ElementaryTypeName","src":"4961:5:126","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":76925,"mutability":"mutable","name":"_feeToken","nameLocation":"4995:9:126","nodeType":"VariableDeclaration","scope":76930,"src":"4988:16:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":76924,"nodeType":"UserDefinedTypeName","pathNode":{"id":76923,"name":"IERC20","nameLocations":["4988:6:126"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"4988:6:126"},"referencedDeclaration":55825,"src":"4988:6:126","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"}],"src":"4960:45:126"},"returnParameters":{"id":76929,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76928,"mutability":"mutable","name":"cost","nameLocation":"5037:4:126","nodeType":"VariableDeclaration","scope":76930,"src":"5029:12:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76927,"name":"uint256","nodeType":"ElementaryTypeName","src":"5029:7:126","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5028:14:126"},"scope":76949,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":76942,"nodeType":"FunctionDefinition","src":"5337:110:126","nodes":[],"documentation":{"id":76931,"nodeType":"StructuredDocumentation","src":"5049:283:126","text":"@dev Gets the current ruling of a specified dispute.\n @param _disputeID The ID of the dispute.\n @return ruling The current ruling.\n @return tied Whether it's a tie or not.\n @return overridden Whether the ruling was overridden by appeal funding or not."},"functionSelector":"1c3db16d","implemented":false,"kind":"function","modifiers":[],"name":"currentRuling","nameLocation":"5346:13:126","parameters":{"id":76934,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76933,"mutability":"mutable","name":"_disputeID","nameLocation":"5368:10:126","nodeType":"VariableDeclaration","scope":76942,"src":"5360:18:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76932,"name":"uint256","nodeType":"ElementaryTypeName","src":"5360:7:126","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5359:20:126"},"returnParameters":{"id":76941,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76936,"mutability":"mutable","name":"ruling","nameLocation":"5411:6:126","nodeType":"VariableDeclaration","scope":76942,"src":"5403:14:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76935,"name":"uint256","nodeType":"ElementaryTypeName","src":"5403:7:126","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76938,"mutability":"mutable","name":"tied","nameLocation":"5424:4:126","nodeType":"VariableDeclaration","scope":76942,"src":"5419:9:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":76937,"name":"bool","nodeType":"ElementaryTypeName","src":"5419:4:126","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":76940,"mutability":"mutable","name":"overridden","nameLocation":"5435:10:126","nodeType":"VariableDeclaration","scope":76942,"src":"5430:15:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":76939,"name":"bool","nodeType":"ElementaryTypeName","src":"5430:4:126","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5402:44:126"},"scope":76949,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":76948,"nodeType":"FunctionDefinition","src":"5657:46:126","nodes":[],"documentation":{"id":76943,"nodeType":"StructuredDocumentation","src":"5479:173:126","text":"@dev Authorize the safe to execute a ruling on the source contract.<\n @param _safe that acts as the Tribunal safe that can rule disputes from the source Strategy."},"functionSelector":"88d5b732","implemented":false,"kind":"function","modifiers":[],"name":"registerSafe","nameLocation":"5666:12:126","parameters":{"id":76946,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76945,"mutability":"mutable","name":"_safe","nameLocation":"5687:5:126","nodeType":"VariableDeclaration","scope":76948,"src":"5679:13:126","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76944,"name":"address","nodeType":"ElementaryTypeName","src":"5679:7:126","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5678:15:126"},"returnParameters":{"id":76947,"nodeType":"ParameterList","parameters":[],"src":"5702:0:126"},"scope":76949,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IArbitrator","contractDependencies":[],"contractKind":"interface","documentation":{"id":76850,"nodeType":"StructuredDocumentation","src":"145:616:126","text":"@title Arbitrator\n Arbitrator interface that implements the new arbitration standard.\n Unlike the ERC-792 this standard is not concerned with appeals, so each arbitrator can implement an appeal system that suits it the most.\n When developing arbitrator contracts we need to:\n - Define the functions for dispute creation (createDispute). Don't forget to store the arbitrated contract and the disputeID (which should be unique, may nbDisputes).\n - Define the functions for cost display (arbitrationCost).\n - Allow giving rulings. For this a function must call arbitrable.rule(disputeID, ruling)."},"fullyImplemented":false,"linearizedBaseContracts":[76949],"name":"IArbitrator","nameLocation":"771:11:126","scope":76950,"usedErrors":[]}],"license":"MIT"},"id":126} \ No newline at end of file diff --git a/pkg/contracts/out/ICollateralVault.sol/ICollateralVault.json b/pkg/contracts/out/ICollateralVault.sol/ICollateralVault.json index d0fc85d97..171dce259 100644 --- a/pkg/contracts/out/ICollateralVault.sol/ICollateralVault.json +++ b/pkg/contracts/out/ICollateralVault.sol/ICollateralVault.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"depositCollateral","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"initialize","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"withdrawCollateral","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_user","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"withdrawCollateralFor","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_fromUser","type":"address","internalType":"address"},{"name":"_toUser","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"depositCollateral(uint256,address)":"481fef8a","initialize()":"8129fc1c","withdrawCollateral(uint256,address,uint256)":"99ea56b0","withdrawCollateralFor(uint256,address,address,uint256)":"8969ab53"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"depositCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_fromUser\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_toUser\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawCollateralFor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/interfaces/ICollateralVault.sol\":\"ICollateralVault\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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\":{\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"address","name":"user","type":"address"}],"stateMutability":"payable","type":"function","name":"depositCollateral"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"withdrawCollateral"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_fromUser","type":"address"},{"internalType":"address","name":"_toUser","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"withdrawCollateralFor"}],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/ICollateralVault.sol":"ICollateralVault"},"evmVersion":"paris","libraries":{}},"sources":{"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","id":33288,"exportedSymbols":{"ICollateralVault":[33287]},"nodeType":"SourceUnit","src":"42:393:68","nodes":[{"id":33256,"nodeType":"PragmaDirective","src":"42:24:68","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":33287,"nodeType":"ContractDefinition","src":"68:366:68","nodes":[{"id":33259,"nodeType":"FunctionDefinition","src":"101:31:68","nodes":[],"functionSelector":"8129fc1c","implemented":false,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"110:10:68","parameters":{"id":33257,"nodeType":"ParameterList","parameters":[],"src":"120:2:68"},"returnParameters":{"id":33258,"nodeType":"ParameterList","parameters":[],"src":"131:0:68"},"scope":33287,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":33266,"nodeType":"FunctionDefinition","src":"138:78:68","nodes":[],"functionSelector":"481fef8a","implemented":false,"kind":"function","modifiers":[],"name":"depositCollateral","nameLocation":"147:17:68","parameters":{"id":33264,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33261,"mutability":"mutable","name":"proposalId","nameLocation":"173:10:68","nodeType":"VariableDeclaration","scope":33266,"src":"165:18:68","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33260,"name":"uint256","nodeType":"ElementaryTypeName","src":"165:7:68","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33263,"mutability":"mutable","name":"user","nameLocation":"193:4:68","nodeType":"VariableDeclaration","scope":33266,"src":"185:12:68","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33262,"name":"address","nodeType":"ElementaryTypeName","src":"185:7:68","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"164:34:68"},"returnParameters":{"id":33265,"nodeType":"ParameterList","parameters":[],"src":"215:0:68"},"scope":33287,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":33275,"nodeType":"FunctionDefinition","src":"222:90:68","nodes":[],"functionSelector":"99ea56b0","implemented":false,"kind":"function","modifiers":[],"name":"withdrawCollateral","nameLocation":"231:18:68","parameters":{"id":33273,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33268,"mutability":"mutable","name":"_proposalId","nameLocation":"258:11:68","nodeType":"VariableDeclaration","scope":33275,"src":"250:19:68","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33267,"name":"uint256","nodeType":"ElementaryTypeName","src":"250:7:68","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33270,"mutability":"mutable","name":"_user","nameLocation":"279:5:68","nodeType":"VariableDeclaration","scope":33275,"src":"271:13:68","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33269,"name":"address","nodeType":"ElementaryTypeName","src":"271:7:68","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33272,"mutability":"mutable","name":"_amount","nameLocation":"294:7:68","nodeType":"VariableDeclaration","scope":33275,"src":"286:15:68","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33271,"name":"uint256","nodeType":"ElementaryTypeName","src":"286:7:68","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"249:53:68"},"returnParameters":{"id":33274,"nodeType":"ParameterList","parameters":[],"src":"311:0:68"},"scope":33287,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":33286,"nodeType":"FunctionDefinition","src":"318:114:68","nodes":[],"functionSelector":"8969ab53","implemented":false,"kind":"function","modifiers":[],"name":"withdrawCollateralFor","nameLocation":"327:21:68","parameters":{"id":33284,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33277,"mutability":"mutable","name":"_proposalId","nameLocation":"357:11:68","nodeType":"VariableDeclaration","scope":33286,"src":"349:19:68","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33276,"name":"uint256","nodeType":"ElementaryTypeName","src":"349:7:68","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33279,"mutability":"mutable","name":"_fromUser","nameLocation":"378:9:68","nodeType":"VariableDeclaration","scope":33286,"src":"370:17:68","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33278,"name":"address","nodeType":"ElementaryTypeName","src":"370:7:68","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33281,"mutability":"mutable","name":"_toUser","nameLocation":"397:7:68","nodeType":"VariableDeclaration","scope":33286,"src":"389:15:68","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33280,"name":"address","nodeType":"ElementaryTypeName","src":"389:7:68","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33283,"mutability":"mutable","name":"_amount","nameLocation":"414:7:68","nodeType":"VariableDeclaration","scope":33286,"src":"406:15:68","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33282,"name":"uint256","nodeType":"ElementaryTypeName","src":"406:7:68","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"348:74:68"},"returnParameters":{"id":33285,"nodeType":"ParameterList","parameters":[],"src":"431:0:68"},"scope":33287,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"ICollateralVault","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[33287],"name":"ICollateralVault","nameLocation":"78:16:68","scope":33288,"usedErrors":[]}],"license":"AGPL-3.0-only"},"id":68} \ No newline at end of file +{"abi":[{"type":"function","name":"depositCollateral","inputs":[{"name":"proposalId","type":"uint256","internalType":"uint256"},{"name":"user","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"initialize","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"withdrawCollateral","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_user","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"withdrawCollateralFor","inputs":[{"name":"_proposalId","type":"uint256","internalType":"uint256"},{"name":"_fromUser","type":"address","internalType":"address"},{"name":"_toUser","type":"address","internalType":"address"},{"name":"_amount","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"depositCollateral(uint256,address)":"481fef8a","initialize()":"8129fc1c","withdrawCollateral(uint256,address,uint256)":"99ea56b0","withdrawCollateralFor(uint256,address,address,uint256)":"8969ab53"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"depositCollateral\",\"outputs\":[],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawCollateral\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_proposalId\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_fromUser\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_toUser\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_amount\",\"type\":\"uint256\"}],\"name\":\"withdrawCollateralFor\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/interfaces/ICollateralVault.sol\":\"ICollateralVault\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"pkg/contracts/src/interfaces/ICollateralVault.sol\":{\"keccak256\":\"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23\",\"dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"uint256","name":"proposalId","type":"uint256"},{"internalType":"address","name":"user","type":"address"}],"stateMutability":"payable","type":"function","name":"depositCollateral"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"withdrawCollateral"},{"inputs":[{"internalType":"uint256","name":"_proposalId","type":"uint256"},{"internalType":"address","name":"_fromUser","type":"address"},{"internalType":"address","name":"_toUser","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"withdrawCollateralFor"}],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/ICollateralVault.sol":"ICollateralVault"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"pkg/contracts/src/interfaces/ICollateralVault.sol":{"keccak256":"0x3043f36ad1493c07052ee9feb7128e433772ccbe7c053c5d90ef6575e048f184","urls":["bzz-raw://ec6b957426edea88f80ee65f5ea856ac879b0bcf1f33f920eb238ea154134d23","dweb:/ipfs/QmSfV8i3zKoDxgD8tFhLKKnDcokaPCrptstiuj2FZfKhjv"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/interfaces/ICollateralVault.sol","id":76983,"exportedSymbols":{"ICollateralVault":[76982]},"nodeType":"SourceUnit","src":"42:393:127","nodes":[{"id":76951,"nodeType":"PragmaDirective","src":"42:24:127","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":76982,"nodeType":"ContractDefinition","src":"68:366:127","nodes":[{"id":76954,"nodeType":"FunctionDefinition","src":"101:31:127","nodes":[],"functionSelector":"8129fc1c","implemented":false,"kind":"function","modifiers":[],"name":"initialize","nameLocation":"110:10:127","parameters":{"id":76952,"nodeType":"ParameterList","parameters":[],"src":"120:2:127"},"returnParameters":{"id":76953,"nodeType":"ParameterList","parameters":[],"src":"131:0:127"},"scope":76982,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":76961,"nodeType":"FunctionDefinition","src":"138:78:127","nodes":[],"functionSelector":"481fef8a","implemented":false,"kind":"function","modifiers":[],"name":"depositCollateral","nameLocation":"147:17:127","parameters":{"id":76959,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76956,"mutability":"mutable","name":"proposalId","nameLocation":"173:10:127","nodeType":"VariableDeclaration","scope":76961,"src":"165:18:127","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76955,"name":"uint256","nodeType":"ElementaryTypeName","src":"165:7:127","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76958,"mutability":"mutable","name":"user","nameLocation":"193:4:127","nodeType":"VariableDeclaration","scope":76961,"src":"185:12:127","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76957,"name":"address","nodeType":"ElementaryTypeName","src":"185:7:127","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"164:34:127"},"returnParameters":{"id":76960,"nodeType":"ParameterList","parameters":[],"src":"215:0:127"},"scope":76982,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":76970,"nodeType":"FunctionDefinition","src":"222:90:127","nodes":[],"functionSelector":"99ea56b0","implemented":false,"kind":"function","modifiers":[],"name":"withdrawCollateral","nameLocation":"231:18:127","parameters":{"id":76968,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76963,"mutability":"mutable","name":"_proposalId","nameLocation":"258:11:127","nodeType":"VariableDeclaration","scope":76970,"src":"250:19:127","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76962,"name":"uint256","nodeType":"ElementaryTypeName","src":"250:7:127","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76965,"mutability":"mutable","name":"_user","nameLocation":"279:5:127","nodeType":"VariableDeclaration","scope":76970,"src":"271:13:127","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76964,"name":"address","nodeType":"ElementaryTypeName","src":"271:7:127","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":76967,"mutability":"mutable","name":"_amount","nameLocation":"294:7:127","nodeType":"VariableDeclaration","scope":76970,"src":"286:15:127","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76966,"name":"uint256","nodeType":"ElementaryTypeName","src":"286:7:127","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"249:53:127"},"returnParameters":{"id":76969,"nodeType":"ParameterList","parameters":[],"src":"311:0:127"},"scope":76982,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":76981,"nodeType":"FunctionDefinition","src":"318:114:127","nodes":[],"functionSelector":"8969ab53","implemented":false,"kind":"function","modifiers":[],"name":"withdrawCollateralFor","nameLocation":"327:21:127","parameters":{"id":76979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76972,"mutability":"mutable","name":"_proposalId","nameLocation":"357:11:127","nodeType":"VariableDeclaration","scope":76981,"src":"349:19:127","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76971,"name":"uint256","nodeType":"ElementaryTypeName","src":"349:7:127","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":76974,"mutability":"mutable","name":"_fromUser","nameLocation":"378:9:127","nodeType":"VariableDeclaration","scope":76981,"src":"370:17:127","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76973,"name":"address","nodeType":"ElementaryTypeName","src":"370:7:127","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":76976,"mutability":"mutable","name":"_toUser","nameLocation":"397:7:127","nodeType":"VariableDeclaration","scope":76981,"src":"389:15:127","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":76975,"name":"address","nodeType":"ElementaryTypeName","src":"389:7:127","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":76978,"mutability":"mutable","name":"_amount","nameLocation":"414:7:127","nodeType":"VariableDeclaration","scope":76981,"src":"406:15:127","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76977,"name":"uint256","nodeType":"ElementaryTypeName","src":"406:7:127","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"348:74:127"},"returnParameters":{"id":76980,"nodeType":"ParameterList","parameters":[],"src":"431:0:127"},"scope":76982,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"ICollateralVault","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[76982],"name":"ICollateralVault","nameLocation":"78:16:127","scope":76983,"usedErrors":[]}],"license":"AGPL-3.0-only"},"id":127} \ No newline at end of file diff --git a/pkg/contracts/out/IERC20.sol/IERC20.json b/pkg/contracts/out/IERC20.sol/IERC20.json index 9fbbfed56..be11b9727 100644 --- a/pkg/contracts/out/IERC20.sol/IERC20.json +++ b/pkg/contracts/out/IERC20.sol/IERC20.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"allowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"approve","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"balanceOf","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transfer","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"spender","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC20 standard as defined in the EIP.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `account`.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":\"IERC20\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.25+commit.b61c2a91"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"spender","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"stateMutability":"view","type":"function","name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"allowance(address,address)":{"details":"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called."},"approve(address,uint256)":{"details":"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event."},"balanceOf(address)":{"details":"Returns the amount of tokens owned by `account`."},"totalSupply()":{"details":"Returns the amount of tokens in existence."},"transfer(address,uint256)":{"details":"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event."},"transferFrom(address,address,uint256)":{"details":"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} 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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":"IERC20"},"evmVersion":"paris","libraries":{}},"sources":{"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol":{"keccak256":"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305","urls":["bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5","dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","id":1945,"exportedSymbols":{"IERC20":[1944]},"nodeType":"SourceUnit","src":"106:2631:14","nodes":[{"id":1868,"nodeType":"PragmaDirective","src":"106:23:14","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":1944,"nodeType":"ContractDefinition","src":"202:2534:14","nodes":[{"id":1878,"nodeType":"EventDefinition","src":"388:72:14","nodes":[],"anonymous":false,"documentation":{"id":1870,"nodeType":"StructuredDocumentation","src":"225:158:14","text":" @dev Emitted when `value` tokens are moved from one account (`from`) to\n another (`to`).\n Note that `value` may be zero."},"eventSelector":"ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","name":"Transfer","nameLocation":"394:8:14","parameters":{"id":1877,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1872,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"419:4:14","nodeType":"VariableDeclaration","scope":1878,"src":"403:20:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1871,"name":"address","nodeType":"ElementaryTypeName","src":"403:7:14","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1874,"indexed":true,"mutability":"mutable","name":"to","nameLocation":"441:2:14","nodeType":"VariableDeclaration","scope":1878,"src":"425:18:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1873,"name":"address","nodeType":"ElementaryTypeName","src":"425:7:14","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1876,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"453:5:14","nodeType":"VariableDeclaration","scope":1878,"src":"445:13:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1875,"name":"uint256","nodeType":"ElementaryTypeName","src":"445:7:14","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"402:57:14"}},{"id":1887,"nodeType":"EventDefinition","src":"619:78:14","nodes":[],"anonymous":false,"documentation":{"id":1879,"nodeType":"StructuredDocumentation","src":"466:148:14","text":" @dev Emitted when the allowance of a `spender` for an `owner` is set by\n a call to {approve}. `value` is the new allowance."},"eventSelector":"8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925","name":"Approval","nameLocation":"625:8:14","parameters":{"id":1886,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1881,"indexed":true,"mutability":"mutable","name":"owner","nameLocation":"650:5:14","nodeType":"VariableDeclaration","scope":1887,"src":"634:21:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1880,"name":"address","nodeType":"ElementaryTypeName","src":"634:7:14","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1883,"indexed":true,"mutability":"mutable","name":"spender","nameLocation":"673:7:14","nodeType":"VariableDeclaration","scope":1887,"src":"657:23:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1882,"name":"address","nodeType":"ElementaryTypeName","src":"657:7:14","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1885,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"690:5:14","nodeType":"VariableDeclaration","scope":1887,"src":"682:13:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1884,"name":"uint256","nodeType":"ElementaryTypeName","src":"682:7:14","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"633:63:14"}},{"id":1893,"nodeType":"FunctionDefinition","src":"774:55:14","nodes":[],"documentation":{"id":1888,"nodeType":"StructuredDocumentation","src":"703:66:14","text":" @dev Returns the amount of tokens in existence."},"functionSelector":"18160ddd","implemented":false,"kind":"function","modifiers":[],"name":"totalSupply","nameLocation":"783:11:14","parameters":{"id":1889,"nodeType":"ParameterList","parameters":[],"src":"794:2:14"},"returnParameters":{"id":1892,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1891,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1893,"src":"820:7:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1890,"name":"uint256","nodeType":"ElementaryTypeName","src":"820:7:14","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"819:9:14"},"scope":1944,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1901,"nodeType":"FunctionDefinition","src":"912:68:14","nodes":[],"documentation":{"id":1894,"nodeType":"StructuredDocumentation","src":"835:72:14","text":" @dev Returns the amount of tokens owned by `account`."},"functionSelector":"70a08231","implemented":false,"kind":"function","modifiers":[],"name":"balanceOf","nameLocation":"921:9:14","parameters":{"id":1897,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1896,"mutability":"mutable","name":"account","nameLocation":"939:7:14","nodeType":"VariableDeclaration","scope":1901,"src":"931:15:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1895,"name":"address","nodeType":"ElementaryTypeName","src":"931:7:14","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"930:17:14"},"returnParameters":{"id":1900,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1899,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1901,"src":"971:7:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1898,"name":"uint256","nodeType":"ElementaryTypeName","src":"971:7:14","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"970:9:14"},"scope":1944,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1911,"nodeType":"FunctionDefinition","src":"1193:70:14","nodes":[],"documentation":{"id":1902,"nodeType":"StructuredDocumentation","src":"986:202:14","text":" @dev Moves `amount` tokens from the caller's account to `to`.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event."},"functionSelector":"a9059cbb","implemented":false,"kind":"function","modifiers":[],"name":"transfer","nameLocation":"1202:8:14","parameters":{"id":1907,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1904,"mutability":"mutable","name":"to","nameLocation":"1219:2:14","nodeType":"VariableDeclaration","scope":1911,"src":"1211:10:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1903,"name":"address","nodeType":"ElementaryTypeName","src":"1211:7:14","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1906,"mutability":"mutable","name":"amount","nameLocation":"1231:6:14","nodeType":"VariableDeclaration","scope":1911,"src":"1223:14:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1905,"name":"uint256","nodeType":"ElementaryTypeName","src":"1223:7:14","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1210:28:14"},"returnParameters":{"id":1910,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1909,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1911,"src":"1257:4:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1908,"name":"bool","nodeType":"ElementaryTypeName","src":"1257:4:14","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1256:6:14"},"scope":1944,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":1921,"nodeType":"FunctionDefinition","src":"1538:83:14","nodes":[],"documentation":{"id":1912,"nodeType":"StructuredDocumentation","src":"1269:264:14","text":" @dev Returns the remaining number of tokens that `spender` will be\n allowed to spend on behalf of `owner` through {transferFrom}. This is\n zero by default.\n This value changes when {approve} or {transferFrom} are called."},"functionSelector":"dd62ed3e","implemented":false,"kind":"function","modifiers":[],"name":"allowance","nameLocation":"1547:9:14","parameters":{"id":1917,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1914,"mutability":"mutable","name":"owner","nameLocation":"1565:5:14","nodeType":"VariableDeclaration","scope":1921,"src":"1557:13:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1913,"name":"address","nodeType":"ElementaryTypeName","src":"1557:7:14","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1916,"mutability":"mutable","name":"spender","nameLocation":"1580:7:14","nodeType":"VariableDeclaration","scope":1921,"src":"1572:15:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1915,"name":"address","nodeType":"ElementaryTypeName","src":"1572:7:14","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1556:32:14"},"returnParameters":{"id":1920,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1919,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1921,"src":"1612:7:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1918,"name":"uint256","nodeType":"ElementaryTypeName","src":"1612:7:14","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1611:9:14"},"scope":1944,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":1931,"nodeType":"FunctionDefinition","src":"2274:74:14","nodes":[],"documentation":{"id":1922,"nodeType":"StructuredDocumentation","src":"1627:642:14","text":" @dev Sets `amount` as the allowance of `spender` over the caller's tokens.\n Returns a boolean value indicating whether the operation succeeded.\n IMPORTANT: Beware that changing an allowance with this method brings the risk\n that someone may use both the old and the new allowance by unfortunate\n transaction ordering. One possible solution to mitigate this race\n condition is to first reduce the spender's allowance to 0 and set the\n desired value afterwards:\n https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\n Emits an {Approval} event."},"functionSelector":"095ea7b3","implemented":false,"kind":"function","modifiers":[],"name":"approve","nameLocation":"2283:7:14","parameters":{"id":1927,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1924,"mutability":"mutable","name":"spender","nameLocation":"2299:7:14","nodeType":"VariableDeclaration","scope":1931,"src":"2291:15:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1923,"name":"address","nodeType":"ElementaryTypeName","src":"2291:7:14","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1926,"mutability":"mutable","name":"amount","nameLocation":"2316:6:14","nodeType":"VariableDeclaration","scope":1931,"src":"2308:14:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1925,"name":"uint256","nodeType":"ElementaryTypeName","src":"2308:7:14","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2290:33:14"},"returnParameters":{"id":1930,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1929,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1931,"src":"2342:4:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1928,"name":"bool","nodeType":"ElementaryTypeName","src":"2342:4:14","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2341:6:14"},"scope":1944,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":1943,"nodeType":"FunctionDefinition","src":"2646:88:14","nodes":[],"documentation":{"id":1932,"nodeType":"StructuredDocumentation","src":"2354:287:14","text":" @dev Moves `amount` tokens from `from` to `to` using the\n allowance mechanism. `amount` is then deducted from the caller's\n allowance.\n Returns a boolean value indicating whether the operation succeeded.\n Emits a {Transfer} event."},"functionSelector":"23b872dd","implemented":false,"kind":"function","modifiers":[],"name":"transferFrom","nameLocation":"2655:12:14","parameters":{"id":1939,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1934,"mutability":"mutable","name":"from","nameLocation":"2676:4:14","nodeType":"VariableDeclaration","scope":1943,"src":"2668:12:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1933,"name":"address","nodeType":"ElementaryTypeName","src":"2668:7:14","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1936,"mutability":"mutable","name":"to","nameLocation":"2690:2:14","nodeType":"VariableDeclaration","scope":1943,"src":"2682:10:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":1935,"name":"address","nodeType":"ElementaryTypeName","src":"2682:7:14","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":1938,"mutability":"mutable","name":"amount","nameLocation":"2702:6:14","nodeType":"VariableDeclaration","scope":1943,"src":"2694:14:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":1937,"name":"uint256","nodeType":"ElementaryTypeName","src":"2694:7:14","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2667:42:14"},"returnParameters":{"id":1942,"nodeType":"ParameterList","parameters":[{"constant":false,"id":1941,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":1943,"src":"2728:4:14","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":1940,"name":"bool","nodeType":"ElementaryTypeName","src":"2728:4:14","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"2727:6:14"},"scope":1944,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IERC20","contractDependencies":[],"contractKind":"interface","documentation":{"id":1869,"nodeType":"StructuredDocumentation","src":"131:70:14","text":" @dev Interface of the ERC20 standard as defined in the EIP."},"fullyImplemented":false,"linearizedBaseContracts":[1944],"name":"IERC20","nameLocation":"212:6:14","scope":1945,"usedErrors":[],"usedEvents":[1878,1887]}],"license":"MIT"},"id":14} \ No newline at end of file +{"abi":[{"type":"function","name":"allowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"approve","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"balanceOf","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"decimals","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transfer","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"spender","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decimals()":"313ce567","name()":"06fdde03","symbol()":"95d89b41","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC20 standard as defined in the EIP.This includes the optional name, symbol, and decimals metadata.\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set, where `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`).\"}},\"kind\":\"dev\",\"methods\":{\"approve(address,uint256)\":{\"details\":\"Be aware of front-running risks: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"allowance(address,address)\":{\"notice\":\"Returns the remaining number of tokens that `spender` is allowed to spend on behalf of `owner`\"},\"approve(address,uint256)\":{\"notice\":\"Sets `amount` as the allowance of `spender` over the caller's tokens.\"},\"balanceOf(address)\":{\"notice\":\"Returns the amount of tokens owned by `account`.\"},\"decimals()\":{\"notice\":\"Returns the decimals places of the token.\"},\"name()\":{\"notice\":\"Returns the name of the token.\"},\"symbol()\":{\"notice\":\"Returns the symbol of the token.\"},\"totalSupply()\":{\"notice\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"notice\":\"Moves `amount` tokens from the caller's account to `to`.\"},\"transferFrom(address,address,uint256)\":{\"notice\":\"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/forge-std/src/interfaces/IERC20.sol\":\"IERC20\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"lib/forge-std/src/interfaces/IERC20.sol\":{\"keccak256\":\"0x4cab887298790f908c27de107e4e2907ca5413aee482ef776f8d2f353c5ef947\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb715e0c4a2bdbe432bb624501506041f06e878e0b72675aebba30ad2c2b72e7\",\"dweb:/ipfs/QmWhhLSvkxS2NrukJJHqFY8gDVE5r9rD4PfHvR24pwdKv9\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"spender","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"stateMutability":"view","type":"function","name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"name","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"approve(address,uint256)":{"details":"Be aware of front-running risks: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729"}},"version":1},"userdoc":{"kind":"user","methods":{"allowance(address,address)":{"notice":"Returns the remaining number of tokens that `spender` is allowed to spend on behalf of `owner`"},"approve(address,uint256)":{"notice":"Sets `amount` as the allowance of `spender` over the caller's tokens."},"balanceOf(address)":{"notice":"Returns the amount of tokens owned by `account`."},"decimals()":{"notice":"Returns the decimals places of the token."},"name()":{"notice":"Returns the name of the token."},"symbol()":{"notice":"Returns the symbol of the token."},"totalSupply()":{"notice":"Returns the amount of tokens in existence."},"transfer(address,uint256)":{"notice":"Moves `amount` tokens from the caller's account to `to`."},"transferFrom(address,address,uint256)":{"notice":"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance."}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/forge-std/src/interfaces/IERC20.sol":"IERC20"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"lib/forge-std/src/interfaces/IERC20.sol":{"keccak256":"0x4cab887298790f908c27de107e4e2907ca5413aee482ef776f8d2f353c5ef947","urls":["bzz-raw://bb715e0c4a2bdbe432bb624501506041f06e878e0b72675aebba30ad2c2b72e7","dweb:/ipfs/QmWhhLSvkxS2NrukJJHqFY8gDVE5r9rD4PfHvR24pwdKv9"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/forge-std/src/interfaces/IERC20.sol","id":37040,"exportedSymbols":{"IERC20":[37039]},"nodeType":"SourceUnit","src":"32:2035:34","nodes":[{"id":36945,"nodeType":"PragmaDirective","src":"32:24:34","nodes":[],"literals":["solidity",">=","0.6",".2"]},{"id":37039,"nodeType":"ContractDefinition","src":"195:1871:34","nodes":[{"id":36955,"nodeType":"EventDefinition","src":"314:72:34","nodes":[],"anonymous":false,"documentation":{"id":36947,"nodeType":"StructuredDocumentation","src":"218:91:34","text":"@dev Emitted when `value` tokens are moved from one account (`from`) to another (`to`)."},"eventSelector":"ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef","name":"Transfer","nameLocation":"320:8:34","parameters":{"id":36954,"nodeType":"ParameterList","parameters":[{"constant":false,"id":36949,"indexed":true,"mutability":"mutable","name":"from","nameLocation":"345:4:34","nodeType":"VariableDeclaration","scope":36955,"src":"329:20:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":36948,"name":"address","nodeType":"ElementaryTypeName","src":"329:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":36951,"indexed":true,"mutability":"mutable","name":"to","nameLocation":"367:2:34","nodeType":"VariableDeclaration","scope":36955,"src":"351:18:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":36950,"name":"address","nodeType":"ElementaryTypeName","src":"351:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":36953,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"379:5:34","nodeType":"VariableDeclaration","scope":36955,"src":"371:13:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":36952,"name":"uint256","nodeType":"ElementaryTypeName","src":"371:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"328:57:34"}},{"id":36964,"nodeType":"EventDefinition","src":"514:78:34","nodes":[],"anonymous":false,"documentation":{"id":36956,"nodeType":"StructuredDocumentation","src":"392:117:34","text":"@dev Emitted when the allowance of a `spender` for an `owner` is set, where `value`\n is the new allowance."},"eventSelector":"8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925","name":"Approval","nameLocation":"520:8:34","parameters":{"id":36963,"nodeType":"ParameterList","parameters":[{"constant":false,"id":36958,"indexed":true,"mutability":"mutable","name":"owner","nameLocation":"545:5:34","nodeType":"VariableDeclaration","scope":36964,"src":"529:21:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":36957,"name":"address","nodeType":"ElementaryTypeName","src":"529:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":36960,"indexed":true,"mutability":"mutable","name":"spender","nameLocation":"568:7:34","nodeType":"VariableDeclaration","scope":36964,"src":"552:23:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":36959,"name":"address","nodeType":"ElementaryTypeName","src":"552:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":36962,"indexed":false,"mutability":"mutable","name":"value","nameLocation":"585:5:34","nodeType":"VariableDeclaration","scope":36964,"src":"577:13:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":36961,"name":"uint256","nodeType":"ElementaryTypeName","src":"577:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"528:63:34"}},{"id":36970,"nodeType":"FunctionDefinition","src":"657:55:34","nodes":[],"documentation":{"id":36965,"nodeType":"StructuredDocumentation","src":"598:54:34","text":"@notice Returns the amount of tokens in existence."},"functionSelector":"18160ddd","implemented":false,"kind":"function","modifiers":[],"name":"totalSupply","nameLocation":"666:11:34","parameters":{"id":36966,"nodeType":"ParameterList","parameters":[],"src":"677:2:34"},"returnParameters":{"id":36969,"nodeType":"ParameterList","parameters":[{"constant":false,"id":36968,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":36970,"src":"703:7:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":36967,"name":"uint256","nodeType":"ElementaryTypeName","src":"703:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"702:9:34"},"scope":37039,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":36978,"nodeType":"FunctionDefinition","src":"783:68:34","nodes":[],"documentation":{"id":36971,"nodeType":"StructuredDocumentation","src":"718:60:34","text":"@notice Returns the amount of tokens owned by `account`."},"functionSelector":"70a08231","implemented":false,"kind":"function","modifiers":[],"name":"balanceOf","nameLocation":"792:9:34","parameters":{"id":36974,"nodeType":"ParameterList","parameters":[{"constant":false,"id":36973,"mutability":"mutable","name":"account","nameLocation":"810:7:34","nodeType":"VariableDeclaration","scope":36978,"src":"802:15:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":36972,"name":"address","nodeType":"ElementaryTypeName","src":"802:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"801:17:34"},"returnParameters":{"id":36977,"nodeType":"ParameterList","parameters":[{"constant":false,"id":36976,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":36978,"src":"842:7:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":36975,"name":"uint256","nodeType":"ElementaryTypeName","src":"842:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"841:9:34"},"scope":37039,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":36988,"nodeType":"FunctionDefinition","src":"930:70:34","nodes":[],"documentation":{"id":36979,"nodeType":"StructuredDocumentation","src":"857:68:34","text":"@notice Moves `amount` tokens from the caller's account to `to`."},"functionSelector":"a9059cbb","implemented":false,"kind":"function","modifiers":[],"name":"transfer","nameLocation":"939:8:34","parameters":{"id":36984,"nodeType":"ParameterList","parameters":[{"constant":false,"id":36981,"mutability":"mutable","name":"to","nameLocation":"956:2:34","nodeType":"VariableDeclaration","scope":36988,"src":"948:10:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":36980,"name":"address","nodeType":"ElementaryTypeName","src":"948:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":36983,"mutability":"mutable","name":"amount","nameLocation":"968:6:34","nodeType":"VariableDeclaration","scope":36988,"src":"960:14:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":36982,"name":"uint256","nodeType":"ElementaryTypeName","src":"960:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"947:28:34"},"returnParameters":{"id":36987,"nodeType":"ParameterList","parameters":[{"constant":false,"id":36986,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":36988,"src":"994:4:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":36985,"name":"bool","nodeType":"ElementaryTypeName","src":"994:4:34","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"993:6:34"},"scope":37039,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":36998,"nodeType":"FunctionDefinition","src":"1125:83:34","nodes":[],"documentation":{"id":36989,"nodeType":"StructuredDocumentation","src":"1006:114:34","text":"@notice Returns the remaining number of tokens that `spender` is allowed\n to spend on behalf of `owner`"},"functionSelector":"dd62ed3e","implemented":false,"kind":"function","modifiers":[],"name":"allowance","nameLocation":"1134:9:34","parameters":{"id":36994,"nodeType":"ParameterList","parameters":[{"constant":false,"id":36991,"mutability":"mutable","name":"owner","nameLocation":"1152:5:34","nodeType":"VariableDeclaration","scope":36998,"src":"1144:13:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":36990,"name":"address","nodeType":"ElementaryTypeName","src":"1144:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":36993,"mutability":"mutable","name":"spender","nameLocation":"1167:7:34","nodeType":"VariableDeclaration","scope":36998,"src":"1159:15:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":36992,"name":"address","nodeType":"ElementaryTypeName","src":"1159:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1143:32:34"},"returnParameters":{"id":36997,"nodeType":"ParameterList","parameters":[{"constant":false,"id":36996,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":36998,"src":"1199:7:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":36995,"name":"uint256","nodeType":"ElementaryTypeName","src":"1199:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1198:9:34"},"scope":37039,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":37008,"nodeType":"FunctionDefinition","src":"1412:74:34","nodes":[],"documentation":{"id":36999,"nodeType":"StructuredDocumentation","src":"1214:193:34","text":"@notice Sets `amount` as the allowance of `spender` over the caller's tokens.\n @dev Be aware of front-running risks: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729"},"functionSelector":"095ea7b3","implemented":false,"kind":"function","modifiers":[],"name":"approve","nameLocation":"1421:7:34","parameters":{"id":37004,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37001,"mutability":"mutable","name":"spender","nameLocation":"1437:7:34","nodeType":"VariableDeclaration","scope":37008,"src":"1429:15:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":37000,"name":"address","nodeType":"ElementaryTypeName","src":"1429:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":37003,"mutability":"mutable","name":"amount","nameLocation":"1454:6:34","nodeType":"VariableDeclaration","scope":37008,"src":"1446:14:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":37002,"name":"uint256","nodeType":"ElementaryTypeName","src":"1446:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1428:33:34"},"returnParameters":{"id":37007,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37006,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":37008,"src":"1480:4:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":37005,"name":"bool","nodeType":"ElementaryTypeName","src":"1480:4:34","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1479:6:34"},"scope":37039,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":37020,"nodeType":"FunctionDefinition","src":"1644:88:34","nodes":[],"documentation":{"id":37009,"nodeType":"StructuredDocumentation","src":"1492:147:34","text":"@notice Moves `amount` tokens from `from` to `to` using the allowance mechanism.\n `amount` is then deducted from the caller's allowance."},"functionSelector":"23b872dd","implemented":false,"kind":"function","modifiers":[],"name":"transferFrom","nameLocation":"1653:12:34","parameters":{"id":37016,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37011,"mutability":"mutable","name":"from","nameLocation":"1674:4:34","nodeType":"VariableDeclaration","scope":37020,"src":"1666:12:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":37010,"name":"address","nodeType":"ElementaryTypeName","src":"1666:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":37013,"mutability":"mutable","name":"to","nameLocation":"1688:2:34","nodeType":"VariableDeclaration","scope":37020,"src":"1680:10:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":37012,"name":"address","nodeType":"ElementaryTypeName","src":"1680:7:34","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":37015,"mutability":"mutable","name":"amount","nameLocation":"1700:6:34","nodeType":"VariableDeclaration","scope":37020,"src":"1692:14:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":37014,"name":"uint256","nodeType":"ElementaryTypeName","src":"1692:7:34","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1665:42:34"},"returnParameters":{"id":37019,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37018,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":37020,"src":"1726:4:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":37017,"name":"bool","nodeType":"ElementaryTypeName","src":"1726:4:34","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1725:6:34"},"scope":37039,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":37026,"nodeType":"FunctionDefinition","src":"1785:54:34","nodes":[],"documentation":{"id":37021,"nodeType":"StructuredDocumentation","src":"1738:42:34","text":"@notice Returns the name of the token."},"functionSelector":"06fdde03","implemented":false,"kind":"function","modifiers":[],"name":"name","nameLocation":"1794:4:34","parameters":{"id":37022,"nodeType":"ParameterList","parameters":[],"src":"1798:2:34"},"returnParameters":{"id":37025,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37024,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":37026,"src":"1824:13:34","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":37023,"name":"string","nodeType":"ElementaryTypeName","src":"1824:6:34","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1823:15:34"},"scope":37039,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":37032,"nodeType":"FunctionDefinition","src":"1894:56:34","nodes":[],"documentation":{"id":37027,"nodeType":"StructuredDocumentation","src":"1845:44:34","text":"@notice Returns the symbol of the token."},"functionSelector":"95d89b41","implemented":false,"kind":"function","modifiers":[],"name":"symbol","nameLocation":"1903:6:34","parameters":{"id":37028,"nodeType":"ParameterList","parameters":[],"src":"1909:2:34"},"returnParameters":{"id":37031,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37030,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":37032,"src":"1935:13:34","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":37029,"name":"string","nodeType":"ElementaryTypeName","src":"1935:6:34","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"1934:15:34"},"scope":37039,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":37038,"nodeType":"FunctionDefinition","src":"2014:50:34","nodes":[],"documentation":{"id":37033,"nodeType":"StructuredDocumentation","src":"1956:53:34","text":"@notice Returns the decimals places of the token."},"functionSelector":"313ce567","implemented":false,"kind":"function","modifiers":[],"name":"decimals","nameLocation":"2023:8:34","parameters":{"id":37034,"nodeType":"ParameterList","parameters":[],"src":"2031:2:34"},"returnParameters":{"id":37037,"nodeType":"ParameterList","parameters":[{"constant":false,"id":37036,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":37038,"src":"2057:5:34","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":37035,"name":"uint8","nodeType":"ElementaryTypeName","src":"2057:5:34","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"2056:7:34"},"scope":37039,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IERC20","contractDependencies":[],"contractKind":"interface","documentation":{"id":36946,"nodeType":"StructuredDocumentation","src":"58:137:34","text":"@dev Interface of the ERC20 standard as defined in the EIP.\n @dev This includes the optional name, symbol, and decimals metadata."},"fullyImplemented":false,"linearizedBaseContracts":[37039],"name":"IERC20","nameLocation":"205:6:34","scope":37040,"usedErrors":[]}],"license":"MIT"},"id":34} \ No newline at end of file diff --git a/pkg/contracts/out/IERC20Metadata.sol/IERC20Metadata.json b/pkg/contracts/out/IERC20Metadata.sol/IERC20Metadata.json index f05765627..5dd73d978 100644 --- a/pkg/contracts/out/IERC20Metadata.sol/IERC20Metadata.json +++ b/pkg/contracts/out/IERC20Metadata.sol/IERC20Metadata.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"allowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"approve","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"balanceOf","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"decimals","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transfer","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"spender","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decimals()":"313ce567","name()":"06fdde03","symbol()":"95d89b41","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface for the optional metadata functions from the ERC20 standard. _Available since v4.1._\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `account`.\"},\"decimals()\":{\"details\":\"Returns the decimals places of the token.\"},\"name()\":{\"details\":\"Returns the name of the token.\"},\"symbol()\":{\"details\":\"Returns the symbol of the token.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":\"IERC20Metadata\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/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\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"spender","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"stateMutability":"view","type":"function","name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"name","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"allowance(address,address)":{"details":"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called."},"approve(address,uint256)":{"details":"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event."},"balanceOf(address)":{"details":"Returns the amount of tokens owned by `account`."},"decimals()":{"details":"Returns the decimals places of the token."},"name()":{"details":"Returns the name of the token."},"symbol()":{"details":"Returns the symbol of the token."},"totalSupply()":{"details":"Returns the amount of tokens in existence."},"transfer(address,uint256)":{"details":"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event."},"transferFrom(address,address,uint256)":{"details":"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} 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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":"IERC20Metadata"},"evmVersion":"paris","libraries":{}},"sources":{"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"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","id":17424,"exportedSymbols":{"IERC20":[17398],"IERC20Metadata":[17423]},"nodeType":"SourceUnit","src":"110:573:35","nodes":[{"id":17400,"nodeType":"PragmaDirective","src":"110:23:35","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":17401,"nodeType":"ImportDirective","src":"135:23:35","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"../IERC20.sol","nameLocation":"-1:-1:-1","scope":17424,"sourceUnit":17399,"symbolAliases":[],"unitAlias":""},{"id":17423,"nodeType":"ContractDefinition","src":"277:405:35","nodes":[{"id":17410,"nodeType":"FunctionDefinition","src":"377:54:35","nodes":[],"documentation":{"id":17405,"nodeType":"StructuredDocumentation","src":"318:54:35","text":" @dev Returns the name of the token."},"functionSelector":"06fdde03","implemented":false,"kind":"function","modifiers":[],"name":"name","nameLocation":"386:4:35","parameters":{"id":17406,"nodeType":"ParameterList","parameters":[],"src":"390:2:35"},"returnParameters":{"id":17409,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17408,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17410,"src":"416:13:35","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":17407,"name":"string","nodeType":"ElementaryTypeName","src":"416:6:35","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"415:15:35"},"scope":17423,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":17416,"nodeType":"FunctionDefinition","src":"498:56:35","nodes":[],"documentation":{"id":17411,"nodeType":"StructuredDocumentation","src":"437:56:35","text":" @dev Returns the symbol of the token."},"functionSelector":"95d89b41","implemented":false,"kind":"function","modifiers":[],"name":"symbol","nameLocation":"507:6:35","parameters":{"id":17412,"nodeType":"ParameterList","parameters":[],"src":"513:2:35"},"returnParameters":{"id":17415,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17414,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17416,"src":"539:13:35","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":17413,"name":"string","nodeType":"ElementaryTypeName","src":"539:6:35","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"538:15:35"},"scope":17423,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":17422,"nodeType":"FunctionDefinition","src":"630:50:35","nodes":[],"documentation":{"id":17417,"nodeType":"StructuredDocumentation","src":"560:65:35","text":" @dev Returns the decimals places of the token."},"functionSelector":"313ce567","implemented":false,"kind":"function","modifiers":[],"name":"decimals","nameLocation":"639:8:35","parameters":{"id":17418,"nodeType":"ParameterList","parameters":[],"src":"647:2:35"},"returnParameters":{"id":17421,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17420,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17422,"src":"673:5:35","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":17419,"name":"uint8","nodeType":"ElementaryTypeName","src":"673:5:35","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"672:7:35"},"scope":17423,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[{"baseName":{"id":17403,"name":"IERC20","nameLocations":["305:6:35"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"305:6:35"},"id":17404,"nodeType":"InheritanceSpecifier","src":"305:6:35"}],"canonicalName":"IERC20Metadata","contractDependencies":[],"contractKind":"interface","documentation":{"id":17402,"nodeType":"StructuredDocumentation","src":"160:116:35","text":" @dev Interface for the optional metadata functions from the ERC20 standard.\n _Available since v4.1._"},"fullyImplemented":false,"linearizedBaseContracts":[17423,17398],"name":"IERC20Metadata","nameLocation":"287:14:35","scope":17424,"usedErrors":[]}],"license":"MIT"},"id":35} \ No newline at end of file +{"abi":[{"type":"function","name":"allowance","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"approve","inputs":[{"name":"spender","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"balanceOf","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"decimals","inputs":[],"outputs":[{"name":"","type":"uint8","internalType":"uint8"}],"stateMutability":"view"},{"type":"function","name":"name","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"symbol","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"totalSupply","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"transfer","inputs":[{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"transferFrom","inputs":[{"name":"from","type":"address","internalType":"address"},{"name":"to","type":"address","internalType":"address"},{"name":"amount","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"event","name":"Approval","inputs":[{"name":"owner","type":"address","indexed":true,"internalType":"address"},{"name":"spender","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Transfer","inputs":[{"name":"from","type":"address","indexed":true,"internalType":"address"},{"name":"to","type":"address","indexed":true,"internalType":"address"},{"name":"value","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"allowance(address,address)":"dd62ed3e","approve(address,uint256)":"095ea7b3","balanceOf(address)":"70a08231","decimals()":"313ce567","name()":"06fdde03","symbol()":"95d89b41","totalSupply()":"18160ddd","transfer(address,uint256)":"a9059cbb","transferFrom(address,address,uint256)":"23b872dd"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Approval\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Transfer\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"}],\"name\":\"allowance\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"approve\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\"}],\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"decimals\",\"outputs\":[{\"internalType\":\"uint8\",\"name\":\"\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalSupply\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transfer\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"transferFrom\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface for the optional metadata functions from the ERC20 standard. _Available since v4.1._\",\"events\":{\"Approval(address,address,uint256)\":{\"details\":\"Emitted when the allowance of a `spender` for an `owner` is set by a call to {approve}. `value` is the new allowance.\"},\"Transfer(address,address,uint256)\":{\"details\":\"Emitted when `value` tokens are moved from one account (`from`) to another (`to`). Note that `value` may be zero.\"}},\"kind\":\"dev\",\"methods\":{\"allowance(address,address)\":{\"details\":\"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.\"},\"approve(address,uint256)\":{\"details\":\"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.\"},\"balanceOf(address)\":{\"details\":\"Returns the amount of tokens owned by `account`.\"},\"decimals()\":{\"details\":\"Returns the decimals places of the token.\"},\"name()\":{\"details\":\"Returns the name of the token.\"},\"symbol()\":{\"details\":\"Returns the symbol of the token.\"},\"totalSupply()\":{\"details\":\"Returns the amount of tokens in existence.\"},\"transfer(address,uint256)\":{\"details\":\"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"},\"transferFrom(address,address,uint256)\":{\"details\":\"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol\":\"IERC20Metadata\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"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\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"owner","type":"address","indexed":true},{"internalType":"address","name":"spender","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Approval","anonymous":false},{"inputs":[{"internalType":"address","name":"from","type":"address","indexed":true},{"internalType":"address","name":"to","type":"address","indexed":true},{"internalType":"uint256","name":"value","type":"uint256","indexed":false}],"type":"event","name":"Transfer","anonymous":false},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"stateMutability":"view","type":"function","name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"stateMutability":"view","type":"function","name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"name","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"allowance(address,address)":{"details":"Returns the remaining number of tokens that `spender` will be allowed to spend on behalf of `owner` through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called."},"approve(address,uint256)":{"details":"Sets `amount` as the allowance of `spender` over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event."},"balanceOf(address)":{"details":"Returns the amount of tokens owned by `account`."},"decimals()":{"details":"Returns the decimals places of the token."},"name()":{"details":"Returns the name of the token."},"symbol()":{"details":"Returns the symbol of the token."},"totalSupply()":{"details":"Returns the amount of tokens in existence."},"transfer(address,uint256)":{"details":"Moves `amount` tokens from the caller's account to `to`. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event."},"transferFrom(address,address,uint256)":{"details":"Moves `amount` tokens from `from` to `to` using the allowance mechanism. `amount` is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} 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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol":"IERC20Metadata"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"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"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Metadata.sol","id":55851,"exportedSymbols":{"IERC20":[55825],"IERC20Metadata":[55850]},"nodeType":"SourceUnit","src":"110:573:68","nodes":[{"id":55827,"nodeType":"PragmaDirective","src":"110:23:68","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":55828,"nodeType":"ImportDirective","src":"135:23:68","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"../IERC20.sol","nameLocation":"-1:-1:-1","scope":55851,"sourceUnit":55826,"symbolAliases":[],"unitAlias":""},{"id":55850,"nodeType":"ContractDefinition","src":"277:405:68","nodes":[{"id":55837,"nodeType":"FunctionDefinition","src":"377:54:68","nodes":[],"documentation":{"id":55832,"nodeType":"StructuredDocumentation","src":"318:54:68","text":" @dev Returns the name of the token."},"functionSelector":"06fdde03","implemented":false,"kind":"function","modifiers":[],"name":"name","nameLocation":"386:4:68","parameters":{"id":55833,"nodeType":"ParameterList","parameters":[],"src":"390:2:68"},"returnParameters":{"id":55836,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55835,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55837,"src":"416:13:68","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":55834,"name":"string","nodeType":"ElementaryTypeName","src":"416:6:68","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"415:15:68"},"scope":55850,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":55843,"nodeType":"FunctionDefinition","src":"498:56:68","nodes":[],"documentation":{"id":55838,"nodeType":"StructuredDocumentation","src":"437:56:68","text":" @dev Returns the symbol of the token."},"functionSelector":"95d89b41","implemented":false,"kind":"function","modifiers":[],"name":"symbol","nameLocation":"507:6:68","parameters":{"id":55839,"nodeType":"ParameterList","parameters":[],"src":"513:2:68"},"returnParameters":{"id":55842,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55841,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55843,"src":"539:13:68","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":55840,"name":"string","nodeType":"ElementaryTypeName","src":"539:6:68","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"538:15:68"},"scope":55850,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":55849,"nodeType":"FunctionDefinition","src":"630:50:68","nodes":[],"documentation":{"id":55844,"nodeType":"StructuredDocumentation","src":"560:65:68","text":" @dev Returns the decimals places of the token."},"functionSelector":"313ce567","implemented":false,"kind":"function","modifiers":[],"name":"decimals","nameLocation":"639:8:68","parameters":{"id":55845,"nodeType":"ParameterList","parameters":[],"src":"647:2:68"},"returnParameters":{"id":55848,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55847,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55849,"src":"673:5:68","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":55846,"name":"uint8","nodeType":"ElementaryTypeName","src":"673:5:68","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"672:7:68"},"scope":55850,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[{"baseName":{"id":55830,"name":"IERC20","nameLocations":["305:6:68"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"305:6:68"},"id":55831,"nodeType":"InheritanceSpecifier","src":"305:6:68"}],"canonicalName":"IERC20Metadata","contractDependencies":[],"contractKind":"interface","documentation":{"id":55829,"nodeType":"StructuredDocumentation","src":"160:116:68","text":" @dev Interface for the optional metadata functions from the ERC20 standard.\n _Available since v4.1._"},"fullyImplemented":false,"linearizedBaseContracts":[55850,55825],"name":"IERC20Metadata","nameLocation":"287:14:68","scope":55851,"usedErrors":[]}],"license":"MIT"},"id":68} \ No newline at end of file diff --git a/pkg/contracts/out/IERC20Permit.sol/IERC20Permit.json b/pkg/contracts/out/IERC20Permit.sol/IERC20Permit.json index 255d1c685..d5498d0ba 100644 --- a/pkg/contracts/out/IERC20Permit.sol/IERC20Permit.json +++ b/pkg/contracts/out/IERC20Permit.sol/IERC20Permit.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"DOMAIN_SEPARATOR","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"nonces","inputs":[{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"permit","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"DOMAIN_SEPARATOR()":"3644e515","nonces(address)":"7ecebe00","permit(address,address,uint256,uint256,uint8,bytes32,bytes32)":"d505accf"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"permit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in https://eips.ethereum.org/EIPS/eip-2612[EIP-2612]. Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't need to send a transaction, and thus is not required to hold Ether at all.\",\"kind\":\"dev\",\"methods\":{\"DOMAIN_SEPARATOR()\":{\"details\":\"Returns the domain separator used in the encoding of the signature for {permit}, as defined by {EIP712}.\"},\"nonces(address)\":{\"details\":\"Returns the current nonce for `owner`. This value must be included whenever a signature is generated for {permit}. Every successful call to {permit} increases ``owner``'s nonce by one. This prevents a signature from being used multiple times.\"},\"permit(address,address,uint256,uint256,uint8,bytes32,bytes32)\":{\"details\":\"Sets `value` as the allowance of `spender` over ``owner``'s tokens, given ``owner``'s signed approval. IMPORTANT: The same issues {IERC20-approve} has related to transaction ordering also apply here. Emits an {Approval} event. Requirements: - `spender` cannot be the zero address. - `deadline` must be a timestamp in the future. - `v`, `r` and `s` must be a valid `secp256k1` signature from `owner` over the EIP712-formatted function arguments. - the signature must use ``owner``'s current nonce (see {nonces}). For more information on the signature format, see the https://eips.ethereum.org/EIPS/eip-2612#specification[relevant EIP section].\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":\"IERC20Permit\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"view","type":"function","name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"permit"}],"devdoc":{"kind":"dev","methods":{"DOMAIN_SEPARATOR()":{"details":"Returns the domain separator used in the encoding of the signature for {permit}, as defined by {EIP712}."},"nonces(address)":{"details":"Returns the current nonce for `owner`. This value must be included whenever a signature is generated for {permit}. Every successful call to {permit} increases ``owner``'s nonce by one. This prevents a signature from being used multiple times."},"permit(address,address,uint256,uint256,uint8,bytes32,bytes32)":{"details":"Sets `value` as the allowance of `spender` over ``owner``'s tokens, given ``owner``'s signed approval. IMPORTANT: The same issues {IERC20-approve} has related to transaction ordering also apply here. Emits an {Approval} event. Requirements: - `spender` cannot be the zero address. - `deadline` must be a timestamp in the future. - `v`, `r` and `s` must be a valid `secp256k1` signature from `owner` over the EIP712-formatted function arguments. - the signature must use ``owner``'s current nonce (see {nonces}). For more information on the signature format, see the https://eips.ethereum.org/EIPS/eip-2612#specification[relevant EIP section]."}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":"IERC20Permit"},"evmVersion":"paris","libraries":{}},"sources":{"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol","id":17460,"exportedSymbols":{"IERC20Permit":[17459]},"nodeType":"SourceUnit","src":"123:2138:36","nodes":[{"id":17425,"nodeType":"PragmaDirective","src":"123:23:36","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":17459,"nodeType":"ContractDefinition","src":"629:1631:36","nodes":[{"id":17444,"nodeType":"FunctionDefinition","src":"1455:183:36","nodes":[],"documentation":{"id":17427,"nodeType":"StructuredDocumentation","src":"658:792:36","text":" @dev Sets `value` as the allowance of `spender` over ``owner``'s tokens,\n given ``owner``'s signed approval.\n IMPORTANT: The same issues {IERC20-approve} has related to transaction\n ordering also apply here.\n Emits an {Approval} event.\n Requirements:\n - `spender` cannot be the zero address.\n - `deadline` must be a timestamp in the future.\n - `v`, `r` and `s` must be a valid `secp256k1` signature from `owner`\n over the EIP712-formatted function arguments.\n - the signature must use ``owner``'s current nonce (see {nonces}).\n For more information on the signature format, see the\n https://eips.ethereum.org/EIPS/eip-2612#specification[relevant EIP\n section]."},"functionSelector":"d505accf","implemented":false,"kind":"function","modifiers":[],"name":"permit","nameLocation":"1464:6:36","parameters":{"id":17442,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17429,"mutability":"mutable","name":"owner","nameLocation":"1488:5:36","nodeType":"VariableDeclaration","scope":17444,"src":"1480:13:36","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17428,"name":"address","nodeType":"ElementaryTypeName","src":"1480:7:36","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17431,"mutability":"mutable","name":"spender","nameLocation":"1511:7:36","nodeType":"VariableDeclaration","scope":17444,"src":"1503:15:36","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17430,"name":"address","nodeType":"ElementaryTypeName","src":"1503:7:36","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17433,"mutability":"mutable","name":"value","nameLocation":"1536:5:36","nodeType":"VariableDeclaration","scope":17444,"src":"1528:13:36","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17432,"name":"uint256","nodeType":"ElementaryTypeName","src":"1528:7:36","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":17435,"mutability":"mutable","name":"deadline","nameLocation":"1559:8:36","nodeType":"VariableDeclaration","scope":17444,"src":"1551:16:36","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17434,"name":"uint256","nodeType":"ElementaryTypeName","src":"1551:7:36","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":17437,"mutability":"mutable","name":"v","nameLocation":"1583:1:36","nodeType":"VariableDeclaration","scope":17444,"src":"1577:7:36","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":17436,"name":"uint8","nodeType":"ElementaryTypeName","src":"1577:5:36","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":17439,"mutability":"mutable","name":"r","nameLocation":"1602:1:36","nodeType":"VariableDeclaration","scope":17444,"src":"1594:9:36","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":17438,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1594:7:36","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":17441,"mutability":"mutable","name":"s","nameLocation":"1621:1:36","nodeType":"VariableDeclaration","scope":17444,"src":"1613:9:36","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":17440,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1613:7:36","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1470:158:36"},"returnParameters":{"id":17443,"nodeType":"ParameterList","parameters":[],"src":"1637:0:36"},"scope":17459,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":17452,"nodeType":"FunctionDefinition","src":"1943:63:36","nodes":[],"documentation":{"id":17445,"nodeType":"StructuredDocumentation","src":"1644:294:36","text":" @dev Returns the current nonce for `owner`. This value must be\n included whenever a signature is generated for {permit}.\n Every successful call to {permit} increases ``owner``'s nonce by one. This\n prevents a signature from being used multiple times."},"functionSelector":"7ecebe00","implemented":false,"kind":"function","modifiers":[],"name":"nonces","nameLocation":"1952:6:36","parameters":{"id":17448,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17447,"mutability":"mutable","name":"owner","nameLocation":"1967:5:36","nodeType":"VariableDeclaration","scope":17452,"src":"1959:13:36","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17446,"name":"address","nodeType":"ElementaryTypeName","src":"1959:7:36","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1958:15:36"},"returnParameters":{"id":17451,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17450,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17452,"src":"1997:7:36","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17449,"name":"uint256","nodeType":"ElementaryTypeName","src":"1997:7:36","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1996:9:36"},"scope":17459,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":17458,"nodeType":"FunctionDefinition","src":"2198:60:36","nodes":[],"documentation":{"id":17453,"nodeType":"StructuredDocumentation","src":"2012:128:36","text":" @dev Returns the domain separator used in the encoding of the signature for {permit}, as defined by {EIP712}."},"functionSelector":"3644e515","implemented":false,"kind":"function","modifiers":[],"name":"DOMAIN_SEPARATOR","nameLocation":"2207:16:36","parameters":{"id":17454,"nodeType":"ParameterList","parameters":[],"src":"2223:2:36"},"returnParameters":{"id":17457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17456,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17458,"src":"2249:7:36","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":17455,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2249:7:36","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2248:9:36"},"scope":17459,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IERC20Permit","contractDependencies":[],"contractKind":"interface","documentation":{"id":17426,"nodeType":"StructuredDocumentation","src":"148:480:36","text":" @dev Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in\n https://eips.ethereum.org/EIPS/eip-2612[EIP-2612].\n Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by\n presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't\n need to send a transaction, and thus is not required to hold Ether at all."},"fullyImplemented":false,"linearizedBaseContracts":[17459],"name":"IERC20Permit","nameLocation":"639:12:36","scope":17460,"usedErrors":[]}],"license":"MIT"},"id":36} \ No newline at end of file +{"abi":[{"type":"function","name":"DOMAIN_SEPARATOR","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"nonces","inputs":[{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"permit","inputs":[{"name":"owner","type":"address","internalType":"address"},{"name":"spender","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"},{"name":"deadline","type":"uint256","internalType":"uint256"},{"name":"v","type":"uint8","internalType":"uint8"},{"name":"r","type":"bytes32","internalType":"bytes32"},{"name":"s","type":"bytes32","internalType":"bytes32"}],"outputs":[],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"DOMAIN_SEPARATOR()":"3644e515","nonces(address)":"7ecebe00","permit(address,address,uint256,uint256,uint8,bytes32,bytes32)":"d505accf"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"DOMAIN_SEPARATOR\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"nonces\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"spender\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"deadline\",\"type\":\"uint256\"},{\"internalType\":\"uint8\",\"name\":\"v\",\"type\":\"uint8\"},{\"internalType\":\"bytes32\",\"name\":\"r\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32\",\"name\":\"s\",\"type\":\"bytes32\"}],\"name\":\"permit\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in https://eips.ethereum.org/EIPS/eip-2612[EIP-2612]. Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't need to send a transaction, and thus is not required to hold Ether at all.\",\"kind\":\"dev\",\"methods\":{\"DOMAIN_SEPARATOR()\":{\"details\":\"Returns the domain separator used in the encoding of the signature for {permit}, as defined by {EIP712}.\"},\"nonces(address)\":{\"details\":\"Returns the current nonce for `owner`. This value must be included whenever a signature is generated for {permit}. Every successful call to {permit} increases ``owner``'s nonce by one. This prevents a signature from being used multiple times.\"},\"permit(address,address,uint256,uint256,uint8,bytes32,bytes32)\":{\"details\":\"Sets `value` as the allowance of `spender` over ``owner``'s tokens, given ``owner``'s signed approval. IMPORTANT: The same issues {IERC20-approve} has related to transaction ordering also apply here. Emits an {Approval} event. Requirements: - `spender` cannot be the zero address. - `deadline` must be a timestamp in the future. - `v`, `r` and `s` must be a valid `secp256k1` signature from `owner` over the EIP712-formatted function arguments. - the signature must use ``owner``'s current nonce (see {nonces}). For more information on the signature format, see the https://eips.ethereum.org/EIPS/eip-2612#specification[relevant EIP section].\"}},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":\"IERC20Permit\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol\":{\"keccak256\":\"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a\",\"dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"view","type":"function","name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"permit"}],"devdoc":{"kind":"dev","methods":{"DOMAIN_SEPARATOR()":{"details":"Returns the domain separator used in the encoding of the signature for {permit}, as defined by {EIP712}."},"nonces(address)":{"details":"Returns the current nonce for `owner`. This value must be included whenever a signature is generated for {permit}. Every successful call to {permit} increases ``owner``'s nonce by one. This prevents a signature from being used multiple times."},"permit(address,address,uint256,uint256,uint8,bytes32,bytes32)":{"details":"Sets `value` as the allowance of `spender` over ``owner``'s tokens, given ``owner``'s signed approval. IMPORTANT: The same issues {IERC20-approve} has related to transaction ordering also apply here. Emits an {Approval} event. Requirements: - `spender` cannot be the zero address. - `deadline` must be a timestamp in the future. - `v`, `r` and `s` must be a valid `secp256k1` signature from `owner` over the EIP712-formatted function arguments. - the signature must use ``owner``'s current nonce (see {nonces}). For more information on the signature format, see the https://eips.ethereum.org/EIPS/eip-2612#specification[relevant EIP section]."}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":"IERC20Permit"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol":{"keccak256":"0xec63854014a5b4f2b3290ab9103a21bdf902a508d0f41a8573fea49e98bf571a","urls":["bzz-raw://bc5b5dc12fbc4002f282eaa7a5f06d8310ed62c1c77c5770f6283e058454c39a","dweb:/ipfs/Qme9rE2wS3yBuyJq9GgbmzbsBQsW2M2sVFqYYLw7bosGrv"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol","id":55887,"exportedSymbols":{"IERC20Permit":[55886]},"nodeType":"SourceUnit","src":"123:2138:69","nodes":[{"id":55852,"nodeType":"PragmaDirective","src":"123:23:69","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":55886,"nodeType":"ContractDefinition","src":"629:1631:69","nodes":[{"id":55871,"nodeType":"FunctionDefinition","src":"1455:183:69","nodes":[],"documentation":{"id":55854,"nodeType":"StructuredDocumentation","src":"658:792:69","text":" @dev Sets `value` as the allowance of `spender` over ``owner``'s tokens,\n given ``owner``'s signed approval.\n IMPORTANT: The same issues {IERC20-approve} has related to transaction\n ordering also apply here.\n Emits an {Approval} event.\n Requirements:\n - `spender` cannot be the zero address.\n - `deadline` must be a timestamp in the future.\n - `v`, `r` and `s` must be a valid `secp256k1` signature from `owner`\n over the EIP712-formatted function arguments.\n - the signature must use ``owner``'s current nonce (see {nonces}).\n For more information on the signature format, see the\n https://eips.ethereum.org/EIPS/eip-2612#specification[relevant EIP\n section]."},"functionSelector":"d505accf","implemented":false,"kind":"function","modifiers":[],"name":"permit","nameLocation":"1464:6:69","parameters":{"id":55869,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55856,"mutability":"mutable","name":"owner","nameLocation":"1488:5:69","nodeType":"VariableDeclaration","scope":55871,"src":"1480:13:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55855,"name":"address","nodeType":"ElementaryTypeName","src":"1480:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55858,"mutability":"mutable","name":"spender","nameLocation":"1511:7:69","nodeType":"VariableDeclaration","scope":55871,"src":"1503:15:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55857,"name":"address","nodeType":"ElementaryTypeName","src":"1503:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55860,"mutability":"mutable","name":"value","nameLocation":"1536:5:69","nodeType":"VariableDeclaration","scope":55871,"src":"1528:13:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55859,"name":"uint256","nodeType":"ElementaryTypeName","src":"1528:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":55862,"mutability":"mutable","name":"deadline","nameLocation":"1559:8:69","nodeType":"VariableDeclaration","scope":55871,"src":"1551:16:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55861,"name":"uint256","nodeType":"ElementaryTypeName","src":"1551:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":55864,"mutability":"mutable","name":"v","nameLocation":"1583:1:69","nodeType":"VariableDeclaration","scope":55871,"src":"1577:7:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":55863,"name":"uint8","nodeType":"ElementaryTypeName","src":"1577:5:69","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":55866,"mutability":"mutable","name":"r","nameLocation":"1602:1:69","nodeType":"VariableDeclaration","scope":55871,"src":"1594:9:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":55865,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1594:7:69","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":55868,"mutability":"mutable","name":"s","nameLocation":"1621:1:69","nodeType":"VariableDeclaration","scope":55871,"src":"1613:9:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":55867,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1613:7:69","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"1470:158:69"},"returnParameters":{"id":55870,"nodeType":"ParameterList","parameters":[],"src":"1637:0:69"},"scope":55886,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":55879,"nodeType":"FunctionDefinition","src":"1943:63:69","nodes":[],"documentation":{"id":55872,"nodeType":"StructuredDocumentation","src":"1644:294:69","text":" @dev Returns the current nonce for `owner`. This value must be\n included whenever a signature is generated for {permit}.\n Every successful call to {permit} increases ``owner``'s nonce by one. This\n prevents a signature from being used multiple times."},"functionSelector":"7ecebe00","implemented":false,"kind":"function","modifiers":[],"name":"nonces","nameLocation":"1952:6:69","parameters":{"id":55875,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55874,"mutability":"mutable","name":"owner","nameLocation":"1967:5:69","nodeType":"VariableDeclaration","scope":55879,"src":"1959:13:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55873,"name":"address","nodeType":"ElementaryTypeName","src":"1959:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1958:15:69"},"returnParameters":{"id":55878,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55877,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55879,"src":"1997:7:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55876,"name":"uint256","nodeType":"ElementaryTypeName","src":"1997:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1996:9:69"},"scope":55886,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":55885,"nodeType":"FunctionDefinition","src":"2198:60:69","nodes":[],"documentation":{"id":55880,"nodeType":"StructuredDocumentation","src":"2012:128:69","text":" @dev Returns the domain separator used in the encoding of the signature for {permit}, as defined by {EIP712}."},"functionSelector":"3644e515","implemented":false,"kind":"function","modifiers":[],"name":"DOMAIN_SEPARATOR","nameLocation":"2207:16:69","parameters":{"id":55881,"nodeType":"ParameterList","parameters":[],"src":"2223:2:69"},"returnParameters":{"id":55884,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55883,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":55885,"src":"2249:7:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":55882,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2249:7:69","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2248:9:69"},"scope":55886,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IERC20Permit","contractDependencies":[],"contractKind":"interface","documentation":{"id":55853,"nodeType":"StructuredDocumentation","src":"148:480:69","text":" @dev Interface of the ERC20 Permit extension allowing approvals to be made via signatures, as defined in\n https://eips.ethereum.org/EIPS/eip-2612[EIP-2612].\n Adds the {permit} method, which can be used to change an account's ERC20 allowance (see {IERC20-allowance}) by\n presenting a message signed by the account. By not relying on {IERC20-approve}, the token holder account doesn't\n need to send a transaction, and thus is not required to hold Ether at all."},"fullyImplemented":false,"linearizedBaseContracts":[55886],"name":"IERC20Permit","nameLocation":"639:12:69","scope":55887,"usedErrors":[]}],"license":"MIT"},"id":69} \ No newline at end of file diff --git a/pkg/contracts/out/IRegistry.sol/IRegistry.json b/pkg/contracts/out/IRegistry.sol/IRegistry.json index fbd91a19a..6eb7c7d88 100644 --- a/pkg/contracts/out/IRegistry.sol/IRegistry.json +++ b/pkg/contracts/out/IRegistry.sol/IRegistry.json @@ -1 +1 @@ -{"abi":[{"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":"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":"profileId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"getProfileByAnchor","inputs":[{"name":"_anchor","type":"address","internalType":"address"}],"outputs":[{"name":"profile","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":"profile","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":"isMemberOfProfile","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"isMemberOfProfile","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":"isOwnerOfProfile","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":"isOwnerOrMemberOfProfile","type":"bool","internalType":"bool"}],"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":"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":"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}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"acceptProfileOwnership(bytes32)":"2497f3c6","addMembers(bytes32,address[])":"5063f361","createProfile(uint256,string,(uint256,string),address,address[])":"3a92f65f","getProfileByAnchor(address)":"dd93da43","getProfileById(bytes32)":"0114cf0a","isMemberOfProfile(bytes32,address)":"0ec1fbac","isOwnerOfProfile(bytes32,address)":"39b86b8c","isOwnerOrMemberOfProfile(bytes32,address)":"5e8a7915","recoverFunds(address,address)":"24ae6a27","removeMembers(bytes32,address[])":"e0cf1e4c","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\":[{\"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\"},{\"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\":\"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\":\"profileId\",\"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\":\"profile\",\"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\":\"profile\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMemberOfProfile\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isMemberOfProfile\",\"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\":\"isOwnerOfProfile\",\"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\":\"isOwnerOrMemberOfProfile\",\"type\":\"bool\"}],\"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\":\"_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\":\"The Registry Interface is used to interact with the Allo protocol and create profiles that can be used to interact with the Allo protocol. The Registry is the main contract that all other contracts interact with to get the 'Profile' information needed to interact with the Allo protocol. The Registry is also used to create new profiles and update existing profiles. The Registry is also used to add and remove members from a profile. The Registry will not always be used in a strategy and will depend on the strategy being used.\",\"events\":{\"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.\"}},\"kind\":\"dev\",\"methods\":{\"acceptProfileOwnership(bytes32)\":{\"details\":\"Accepts the pending 'owner' of the '_profileId' passed in Requirements: Only the pending owner can accept the ownership\",\"params\":{\"_profileId\":\"The 'profileId' to accept the ownership for\"}},\"addMembers(bytes32,address[])\":{\"details\":\"Adds members to the '_profileId' passed in Requirements: Only the 'Profile' owner can add members\",\"params\":{\"_members\":\"The members to add to the '_profileId' passed in\",\"_profileId\":\"The 'profileId' to add members to\"}},\"createProfile(uint256,string,(uint256,string),address,address[])\":{\"details\":\"Creates a new 'Profile' and returns the 'profileId' of the new profile Note: The 'name' and 'nonce' are used to generate the 'anchor' address Requirements: None, anyone can create a new profile\",\"params\":{\"_members\":\"The 'members' to use to generate the 'anchor' address\",\"_metadata\":\"The 'Metadata' to use to generate the 'anchor' address\",\"_name\":\"The name to use to generate the 'anchor' address\",\"_nonce\":\"The nonce to use to generate the 'anchor' address\",\"_owner\":\"The 'owner' to use to generate the 'anchor' address\"},\"returns\":{\"profileId\":\"The 'profileId' of the new profile\"}},\"getProfileByAnchor(address)\":{\"details\":\"Returns the 'Profile' for an '_anchor' passed\",\"params\":{\"_anchor\":\"The 'anchor' to return the 'Profile' for\"},\"returns\":{\"profile\":\"The 'Profile' for the '_anchor' passed\"}},\"getProfileById(bytes32)\":{\"details\":\"Returns the 'Profile' for a '_profileId' passed\",\"params\":{\"_profileId\":\"The 'profileId' to return the 'Profile' for\"},\"returns\":{\"profile\":\"The 'Profile' for the '_profileId' passed\"}},\"isMemberOfProfile(bytes32,address)\":{\"details\":\"Returns a boolean if the '_account' is a member of the '_profileId' passed in\",\"params\":{\"_member\":\"The 'member' to check if they are a member of the '_profileId' passed in\",\"_profileId\":\"The 'profileId' to check if the '_account' is a member of\"},\"returns\":{\"isMemberOfProfile\":\"A boolean if the '_account' is a member of the '_profileId' passed in\"}},\"isOwnerOfProfile(bytes32,address)\":{\"details\":\"Returns a boolean if the '_account' is an owner of the '_profileId' passed in\",\"params\":{\"_owner\":\"The 'owner' to check if they are an owner of the '_profileId' passed in\",\"_profileId\":\"The 'profileId' to check if the '_account' is an owner of\"},\"returns\":{\"isOwnerOfProfile\":\"A boolean if the '_account' is an owner of the '_profileId' passed in\"}},\"isOwnerOrMemberOfProfile(bytes32,address)\":{\"details\":\"Returns a boolean if the '_account' is a member or owner of the '_profileId' passed in\",\"params\":{\"_account\":\"The 'account' to check if they are a member or owner of the '_profileId' passed in\",\"_profileId\":\"The 'profileId' to check if the '_account' is a member or owner of\"},\"returns\":{\"isOwnerOrMemberOfProfile\":\"A boolean if the '_account' is a member or owner of the '_profileId' passed in\"}},\"recoverFunds(address,address)\":{\"details\":\"Recovers funds from the contract Requirements: Must be the Allo owner\",\"params\":{\"_recipient\":\"The recipient of the recovered funds\",\"_token\":\"The token you want to use to recover funds\"}},\"removeMembers(bytes32,address[])\":{\"details\":\"Removes members from the '_profileId' passed in Requirements: Only the 'Profile' owner can remove members\",\"params\":{\"_members\":\"The members to remove from the '_profileId' passed in\",\"_profileId\":\"The 'profileId' to remove members from\"}},\"updateProfileMetadata(bytes32,(uint256,string))\":{\"details\":\"Updates the 'Metadata' of the '_profileId' passed in Requirements: Only the 'Profile' owner can update the metadata\",\"params\":{\"_metadata\":\"The new 'Metadata' value\",\"_profileId\":\"The 'profileId' to update the metadata for\"}},\"updateProfileName(bytes32,string)\":{\"details\":\"Updates the 'name' of the '_profileId' passed in and returns the new 'anchor' address Requirements: Only the 'Profile' owner can update the name Note: The 'name' and 'nonce' are used to generate the 'anchor' address and this will update the 'anchor' so please use caution. You can always recreate your 'anchor' address by updating the name back to the original name used to create the profile.\",\"params\":{\"_name\":\"The new 'name' value\",\"_profileId\":\"The 'profileId' to update the name for\"},\"returns\":{\"anchor\":\"The new 'anchor' address\"}},\"updateProfilePendingOwner(bytes32,address)\":{\"details\":\"Updates the pending 'owner' of the '_profileId' passed in Requirements: Only the 'Profile' owner can update the pending owner\",\"params\":{\"_pendingOwner\":\"The new pending 'owner' value\",\"_profileId\":\"The 'profileId' to update the pending owner for\"}}},\"title\":\"IRegistry Interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"Interface for the Registry contract and exposes all functions needed to use the Registry within the Allo protocol.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":\"IRegistry\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/IRegistry.sol\":{\"keccak256\":\"0x3a2edcea094551fc86612932d42bd6b4682d20fb7b46cfdbeee39ba85367749f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c922d497fdfdd2f43a009959429c761d1fb61501ca5d91abf9ae873ac58d437e\",\"dweb:/ipfs/QmaiUx4uVajytmFJQJdGh2mJK2RKn4xNVrARurJdF3iwzA\"]},\"lib/allo-v2/contracts/core/libraries/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"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":"_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":"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":"profileId","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_anchor","type":"address"}],"stateMutability":"view","type":"function","name":"getProfileByAnchor","outputs":[{"internalType":"struct IRegistry.Profile","name":"profile","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":"profile","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"},{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMemberOfProfile","outputs":[{"internalType":"bool","name":"isMemberOfProfile","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":"isOwnerOfProfile","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":"isOwnerOrMemberOfProfile","type":"bool"}]},{"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":"_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":"Accepts the pending 'owner' of the '_profileId' passed in Requirements: Only the pending owner can accept the ownership","params":{"_profileId":"The 'profileId' to accept the ownership for"}},"addMembers(bytes32,address[])":{"details":"Adds members to the '_profileId' passed in Requirements: Only the 'Profile' owner can add members","params":{"_members":"The members to add to the '_profileId' passed in","_profileId":"The 'profileId' to add members to"}},"createProfile(uint256,string,(uint256,string),address,address[])":{"details":"Creates a new 'Profile' and returns the 'profileId' of the new profile Note: The 'name' and 'nonce' are used to generate the 'anchor' address Requirements: None, anyone can create a new profile","params":{"_members":"The 'members' to use to generate the 'anchor' address","_metadata":"The 'Metadata' to use to generate the 'anchor' address","_name":"The name to use to generate the 'anchor' address","_nonce":"The nonce to use to generate the 'anchor' address","_owner":"The 'owner' to use to generate the 'anchor' address"},"returns":{"profileId":"The 'profileId' of the new profile"}},"getProfileByAnchor(address)":{"details":"Returns the 'Profile' for an '_anchor' passed","params":{"_anchor":"The 'anchor' to return the 'Profile' for"},"returns":{"profile":"The 'Profile' for the '_anchor' passed"}},"getProfileById(bytes32)":{"details":"Returns the 'Profile' for a '_profileId' passed","params":{"_profileId":"The 'profileId' to return the 'Profile' for"},"returns":{"profile":"The 'Profile' for the '_profileId' passed"}},"isMemberOfProfile(bytes32,address)":{"details":"Returns a boolean if the '_account' is a member of the '_profileId' passed in","params":{"_member":"The 'member' to check if they are a member of the '_profileId' passed in","_profileId":"The 'profileId' to check if the '_account' is a member of"},"returns":{"isMemberOfProfile":"A boolean if the '_account' is a member of the '_profileId' passed in"}},"isOwnerOfProfile(bytes32,address)":{"details":"Returns a boolean if the '_account' is an owner of the '_profileId' passed in","params":{"_owner":"The 'owner' to check if they are an owner of the '_profileId' passed in","_profileId":"The 'profileId' to check if the '_account' is an owner of"},"returns":{"isOwnerOfProfile":"A boolean if the '_account' is an owner of the '_profileId' passed in"}},"isOwnerOrMemberOfProfile(bytes32,address)":{"details":"Returns a boolean if the '_account' is a member or owner of the '_profileId' passed in","params":{"_account":"The 'account' to check if they are a member or owner of the '_profileId' passed in","_profileId":"The 'profileId' to check if the '_account' is a member or owner of"},"returns":{"isOwnerOrMemberOfProfile":"A boolean if the '_account' is a member or owner of the '_profileId' passed in"}},"recoverFunds(address,address)":{"details":"Recovers funds from the contract Requirements: Must be the Allo owner","params":{"_recipient":"The recipient of the recovered funds","_token":"The token you want to use to recover funds"}},"removeMembers(bytes32,address[])":{"details":"Removes members from the '_profileId' passed in Requirements: Only the 'Profile' owner can remove members","params":{"_members":"The members to remove from the '_profileId' passed in","_profileId":"The 'profileId' to remove members from"}},"updateProfileMetadata(bytes32,(uint256,string))":{"details":"Updates the 'Metadata' of the '_profileId' passed in Requirements: Only the 'Profile' owner can update the metadata","params":{"_metadata":"The new 'Metadata' value","_profileId":"The 'profileId' to update the metadata for"}},"updateProfileName(bytes32,string)":{"details":"Updates the 'name' of the '_profileId' passed in and returns the new 'anchor' address Requirements: Only the 'Profile' owner can update the name Note: The 'name' and 'nonce' are used to generate the 'anchor' address and this will update the 'anchor' so please use caution. You can always recreate your 'anchor' address by updating the name back to the original name used to create the profile.","params":{"_name":"The new 'name' value","_profileId":"The 'profileId' to update the name for"},"returns":{"anchor":"The new 'anchor' address"}},"updateProfilePendingOwner(bytes32,address)":{"details":"Updates the pending 'owner' of the '_profileId' passed in Requirements: Only the 'Profile' owner can update the pending owner","params":{"_pendingOwner":"The new pending 'owner' value","_profileId":"The 'profileId' to update the pending owner for"}}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/IRegistry.sol":"IRegistry"},"evmVersion":"paris","libraries":{}},"sources":{"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/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","id":507,"exportedSymbols":{"IRegistry":[506],"Metadata":[802]},"nodeType":"SourceUnit","src":"32:12410:1","nodes":[{"id":316,"nodeType":"PragmaDirective","src":"32:24:1","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":318,"nodeType":"ImportDirective","src":"80:51:1","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"../libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":507,"sourceUnit":803,"symbolAliases":[{"foreign":{"id":317,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":802,"src":"88:8:1","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":506,"nodeType":"ContractDefinition","src":"5055:7386:1","nodes":[{"id":333,"nodeType":"StructDefinition","src":"5240:160:1","nodes":[],"canonicalName":"IRegistry.Profile","members":[{"constant":false,"id":321,"mutability":"mutable","name":"id","nameLocation":"5273:2:1","nodeType":"VariableDeclaration","scope":333,"src":"5265:10:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":320,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5265:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":323,"mutability":"mutable","name":"nonce","nameLocation":"5293:5:1","nodeType":"VariableDeclaration","scope":333,"src":"5285:13:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":322,"name":"uint256","nodeType":"ElementaryTypeName","src":"5285:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":325,"mutability":"mutable","name":"name","nameLocation":"5315:4:1","nodeType":"VariableDeclaration","scope":333,"src":"5308:11:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":324,"name":"string","nodeType":"ElementaryTypeName","src":"5308:6:1","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":328,"mutability":"mutable","name":"metadata","nameLocation":"5338:8:1","nodeType":"VariableDeclaration","scope":333,"src":"5329:17:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":327,"nodeType":"UserDefinedTypeName","pathNode":{"id":326,"name":"Metadata","nameLocations":["5329:8:1"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"5329:8:1"},"referencedDeclaration":802,"src":"5329:8:1","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":330,"mutability":"mutable","name":"owner","nameLocation":"5364:5:1","nodeType":"VariableDeclaration","scope":333,"src":"5356:13:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":329,"name":"address","nodeType":"ElementaryTypeName","src":"5356:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":332,"mutability":"mutable","name":"anchor","nameLocation":"5387:6:1","nodeType":"VariableDeclaration","scope":333,"src":"5379:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":331,"name":"address","nodeType":"ElementaryTypeName","src":"5379:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"Profile","nameLocation":"5247:7:1","scope":506,"visibility":"public"},{"id":349,"nodeType":"EventDefinition","src":"5586:140:1","nodes":[],"anonymous":false,"documentation":{"id":334,"nodeType":"StructuredDocumentation","src":"5500:81:1","text":"@dev Emitted when a profile is created. This will return your anchor address."},"eventSelector":"1e28352ff00d67474b59b87e6817d6ba65daa0130446266db8640214d8b80609","name":"ProfileCreated","nameLocation":"5592:14:1","parameters":{"id":348,"nodeType":"ParameterList","parameters":[{"constant":false,"id":336,"indexed":true,"mutability":"mutable","name":"profileId","nameLocation":"5632:9:1","nodeType":"VariableDeclaration","scope":349,"src":"5616:25:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":335,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5616:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":338,"indexed":false,"mutability":"mutable","name":"nonce","nameLocation":"5651:5:1","nodeType":"VariableDeclaration","scope":349,"src":"5643:13:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":337,"name":"uint256","nodeType":"ElementaryTypeName","src":"5643:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":340,"indexed":false,"mutability":"mutable","name":"name","nameLocation":"5665:4:1","nodeType":"VariableDeclaration","scope":349,"src":"5658:11:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":339,"name":"string","nodeType":"ElementaryTypeName","src":"5658:6:1","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":343,"indexed":false,"mutability":"mutable","name":"metadata","nameLocation":"5680:8:1","nodeType":"VariableDeclaration","scope":349,"src":"5671:17:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":342,"nodeType":"UserDefinedTypeName","pathNode":{"id":341,"name":"Metadata","nameLocations":["5671:8:1"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"5671:8:1"},"referencedDeclaration":802,"src":"5671:8:1","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":345,"indexed":false,"mutability":"mutable","name":"owner","nameLocation":"5698:5:1","nodeType":"VariableDeclaration","scope":349,"src":"5690:13:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":344,"name":"address","nodeType":"ElementaryTypeName","src":"5690:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":347,"indexed":false,"mutability":"mutable","name":"anchor","nameLocation":"5713:6:1","nodeType":"VariableDeclaration","scope":349,"src":"5705:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":346,"name":"address","nodeType":"ElementaryTypeName","src":"5705:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5606:119:1"}},{"id":358,"nodeType":"EventDefinition","src":"5853:81:1","nodes":[],"anonymous":false,"documentation":{"id":350,"nodeType":"StructuredDocumentation","src":"5732:116:1","text":"@dev Emitted when a profile name is updated. This will update the anchor when the name is updated and return it."},"eventSelector":"54cd733148631b9ff1cb945f2d0dcd33c0692e154763bfa2f35e2d10a76c432f","name":"ProfileNameUpdated","nameLocation":"5859:18:1","parameters":{"id":357,"nodeType":"ParameterList","parameters":[{"constant":false,"id":352,"indexed":true,"mutability":"mutable","name":"profileId","nameLocation":"5894:9:1","nodeType":"VariableDeclaration","scope":358,"src":"5878:25:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":351,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5878:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":354,"indexed":false,"mutability":"mutable","name":"name","nameLocation":"5912:4:1","nodeType":"VariableDeclaration","scope":358,"src":"5905:11:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":353,"name":"string","nodeType":"ElementaryTypeName","src":"5905:6:1","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":356,"indexed":false,"mutability":"mutable","name":"anchor","nameLocation":"5926:6:1","nodeType":"VariableDeclaration","scope":358,"src":"5918:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":355,"name":"address","nodeType":"ElementaryTypeName","src":"5918:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5877:56:1"}},{"id":366,"nodeType":"EventDefinition","src":"5999:75:1","nodes":[],"anonymous":false,"documentation":{"id":359,"nodeType":"StructuredDocumentation","src":"5940:54:1","text":"@dev Emitted when a profile's metadata is updated."},"eventSelector":"a366054a574e4f861cb295fd23b5440c5119c1ba329c36f5dfeb5643537cb0f3","name":"ProfileMetadataUpdated","nameLocation":"6005:22:1","parameters":{"id":365,"nodeType":"ParameterList","parameters":[{"constant":false,"id":361,"indexed":true,"mutability":"mutable","name":"profileId","nameLocation":"6044:9:1","nodeType":"VariableDeclaration","scope":366,"src":"6028:25:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":360,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6028:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":364,"indexed":false,"mutability":"mutable","name":"metadata","nameLocation":"6064:8:1","nodeType":"VariableDeclaration","scope":366,"src":"6055:17:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":363,"nodeType":"UserDefinedTypeName","pathNode":{"id":362,"name":"Metadata","nameLocations":["6055:8:1"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"6055:8:1"},"referencedDeclaration":802,"src":"6055:8:1","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"6027:46:1"}},{"id":373,"nodeType":"EventDefinition","src":"6134:68:1","nodes":[],"anonymous":false,"documentation":{"id":367,"nodeType":"StructuredDocumentation","src":"6080:49:1","text":"@dev Emitted when a profile owner is updated."},"eventSelector":"fd9ad63830df7bdf1586c8293dc88a30864cb43e9037e7afdb2c7210facf217d","name":"ProfileOwnerUpdated","nameLocation":"6140:19:1","parameters":{"id":372,"nodeType":"ParameterList","parameters":[{"constant":false,"id":369,"indexed":true,"mutability":"mutable","name":"profileId","nameLocation":"6176:9:1","nodeType":"VariableDeclaration","scope":373,"src":"6160:25:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":368,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6160:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":371,"indexed":false,"mutability":"mutable","name":"owner","nameLocation":"6195:5:1","nodeType":"VariableDeclaration","scope":373,"src":"6187:13:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":370,"name":"address","nodeType":"ElementaryTypeName","src":"6187:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6159:42:1"}},{"id":380,"nodeType":"EventDefinition","src":"6270:82:1","nodes":[],"anonymous":false,"documentation":{"id":374,"nodeType":"StructuredDocumentation","src":"6208:57:1","text":"@dev Emitted when a profile pending owner is updated."},"eventSelector":"21fe5cd61055ef88f636a264885b927f3ec2b380b6053a6b4a7495a6336a95c8","name":"ProfilePendingOwnerUpdated","nameLocation":"6276:26:1","parameters":{"id":379,"nodeType":"ParameterList","parameters":[{"constant":false,"id":376,"indexed":true,"mutability":"mutable","name":"profileId","nameLocation":"6319:9:1","nodeType":"VariableDeclaration","scope":380,"src":"6303:25:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":375,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6303:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":378,"indexed":false,"mutability":"mutable","name":"pendingOwner","nameLocation":"6338:12:1","nodeType":"VariableDeclaration","scope":380,"src":"6330:20:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":377,"name":"address","nodeType":"ElementaryTypeName","src":"6330:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6302:49:1"}},{"id":389,"nodeType":"FunctionDefinition","src":"6658:91:1","nodes":[],"documentation":{"id":381,"nodeType":"StructuredDocumentation","src":"6461:192:1","text":"@dev Returns the 'Profile' for a '_profileId' passed\n @param _profileId The 'profileId' to return the 'Profile' for\n @return profile The 'Profile' for the '_profileId' passed"},"functionSelector":"0114cf0a","implemented":false,"kind":"function","modifiers":[],"name":"getProfileById","nameLocation":"6667:14:1","parameters":{"id":384,"nodeType":"ParameterList","parameters":[{"constant":false,"id":383,"mutability":"mutable","name":"_profileId","nameLocation":"6690:10:1","nodeType":"VariableDeclaration","scope":389,"src":"6682:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":382,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6682:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"6681:20:1"},"returnParameters":{"id":388,"nodeType":"ParameterList","parameters":[{"constant":false,"id":387,"mutability":"mutable","name":"profile","nameLocation":"6740:7:1","nodeType":"VariableDeclaration","scope":389,"src":"6725:22:1","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$333_memory_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":386,"nodeType":"UserDefinedTypeName","pathNode":{"id":385,"name":"Profile","nameLocations":["6725:7:1"],"nodeType":"IdentifierPath","referencedDeclaration":333,"src":"6725:7:1"},"referencedDeclaration":333,"src":"6725:7:1","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$333_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"src":"6724:24:1"},"scope":506,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":398,"nodeType":"FunctionDefinition","src":"6941:92:1","nodes":[],"documentation":{"id":390,"nodeType":"StructuredDocumentation","src":"6755:181:1","text":"@dev Returns the 'Profile' for an '_anchor' passed\n @param _anchor The 'anchor' to return the 'Profile' for\n @return profile The 'Profile' for the '_anchor' passed"},"functionSelector":"dd93da43","implemented":false,"kind":"function","modifiers":[],"name":"getProfileByAnchor","nameLocation":"6950:18:1","parameters":{"id":393,"nodeType":"ParameterList","parameters":[{"constant":false,"id":392,"mutability":"mutable","name":"_anchor","nameLocation":"6977:7:1","nodeType":"VariableDeclaration","scope":398,"src":"6969:15:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":391,"name":"address","nodeType":"ElementaryTypeName","src":"6969:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6968:17:1"},"returnParameters":{"id":397,"nodeType":"ParameterList","parameters":[{"constant":false,"id":396,"mutability":"mutable","name":"profile","nameLocation":"7024:7:1","nodeType":"VariableDeclaration","scope":398,"src":"7009:22:1","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$333_memory_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":395,"nodeType":"UserDefinedTypeName","pathNode":{"id":394,"name":"Profile","nameLocations":["7009:7:1"],"nodeType":"IdentifierPath","referencedDeclaration":333,"src":"7009:7:1"},"referencedDeclaration":333,"src":"7009:7:1","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$333_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"src":"7008:24:1"},"scope":506,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":408,"nodeType":"FunctionDefinition","src":"7459:150:1","nodes":[],"documentation":{"id":399,"nodeType":"StructuredDocumentation","src":"7039:415:1","text":"@dev Returns a boolean if the '_account' is a member or owner of the '_profileId' passed in\n @param _profileId The 'profileId' to check if the '_account' is a member or owner of\n @param _account The 'account' to check if they are a member or owner of the '_profileId' passed in\n @return isOwnerOrMemberOfProfile A boolean if the '_account' is a member or owner of the '_profileId' passed in"},"functionSelector":"5e8a7915","implemented":false,"kind":"function","modifiers":[],"name":"isOwnerOrMemberOfProfile","nameLocation":"7468:24:1","parameters":{"id":404,"nodeType":"ParameterList","parameters":[{"constant":false,"id":401,"mutability":"mutable","name":"_profileId","nameLocation":"7501:10:1","nodeType":"VariableDeclaration","scope":408,"src":"7493:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":400,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7493:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":403,"mutability":"mutable","name":"_account","nameLocation":"7521:8:1","nodeType":"VariableDeclaration","scope":408,"src":"7513:16:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":402,"name":"address","nodeType":"ElementaryTypeName","src":"7513:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7492:38:1"},"returnParameters":{"id":407,"nodeType":"ParameterList","parameters":[{"constant":false,"id":406,"mutability":"mutable","name":"isOwnerOrMemberOfProfile","nameLocation":"7583:24:1","nodeType":"VariableDeclaration","scope":408,"src":"7578:29:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":405,"name":"bool","nodeType":"ElementaryTypeName","src":"7578:4:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"7577:31:1"},"scope":506,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":418,"nodeType":"FunctionDefinition","src":"7987:108:1","nodes":[],"documentation":{"id":409,"nodeType":"StructuredDocumentation","src":"7615:367:1","text":"@dev Returns a boolean if the '_account' is an owner of the '_profileId' passed in\n @param _profileId The 'profileId' to check if the '_account' is an owner of\n @param _owner The 'owner' to check if they are an owner of the '_profileId' passed in\n @return isOwnerOfProfile A boolean if the '_account' is an owner of the '_profileId' passed in"},"functionSelector":"39b86b8c","implemented":false,"kind":"function","modifiers":[],"name":"isOwnerOfProfile","nameLocation":"7996:16:1","parameters":{"id":414,"nodeType":"ParameterList","parameters":[{"constant":false,"id":411,"mutability":"mutable","name":"_profileId","nameLocation":"8021:10:1","nodeType":"VariableDeclaration","scope":418,"src":"8013:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":410,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8013:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":413,"mutability":"mutable","name":"_owner","nameLocation":"8041:6:1","nodeType":"VariableDeclaration","scope":418,"src":"8033:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":412,"name":"address","nodeType":"ElementaryTypeName","src":"8033:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8012:36:1"},"returnParameters":{"id":417,"nodeType":"ParameterList","parameters":[{"constant":false,"id":416,"mutability":"mutable","name":"isOwnerOfProfile","nameLocation":"8077:16:1","nodeType":"VariableDeclaration","scope":418,"src":"8072:21:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":415,"name":"bool","nodeType":"ElementaryTypeName","src":"8072:4:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"8071:23:1"},"scope":506,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":428,"nodeType":"FunctionDefinition","src":"8476:111:1","nodes":[],"documentation":{"id":419,"nodeType":"StructuredDocumentation","src":"8101:370:1","text":"@dev Returns a boolean if the '_account' is a member of the '_profileId' passed in\n @param _profileId The 'profileId' to check if the '_account' is a member of\n @param _member The 'member' to check if they are a member of the '_profileId' passed in\n @return isMemberOfProfile A boolean if the '_account' is a member of the '_profileId' passed in"},"functionSelector":"0ec1fbac","implemented":false,"kind":"function","modifiers":[],"name":"isMemberOfProfile","nameLocation":"8485:17:1","parameters":{"id":424,"nodeType":"ParameterList","parameters":[{"constant":false,"id":421,"mutability":"mutable","name":"_profileId","nameLocation":"8511:10:1","nodeType":"VariableDeclaration","scope":428,"src":"8503:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":420,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8503:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":423,"mutability":"mutable","name":"_member","nameLocation":"8531:7:1","nodeType":"VariableDeclaration","scope":428,"src":"8523:15:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":422,"name":"address","nodeType":"ElementaryTypeName","src":"8523:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8502:37:1"},"returnParameters":{"id":427,"nodeType":"ParameterList","parameters":[{"constant":false,"id":426,"mutability":"mutable","name":"isMemberOfProfile","nameLocation":"8568:17:1","nodeType":"VariableDeclaration","scope":428,"src":"8563:22:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":425,"name":"bool","nodeType":"ElementaryTypeName","src":"8563:4:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"8562:24:1"},"scope":506,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":446,"nodeType":"FunctionDefinition","src":"9411:213:1","nodes":[],"documentation":{"id":429,"nodeType":"StructuredDocumentation","src":"8729:677:1","text":"@dev Creates a new 'Profile' and returns the 'profileId' of the new profile\n Note: The 'name' and 'nonce' are used to generate the 'anchor' address\n Requirements: None, anyone can create a new profile\n @param _nonce The nonce to use to generate the 'anchor' address\n @param _name The name to use to generate the 'anchor' address\n @param _metadata The 'Metadata' to use to generate the 'anchor' address\n @param _owner The 'owner' to use to generate the 'anchor' address\n @param _members The 'members' to use to generate the 'anchor' address\n @return profileId The 'profileId' of the new profile"},"functionSelector":"3a92f65f","implemented":false,"kind":"function","modifiers":[],"name":"createProfile","nameLocation":"9420:13:1","parameters":{"id":442,"nodeType":"ParameterList","parameters":[{"constant":false,"id":431,"mutability":"mutable","name":"_nonce","nameLocation":"9451:6:1","nodeType":"VariableDeclaration","scope":446,"src":"9443:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":430,"name":"uint256","nodeType":"ElementaryTypeName","src":"9443:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":433,"mutability":"mutable","name":"_name","nameLocation":"9481:5:1","nodeType":"VariableDeclaration","scope":446,"src":"9467:19:1","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":432,"name":"string","nodeType":"ElementaryTypeName","src":"9467:6:1","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":436,"mutability":"mutable","name":"_metadata","nameLocation":"9512:9:1","nodeType":"VariableDeclaration","scope":446,"src":"9496:25:1","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":435,"nodeType":"UserDefinedTypeName","pathNode":{"id":434,"name":"Metadata","nameLocations":["9496:8:1"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"9496:8:1"},"referencedDeclaration":802,"src":"9496:8:1","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":438,"mutability":"mutable","name":"_owner","nameLocation":"9539:6:1","nodeType":"VariableDeclaration","scope":446,"src":"9531:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":437,"name":"address","nodeType":"ElementaryTypeName","src":"9531:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":441,"mutability":"mutable","name":"_members","nameLocation":"9572:8:1","nodeType":"VariableDeclaration","scope":446,"src":"9555:25:1","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":439,"name":"address","nodeType":"ElementaryTypeName","src":"9555:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":440,"nodeType":"ArrayTypeName","src":"9555:9:1","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"9433:153:1"},"returnParameters":{"id":445,"nodeType":"ParameterList","parameters":[{"constant":false,"id":444,"mutability":"mutable","name":"profileId","nameLocation":"9613:9:1","nodeType":"VariableDeclaration","scope":446,"src":"9605:17:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":443,"name":"bytes32","nodeType":"ElementaryTypeName","src":"9605:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"9604:19:1"},"scope":506,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":456,"nodeType":"FunctionDefinition","src":"10260:102:1","nodes":[],"documentation":{"id":447,"nodeType":"StructuredDocumentation","src":"9630:625:1","text":"@dev Updates the 'name' of the '_profileId' passed in and returns the new 'anchor' address\n Requirements: Only the 'Profile' owner can update the name\n Note: The 'name' and 'nonce' are used to generate the 'anchor' address and this will update the 'anchor'\n so please use caution. You can always recreate your 'anchor' address by updating the name back\n to the original name used to create the profile.\n @param _profileId The 'profileId' to update the name for\n @param _name The new 'name' value\n @return anchor The new 'anchor' address"},"functionSelector":"cf189ff2","implemented":false,"kind":"function","modifiers":[],"name":"updateProfileName","nameLocation":"10269:17:1","parameters":{"id":452,"nodeType":"ParameterList","parameters":[{"constant":false,"id":449,"mutability":"mutable","name":"_profileId","nameLocation":"10295:10:1","nodeType":"VariableDeclaration","scope":456,"src":"10287:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":448,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10287:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":451,"mutability":"mutable","name":"_name","nameLocation":"10321:5:1","nodeType":"VariableDeclaration","scope":456,"src":"10307:19:1","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":450,"name":"string","nodeType":"ElementaryTypeName","src":"10307:6:1","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"10286:41:1"},"returnParameters":{"id":455,"nodeType":"ParameterList","parameters":[{"constant":false,"id":454,"mutability":"mutable","name":"anchor","nameLocation":"10354:6:1","nodeType":"VariableDeclaration","scope":456,"src":"10346:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":453,"name":"address","nodeType":"ElementaryTypeName","src":"10346:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10345:16:1"},"scope":506,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":465,"nodeType":"FunctionDefinition","src":"10640:87:1","nodes":[],"documentation":{"id":457,"nodeType":"StructuredDocumentation","src":"10368:267:1","text":"@dev Updates the 'Metadata' of the '_profileId' passed in\n Requirements: Only the 'Profile' owner can update the metadata\n @param _profileId The 'profileId' to update the metadata for\n @param _metadata The new 'Metadata' value"},"functionSelector":"ac402839","implemented":false,"kind":"function","modifiers":[],"name":"updateProfileMetadata","nameLocation":"10649:21:1","parameters":{"id":463,"nodeType":"ParameterList","parameters":[{"constant":false,"id":459,"mutability":"mutable","name":"_profileId","nameLocation":"10679:10:1","nodeType":"VariableDeclaration","scope":465,"src":"10671:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":458,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10671:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":462,"mutability":"mutable","name":"_metadata","nameLocation":"10707:9:1","nodeType":"VariableDeclaration","scope":465,"src":"10691:25:1","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":461,"nodeType":"UserDefinedTypeName","pathNode":{"id":460,"name":"Metadata","nameLocations":["10691:8:1"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"10691:8:1"},"referencedDeclaration":802,"src":"10691:8:1","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"10670:47:1"},"returnParameters":{"id":464,"nodeType":"ParameterList","parameters":[],"src":"10726:0:1"},"scope":506,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":473,"nodeType":"FunctionDefinition","src":"11029:87:1","nodes":[],"documentation":{"id":466,"nodeType":"StructuredDocumentation","src":"10733:291:1","text":"@dev Updates the pending 'owner' of the '_profileId' passed in\n Requirements: Only the 'Profile' owner can update the pending owner\n @param _profileId The 'profileId' to update the pending owner for\n @param _pendingOwner The new pending 'owner' value"},"functionSelector":"3b66dacd","implemented":false,"kind":"function","modifiers":[],"name":"updateProfilePendingOwner","nameLocation":"11038:25:1","parameters":{"id":471,"nodeType":"ParameterList","parameters":[{"constant":false,"id":468,"mutability":"mutable","name":"_profileId","nameLocation":"11072:10:1","nodeType":"VariableDeclaration","scope":473,"src":"11064:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":467,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11064:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":470,"mutability":"mutable","name":"_pendingOwner","nameLocation":"11092:13:1","nodeType":"VariableDeclaration","scope":473,"src":"11084:21:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":469,"name":"address","nodeType":"ElementaryTypeName","src":"11084:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"11063:43:1"},"returnParameters":{"id":472,"nodeType":"ParameterList","parameters":[],"src":"11115:0:1"},"scope":506,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":479,"nodeType":"FunctionDefinition","src":"11349:61:1","nodes":[],"documentation":{"id":474,"nodeType":"StructuredDocumentation","src":"11122:222:1","text":"@dev Accepts the pending 'owner' of the '_profileId' passed in\n Requirements: Only the pending owner can accept the ownership\n @param _profileId The 'profileId' to accept the ownership for"},"functionSelector":"2497f3c6","implemented":false,"kind":"function","modifiers":[],"name":"acceptProfileOwnership","nameLocation":"11358:22:1","parameters":{"id":477,"nodeType":"ParameterList","parameters":[{"constant":false,"id":476,"mutability":"mutable","name":"_profileId","nameLocation":"11389:10:1","nodeType":"VariableDeclaration","scope":479,"src":"11381:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":475,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11381:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"11380:20:1"},"returnParameters":{"id":478,"nodeType":"ParameterList","parameters":[],"src":"11409:0:1"},"scope":506,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":488,"nodeType":"FunctionDefinition","src":"11684:76:1","nodes":[],"documentation":{"id":480,"nodeType":"StructuredDocumentation","src":"11416:263:1","text":"@dev Adds members to the '_profileId' passed in\n Requirements: Only the 'Profile' owner can add members\n @param _profileId The 'profileId' to add members to\n @param _members The members to add to the '_profileId' passed in"},"functionSelector":"5063f361","implemented":false,"kind":"function","modifiers":[],"name":"addMembers","nameLocation":"11693:10:1","parameters":{"id":486,"nodeType":"ParameterList","parameters":[{"constant":false,"id":482,"mutability":"mutable","name":"_profileId","nameLocation":"11712:10:1","nodeType":"VariableDeclaration","scope":488,"src":"11704:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":481,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11704:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":485,"mutability":"mutable","name":"_members","nameLocation":"11741:8:1","nodeType":"VariableDeclaration","scope":488,"src":"11724:25:1","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":483,"name":"address","nodeType":"ElementaryTypeName","src":"11724:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":484,"nodeType":"ArrayTypeName","src":"11724:9:1","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"11703:47:1"},"returnParameters":{"id":487,"nodeType":"ParameterList","parameters":[],"src":"11759:0:1"},"scope":506,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":497,"nodeType":"FunctionDefinition","src":"12052:79:1","nodes":[],"documentation":{"id":489,"nodeType":"StructuredDocumentation","src":"11766:281:1","text":"@dev Removes members from the '_profileId' passed in\n Requirements: Only the 'Profile' owner can remove members\n @param _profileId The 'profileId' to remove members from\n @param _members The members to remove from the '_profileId' passed in"},"functionSelector":"e0cf1e4c","implemented":false,"kind":"function","modifiers":[],"name":"removeMembers","nameLocation":"12061:13:1","parameters":{"id":495,"nodeType":"ParameterList","parameters":[{"constant":false,"id":491,"mutability":"mutable","name":"_profileId","nameLocation":"12083:10:1","nodeType":"VariableDeclaration","scope":497,"src":"12075:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":490,"name":"bytes32","nodeType":"ElementaryTypeName","src":"12075:7:1","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":494,"mutability":"mutable","name":"_members","nameLocation":"12112:8:1","nodeType":"VariableDeclaration","scope":497,"src":"12095:25:1","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":492,"name":"address","nodeType":"ElementaryTypeName","src":"12095:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":493,"nodeType":"ArrayTypeName","src":"12095:9:1","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"12074:47:1"},"returnParameters":{"id":496,"nodeType":"ParameterList","parameters":[],"src":"12130:0:1"},"scope":506,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":505,"nodeType":"FunctionDefinition","src":"12372:67:1","nodes":[],"documentation":{"id":498,"nodeType":"StructuredDocumentation","src":"12137:230:1","text":"@dev Recovers funds from the contract\n Requirements: Must be the Allo owner\n @param _token The token you want to use to recover funds\n @param _recipient The recipient of the recovered funds"},"functionSelector":"24ae6a27","implemented":false,"kind":"function","modifiers":[],"name":"recoverFunds","nameLocation":"12381:12:1","parameters":{"id":503,"nodeType":"ParameterList","parameters":[{"constant":false,"id":500,"mutability":"mutable","name":"_token","nameLocation":"12402:6:1","nodeType":"VariableDeclaration","scope":505,"src":"12394:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":499,"name":"address","nodeType":"ElementaryTypeName","src":"12394:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":502,"mutability":"mutable","name":"_recipient","nameLocation":"12418:10:1","nodeType":"VariableDeclaration","scope":505,"src":"12410:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":501,"name":"address","nodeType":"ElementaryTypeName","src":"12410:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12393:36:1"},"returnParameters":{"id":504,"nodeType":"ParameterList","parameters":[],"src":"12438:0:1"},"scope":506,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IRegistry","contractDependencies":[],"contractKind":"interface","documentation":{"id":319,"nodeType":"StructuredDocumentation","src":"4124:931:1","text":"@title IRegistry Interface\n @author @thelostone-mc , @0xKurt , @codenamejason , @0xZakk , @nfrgosselin \n @notice Interface for the Registry contract and exposes all functions needed to use the Registry\n within the Allo protocol.\n @dev The Registry Interface is used to interact with the Allo protocol and create profiles\n that can be used to interact with the Allo protocol. The Registry is the main contract\n that all other contracts interact with to get the 'Profile' information needed to\n interact with the Allo protocol. The Registry is also used to create new profiles\n and update existing profiles. The Registry is also used to add and remove members\n from a profile. The Registry will not always be used in a strategy and will depend on\n the strategy being used."},"fullyImplemented":false,"linearizedBaseContracts":[506],"name":"IRegistry","nameLocation":"5065:9:1","scope":507,"usedErrors":[]}],"license":"MIT"},"id":1} \ No newline at end of file +{"abi":[{"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":"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":"profileId","type":"bytes32","internalType":"bytes32"}],"stateMutability":"nonpayable"},{"type":"function","name":"getProfileByAnchor","inputs":[{"name":"_anchor","type":"address","internalType":"address"}],"outputs":[{"name":"profile","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":"profile","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":"isMemberOfProfile","inputs":[{"name":"_profileId","type":"bytes32","internalType":"bytes32"},{"name":"_member","type":"address","internalType":"address"}],"outputs":[{"name":"isMemberOfProfile","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":"isOwnerOfProfile","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":"isOwnerOrMemberOfProfile","type":"bool","internalType":"bool"}],"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":"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":"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}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"acceptProfileOwnership(bytes32)":"2497f3c6","addMembers(bytes32,address[])":"5063f361","createProfile(uint256,string,(uint256,string),address,address[])":"3a92f65f","getProfileByAnchor(address)":"dd93da43","getProfileById(bytes32)":"0114cf0a","isMemberOfProfile(bytes32,address)":"0ec1fbac","isOwnerOfProfile(bytes32,address)":"39b86b8c","isOwnerOrMemberOfProfile(bytes32,address)":"5e8a7915","recoverFunds(address,address)":"24ae6a27","removeMembers(bytes32,address[])":"e0cf1e4c","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\":[{\"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\"},{\"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\":\"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\":\"profileId\",\"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\":\"profile\",\"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\":\"profile\",\"type\":\"tuple\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"_profileId\",\"type\":\"bytes32\"},{\"internalType\":\"address\",\"name\":\"_member\",\"type\":\"address\"}],\"name\":\"isMemberOfProfile\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"isMemberOfProfile\",\"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\":\"isOwnerOfProfile\",\"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\":\"isOwnerOrMemberOfProfile\",\"type\":\"bool\"}],\"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\":\"_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\":\"The Registry Interface is used to interact with the Allo protocol and create profiles that can be used to interact with the Allo protocol. The Registry is the main contract that all other contracts interact with to get the 'Profile' information needed to interact with the Allo protocol. The Registry is also used to create new profiles and update existing profiles. The Registry is also used to add and remove members from a profile. The Registry will not always be used in a strategy and will depend on the strategy being used.\",\"events\":{\"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.\"}},\"kind\":\"dev\",\"methods\":{\"acceptProfileOwnership(bytes32)\":{\"details\":\"Accepts the pending 'owner' of the '_profileId' passed in Requirements: Only the pending owner can accept the ownership\",\"params\":{\"_profileId\":\"The 'profileId' to accept the ownership for\"}},\"addMembers(bytes32,address[])\":{\"details\":\"Adds members to the '_profileId' passed in Requirements: Only the 'Profile' owner can add members\",\"params\":{\"_members\":\"The members to add to the '_profileId' passed in\",\"_profileId\":\"The 'profileId' to add members to\"}},\"createProfile(uint256,string,(uint256,string),address,address[])\":{\"details\":\"Creates a new 'Profile' and returns the 'profileId' of the new profile Note: The 'name' and 'nonce' are used to generate the 'anchor' address Requirements: None, anyone can create a new profile\",\"params\":{\"_members\":\"The 'members' to use to generate the 'anchor' address\",\"_metadata\":\"The 'Metadata' to use to generate the 'anchor' address\",\"_name\":\"The name to use to generate the 'anchor' address\",\"_nonce\":\"The nonce to use to generate the 'anchor' address\",\"_owner\":\"The 'owner' to use to generate the 'anchor' address\"},\"returns\":{\"profileId\":\"The 'profileId' of the new profile\"}},\"getProfileByAnchor(address)\":{\"details\":\"Returns the 'Profile' for an '_anchor' passed\",\"params\":{\"_anchor\":\"The 'anchor' to return the 'Profile' for\"},\"returns\":{\"profile\":\"The 'Profile' for the '_anchor' passed\"}},\"getProfileById(bytes32)\":{\"details\":\"Returns the 'Profile' for a '_profileId' passed\",\"params\":{\"_profileId\":\"The 'profileId' to return the 'Profile' for\"},\"returns\":{\"profile\":\"The 'Profile' for the '_profileId' passed\"}},\"isMemberOfProfile(bytes32,address)\":{\"details\":\"Returns a boolean if the '_account' is a member of the '_profileId' passed in\",\"params\":{\"_member\":\"The 'member' to check if they are a member of the '_profileId' passed in\",\"_profileId\":\"The 'profileId' to check if the '_account' is a member of\"},\"returns\":{\"isMemberOfProfile\":\"A boolean if the '_account' is a member of the '_profileId' passed in\"}},\"isOwnerOfProfile(bytes32,address)\":{\"details\":\"Returns a boolean if the '_account' is an owner of the '_profileId' passed in\",\"params\":{\"_owner\":\"The 'owner' to check if they are an owner of the '_profileId' passed in\",\"_profileId\":\"The 'profileId' to check if the '_account' is an owner of\"},\"returns\":{\"isOwnerOfProfile\":\"A boolean if the '_account' is an owner of the '_profileId' passed in\"}},\"isOwnerOrMemberOfProfile(bytes32,address)\":{\"details\":\"Returns a boolean if the '_account' is a member or owner of the '_profileId' passed in\",\"params\":{\"_account\":\"The 'account' to check if they are a member or owner of the '_profileId' passed in\",\"_profileId\":\"The 'profileId' to check if the '_account' is a member or owner of\"},\"returns\":{\"isOwnerOrMemberOfProfile\":\"A boolean if the '_account' is a member or owner of the '_profileId' passed in\"}},\"recoverFunds(address,address)\":{\"details\":\"Recovers funds from the contract Requirements: Must be the Allo owner\",\"params\":{\"_recipient\":\"The recipient of the recovered funds\",\"_token\":\"The token you want to use to recover funds\"}},\"removeMembers(bytes32,address[])\":{\"details\":\"Removes members from the '_profileId' passed in Requirements: Only the 'Profile' owner can remove members\",\"params\":{\"_members\":\"The members to remove from the '_profileId' passed in\",\"_profileId\":\"The 'profileId' to remove members from\"}},\"updateProfileMetadata(bytes32,(uint256,string))\":{\"details\":\"Updates the 'Metadata' of the '_profileId' passed in Requirements: Only the 'Profile' owner can update the metadata\",\"params\":{\"_metadata\":\"The new 'Metadata' value\",\"_profileId\":\"The 'profileId' to update the metadata for\"}},\"updateProfileName(bytes32,string)\":{\"details\":\"Updates the 'name' of the '_profileId' passed in and returns the new 'anchor' address Requirements: Only the 'Profile' owner can update the name Note: The 'name' and 'nonce' are used to generate the 'anchor' address and this will update the 'anchor' so please use caution. You can always recreate your 'anchor' address by updating the name back to the original name used to create the profile.\",\"params\":{\"_name\":\"The new 'name' value\",\"_profileId\":\"The 'profileId' to update the name for\"},\"returns\":{\"anchor\":\"The new 'anchor' address\"}},\"updateProfilePendingOwner(bytes32,address)\":{\"details\":\"Updates the pending 'owner' of the '_profileId' passed in Requirements: Only the 'Profile' owner can update the pending owner\",\"params\":{\"_pendingOwner\":\"The new pending 'owner' value\",\"_profileId\":\"The 'profileId' to update the pending owner for\"}}},\"title\":\"IRegistry Interface\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"Interface for the Registry contract and exposes all functions needed to use the Registry within the Allo protocol.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/allo-v2/contracts/core/interfaces/IRegistry.sol\":\"IRegistry\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"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/Metadata.sol\":{\"keccak256\":\"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c\",\"dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"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":"_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":"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":"profileId","type":"bytes32"}]},{"inputs":[{"internalType":"address","name":"_anchor","type":"address"}],"stateMutability":"view","type":"function","name":"getProfileByAnchor","outputs":[{"internalType":"struct IRegistry.Profile","name":"profile","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":"profile","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"},{"internalType":"address","name":"_member","type":"address"}],"stateMutability":"view","type":"function","name":"isMemberOfProfile","outputs":[{"internalType":"bool","name":"isMemberOfProfile","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":"isOwnerOfProfile","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":"isOwnerOrMemberOfProfile","type":"bool"}]},{"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":"_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":"Accepts the pending 'owner' of the '_profileId' passed in Requirements: Only the pending owner can accept the ownership","params":{"_profileId":"The 'profileId' to accept the ownership for"}},"addMembers(bytes32,address[])":{"details":"Adds members to the '_profileId' passed in Requirements: Only the 'Profile' owner can add members","params":{"_members":"The members to add to the '_profileId' passed in","_profileId":"The 'profileId' to add members to"}},"createProfile(uint256,string,(uint256,string),address,address[])":{"details":"Creates a new 'Profile' and returns the 'profileId' of the new profile Note: The 'name' and 'nonce' are used to generate the 'anchor' address Requirements: None, anyone can create a new profile","params":{"_members":"The 'members' to use to generate the 'anchor' address","_metadata":"The 'Metadata' to use to generate the 'anchor' address","_name":"The name to use to generate the 'anchor' address","_nonce":"The nonce to use to generate the 'anchor' address","_owner":"The 'owner' to use to generate the 'anchor' address"},"returns":{"profileId":"The 'profileId' of the new profile"}},"getProfileByAnchor(address)":{"details":"Returns the 'Profile' for an '_anchor' passed","params":{"_anchor":"The 'anchor' to return the 'Profile' for"},"returns":{"profile":"The 'Profile' for the '_anchor' passed"}},"getProfileById(bytes32)":{"details":"Returns the 'Profile' for a '_profileId' passed","params":{"_profileId":"The 'profileId' to return the 'Profile' for"},"returns":{"profile":"The 'Profile' for the '_profileId' passed"}},"isMemberOfProfile(bytes32,address)":{"details":"Returns a boolean if the '_account' is a member of the '_profileId' passed in","params":{"_member":"The 'member' to check if they are a member of the '_profileId' passed in","_profileId":"The 'profileId' to check if the '_account' is a member of"},"returns":{"isMemberOfProfile":"A boolean if the '_account' is a member of the '_profileId' passed in"}},"isOwnerOfProfile(bytes32,address)":{"details":"Returns a boolean if the '_account' is an owner of the '_profileId' passed in","params":{"_owner":"The 'owner' to check if they are an owner of the '_profileId' passed in","_profileId":"The 'profileId' to check if the '_account' is an owner of"},"returns":{"isOwnerOfProfile":"A boolean if the '_account' is an owner of the '_profileId' passed in"}},"isOwnerOrMemberOfProfile(bytes32,address)":{"details":"Returns a boolean if the '_account' is a member or owner of the '_profileId' passed in","params":{"_account":"The 'account' to check if they are a member or owner of the '_profileId' passed in","_profileId":"The 'profileId' to check if the '_account' is a member or owner of"},"returns":{"isOwnerOrMemberOfProfile":"A boolean if the '_account' is a member or owner of the '_profileId' passed in"}},"recoverFunds(address,address)":{"details":"Recovers funds from the contract Requirements: Must be the Allo owner","params":{"_recipient":"The recipient of the recovered funds","_token":"The token you want to use to recover funds"}},"removeMembers(bytes32,address[])":{"details":"Removes members from the '_profileId' passed in Requirements: Only the 'Profile' owner can remove members","params":{"_members":"The members to remove from the '_profileId' passed in","_profileId":"The 'profileId' to remove members from"}},"updateProfileMetadata(bytes32,(uint256,string))":{"details":"Updates the 'Metadata' of the '_profileId' passed in Requirements: Only the 'Profile' owner can update the metadata","params":{"_metadata":"The new 'Metadata' value","_profileId":"The 'profileId' to update the metadata for"}},"updateProfileName(bytes32,string)":{"details":"Updates the 'name' of the '_profileId' passed in and returns the new 'anchor' address Requirements: Only the 'Profile' owner can update the name Note: The 'name' and 'nonce' are used to generate the 'anchor' address and this will update the 'anchor' so please use caution. You can always recreate your 'anchor' address by updating the name back to the original name used to create the profile.","params":{"_name":"The new 'name' value","_profileId":"The 'profileId' to update the name for"},"returns":{"anchor":"The new 'anchor' address"}},"updateProfilePendingOwner(bytes32,address)":{"details":"Updates the pending 'owner' of the '_profileId' passed in Requirements: Only the 'Profile' owner can update the pending owner","params":{"_pendingOwner":"The new pending 'owner' value","_profileId":"The 'profileId' to update the pending owner for"}}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/IRegistry.sol":"IRegistry"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"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/Metadata.sol":{"keccak256":"0x452a95a8762fafd51d36295138f7e14189cbaaca7274d6fd34a59ad57a442d44","urls":["bzz-raw://2cc5507da2550ab9bfa0fbb263e703f9e70b831190bb7b2bcdbb231cab49795c","dweb:/ipfs/QmQXCD8v2HppXAX17aH49JvNyyfDYzGMrg63QNabUEXPpn"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","id":2803,"exportedSymbols":{"IRegistry":[2802],"Metadata":[3098]},"nodeType":"SourceUnit","src":"32:12410:4","nodes":[{"id":2612,"nodeType":"PragmaDirective","src":"32:24:4","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":2614,"nodeType":"ImportDirective","src":"80:51:4","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Metadata.sol","file":"../libraries/Metadata.sol","nameLocation":"-1:-1:-1","scope":2803,"sourceUnit":3099,"symbolAliases":[{"foreign":{"id":2613,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"88:8:4","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":2802,"nodeType":"ContractDefinition","src":"5055:7386:4","nodes":[{"id":2629,"nodeType":"StructDefinition","src":"5240:160:4","nodes":[],"canonicalName":"IRegistry.Profile","members":[{"constant":false,"id":2617,"mutability":"mutable","name":"id","nameLocation":"5273:2:4","nodeType":"VariableDeclaration","scope":2629,"src":"5265:10:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2616,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5265:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2619,"mutability":"mutable","name":"nonce","nameLocation":"5293:5:4","nodeType":"VariableDeclaration","scope":2629,"src":"5285:13:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2618,"name":"uint256","nodeType":"ElementaryTypeName","src":"5285:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2621,"mutability":"mutable","name":"name","nameLocation":"5315:4:4","nodeType":"VariableDeclaration","scope":2629,"src":"5308:11:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":2620,"name":"string","nodeType":"ElementaryTypeName","src":"5308:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":2624,"mutability":"mutable","name":"metadata","nameLocation":"5338:8:4","nodeType":"VariableDeclaration","scope":2629,"src":"5329:17:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":2623,"nodeType":"UserDefinedTypeName","pathNode":{"id":2622,"name":"Metadata","nameLocations":["5329:8:4"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"5329:8:4"},"referencedDeclaration":3098,"src":"5329:8:4","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":2626,"mutability":"mutable","name":"owner","nameLocation":"5364:5:4","nodeType":"VariableDeclaration","scope":2629,"src":"5356:13:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2625,"name":"address","nodeType":"ElementaryTypeName","src":"5356:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":2628,"mutability":"mutable","name":"anchor","nameLocation":"5387:6:4","nodeType":"VariableDeclaration","scope":2629,"src":"5379:14:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2627,"name":"address","nodeType":"ElementaryTypeName","src":"5379:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"name":"Profile","nameLocation":"5247:7:4","scope":2802,"visibility":"public"},{"id":2645,"nodeType":"EventDefinition","src":"5586:140:4","nodes":[],"anonymous":false,"documentation":{"id":2630,"nodeType":"StructuredDocumentation","src":"5500:81:4","text":"@dev Emitted when a profile is created. This will return your anchor address."},"eventSelector":"1e28352ff00d67474b59b87e6817d6ba65daa0130446266db8640214d8b80609","name":"ProfileCreated","nameLocation":"5592:14:4","parameters":{"id":2644,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2632,"indexed":true,"mutability":"mutable","name":"profileId","nameLocation":"5632:9:4","nodeType":"VariableDeclaration","scope":2645,"src":"5616:25:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2631,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5616:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2634,"indexed":false,"mutability":"mutable","name":"nonce","nameLocation":"5651:5:4","nodeType":"VariableDeclaration","scope":2645,"src":"5643:13:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2633,"name":"uint256","nodeType":"ElementaryTypeName","src":"5643:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2636,"indexed":false,"mutability":"mutable","name":"name","nameLocation":"5665:4:4","nodeType":"VariableDeclaration","scope":2645,"src":"5658:11:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":2635,"name":"string","nodeType":"ElementaryTypeName","src":"5658:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":2639,"indexed":false,"mutability":"mutable","name":"metadata","nameLocation":"5680:8:4","nodeType":"VariableDeclaration","scope":2645,"src":"5671:17:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":2638,"nodeType":"UserDefinedTypeName","pathNode":{"id":2637,"name":"Metadata","nameLocations":["5671:8:4"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"5671:8:4"},"referencedDeclaration":3098,"src":"5671:8:4","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":2641,"indexed":false,"mutability":"mutable","name":"owner","nameLocation":"5698:5:4","nodeType":"VariableDeclaration","scope":2645,"src":"5690:13:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2640,"name":"address","nodeType":"ElementaryTypeName","src":"5690:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":2643,"indexed":false,"mutability":"mutable","name":"anchor","nameLocation":"5713:6:4","nodeType":"VariableDeclaration","scope":2645,"src":"5705:14:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2642,"name":"address","nodeType":"ElementaryTypeName","src":"5705:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5606:119:4"}},{"id":2654,"nodeType":"EventDefinition","src":"5853:81:4","nodes":[],"anonymous":false,"documentation":{"id":2646,"nodeType":"StructuredDocumentation","src":"5732:116:4","text":"@dev Emitted when a profile name is updated. This will update the anchor when the name is updated and return it."},"eventSelector":"54cd733148631b9ff1cb945f2d0dcd33c0692e154763bfa2f35e2d10a76c432f","name":"ProfileNameUpdated","nameLocation":"5859:18:4","parameters":{"id":2653,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2648,"indexed":true,"mutability":"mutable","name":"profileId","nameLocation":"5894:9:4","nodeType":"VariableDeclaration","scope":2654,"src":"5878:25:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2647,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5878:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2650,"indexed":false,"mutability":"mutable","name":"name","nameLocation":"5912:4:4","nodeType":"VariableDeclaration","scope":2654,"src":"5905:11:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":2649,"name":"string","nodeType":"ElementaryTypeName","src":"5905:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":2652,"indexed":false,"mutability":"mutable","name":"anchor","nameLocation":"5926:6:4","nodeType":"VariableDeclaration","scope":2654,"src":"5918:14:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2651,"name":"address","nodeType":"ElementaryTypeName","src":"5918:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5877:56:4"}},{"id":2662,"nodeType":"EventDefinition","src":"5999:75:4","nodes":[],"anonymous":false,"documentation":{"id":2655,"nodeType":"StructuredDocumentation","src":"5940:54:4","text":"@dev Emitted when a profile's metadata is updated."},"eventSelector":"a366054a574e4f861cb295fd23b5440c5119c1ba329c36f5dfeb5643537cb0f3","name":"ProfileMetadataUpdated","nameLocation":"6005:22:4","parameters":{"id":2661,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2657,"indexed":true,"mutability":"mutable","name":"profileId","nameLocation":"6044:9:4","nodeType":"VariableDeclaration","scope":2662,"src":"6028:25:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2656,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6028:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2660,"indexed":false,"mutability":"mutable","name":"metadata","nameLocation":"6064:8:4","nodeType":"VariableDeclaration","scope":2662,"src":"6055:17:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":2659,"nodeType":"UserDefinedTypeName","pathNode":{"id":2658,"name":"Metadata","nameLocations":["6055:8:4"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"6055:8:4"},"referencedDeclaration":3098,"src":"6055:8:4","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"6027:46:4"}},{"id":2669,"nodeType":"EventDefinition","src":"6134:68:4","nodes":[],"anonymous":false,"documentation":{"id":2663,"nodeType":"StructuredDocumentation","src":"6080:49:4","text":"@dev Emitted when a profile owner is updated."},"eventSelector":"fd9ad63830df7bdf1586c8293dc88a30864cb43e9037e7afdb2c7210facf217d","name":"ProfileOwnerUpdated","nameLocation":"6140:19:4","parameters":{"id":2668,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2665,"indexed":true,"mutability":"mutable","name":"profileId","nameLocation":"6176:9:4","nodeType":"VariableDeclaration","scope":2669,"src":"6160:25:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2664,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6160:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2667,"indexed":false,"mutability":"mutable","name":"owner","nameLocation":"6195:5:4","nodeType":"VariableDeclaration","scope":2669,"src":"6187:13:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2666,"name":"address","nodeType":"ElementaryTypeName","src":"6187:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6159:42:4"}},{"id":2676,"nodeType":"EventDefinition","src":"6270:82:4","nodes":[],"anonymous":false,"documentation":{"id":2670,"nodeType":"StructuredDocumentation","src":"6208:57:4","text":"@dev Emitted when a profile pending owner is updated."},"eventSelector":"21fe5cd61055ef88f636a264885b927f3ec2b380b6053a6b4a7495a6336a95c8","name":"ProfilePendingOwnerUpdated","nameLocation":"6276:26:4","parameters":{"id":2675,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2672,"indexed":true,"mutability":"mutable","name":"profileId","nameLocation":"6319:9:4","nodeType":"VariableDeclaration","scope":2676,"src":"6303:25:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2671,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6303:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2674,"indexed":false,"mutability":"mutable","name":"pendingOwner","nameLocation":"6338:12:4","nodeType":"VariableDeclaration","scope":2676,"src":"6330:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2673,"name":"address","nodeType":"ElementaryTypeName","src":"6330:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6302:49:4"}},{"id":2685,"nodeType":"FunctionDefinition","src":"6658:91:4","nodes":[],"documentation":{"id":2677,"nodeType":"StructuredDocumentation","src":"6461:192:4","text":"@dev Returns the 'Profile' for a '_profileId' passed\n @param _profileId The 'profileId' to return the 'Profile' for\n @return profile The 'Profile' for the '_profileId' passed"},"functionSelector":"0114cf0a","implemented":false,"kind":"function","modifiers":[],"name":"getProfileById","nameLocation":"6667:14:4","parameters":{"id":2680,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2679,"mutability":"mutable","name":"_profileId","nameLocation":"6690:10:4","nodeType":"VariableDeclaration","scope":2685,"src":"6682:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2678,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6682:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"6681:20:4"},"returnParameters":{"id":2684,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2683,"mutability":"mutable","name":"profile","nameLocation":"6740:7:4","nodeType":"VariableDeclaration","scope":2685,"src":"6725:22:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":2682,"nodeType":"UserDefinedTypeName","pathNode":{"id":2681,"name":"Profile","nameLocations":["6725:7:4"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"6725:7:4"},"referencedDeclaration":2629,"src":"6725:7:4","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"src":"6724:24:4"},"scope":2802,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2694,"nodeType":"FunctionDefinition","src":"6941:92:4","nodes":[],"documentation":{"id":2686,"nodeType":"StructuredDocumentation","src":"6755:181:4","text":"@dev Returns the 'Profile' for an '_anchor' passed\n @param _anchor The 'anchor' to return the 'Profile' for\n @return profile The 'Profile' for the '_anchor' passed"},"functionSelector":"dd93da43","implemented":false,"kind":"function","modifiers":[],"name":"getProfileByAnchor","nameLocation":"6950:18:4","parameters":{"id":2689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2688,"mutability":"mutable","name":"_anchor","nameLocation":"6977:7:4","nodeType":"VariableDeclaration","scope":2694,"src":"6969:15:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2687,"name":"address","nodeType":"ElementaryTypeName","src":"6969:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6968:17:4"},"returnParameters":{"id":2693,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2692,"mutability":"mutable","name":"profile","nameLocation":"7024:7:4","nodeType":"VariableDeclaration","scope":2694,"src":"7009:22:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_memory_ptr","typeString":"struct IRegistry.Profile"},"typeName":{"id":2691,"nodeType":"UserDefinedTypeName","pathNode":{"id":2690,"name":"Profile","nameLocations":["7009:7:4"],"nodeType":"IdentifierPath","referencedDeclaration":2629,"src":"7009:7:4"},"referencedDeclaration":2629,"src":"7009:7:4","typeDescriptions":{"typeIdentifier":"t_struct$_Profile_$2629_storage_ptr","typeString":"struct IRegistry.Profile"}},"visibility":"internal"}],"src":"7008:24:4"},"scope":2802,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2704,"nodeType":"FunctionDefinition","src":"7459:150:4","nodes":[],"documentation":{"id":2695,"nodeType":"StructuredDocumentation","src":"7039:415:4","text":"@dev Returns a boolean if the '_account' is a member or owner of the '_profileId' passed in\n @param _profileId The 'profileId' to check if the '_account' is a member or owner of\n @param _account The 'account' to check if they are a member or owner of the '_profileId' passed in\n @return isOwnerOrMemberOfProfile A boolean if the '_account' is a member or owner of the '_profileId' passed in"},"functionSelector":"5e8a7915","implemented":false,"kind":"function","modifiers":[],"name":"isOwnerOrMemberOfProfile","nameLocation":"7468:24:4","parameters":{"id":2700,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2697,"mutability":"mutable","name":"_profileId","nameLocation":"7501:10:4","nodeType":"VariableDeclaration","scope":2704,"src":"7493:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2696,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7493:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2699,"mutability":"mutable","name":"_account","nameLocation":"7521:8:4","nodeType":"VariableDeclaration","scope":2704,"src":"7513:16:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2698,"name":"address","nodeType":"ElementaryTypeName","src":"7513:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7492:38:4"},"returnParameters":{"id":2703,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2702,"mutability":"mutable","name":"isOwnerOrMemberOfProfile","nameLocation":"7583:24:4","nodeType":"VariableDeclaration","scope":2704,"src":"7578:29:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2701,"name":"bool","nodeType":"ElementaryTypeName","src":"7578:4:4","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"7577:31:4"},"scope":2802,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2714,"nodeType":"FunctionDefinition","src":"7987:108:4","nodes":[],"documentation":{"id":2705,"nodeType":"StructuredDocumentation","src":"7615:367:4","text":"@dev Returns a boolean if the '_account' is an owner of the '_profileId' passed in\n @param _profileId The 'profileId' to check if the '_account' is an owner of\n @param _owner The 'owner' to check if they are an owner of the '_profileId' passed in\n @return isOwnerOfProfile A boolean if the '_account' is an owner of the '_profileId' passed in"},"functionSelector":"39b86b8c","implemented":false,"kind":"function","modifiers":[],"name":"isOwnerOfProfile","nameLocation":"7996:16:4","parameters":{"id":2710,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2707,"mutability":"mutable","name":"_profileId","nameLocation":"8021:10:4","nodeType":"VariableDeclaration","scope":2714,"src":"8013:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2706,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8013:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2709,"mutability":"mutable","name":"_owner","nameLocation":"8041:6:4","nodeType":"VariableDeclaration","scope":2714,"src":"8033:14:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2708,"name":"address","nodeType":"ElementaryTypeName","src":"8033:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8012:36:4"},"returnParameters":{"id":2713,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2712,"mutability":"mutable","name":"isOwnerOfProfile","nameLocation":"8077:16:4","nodeType":"VariableDeclaration","scope":2714,"src":"8072:21:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2711,"name":"bool","nodeType":"ElementaryTypeName","src":"8072:4:4","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"8071:23:4"},"scope":2802,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2724,"nodeType":"FunctionDefinition","src":"8476:111:4","nodes":[],"documentation":{"id":2715,"nodeType":"StructuredDocumentation","src":"8101:370:4","text":"@dev Returns a boolean if the '_account' is a member of the '_profileId' passed in\n @param _profileId The 'profileId' to check if the '_account' is a member of\n @param _member The 'member' to check if they are a member of the '_profileId' passed in\n @return isMemberOfProfile A boolean if the '_account' is a member of the '_profileId' passed in"},"functionSelector":"0ec1fbac","implemented":false,"kind":"function","modifiers":[],"name":"isMemberOfProfile","nameLocation":"8485:17:4","parameters":{"id":2720,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2717,"mutability":"mutable","name":"_profileId","nameLocation":"8511:10:4","nodeType":"VariableDeclaration","scope":2724,"src":"8503:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2716,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8503:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2719,"mutability":"mutable","name":"_member","nameLocation":"8531:7:4","nodeType":"VariableDeclaration","scope":2724,"src":"8523:15:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2718,"name":"address","nodeType":"ElementaryTypeName","src":"8523:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"8502:37:4"},"returnParameters":{"id":2723,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2722,"mutability":"mutable","name":"isMemberOfProfile","nameLocation":"8568:17:4","nodeType":"VariableDeclaration","scope":2724,"src":"8563:22:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":2721,"name":"bool","nodeType":"ElementaryTypeName","src":"8563:4:4","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"8562:24:4"},"scope":2802,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":2742,"nodeType":"FunctionDefinition","src":"9411:213:4","nodes":[],"documentation":{"id":2725,"nodeType":"StructuredDocumentation","src":"8729:677:4","text":"@dev Creates a new 'Profile' and returns the 'profileId' of the new profile\n Note: The 'name' and 'nonce' are used to generate the 'anchor' address\n Requirements: None, anyone can create a new profile\n @param _nonce The nonce to use to generate the 'anchor' address\n @param _name The name to use to generate the 'anchor' address\n @param _metadata The 'Metadata' to use to generate the 'anchor' address\n @param _owner The 'owner' to use to generate the 'anchor' address\n @param _members The 'members' to use to generate the 'anchor' address\n @return profileId The 'profileId' of the new profile"},"functionSelector":"3a92f65f","implemented":false,"kind":"function","modifiers":[],"name":"createProfile","nameLocation":"9420:13:4","parameters":{"id":2738,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2727,"mutability":"mutable","name":"_nonce","nameLocation":"9451:6:4","nodeType":"VariableDeclaration","scope":2742,"src":"9443:14:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":2726,"name":"uint256","nodeType":"ElementaryTypeName","src":"9443:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":2729,"mutability":"mutable","name":"_name","nameLocation":"9481:5:4","nodeType":"VariableDeclaration","scope":2742,"src":"9467:19:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":2728,"name":"string","nodeType":"ElementaryTypeName","src":"9467:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":2732,"mutability":"mutable","name":"_metadata","nameLocation":"9512:9:4","nodeType":"VariableDeclaration","scope":2742,"src":"9496:25:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":2731,"nodeType":"UserDefinedTypeName","pathNode":{"id":2730,"name":"Metadata","nameLocations":["9496:8:4"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"9496:8:4"},"referencedDeclaration":3098,"src":"9496:8:4","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":2734,"mutability":"mutable","name":"_owner","nameLocation":"9539:6:4","nodeType":"VariableDeclaration","scope":2742,"src":"9531:14:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2733,"name":"address","nodeType":"ElementaryTypeName","src":"9531:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":2737,"mutability":"mutable","name":"_members","nameLocation":"9572:8:4","nodeType":"VariableDeclaration","scope":2742,"src":"9555:25:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":2735,"name":"address","nodeType":"ElementaryTypeName","src":"9555:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2736,"nodeType":"ArrayTypeName","src":"9555:9:4","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"9433:153:4"},"returnParameters":{"id":2741,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2740,"mutability":"mutable","name":"profileId","nameLocation":"9613:9:4","nodeType":"VariableDeclaration","scope":2742,"src":"9605:17:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2739,"name":"bytes32","nodeType":"ElementaryTypeName","src":"9605:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"9604:19:4"},"scope":2802,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2752,"nodeType":"FunctionDefinition","src":"10260:102:4","nodes":[],"documentation":{"id":2743,"nodeType":"StructuredDocumentation","src":"9630:625:4","text":"@dev Updates the 'name' of the '_profileId' passed in and returns the new 'anchor' address\n Requirements: Only the 'Profile' owner can update the name\n Note: The 'name' and 'nonce' are used to generate the 'anchor' address and this will update the 'anchor'\n so please use caution. You can always recreate your 'anchor' address by updating the name back\n to the original name used to create the profile.\n @param _profileId The 'profileId' to update the name for\n @param _name The new 'name' value\n @return anchor The new 'anchor' address"},"functionSelector":"cf189ff2","implemented":false,"kind":"function","modifiers":[],"name":"updateProfileName","nameLocation":"10269:17:4","parameters":{"id":2748,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2745,"mutability":"mutable","name":"_profileId","nameLocation":"10295:10:4","nodeType":"VariableDeclaration","scope":2752,"src":"10287:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2744,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10287:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2747,"mutability":"mutable","name":"_name","nameLocation":"10321:5:4","nodeType":"VariableDeclaration","scope":2752,"src":"10307:19:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":2746,"name":"string","nodeType":"ElementaryTypeName","src":"10307:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"10286:41:4"},"returnParameters":{"id":2751,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2750,"mutability":"mutable","name":"anchor","nameLocation":"10354:6:4","nodeType":"VariableDeclaration","scope":2752,"src":"10346:14:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2749,"name":"address","nodeType":"ElementaryTypeName","src":"10346:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10345:16:4"},"scope":2802,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2761,"nodeType":"FunctionDefinition","src":"10640:87:4","nodes":[],"documentation":{"id":2753,"nodeType":"StructuredDocumentation","src":"10368:267:4","text":"@dev Updates the 'Metadata' of the '_profileId' passed in\n Requirements: Only the 'Profile' owner can update the metadata\n @param _profileId The 'profileId' to update the metadata for\n @param _metadata The new 'Metadata' value"},"functionSelector":"ac402839","implemented":false,"kind":"function","modifiers":[],"name":"updateProfileMetadata","nameLocation":"10649:21:4","parameters":{"id":2759,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2755,"mutability":"mutable","name":"_profileId","nameLocation":"10679:10:4","nodeType":"VariableDeclaration","scope":2761,"src":"10671:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2754,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10671:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2758,"mutability":"mutable","name":"_metadata","nameLocation":"10707:9:4","nodeType":"VariableDeclaration","scope":2761,"src":"10691:25:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":2757,"nodeType":"UserDefinedTypeName","pathNode":{"id":2756,"name":"Metadata","nameLocations":["10691:8:4"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"10691:8:4"},"referencedDeclaration":3098,"src":"10691:8:4","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"10670:47:4"},"returnParameters":{"id":2760,"nodeType":"ParameterList","parameters":[],"src":"10726:0:4"},"scope":2802,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2769,"nodeType":"FunctionDefinition","src":"11029:87:4","nodes":[],"documentation":{"id":2762,"nodeType":"StructuredDocumentation","src":"10733:291:4","text":"@dev Updates the pending 'owner' of the '_profileId' passed in\n Requirements: Only the 'Profile' owner can update the pending owner\n @param _profileId The 'profileId' to update the pending owner for\n @param _pendingOwner The new pending 'owner' value"},"functionSelector":"3b66dacd","implemented":false,"kind":"function","modifiers":[],"name":"updateProfilePendingOwner","nameLocation":"11038:25:4","parameters":{"id":2767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2764,"mutability":"mutable","name":"_profileId","nameLocation":"11072:10:4","nodeType":"VariableDeclaration","scope":2769,"src":"11064:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2763,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11064:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2766,"mutability":"mutable","name":"_pendingOwner","nameLocation":"11092:13:4","nodeType":"VariableDeclaration","scope":2769,"src":"11084:21:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2765,"name":"address","nodeType":"ElementaryTypeName","src":"11084:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"11063:43:4"},"returnParameters":{"id":2768,"nodeType":"ParameterList","parameters":[],"src":"11115:0:4"},"scope":2802,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2775,"nodeType":"FunctionDefinition","src":"11349:61:4","nodes":[],"documentation":{"id":2770,"nodeType":"StructuredDocumentation","src":"11122:222:4","text":"@dev Accepts the pending 'owner' of the '_profileId' passed in\n Requirements: Only the pending owner can accept the ownership\n @param _profileId The 'profileId' to accept the ownership for"},"functionSelector":"2497f3c6","implemented":false,"kind":"function","modifiers":[],"name":"acceptProfileOwnership","nameLocation":"11358:22:4","parameters":{"id":2773,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2772,"mutability":"mutable","name":"_profileId","nameLocation":"11389:10:4","nodeType":"VariableDeclaration","scope":2775,"src":"11381:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2771,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11381:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"11380:20:4"},"returnParameters":{"id":2774,"nodeType":"ParameterList","parameters":[],"src":"11409:0:4"},"scope":2802,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2784,"nodeType":"FunctionDefinition","src":"11684:76:4","nodes":[],"documentation":{"id":2776,"nodeType":"StructuredDocumentation","src":"11416:263:4","text":"@dev Adds members to the '_profileId' passed in\n Requirements: Only the 'Profile' owner can add members\n @param _profileId The 'profileId' to add members to\n @param _members The members to add to the '_profileId' passed in"},"functionSelector":"5063f361","implemented":false,"kind":"function","modifiers":[],"name":"addMembers","nameLocation":"11693:10:4","parameters":{"id":2782,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2778,"mutability":"mutable","name":"_profileId","nameLocation":"11712:10:4","nodeType":"VariableDeclaration","scope":2784,"src":"11704:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2777,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11704:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2781,"mutability":"mutable","name":"_members","nameLocation":"11741:8:4","nodeType":"VariableDeclaration","scope":2784,"src":"11724:25:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":2779,"name":"address","nodeType":"ElementaryTypeName","src":"11724:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2780,"nodeType":"ArrayTypeName","src":"11724:9:4","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"11703:47:4"},"returnParameters":{"id":2783,"nodeType":"ParameterList","parameters":[],"src":"11759:0:4"},"scope":2802,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2793,"nodeType":"FunctionDefinition","src":"12052:79:4","nodes":[],"documentation":{"id":2785,"nodeType":"StructuredDocumentation","src":"11766:281:4","text":"@dev Removes members from the '_profileId' passed in\n Requirements: Only the 'Profile' owner can remove members\n @param _profileId The 'profileId' to remove members from\n @param _members The members to remove from the '_profileId' passed in"},"functionSelector":"e0cf1e4c","implemented":false,"kind":"function","modifiers":[],"name":"removeMembers","nameLocation":"12061:13:4","parameters":{"id":2791,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2787,"mutability":"mutable","name":"_profileId","nameLocation":"12083:10:4","nodeType":"VariableDeclaration","scope":2793,"src":"12075:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2786,"name":"bytes32","nodeType":"ElementaryTypeName","src":"12075:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":2790,"mutability":"mutable","name":"_members","nameLocation":"12112:8:4","nodeType":"VariableDeclaration","scope":2793,"src":"12095:25:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":2788,"name":"address","nodeType":"ElementaryTypeName","src":"12095:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2789,"nodeType":"ArrayTypeName","src":"12095:9:4","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"12074:47:4"},"returnParameters":{"id":2792,"nodeType":"ParameterList","parameters":[],"src":"12130:0:4"},"scope":2802,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":2801,"nodeType":"FunctionDefinition","src":"12372:67:4","nodes":[],"documentation":{"id":2794,"nodeType":"StructuredDocumentation","src":"12137:230:4","text":"@dev Recovers funds from the contract\n Requirements: Must be the Allo owner\n @param _token The token you want to use to recover funds\n @param _recipient The recipient of the recovered funds"},"functionSelector":"24ae6a27","implemented":false,"kind":"function","modifiers":[],"name":"recoverFunds","nameLocation":"12381:12:4","parameters":{"id":2799,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2796,"mutability":"mutable","name":"_token","nameLocation":"12402:6:4","nodeType":"VariableDeclaration","scope":2801,"src":"12394:14:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2795,"name":"address","nodeType":"ElementaryTypeName","src":"12394:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":2798,"mutability":"mutable","name":"_recipient","nameLocation":"12418:10:4","nodeType":"VariableDeclaration","scope":2801,"src":"12410:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2797,"name":"address","nodeType":"ElementaryTypeName","src":"12410:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"12393:36:4"},"returnParameters":{"id":2800,"nodeType":"ParameterList","parameters":[],"src":"12438:0:4"},"scope":2802,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IRegistry","contractDependencies":[],"contractKind":"interface","documentation":{"id":2615,"nodeType":"StructuredDocumentation","src":"4124:931:4","text":"@title IRegistry Interface\n @author @thelostone-mc , @0xKurt , @codenamejason , @0xZakk , @nfrgosselin \n @notice Interface for the Registry contract and exposes all functions needed to use the Registry\n within the Allo protocol.\n @dev The Registry Interface is used to interact with the Allo protocol and create profiles\n that can be used to interact with the Allo protocol. The Registry is the main contract\n that all other contracts interact with to get the 'Profile' information needed to\n interact with the Allo protocol. The Registry is also used to create new profiles\n and update existing profiles. The Registry is also used to add and remove members\n from a profile. The Registry will not always be used in a strategy and will depend on\n the strategy being used."},"fullyImplemented":false,"linearizedBaseContracts":[2802],"name":"IRegistry","nameLocation":"5065:9:4","scope":2803,"usedErrors":[]}],"license":"MIT"},"id":4} \ No newline at end of file diff --git a/pkg/contracts/out/IRegistryFactory.sol/IRegistryFactory.json b/pkg/contracts/out/IRegistryFactory.sol/IRegistryFactory.json index e06571fc4..6d7e3919b 100644 --- a/pkg/contracts/out/IRegistryFactory.sol/IRegistryFactory.json +++ b/pkg/contracts/out/IRegistryFactory.sol/IRegistryFactory.json @@ -1 +1 @@ -{"abi":[{"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"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"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\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/IRegistryFactory.sol\":\"IRegistryFactory\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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\":{\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"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"}]}],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/IRegistryFactory.sol":"IRegistryFactory"},"evmVersion":"paris","libraries":{}},"sources":{"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/IRegistryFactory.sol","id":30167,"exportedSymbols":{"IRegistryFactory":[30166]},"nodeType":"SourceUnit","src":"33:209:60","nodes":[{"id":30153,"nodeType":"PragmaDirective","src":"33:24:60","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":30166,"nodeType":"ContractDefinition","src":"59:182:60","nodes":[{"id":30158,"nodeType":"FunctionDefinition","src":"92:65:60","nodes":[],"functionSelector":"987435be","implemented":false,"kind":"function","modifiers":[],"name":"getGardensFeeReceiver","nameLocation":"101:21:60","parameters":{"id":30154,"nodeType":"ParameterList","parameters":[],"src":"122:2:60"},"returnParameters":{"id":30157,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30156,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":30158,"src":"148:7:60","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30155,"name":"address","nodeType":"ElementaryTypeName","src":"148:7:60","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"147:9:60"},"scope":30166,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":30165,"nodeType":"FunctionDefinition","src":"163:76:60","nodes":[],"functionSelector":"0a992e0c","implemented":false,"kind":"function","modifiers":[],"name":"getProtocolFee","nameLocation":"172:14:60","parameters":{"id":30161,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30160,"mutability":"mutable","name":"_community","nameLocation":"195:10:60","nodeType":"VariableDeclaration","scope":30165,"src":"187:18:60","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30159,"name":"address","nodeType":"ElementaryTypeName","src":"187:7:60","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"186:20:60"},"returnParameters":{"id":30164,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30163,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":30165,"src":"230:7:60","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30162,"name":"uint256","nodeType":"ElementaryTypeName","src":"230:7:60","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"229:9:60"},"scope":30166,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IRegistryFactory","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[30166],"name":"IRegistryFactory","nameLocation":"69:16:60","scope":30167,"usedErrors":[]}],"license":"MIT"},"id":60} \ No newline at end of file +{"abi":[{"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"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"getGardensFeeReceiver()":"987435be","getProtocolFee(address)":"0a992e0c"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"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\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/IRegistryFactory.sol\":\"IRegistryFactory\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"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"}]}],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/IRegistryFactory.sol":"IRegistryFactory"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"pkg/contracts/src/IRegistryFactory.sol":{"keccak256":"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b","urls":["bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612","dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/IRegistryFactory.sol","id":70531,"exportedSymbols":{"IRegistryFactory":[70530]},"nodeType":"SourceUnit","src":"33:209:98","nodes":[{"id":70517,"nodeType":"PragmaDirective","src":"33:24:98","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":70530,"nodeType":"ContractDefinition","src":"59:182:98","nodes":[{"id":70522,"nodeType":"FunctionDefinition","src":"92:65:98","nodes":[],"functionSelector":"987435be","implemented":false,"kind":"function","modifiers":[],"name":"getGardensFeeReceiver","nameLocation":"101:21:98","parameters":{"id":70518,"nodeType":"ParameterList","parameters":[],"src":"122:2:98"},"returnParameters":{"id":70521,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70520,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":70522,"src":"148:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70519,"name":"address","nodeType":"ElementaryTypeName","src":"148:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"147:9:98"},"scope":70530,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":70529,"nodeType":"FunctionDefinition","src":"163:76:98","nodes":[],"functionSelector":"0a992e0c","implemented":false,"kind":"function","modifiers":[],"name":"getProtocolFee","nameLocation":"172:14:98","parameters":{"id":70525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70524,"mutability":"mutable","name":"_community","nameLocation":"195:10:98","nodeType":"VariableDeclaration","scope":70529,"src":"187:18:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70523,"name":"address","nodeType":"ElementaryTypeName","src":"187:7:98","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"186:20:98"},"returnParameters":{"id":70528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70527,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":70529,"src":"230:7:98","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70526,"name":"uint256","nodeType":"ElementaryTypeName","src":"230:7:98","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"229:9:98"},"scope":70530,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IRegistryFactory","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[70530],"name":"IRegistryFactory","nameLocation":"69:16:98","scope":70531,"usedErrors":[]}],"license":"MIT"},"id":98} \ No newline at end of file diff --git a/pkg/contracts/out/ISafe.sol/Enum.json b/pkg/contracts/out/ISafe.sol/Enum.json index 3ef2781d6..9317d9ea9 100644 --- a/pkg/contracts/out/ISafe.sol/Enum.json +++ b/pkg/contracts/out/ISafe.sol/Enum.json @@ -1 +1 @@ -{"abi":[],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/interfaces/ISafe.sol\":\"Enum\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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\":{\"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":[],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/ISafe.sol":"Enum"},"evmVersion":"paris","libraries":{}},"sources":{"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/interfaces/ISafe.sol","id":33397,"exportedSymbols":{"Enum":[33396],"ISafe":[33380],"SafeProxyFactory":[33392]},"nodeType":"SourceUnit","src":"42:1491:69","nodes":[{"id":33289,"nodeType":"PragmaDirective","src":"42:24:69","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":33380,"nodeType":"ContractDefinition","src":"68:1193:69","nodes":[{"id":33295,"nodeType":"FunctionDefinition","src":"90:62:69","nodes":[],"functionSelector":"a0e67e2b","implemented":false,"kind":"function","modifiers":[],"name":"getOwners","nameLocation":"99:9:69","parameters":{"id":33290,"nodeType":"ParameterList","parameters":[],"src":"108:2:69"},"returnParameters":{"id":33294,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33293,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":33295,"src":"134:16:69","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":33291,"name":"address","nodeType":"ElementaryTypeName","src":"134:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":33292,"nodeType":"ArrayTypeName","src":"134:9:69","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"133:18:69"},"scope":33380,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":33300,"nodeType":"FunctionDefinition","src":"157:49:69","nodes":[],"functionSelector":"affed0e0","implemented":false,"kind":"function","modifiers":[],"name":"nonce","nameLocation":"166:5:69","parameters":{"id":33296,"nodeType":"ParameterList","parameters":[],"src":"171:2:69"},"returnParameters":{"id":33299,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33298,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":33300,"src":"197:7:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33297,"name":"uint256","nodeType":"ElementaryTypeName","src":"197:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"196:9:69"},"scope":33380,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":33320,"nodeType":"FunctionDefinition","src":"211:272:69","nodes":[],"functionSelector":"b63e800d","implemented":false,"kind":"function","modifiers":[],"name":"setup","nameLocation":"220:5:69","parameters":{"id":33318,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33303,"mutability":"mutable","name":"_owners","nameLocation":"254:7:69","nodeType":"VariableDeclaration","scope":33320,"src":"235:26:69","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_calldata_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":33301,"name":"address","nodeType":"ElementaryTypeName","src":"235:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":33302,"nodeType":"ArrayTypeName","src":"235:9:69","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":33305,"mutability":"mutable","name":"_threshold","nameLocation":"279:10:69","nodeType":"VariableDeclaration","scope":33320,"src":"271:18:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33304,"name":"uint256","nodeType":"ElementaryTypeName","src":"271:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33307,"mutability":"mutable","name":"to","nameLocation":"307:2:69","nodeType":"VariableDeclaration","scope":33320,"src":"299:10:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33306,"name":"address","nodeType":"ElementaryTypeName","src":"299:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33309,"mutability":"mutable","name":"data","nameLocation":"334:4:69","nodeType":"VariableDeclaration","scope":33320,"src":"319:19:69","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":33308,"name":"bytes","nodeType":"ElementaryTypeName","src":"319:5:69","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":33311,"mutability":"mutable","name":"fallbackHandler","nameLocation":"356:15:69","nodeType":"VariableDeclaration","scope":33320,"src":"348:23:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33310,"name":"address","nodeType":"ElementaryTypeName","src":"348:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33313,"mutability":"mutable","name":"paymentToken","nameLocation":"389:12:69","nodeType":"VariableDeclaration","scope":33320,"src":"381:20:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33312,"name":"address","nodeType":"ElementaryTypeName","src":"381:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33315,"mutability":"mutable","name":"payment","nameLocation":"419:7:69","nodeType":"VariableDeclaration","scope":33320,"src":"411:15:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33314,"name":"uint256","nodeType":"ElementaryTypeName","src":"411:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33317,"mutability":"mutable","name":"paymentReceiver","nameLocation":"452:15:69","nodeType":"VariableDeclaration","scope":33320,"src":"436:31:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":33316,"name":"address","nodeType":"ElementaryTypeName","src":"436:15:69","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"225:248:69"},"returnParameters":{"id":33319,"nodeType":"ParameterList","parameters":[],"src":"482:0:69"},"scope":33380,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":33346,"nodeType":"FunctionDefinition","src":"488:332:69","nodes":[],"functionSelector":"d8d11f78","implemented":false,"kind":"function","modifiers":[],"name":"getTransactionHash","nameLocation":"497:18:69","parameters":{"id":33342,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33322,"mutability":"mutable","name":"to","nameLocation":"533:2:69","nodeType":"VariableDeclaration","scope":33346,"src":"525:10:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33321,"name":"address","nodeType":"ElementaryTypeName","src":"525:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33324,"mutability":"mutable","name":"value","nameLocation":"553:5:69","nodeType":"VariableDeclaration","scope":33346,"src":"545:13:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33323,"name":"uint256","nodeType":"ElementaryTypeName","src":"545:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33326,"mutability":"mutable","name":"data","nameLocation":"583:4:69","nodeType":"VariableDeclaration","scope":33346,"src":"568:19:69","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":33325,"name":"bytes","nodeType":"ElementaryTypeName","src":"568:5:69","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":33329,"mutability":"mutable","name":"operation","nameLocation":"612:9:69","nodeType":"VariableDeclaration","scope":33346,"src":"597:24:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$33395","typeString":"enum Enum.Operation"},"typeName":{"id":33328,"nodeType":"UserDefinedTypeName","pathNode":{"id":33327,"name":"Enum.Operation","nameLocations":["597:4:69","602:9:69"],"nodeType":"IdentifierPath","referencedDeclaration":33395,"src":"597:14:69"},"referencedDeclaration":33395,"src":"597:14:69","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$33395","typeString":"enum Enum.Operation"}},"visibility":"internal"},{"constant":false,"id":33331,"mutability":"mutable","name":"safeTxGas","nameLocation":"639:9:69","nodeType":"VariableDeclaration","scope":33346,"src":"631:17:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33330,"name":"uint256","nodeType":"ElementaryTypeName","src":"631:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33333,"mutability":"mutable","name":"baseGas","nameLocation":"666:7:69","nodeType":"VariableDeclaration","scope":33346,"src":"658:15:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33332,"name":"uint256","nodeType":"ElementaryTypeName","src":"658:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33335,"mutability":"mutable","name":"gasPrice","nameLocation":"691:8:69","nodeType":"VariableDeclaration","scope":33346,"src":"683:16:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33334,"name":"uint256","nodeType":"ElementaryTypeName","src":"683:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33337,"mutability":"mutable","name":"gasToken","nameLocation":"717:8:69","nodeType":"VariableDeclaration","scope":33346,"src":"709:16:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33336,"name":"address","nodeType":"ElementaryTypeName","src":"709:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33339,"mutability":"mutable","name":"refundReceiver","nameLocation":"743:14:69","nodeType":"VariableDeclaration","scope":33346,"src":"735:22:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33338,"name":"address","nodeType":"ElementaryTypeName","src":"735:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33341,"mutability":"mutable","name":"_nonce","nameLocation":"775:6:69","nodeType":"VariableDeclaration","scope":33346,"src":"767:14:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33340,"name":"uint256","nodeType":"ElementaryTypeName","src":"767:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"515:272:69"},"returnParameters":{"id":33345,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33344,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":33346,"src":"811:7:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":33343,"name":"bytes32","nodeType":"ElementaryTypeName","src":"811:7:69","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"810:9:69"},"scope":33380,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":33372,"nodeType":"FunctionDefinition","src":"825:354:69","nodes":[],"functionSelector":"6a761202","implemented":false,"kind":"function","modifiers":[],"name":"execTransaction","nameLocation":"834:15:69","parameters":{"id":33368,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33348,"mutability":"mutable","name":"to","nameLocation":"867:2:69","nodeType":"VariableDeclaration","scope":33372,"src":"859:10:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33347,"name":"address","nodeType":"ElementaryTypeName","src":"859:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33350,"mutability":"mutable","name":"value","nameLocation":"887:5:69","nodeType":"VariableDeclaration","scope":33372,"src":"879:13:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33349,"name":"uint256","nodeType":"ElementaryTypeName","src":"879:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33352,"mutability":"mutable","name":"data","nameLocation":"917:4:69","nodeType":"VariableDeclaration","scope":33372,"src":"902:19:69","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":33351,"name":"bytes","nodeType":"ElementaryTypeName","src":"902:5:69","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":33355,"mutability":"mutable","name":"operation","nameLocation":"946:9:69","nodeType":"VariableDeclaration","scope":33372,"src":"931:24:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$33395","typeString":"enum Enum.Operation"},"typeName":{"id":33354,"nodeType":"UserDefinedTypeName","pathNode":{"id":33353,"name":"Enum.Operation","nameLocations":["931:4:69","936:9:69"],"nodeType":"IdentifierPath","referencedDeclaration":33395,"src":"931:14:69"},"referencedDeclaration":33395,"src":"931:14:69","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$33395","typeString":"enum Enum.Operation"}},"visibility":"internal"},{"constant":false,"id":33357,"mutability":"mutable","name":"safeTxGas","nameLocation":"973:9:69","nodeType":"VariableDeclaration","scope":33372,"src":"965:17:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33356,"name":"uint256","nodeType":"ElementaryTypeName","src":"965:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33359,"mutability":"mutable","name":"baseGas","nameLocation":"1000:7:69","nodeType":"VariableDeclaration","scope":33372,"src":"992:15:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33358,"name":"uint256","nodeType":"ElementaryTypeName","src":"992:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33361,"mutability":"mutable","name":"gasPrice","nameLocation":"1025:8:69","nodeType":"VariableDeclaration","scope":33372,"src":"1017:16:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33360,"name":"uint256","nodeType":"ElementaryTypeName","src":"1017:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33363,"mutability":"mutable","name":"gasToken","nameLocation":"1051:8:69","nodeType":"VariableDeclaration","scope":33372,"src":"1043:16:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33362,"name":"address","nodeType":"ElementaryTypeName","src":"1043:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33365,"mutability":"mutable","name":"refundReceiver","nameLocation":"1085:14:69","nodeType":"VariableDeclaration","scope":33372,"src":"1069:30:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":33364,"name":"address","nodeType":"ElementaryTypeName","src":"1069:15:69","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":33367,"mutability":"mutable","name":"signatures","nameLocation":"1122:10:69","nodeType":"VariableDeclaration","scope":33372,"src":"1109:23:69","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":33366,"name":"bytes","nodeType":"ElementaryTypeName","src":"1109:5:69","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"849:289:69"},"returnParameters":{"id":33371,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33370,"mutability":"mutable","name":"success","nameLocation":"1170:7:69","nodeType":"VariableDeclaration","scope":33372,"src":"1165:12:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":33369,"name":"bool","nodeType":"ElementaryTypeName","src":"1165:4:69","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1164:14:69"},"scope":33380,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":33379,"nodeType":"FunctionDefinition","src":"1184:75:69","nodes":[],"functionSelector":"0d582f13","implemented":false,"kind":"function","modifiers":[],"name":"addOwnerWithThreshold","nameLocation":"1193:21:69","parameters":{"id":33377,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33374,"mutability":"mutable","name":"owner","nameLocation":"1223:5:69","nodeType":"VariableDeclaration","scope":33379,"src":"1215:13:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33373,"name":"address","nodeType":"ElementaryTypeName","src":"1215:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33376,"mutability":"mutable","name":"_threshold","nameLocation":"1238:10:69","nodeType":"VariableDeclaration","scope":33379,"src":"1230:18:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33375,"name":"uint256","nodeType":"ElementaryTypeName","src":"1230:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1214:35:69"},"returnParameters":{"id":33378,"nodeType":"ParameterList","parameters":[],"src":"1258:0:69"},"scope":33380,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"ISafe","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[33380],"name":"ISafe","nameLocation":"78:5:69","scope":33397,"usedErrors":[]},{"id":33392,"nodeType":"ContractDefinition","src":"1263:179:69","nodes":[{"id":33391,"nodeType":"FunctionDefinition","src":"1296:144:69","nodes":[],"functionSelector":"1688f0b9","implemented":false,"kind":"function","modifiers":[],"name":"createProxyWithNonce","nameLocation":"1305:20:69","parameters":{"id":33387,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33382,"mutability":"mutable","name":"_singleton","nameLocation":"1334:10:69","nodeType":"VariableDeclaration","scope":33391,"src":"1326:18:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33381,"name":"address","nodeType":"ElementaryTypeName","src":"1326:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33384,"mutability":"mutable","name":"initializer","nameLocation":"1359:11:69","nodeType":"VariableDeclaration","scope":33391,"src":"1346:24:69","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":33383,"name":"bytes","nodeType":"ElementaryTypeName","src":"1346:5:69","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":33386,"mutability":"mutable","name":"saltNonce","nameLocation":"1380:9:69","nodeType":"VariableDeclaration","scope":33391,"src":"1372:17:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33385,"name":"uint256","nodeType":"ElementaryTypeName","src":"1372:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1325:65:69"},"returnParameters":{"id":33390,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33389,"mutability":"mutable","name":"proxy","nameLocation":"1433:5:69","nodeType":"VariableDeclaration","scope":33391,"src":"1425:13:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33388,"name":"address","nodeType":"ElementaryTypeName","src":"1425:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1424:15:69"},"scope":33392,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"SafeProxyFactory","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[33392],"name":"SafeProxyFactory","nameLocation":"1273:16:69","scope":33397,"usedErrors":[]},{"id":33396,"nodeType":"ContractDefinition","src":"1444:88:69","nodes":[{"id":33395,"nodeType":"EnumDefinition","src":"1473:57:69","nodes":[],"canonicalName":"Enum.Operation","members":[{"id":33393,"name":"Call","nameLocation":"1498:4:69","nodeType":"EnumValue","src":"1498:4:69"},{"id":33394,"name":"DelegateCall","nameLocation":"1512:12:69","nodeType":"EnumValue","src":"1512:12:69"}],"name":"Operation","nameLocation":"1478:9:69"}],"abstract":true,"baseContracts":[],"canonicalName":"Enum","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[33396],"name":"Enum","nameLocation":"1462:4:69","scope":33397,"usedErrors":[]}],"license":"LGPL-3.0-only"},"id":69} \ No newline at end of file +{"abi":[],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/interfaces/ISafe.sol\":\"Enum\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"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":[],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/ISafe.sol":"Enum"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"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/interfaces/ISafe.sol","id":77092,"exportedSymbols":{"Enum":[77091],"ISafe":[77075],"SafeProxyFactory":[77087]},"nodeType":"SourceUnit","src":"42:1491:128","nodes":[{"id":76984,"nodeType":"PragmaDirective","src":"42:24:128","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":77075,"nodeType":"ContractDefinition","src":"68:1193:128","nodes":[{"id":76990,"nodeType":"FunctionDefinition","src":"90:62:128","nodes":[],"functionSelector":"a0e67e2b","implemented":false,"kind":"function","modifiers":[],"name":"getOwners","nameLocation":"99:9:128","parameters":{"id":76985,"nodeType":"ParameterList","parameters":[],"src":"108:2:128"},"returnParameters":{"id":76989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76988,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":76990,"src":"134:16:128","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":76986,"name":"address","nodeType":"ElementaryTypeName","src":"134:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76987,"nodeType":"ArrayTypeName","src":"134:9:128","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"133:18:128"},"scope":77075,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":76995,"nodeType":"FunctionDefinition","src":"157:49:128","nodes":[],"functionSelector":"affed0e0","implemented":false,"kind":"function","modifiers":[],"name":"nonce","nameLocation":"166:5:128","parameters":{"id":76991,"nodeType":"ParameterList","parameters":[],"src":"171:2:128"},"returnParameters":{"id":76994,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76993,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":76995,"src":"197:7:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76992,"name":"uint256","nodeType":"ElementaryTypeName","src":"197:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"196:9:128"},"scope":77075,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":77015,"nodeType":"FunctionDefinition","src":"211:272:128","nodes":[],"functionSelector":"b63e800d","implemented":false,"kind":"function","modifiers":[],"name":"setup","nameLocation":"220:5:128","parameters":{"id":77013,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76998,"mutability":"mutable","name":"_owners","nameLocation":"254:7:128","nodeType":"VariableDeclaration","scope":77015,"src":"235:26:128","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_calldata_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":76996,"name":"address","nodeType":"ElementaryTypeName","src":"235:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76997,"nodeType":"ArrayTypeName","src":"235:9:128","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":77000,"mutability":"mutable","name":"_threshold","nameLocation":"279:10:128","nodeType":"VariableDeclaration","scope":77015,"src":"271:18:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76999,"name":"uint256","nodeType":"ElementaryTypeName","src":"271:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77002,"mutability":"mutable","name":"to","nameLocation":"307:2:128","nodeType":"VariableDeclaration","scope":77015,"src":"299:10:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77001,"name":"address","nodeType":"ElementaryTypeName","src":"299:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77004,"mutability":"mutable","name":"data","nameLocation":"334:4:128","nodeType":"VariableDeclaration","scope":77015,"src":"319:19:128","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":77003,"name":"bytes","nodeType":"ElementaryTypeName","src":"319:5:128","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":77006,"mutability":"mutable","name":"fallbackHandler","nameLocation":"356:15:128","nodeType":"VariableDeclaration","scope":77015,"src":"348:23:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77005,"name":"address","nodeType":"ElementaryTypeName","src":"348:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77008,"mutability":"mutable","name":"paymentToken","nameLocation":"389:12:128","nodeType":"VariableDeclaration","scope":77015,"src":"381:20:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77007,"name":"address","nodeType":"ElementaryTypeName","src":"381:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77010,"mutability":"mutable","name":"payment","nameLocation":"419:7:128","nodeType":"VariableDeclaration","scope":77015,"src":"411:15:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77009,"name":"uint256","nodeType":"ElementaryTypeName","src":"411:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77012,"mutability":"mutable","name":"paymentReceiver","nameLocation":"452:15:128","nodeType":"VariableDeclaration","scope":77015,"src":"436:31:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":77011,"name":"address","nodeType":"ElementaryTypeName","src":"436:15:128","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"225:248:128"},"returnParameters":{"id":77014,"nodeType":"ParameterList","parameters":[],"src":"482:0:128"},"scope":77075,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":77041,"nodeType":"FunctionDefinition","src":"488:332:128","nodes":[],"functionSelector":"d8d11f78","implemented":false,"kind":"function","modifiers":[],"name":"getTransactionHash","nameLocation":"497:18:128","parameters":{"id":77037,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77017,"mutability":"mutable","name":"to","nameLocation":"533:2:128","nodeType":"VariableDeclaration","scope":77041,"src":"525:10:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77016,"name":"address","nodeType":"ElementaryTypeName","src":"525:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77019,"mutability":"mutable","name":"value","nameLocation":"553:5:128","nodeType":"VariableDeclaration","scope":77041,"src":"545:13:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77018,"name":"uint256","nodeType":"ElementaryTypeName","src":"545:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77021,"mutability":"mutable","name":"data","nameLocation":"583:4:128","nodeType":"VariableDeclaration","scope":77041,"src":"568:19:128","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":77020,"name":"bytes","nodeType":"ElementaryTypeName","src":"568:5:128","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":77024,"mutability":"mutable","name":"operation","nameLocation":"612:9:128","nodeType":"VariableDeclaration","scope":77041,"src":"597:24:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$77090","typeString":"enum Enum.Operation"},"typeName":{"id":77023,"nodeType":"UserDefinedTypeName","pathNode":{"id":77022,"name":"Enum.Operation","nameLocations":["597:4:128","602:9:128"],"nodeType":"IdentifierPath","referencedDeclaration":77090,"src":"597:14:128"},"referencedDeclaration":77090,"src":"597:14:128","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$77090","typeString":"enum Enum.Operation"}},"visibility":"internal"},{"constant":false,"id":77026,"mutability":"mutable","name":"safeTxGas","nameLocation":"639:9:128","nodeType":"VariableDeclaration","scope":77041,"src":"631:17:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77025,"name":"uint256","nodeType":"ElementaryTypeName","src":"631:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77028,"mutability":"mutable","name":"baseGas","nameLocation":"666:7:128","nodeType":"VariableDeclaration","scope":77041,"src":"658:15:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77027,"name":"uint256","nodeType":"ElementaryTypeName","src":"658:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77030,"mutability":"mutable","name":"gasPrice","nameLocation":"691:8:128","nodeType":"VariableDeclaration","scope":77041,"src":"683:16:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77029,"name":"uint256","nodeType":"ElementaryTypeName","src":"683:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77032,"mutability":"mutable","name":"gasToken","nameLocation":"717:8:128","nodeType":"VariableDeclaration","scope":77041,"src":"709:16:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77031,"name":"address","nodeType":"ElementaryTypeName","src":"709:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77034,"mutability":"mutable","name":"refundReceiver","nameLocation":"743:14:128","nodeType":"VariableDeclaration","scope":77041,"src":"735:22:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77033,"name":"address","nodeType":"ElementaryTypeName","src":"735:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77036,"mutability":"mutable","name":"_nonce","nameLocation":"775:6:128","nodeType":"VariableDeclaration","scope":77041,"src":"767:14:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77035,"name":"uint256","nodeType":"ElementaryTypeName","src":"767:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"515:272:128"},"returnParameters":{"id":77040,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77039,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":77041,"src":"811:7:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":77038,"name":"bytes32","nodeType":"ElementaryTypeName","src":"811:7:128","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"810:9:128"},"scope":77075,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":77067,"nodeType":"FunctionDefinition","src":"825:354:128","nodes":[],"functionSelector":"6a761202","implemented":false,"kind":"function","modifiers":[],"name":"execTransaction","nameLocation":"834:15:128","parameters":{"id":77063,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77043,"mutability":"mutable","name":"to","nameLocation":"867:2:128","nodeType":"VariableDeclaration","scope":77067,"src":"859:10:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77042,"name":"address","nodeType":"ElementaryTypeName","src":"859:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77045,"mutability":"mutable","name":"value","nameLocation":"887:5:128","nodeType":"VariableDeclaration","scope":77067,"src":"879:13:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77044,"name":"uint256","nodeType":"ElementaryTypeName","src":"879:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77047,"mutability":"mutable","name":"data","nameLocation":"917:4:128","nodeType":"VariableDeclaration","scope":77067,"src":"902:19:128","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":77046,"name":"bytes","nodeType":"ElementaryTypeName","src":"902:5:128","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":77050,"mutability":"mutable","name":"operation","nameLocation":"946:9:128","nodeType":"VariableDeclaration","scope":77067,"src":"931:24:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$77090","typeString":"enum Enum.Operation"},"typeName":{"id":77049,"nodeType":"UserDefinedTypeName","pathNode":{"id":77048,"name":"Enum.Operation","nameLocations":["931:4:128","936:9:128"],"nodeType":"IdentifierPath","referencedDeclaration":77090,"src":"931:14:128"},"referencedDeclaration":77090,"src":"931:14:128","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$77090","typeString":"enum Enum.Operation"}},"visibility":"internal"},{"constant":false,"id":77052,"mutability":"mutable","name":"safeTxGas","nameLocation":"973:9:128","nodeType":"VariableDeclaration","scope":77067,"src":"965:17:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77051,"name":"uint256","nodeType":"ElementaryTypeName","src":"965:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77054,"mutability":"mutable","name":"baseGas","nameLocation":"1000:7:128","nodeType":"VariableDeclaration","scope":77067,"src":"992:15:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77053,"name":"uint256","nodeType":"ElementaryTypeName","src":"992:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77056,"mutability":"mutable","name":"gasPrice","nameLocation":"1025:8:128","nodeType":"VariableDeclaration","scope":77067,"src":"1017:16:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77055,"name":"uint256","nodeType":"ElementaryTypeName","src":"1017:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77058,"mutability":"mutable","name":"gasToken","nameLocation":"1051:8:128","nodeType":"VariableDeclaration","scope":77067,"src":"1043:16:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77057,"name":"address","nodeType":"ElementaryTypeName","src":"1043:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77060,"mutability":"mutable","name":"refundReceiver","nameLocation":"1085:14:128","nodeType":"VariableDeclaration","scope":77067,"src":"1069:30:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":77059,"name":"address","nodeType":"ElementaryTypeName","src":"1069:15:128","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":77062,"mutability":"mutable","name":"signatures","nameLocation":"1122:10:128","nodeType":"VariableDeclaration","scope":77067,"src":"1109:23:128","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":77061,"name":"bytes","nodeType":"ElementaryTypeName","src":"1109:5:128","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"849:289:128"},"returnParameters":{"id":77066,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77065,"mutability":"mutable","name":"success","nameLocation":"1170:7:128","nodeType":"VariableDeclaration","scope":77067,"src":"1165:12:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":77064,"name":"bool","nodeType":"ElementaryTypeName","src":"1165:4:128","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1164:14:128"},"scope":77075,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":77074,"nodeType":"FunctionDefinition","src":"1184:75:128","nodes":[],"functionSelector":"0d582f13","implemented":false,"kind":"function","modifiers":[],"name":"addOwnerWithThreshold","nameLocation":"1193:21:128","parameters":{"id":77072,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77069,"mutability":"mutable","name":"owner","nameLocation":"1223:5:128","nodeType":"VariableDeclaration","scope":77074,"src":"1215:13:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77068,"name":"address","nodeType":"ElementaryTypeName","src":"1215:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77071,"mutability":"mutable","name":"_threshold","nameLocation":"1238:10:128","nodeType":"VariableDeclaration","scope":77074,"src":"1230:18:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77070,"name":"uint256","nodeType":"ElementaryTypeName","src":"1230:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1214:35:128"},"returnParameters":{"id":77073,"nodeType":"ParameterList","parameters":[],"src":"1258:0:128"},"scope":77075,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"ISafe","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[77075],"name":"ISafe","nameLocation":"78:5:128","scope":77092,"usedErrors":[]},{"id":77087,"nodeType":"ContractDefinition","src":"1263:179:128","nodes":[{"id":77086,"nodeType":"FunctionDefinition","src":"1296:144:128","nodes":[],"functionSelector":"1688f0b9","implemented":false,"kind":"function","modifiers":[],"name":"createProxyWithNonce","nameLocation":"1305:20:128","parameters":{"id":77082,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77077,"mutability":"mutable","name":"_singleton","nameLocation":"1334:10:128","nodeType":"VariableDeclaration","scope":77086,"src":"1326:18:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77076,"name":"address","nodeType":"ElementaryTypeName","src":"1326:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77079,"mutability":"mutable","name":"initializer","nameLocation":"1359:11:128","nodeType":"VariableDeclaration","scope":77086,"src":"1346:24:128","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":77078,"name":"bytes","nodeType":"ElementaryTypeName","src":"1346:5:128","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":77081,"mutability":"mutable","name":"saltNonce","nameLocation":"1380:9:128","nodeType":"VariableDeclaration","scope":77086,"src":"1372:17:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77080,"name":"uint256","nodeType":"ElementaryTypeName","src":"1372:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1325:65:128"},"returnParameters":{"id":77085,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77084,"mutability":"mutable","name":"proxy","nameLocation":"1433:5:128","nodeType":"VariableDeclaration","scope":77086,"src":"1425:13:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77083,"name":"address","nodeType":"ElementaryTypeName","src":"1425:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1424:15:128"},"scope":77087,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"SafeProxyFactory","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[77087],"name":"SafeProxyFactory","nameLocation":"1273:16:128","scope":77092,"usedErrors":[]},{"id":77091,"nodeType":"ContractDefinition","src":"1444:88:128","nodes":[{"id":77090,"nodeType":"EnumDefinition","src":"1473:57:128","nodes":[],"canonicalName":"Enum.Operation","members":[{"id":77088,"name":"Call","nameLocation":"1498:4:128","nodeType":"EnumValue","src":"1498:4:128"},{"id":77089,"name":"DelegateCall","nameLocation":"1512:12:128","nodeType":"EnumValue","src":"1512:12:128"}],"name":"Operation","nameLocation":"1478:9:128"}],"abstract":true,"baseContracts":[],"canonicalName":"Enum","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[77091],"name":"Enum","nameLocation":"1462:4:128","scope":77092,"usedErrors":[]}],"license":"LGPL-3.0-only"},"id":128} \ No newline at end of file diff --git a/pkg/contracts/out/ISafe.sol/ISafe.json b/pkg/contracts/out/ISafe.sol/ISafe.json index 7792728d7..901669abb 100644 --- a/pkg/contracts/out/ISafe.sol/ISafe.json +++ b/pkg/contracts/out/ISafe.sol/ISafe.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"getOwners","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"isOwner","inputs":[{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"getOwners()":"a0e67e2b","isOwner(address)":"2f54bf6e"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"getOwners\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"isOwner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/ISafe.sol\":\"ISafe\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"pkg/contracts/src/ISafe.sol\":{\"keccak256\":\"0xe3086c445cae908421c8a075f5d08a48f9e4431aed1832bb3b732616bb8df12c\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://0073dff5ca034837c0b1bd35bbe0a912621d6ce7a6ce5b3687633bf24231fd4f\",\"dweb:/ipfs/QmUmiwSckW5L7sP5iQvMcZUwoecqQ62rpjj7rPfyvQTcjb\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"view","type":"function","name":"getOwners","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/ISafe.sol":"ISafe"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"pkg/contracts/src/ISafe.sol":{"keccak256":"0xe3086c445cae908421c8a075f5d08a48f9e4431aed1832bb3b732616bb8df12c","urls":["bzz-raw://0073dff5ca034837c0b1bd35bbe0a912621d6ce7a6ce5b3687633bf24231fd4f","dweb:/ipfs/QmUmiwSckW5L7sP5iQvMcZUwoecqQ62rpjj7rPfyvQTcjb"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/ISafe.sol","id":69800,"exportedSymbols":{"ISafe":[69799]},"nodeType":"SourceUnit","src":"42:179:100","nodes":[{"id":69785,"nodeType":"PragmaDirective","src":"42:24:100","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":69799,"nodeType":"ContractDefinition","src":"68:152:100","nodes":[{"id":69791,"nodeType":"FunctionDefinition","src":"90:62:100","nodes":[],"functionSelector":"a0e67e2b","implemented":false,"kind":"function","modifiers":[],"name":"getOwners","nameLocation":"99:9:100","parameters":{"id":69786,"nodeType":"ParameterList","parameters":[],"src":"108:2:100"},"returnParameters":{"id":69790,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69789,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69791,"src":"134:16:100","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":69787,"name":"address","nodeType":"ElementaryTypeName","src":"134:7:100","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":69788,"nodeType":"ArrayTypeName","src":"134:9:100","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"133:18:100"},"scope":69799,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":69798,"nodeType":"FunctionDefinition","src":"157:61:100","nodes":[],"functionSelector":"2f54bf6e","implemented":false,"kind":"function","modifiers":[],"name":"isOwner","nameLocation":"166:7:100","parameters":{"id":69794,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69793,"mutability":"mutable","name":"owner","nameLocation":"182:5:100","nodeType":"VariableDeclaration","scope":69798,"src":"174:13:100","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":69792,"name":"address","nodeType":"ElementaryTypeName","src":"174:7:100","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"173:15:100"},"returnParameters":{"id":69797,"nodeType":"ParameterList","parameters":[{"constant":false,"id":69796,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":69798,"src":"212:4:100","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":69795,"name":"bool","nodeType":"ElementaryTypeName","src":"212:4:100","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"211:6:100"},"scope":69799,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"ISafe","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[69799],"name":"ISafe","nameLocation":"78:5:100","scope":69800,"usedErrors":[]}],"license":"LGPL-3.0-only"},"id":100} \ No newline at end of file +{"abi":[{"type":"function","name":"getOwners","inputs":[],"outputs":[{"name":"","type":"address[]","internalType":"address[]"}],"stateMutability":"view"},{"type":"function","name":"isOwner","inputs":[{"name":"owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"getOwners()":"a0e67e2b","isOwner(address)":"2f54bf6e"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"getOwners\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\"}],\"name\":\"isOwner\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/ISafe.sol\":\"ISafe\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"pkg/contracts/src/ISafe.sol\":{\"keccak256\":\"0xe3086c445cae908421c8a075f5d08a48f9e4431aed1832bb3b732616bb8df12c\",\"license\":\"LGPL-3.0-only\",\"urls\":[\"bzz-raw://0073dff5ca034837c0b1bd35bbe0a912621d6ce7a6ce5b3687633bf24231fd4f\",\"dweb:/ipfs/QmUmiwSckW5L7sP5iQvMcZUwoecqQ62rpjj7rPfyvQTcjb\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[],"stateMutability":"view","type":"function","name":"getOwners","outputs":[{"internalType":"address[]","name":"","type":"address[]"}]},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"view","type":"function","name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/ISafe.sol":"ISafe"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"pkg/contracts/src/ISafe.sol":{"keccak256":"0xe3086c445cae908421c8a075f5d08a48f9e4431aed1832bb3b732616bb8df12c","urls":["bzz-raw://0073dff5ca034837c0b1bd35bbe0a912621d6ce7a6ce5b3687633bf24231fd4f","dweb:/ipfs/QmUmiwSckW5L7sP5iQvMcZUwoecqQ62rpjj7rPfyvQTcjb"],"license":"LGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"pkg/contracts/src/ISafe.sol","id":70547,"exportedSymbols":{"ISafe":[70546]},"nodeType":"SourceUnit","src":"42:179:99","nodes":[{"id":70532,"nodeType":"PragmaDirective","src":"42:24:99","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":70546,"nodeType":"ContractDefinition","src":"68:152:99","nodes":[{"id":70538,"nodeType":"FunctionDefinition","src":"90:62:99","nodes":[],"functionSelector":"a0e67e2b","implemented":false,"kind":"function","modifiers":[],"name":"getOwners","nameLocation":"99:9:99","parameters":{"id":70533,"nodeType":"ParameterList","parameters":[],"src":"108:2:99"},"returnParameters":{"id":70537,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70536,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":70538,"src":"134:16:99","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":70534,"name":"address","nodeType":"ElementaryTypeName","src":"134:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70535,"nodeType":"ArrayTypeName","src":"134:9:99","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"133:18:99"},"scope":70546,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":70545,"nodeType":"FunctionDefinition","src":"157:61:99","nodes":[],"functionSelector":"2f54bf6e","implemented":false,"kind":"function","modifiers":[],"name":"isOwner","nameLocation":"166:7:99","parameters":{"id":70541,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70540,"mutability":"mutable","name":"owner","nameLocation":"182:5:99","nodeType":"VariableDeclaration","scope":70545,"src":"174:13:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70539,"name":"address","nodeType":"ElementaryTypeName","src":"174:7:99","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"173:15:99"},"returnParameters":{"id":70544,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70543,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":70545,"src":"212:4:99","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70542,"name":"bool","nodeType":"ElementaryTypeName","src":"212:4:99","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"211:6:99"},"scope":70546,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"ISafe","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[70546],"name":"ISafe","nameLocation":"78:5:99","scope":70547,"usedErrors":[]}],"license":"LGPL-3.0-only"},"id":99} \ No newline at end of file diff --git a/pkg/contracts/out/ISafe.sol/SafeProxyFactory.json b/pkg/contracts/out/ISafe.sol/SafeProxyFactory.json index a48544fbd..82d9cc27b 100644 --- a/pkg/contracts/out/ISafe.sol/SafeProxyFactory.json +++ b/pkg/contracts/out/ISafe.sol/SafeProxyFactory.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"createProxyWithNonce","inputs":[{"name":"_singleton","type":"address","internalType":"address"},{"name":"initializer","type":"bytes","internalType":"bytes"},{"name":"saltNonce","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"proxy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"createProxyWithNonce(address,bytes,uint256)":"1688f0b9"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_singleton\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"initializer\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"saltNonce\",\"type\":\"uint256\"}],\"name\":\"createProxyWithNonce\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"proxy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/interfaces/ISafe.sol\":\"SafeProxyFactory\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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\":{\"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":"_singleton","type":"address"},{"internalType":"bytes","name":"initializer","type":"bytes"},{"internalType":"uint256","name":"saltNonce","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"createProxyWithNonce","outputs":[{"internalType":"address","name":"proxy","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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/ISafe.sol":"SafeProxyFactory"},"evmVersion":"paris","libraries":{}},"sources":{"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/interfaces/ISafe.sol","id":33397,"exportedSymbols":{"Enum":[33396],"ISafe":[33380],"SafeProxyFactory":[33392]},"nodeType":"SourceUnit","src":"42:1491:69","nodes":[{"id":33289,"nodeType":"PragmaDirective","src":"42:24:69","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":33380,"nodeType":"ContractDefinition","src":"68:1193:69","nodes":[{"id":33295,"nodeType":"FunctionDefinition","src":"90:62:69","nodes":[],"functionSelector":"a0e67e2b","implemented":false,"kind":"function","modifiers":[],"name":"getOwners","nameLocation":"99:9:69","parameters":{"id":33290,"nodeType":"ParameterList","parameters":[],"src":"108:2:69"},"returnParameters":{"id":33294,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33293,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":33295,"src":"134:16:69","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":33291,"name":"address","nodeType":"ElementaryTypeName","src":"134:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":33292,"nodeType":"ArrayTypeName","src":"134:9:69","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"133:18:69"},"scope":33380,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":33300,"nodeType":"FunctionDefinition","src":"157:49:69","nodes":[],"functionSelector":"affed0e0","implemented":false,"kind":"function","modifiers":[],"name":"nonce","nameLocation":"166:5:69","parameters":{"id":33296,"nodeType":"ParameterList","parameters":[],"src":"171:2:69"},"returnParameters":{"id":33299,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33298,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":33300,"src":"197:7:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33297,"name":"uint256","nodeType":"ElementaryTypeName","src":"197:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"196:9:69"},"scope":33380,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":33320,"nodeType":"FunctionDefinition","src":"211:272:69","nodes":[],"functionSelector":"b63e800d","implemented":false,"kind":"function","modifiers":[],"name":"setup","nameLocation":"220:5:69","parameters":{"id":33318,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33303,"mutability":"mutable","name":"_owners","nameLocation":"254:7:69","nodeType":"VariableDeclaration","scope":33320,"src":"235:26:69","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_calldata_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":33301,"name":"address","nodeType":"ElementaryTypeName","src":"235:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":33302,"nodeType":"ArrayTypeName","src":"235:9:69","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":33305,"mutability":"mutable","name":"_threshold","nameLocation":"279:10:69","nodeType":"VariableDeclaration","scope":33320,"src":"271:18:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33304,"name":"uint256","nodeType":"ElementaryTypeName","src":"271:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33307,"mutability":"mutable","name":"to","nameLocation":"307:2:69","nodeType":"VariableDeclaration","scope":33320,"src":"299:10:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33306,"name":"address","nodeType":"ElementaryTypeName","src":"299:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33309,"mutability":"mutable","name":"data","nameLocation":"334:4:69","nodeType":"VariableDeclaration","scope":33320,"src":"319:19:69","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":33308,"name":"bytes","nodeType":"ElementaryTypeName","src":"319:5:69","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":33311,"mutability":"mutable","name":"fallbackHandler","nameLocation":"356:15:69","nodeType":"VariableDeclaration","scope":33320,"src":"348:23:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33310,"name":"address","nodeType":"ElementaryTypeName","src":"348:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33313,"mutability":"mutable","name":"paymentToken","nameLocation":"389:12:69","nodeType":"VariableDeclaration","scope":33320,"src":"381:20:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33312,"name":"address","nodeType":"ElementaryTypeName","src":"381:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33315,"mutability":"mutable","name":"payment","nameLocation":"419:7:69","nodeType":"VariableDeclaration","scope":33320,"src":"411:15:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33314,"name":"uint256","nodeType":"ElementaryTypeName","src":"411:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33317,"mutability":"mutable","name":"paymentReceiver","nameLocation":"452:15:69","nodeType":"VariableDeclaration","scope":33320,"src":"436:31:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":33316,"name":"address","nodeType":"ElementaryTypeName","src":"436:15:69","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"225:248:69"},"returnParameters":{"id":33319,"nodeType":"ParameterList","parameters":[],"src":"482:0:69"},"scope":33380,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":33346,"nodeType":"FunctionDefinition","src":"488:332:69","nodes":[],"functionSelector":"d8d11f78","implemented":false,"kind":"function","modifiers":[],"name":"getTransactionHash","nameLocation":"497:18:69","parameters":{"id":33342,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33322,"mutability":"mutable","name":"to","nameLocation":"533:2:69","nodeType":"VariableDeclaration","scope":33346,"src":"525:10:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33321,"name":"address","nodeType":"ElementaryTypeName","src":"525:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33324,"mutability":"mutable","name":"value","nameLocation":"553:5:69","nodeType":"VariableDeclaration","scope":33346,"src":"545:13:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33323,"name":"uint256","nodeType":"ElementaryTypeName","src":"545:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33326,"mutability":"mutable","name":"data","nameLocation":"583:4:69","nodeType":"VariableDeclaration","scope":33346,"src":"568:19:69","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":33325,"name":"bytes","nodeType":"ElementaryTypeName","src":"568:5:69","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":33329,"mutability":"mutable","name":"operation","nameLocation":"612:9:69","nodeType":"VariableDeclaration","scope":33346,"src":"597:24:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$33395","typeString":"enum Enum.Operation"},"typeName":{"id":33328,"nodeType":"UserDefinedTypeName","pathNode":{"id":33327,"name":"Enum.Operation","nameLocations":["597:4:69","602:9:69"],"nodeType":"IdentifierPath","referencedDeclaration":33395,"src":"597:14:69"},"referencedDeclaration":33395,"src":"597:14:69","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$33395","typeString":"enum Enum.Operation"}},"visibility":"internal"},{"constant":false,"id":33331,"mutability":"mutable","name":"safeTxGas","nameLocation":"639:9:69","nodeType":"VariableDeclaration","scope":33346,"src":"631:17:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33330,"name":"uint256","nodeType":"ElementaryTypeName","src":"631:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33333,"mutability":"mutable","name":"baseGas","nameLocation":"666:7:69","nodeType":"VariableDeclaration","scope":33346,"src":"658:15:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33332,"name":"uint256","nodeType":"ElementaryTypeName","src":"658:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33335,"mutability":"mutable","name":"gasPrice","nameLocation":"691:8:69","nodeType":"VariableDeclaration","scope":33346,"src":"683:16:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33334,"name":"uint256","nodeType":"ElementaryTypeName","src":"683:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33337,"mutability":"mutable","name":"gasToken","nameLocation":"717:8:69","nodeType":"VariableDeclaration","scope":33346,"src":"709:16:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33336,"name":"address","nodeType":"ElementaryTypeName","src":"709:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33339,"mutability":"mutable","name":"refundReceiver","nameLocation":"743:14:69","nodeType":"VariableDeclaration","scope":33346,"src":"735:22:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33338,"name":"address","nodeType":"ElementaryTypeName","src":"735:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33341,"mutability":"mutable","name":"_nonce","nameLocation":"775:6:69","nodeType":"VariableDeclaration","scope":33346,"src":"767:14:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33340,"name":"uint256","nodeType":"ElementaryTypeName","src":"767:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"515:272:69"},"returnParameters":{"id":33345,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33344,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":33346,"src":"811:7:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":33343,"name":"bytes32","nodeType":"ElementaryTypeName","src":"811:7:69","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"810:9:69"},"scope":33380,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":33372,"nodeType":"FunctionDefinition","src":"825:354:69","nodes":[],"functionSelector":"6a761202","implemented":false,"kind":"function","modifiers":[],"name":"execTransaction","nameLocation":"834:15:69","parameters":{"id":33368,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33348,"mutability":"mutable","name":"to","nameLocation":"867:2:69","nodeType":"VariableDeclaration","scope":33372,"src":"859:10:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33347,"name":"address","nodeType":"ElementaryTypeName","src":"859:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33350,"mutability":"mutable","name":"value","nameLocation":"887:5:69","nodeType":"VariableDeclaration","scope":33372,"src":"879:13:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33349,"name":"uint256","nodeType":"ElementaryTypeName","src":"879:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33352,"mutability":"mutable","name":"data","nameLocation":"917:4:69","nodeType":"VariableDeclaration","scope":33372,"src":"902:19:69","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":33351,"name":"bytes","nodeType":"ElementaryTypeName","src":"902:5:69","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":33355,"mutability":"mutable","name":"operation","nameLocation":"946:9:69","nodeType":"VariableDeclaration","scope":33372,"src":"931:24:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$33395","typeString":"enum Enum.Operation"},"typeName":{"id":33354,"nodeType":"UserDefinedTypeName","pathNode":{"id":33353,"name":"Enum.Operation","nameLocations":["931:4:69","936:9:69"],"nodeType":"IdentifierPath","referencedDeclaration":33395,"src":"931:14:69"},"referencedDeclaration":33395,"src":"931:14:69","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$33395","typeString":"enum Enum.Operation"}},"visibility":"internal"},{"constant":false,"id":33357,"mutability":"mutable","name":"safeTxGas","nameLocation":"973:9:69","nodeType":"VariableDeclaration","scope":33372,"src":"965:17:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33356,"name":"uint256","nodeType":"ElementaryTypeName","src":"965:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33359,"mutability":"mutable","name":"baseGas","nameLocation":"1000:7:69","nodeType":"VariableDeclaration","scope":33372,"src":"992:15:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33358,"name":"uint256","nodeType":"ElementaryTypeName","src":"992:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33361,"mutability":"mutable","name":"gasPrice","nameLocation":"1025:8:69","nodeType":"VariableDeclaration","scope":33372,"src":"1017:16:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33360,"name":"uint256","nodeType":"ElementaryTypeName","src":"1017:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":33363,"mutability":"mutable","name":"gasToken","nameLocation":"1051:8:69","nodeType":"VariableDeclaration","scope":33372,"src":"1043:16:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33362,"name":"address","nodeType":"ElementaryTypeName","src":"1043:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33365,"mutability":"mutable","name":"refundReceiver","nameLocation":"1085:14:69","nodeType":"VariableDeclaration","scope":33372,"src":"1069:30:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":33364,"name":"address","nodeType":"ElementaryTypeName","src":"1069:15:69","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":33367,"mutability":"mutable","name":"signatures","nameLocation":"1122:10:69","nodeType":"VariableDeclaration","scope":33372,"src":"1109:23:69","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":33366,"name":"bytes","nodeType":"ElementaryTypeName","src":"1109:5:69","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"849:289:69"},"returnParameters":{"id":33371,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33370,"mutability":"mutable","name":"success","nameLocation":"1170:7:69","nodeType":"VariableDeclaration","scope":33372,"src":"1165:12:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":33369,"name":"bool","nodeType":"ElementaryTypeName","src":"1165:4:69","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1164:14:69"},"scope":33380,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":33379,"nodeType":"FunctionDefinition","src":"1184:75:69","nodes":[],"functionSelector":"0d582f13","implemented":false,"kind":"function","modifiers":[],"name":"addOwnerWithThreshold","nameLocation":"1193:21:69","parameters":{"id":33377,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33374,"mutability":"mutable","name":"owner","nameLocation":"1223:5:69","nodeType":"VariableDeclaration","scope":33379,"src":"1215:13:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33373,"name":"address","nodeType":"ElementaryTypeName","src":"1215:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33376,"mutability":"mutable","name":"_threshold","nameLocation":"1238:10:69","nodeType":"VariableDeclaration","scope":33379,"src":"1230:18:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33375,"name":"uint256","nodeType":"ElementaryTypeName","src":"1230:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1214:35:69"},"returnParameters":{"id":33378,"nodeType":"ParameterList","parameters":[],"src":"1258:0:69"},"scope":33380,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"ISafe","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[33380],"name":"ISafe","nameLocation":"78:5:69","scope":33397,"usedErrors":[]},{"id":33392,"nodeType":"ContractDefinition","src":"1263:179:69","nodes":[{"id":33391,"nodeType":"FunctionDefinition","src":"1296:144:69","nodes":[],"functionSelector":"1688f0b9","implemented":false,"kind":"function","modifiers":[],"name":"createProxyWithNonce","nameLocation":"1305:20:69","parameters":{"id":33387,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33382,"mutability":"mutable","name":"_singleton","nameLocation":"1334:10:69","nodeType":"VariableDeclaration","scope":33391,"src":"1326:18:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33381,"name":"address","nodeType":"ElementaryTypeName","src":"1326:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33384,"mutability":"mutable","name":"initializer","nameLocation":"1359:11:69","nodeType":"VariableDeclaration","scope":33391,"src":"1346:24:69","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":33383,"name":"bytes","nodeType":"ElementaryTypeName","src":"1346:5:69","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":33386,"mutability":"mutable","name":"saltNonce","nameLocation":"1380:9:69","nodeType":"VariableDeclaration","scope":33391,"src":"1372:17:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":33385,"name":"uint256","nodeType":"ElementaryTypeName","src":"1372:7:69","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1325:65:69"},"returnParameters":{"id":33390,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33389,"mutability":"mutable","name":"proxy","nameLocation":"1433:5:69","nodeType":"VariableDeclaration","scope":33391,"src":"1425:13:69","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33388,"name":"address","nodeType":"ElementaryTypeName","src":"1425:7:69","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1424:15:69"},"scope":33392,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"SafeProxyFactory","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[33392],"name":"SafeProxyFactory","nameLocation":"1273:16:69","scope":33397,"usedErrors":[]},{"id":33396,"nodeType":"ContractDefinition","src":"1444:88:69","nodes":[{"id":33395,"nodeType":"EnumDefinition","src":"1473:57:69","nodes":[],"canonicalName":"Enum.Operation","members":[{"id":33393,"name":"Call","nameLocation":"1498:4:69","nodeType":"EnumValue","src":"1498:4:69"},{"id":33394,"name":"DelegateCall","nameLocation":"1512:12:69","nodeType":"EnumValue","src":"1512:12:69"}],"name":"Operation","nameLocation":"1478:9:69"}],"abstract":true,"baseContracts":[],"canonicalName":"Enum","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[33396],"name":"Enum","nameLocation":"1462:4:69","scope":33397,"usedErrors":[]}],"license":"LGPL-3.0-only"},"id":69} \ No newline at end of file +{"abi":[{"type":"function","name":"createProxyWithNonce","inputs":[{"name":"_singleton","type":"address","internalType":"address"},{"name":"initializer","type":"bytes","internalType":"bytes"},{"name":"saltNonce","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"proxy","type":"address","internalType":"address"}],"stateMutability":"nonpayable"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"createProxyWithNonce(address,bytes,uint256)":"1688f0b9"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_singleton\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"initializer\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"saltNonce\",\"type\":\"uint256\"}],\"name\":\"createProxyWithNonce\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"proxy\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/interfaces/ISafe.sol\":\"SafeProxyFactory\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"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":"_singleton","type":"address"},{"internalType":"bytes","name":"initializer","type":"bytes"},{"internalType":"uint256","name":"saltNonce","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"createProxyWithNonce","outputs":[{"internalType":"address","name":"proxy","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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/interfaces/ISafe.sol":"SafeProxyFactory"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"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/interfaces/ISafe.sol","id":77092,"exportedSymbols":{"Enum":[77091],"ISafe":[77075],"SafeProxyFactory":[77087]},"nodeType":"SourceUnit","src":"42:1491:128","nodes":[{"id":76984,"nodeType":"PragmaDirective","src":"42:24:128","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":77075,"nodeType":"ContractDefinition","src":"68:1193:128","nodes":[{"id":76990,"nodeType":"FunctionDefinition","src":"90:62:128","nodes":[],"functionSelector":"a0e67e2b","implemented":false,"kind":"function","modifiers":[],"name":"getOwners","nameLocation":"99:9:128","parameters":{"id":76985,"nodeType":"ParameterList","parameters":[],"src":"108:2:128"},"returnParameters":{"id":76989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76988,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":76990,"src":"134:16:128","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":76986,"name":"address","nodeType":"ElementaryTypeName","src":"134:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76987,"nodeType":"ArrayTypeName","src":"134:9:128","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"133:18:128"},"scope":77075,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":76995,"nodeType":"FunctionDefinition","src":"157:49:128","nodes":[],"functionSelector":"affed0e0","implemented":false,"kind":"function","modifiers":[],"name":"nonce","nameLocation":"166:5:128","parameters":{"id":76991,"nodeType":"ParameterList","parameters":[],"src":"171:2:128"},"returnParameters":{"id":76994,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76993,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":76995,"src":"197:7:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76992,"name":"uint256","nodeType":"ElementaryTypeName","src":"197:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"196:9:128"},"scope":77075,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":77015,"nodeType":"FunctionDefinition","src":"211:272:128","nodes":[],"functionSelector":"b63e800d","implemented":false,"kind":"function","modifiers":[],"name":"setup","nameLocation":"220:5:128","parameters":{"id":77013,"nodeType":"ParameterList","parameters":[{"constant":false,"id":76998,"mutability":"mutable","name":"_owners","nameLocation":"254:7:128","nodeType":"VariableDeclaration","scope":77015,"src":"235:26:128","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_calldata_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":76996,"name":"address","nodeType":"ElementaryTypeName","src":"235:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":76997,"nodeType":"ArrayTypeName","src":"235:9:128","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"constant":false,"id":77000,"mutability":"mutable","name":"_threshold","nameLocation":"279:10:128","nodeType":"VariableDeclaration","scope":77015,"src":"271:18:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":76999,"name":"uint256","nodeType":"ElementaryTypeName","src":"271:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77002,"mutability":"mutable","name":"to","nameLocation":"307:2:128","nodeType":"VariableDeclaration","scope":77015,"src":"299:10:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77001,"name":"address","nodeType":"ElementaryTypeName","src":"299:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77004,"mutability":"mutable","name":"data","nameLocation":"334:4:128","nodeType":"VariableDeclaration","scope":77015,"src":"319:19:128","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":77003,"name":"bytes","nodeType":"ElementaryTypeName","src":"319:5:128","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":77006,"mutability":"mutable","name":"fallbackHandler","nameLocation":"356:15:128","nodeType":"VariableDeclaration","scope":77015,"src":"348:23:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77005,"name":"address","nodeType":"ElementaryTypeName","src":"348:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77008,"mutability":"mutable","name":"paymentToken","nameLocation":"389:12:128","nodeType":"VariableDeclaration","scope":77015,"src":"381:20:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77007,"name":"address","nodeType":"ElementaryTypeName","src":"381:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77010,"mutability":"mutable","name":"payment","nameLocation":"419:7:128","nodeType":"VariableDeclaration","scope":77015,"src":"411:15:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77009,"name":"uint256","nodeType":"ElementaryTypeName","src":"411:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77012,"mutability":"mutable","name":"paymentReceiver","nameLocation":"452:15:128","nodeType":"VariableDeclaration","scope":77015,"src":"436:31:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":77011,"name":"address","nodeType":"ElementaryTypeName","src":"436:15:128","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"225:248:128"},"returnParameters":{"id":77014,"nodeType":"ParameterList","parameters":[],"src":"482:0:128"},"scope":77075,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":77041,"nodeType":"FunctionDefinition","src":"488:332:128","nodes":[],"functionSelector":"d8d11f78","implemented":false,"kind":"function","modifiers":[],"name":"getTransactionHash","nameLocation":"497:18:128","parameters":{"id":77037,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77017,"mutability":"mutable","name":"to","nameLocation":"533:2:128","nodeType":"VariableDeclaration","scope":77041,"src":"525:10:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77016,"name":"address","nodeType":"ElementaryTypeName","src":"525:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77019,"mutability":"mutable","name":"value","nameLocation":"553:5:128","nodeType":"VariableDeclaration","scope":77041,"src":"545:13:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77018,"name":"uint256","nodeType":"ElementaryTypeName","src":"545:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77021,"mutability":"mutable","name":"data","nameLocation":"583:4:128","nodeType":"VariableDeclaration","scope":77041,"src":"568:19:128","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":77020,"name":"bytes","nodeType":"ElementaryTypeName","src":"568:5:128","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":77024,"mutability":"mutable","name":"operation","nameLocation":"612:9:128","nodeType":"VariableDeclaration","scope":77041,"src":"597:24:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$77090","typeString":"enum Enum.Operation"},"typeName":{"id":77023,"nodeType":"UserDefinedTypeName","pathNode":{"id":77022,"name":"Enum.Operation","nameLocations":["597:4:128","602:9:128"],"nodeType":"IdentifierPath","referencedDeclaration":77090,"src":"597:14:128"},"referencedDeclaration":77090,"src":"597:14:128","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$77090","typeString":"enum Enum.Operation"}},"visibility":"internal"},{"constant":false,"id":77026,"mutability":"mutable","name":"safeTxGas","nameLocation":"639:9:128","nodeType":"VariableDeclaration","scope":77041,"src":"631:17:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77025,"name":"uint256","nodeType":"ElementaryTypeName","src":"631:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77028,"mutability":"mutable","name":"baseGas","nameLocation":"666:7:128","nodeType":"VariableDeclaration","scope":77041,"src":"658:15:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77027,"name":"uint256","nodeType":"ElementaryTypeName","src":"658:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77030,"mutability":"mutable","name":"gasPrice","nameLocation":"691:8:128","nodeType":"VariableDeclaration","scope":77041,"src":"683:16:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77029,"name":"uint256","nodeType":"ElementaryTypeName","src":"683:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77032,"mutability":"mutable","name":"gasToken","nameLocation":"717:8:128","nodeType":"VariableDeclaration","scope":77041,"src":"709:16:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77031,"name":"address","nodeType":"ElementaryTypeName","src":"709:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77034,"mutability":"mutable","name":"refundReceiver","nameLocation":"743:14:128","nodeType":"VariableDeclaration","scope":77041,"src":"735:22:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77033,"name":"address","nodeType":"ElementaryTypeName","src":"735:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77036,"mutability":"mutable","name":"_nonce","nameLocation":"775:6:128","nodeType":"VariableDeclaration","scope":77041,"src":"767:14:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77035,"name":"uint256","nodeType":"ElementaryTypeName","src":"767:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"515:272:128"},"returnParameters":{"id":77040,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77039,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":77041,"src":"811:7:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":77038,"name":"bytes32","nodeType":"ElementaryTypeName","src":"811:7:128","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"810:9:128"},"scope":77075,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":77067,"nodeType":"FunctionDefinition","src":"825:354:128","nodes":[],"functionSelector":"6a761202","implemented":false,"kind":"function","modifiers":[],"name":"execTransaction","nameLocation":"834:15:128","parameters":{"id":77063,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77043,"mutability":"mutable","name":"to","nameLocation":"867:2:128","nodeType":"VariableDeclaration","scope":77067,"src":"859:10:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77042,"name":"address","nodeType":"ElementaryTypeName","src":"859:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77045,"mutability":"mutable","name":"value","nameLocation":"887:5:128","nodeType":"VariableDeclaration","scope":77067,"src":"879:13:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77044,"name":"uint256","nodeType":"ElementaryTypeName","src":"879:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77047,"mutability":"mutable","name":"data","nameLocation":"917:4:128","nodeType":"VariableDeclaration","scope":77067,"src":"902:19:128","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":77046,"name":"bytes","nodeType":"ElementaryTypeName","src":"902:5:128","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":77050,"mutability":"mutable","name":"operation","nameLocation":"946:9:128","nodeType":"VariableDeclaration","scope":77067,"src":"931:24:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$77090","typeString":"enum Enum.Operation"},"typeName":{"id":77049,"nodeType":"UserDefinedTypeName","pathNode":{"id":77048,"name":"Enum.Operation","nameLocations":["931:4:128","936:9:128"],"nodeType":"IdentifierPath","referencedDeclaration":77090,"src":"931:14:128"},"referencedDeclaration":77090,"src":"931:14:128","typeDescriptions":{"typeIdentifier":"t_enum$_Operation_$77090","typeString":"enum Enum.Operation"}},"visibility":"internal"},{"constant":false,"id":77052,"mutability":"mutable","name":"safeTxGas","nameLocation":"973:9:128","nodeType":"VariableDeclaration","scope":77067,"src":"965:17:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77051,"name":"uint256","nodeType":"ElementaryTypeName","src":"965:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77054,"mutability":"mutable","name":"baseGas","nameLocation":"1000:7:128","nodeType":"VariableDeclaration","scope":77067,"src":"992:15:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77053,"name":"uint256","nodeType":"ElementaryTypeName","src":"992:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77056,"mutability":"mutable","name":"gasPrice","nameLocation":"1025:8:128","nodeType":"VariableDeclaration","scope":77067,"src":"1017:16:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77055,"name":"uint256","nodeType":"ElementaryTypeName","src":"1017:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":77058,"mutability":"mutable","name":"gasToken","nameLocation":"1051:8:128","nodeType":"VariableDeclaration","scope":77067,"src":"1043:16:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77057,"name":"address","nodeType":"ElementaryTypeName","src":"1043:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77060,"mutability":"mutable","name":"refundReceiver","nameLocation":"1085:14:128","nodeType":"VariableDeclaration","scope":77067,"src":"1069:30:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":77059,"name":"address","nodeType":"ElementaryTypeName","src":"1069:15:128","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":77062,"mutability":"mutable","name":"signatures","nameLocation":"1122:10:128","nodeType":"VariableDeclaration","scope":77067,"src":"1109:23:128","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":77061,"name":"bytes","nodeType":"ElementaryTypeName","src":"1109:5:128","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"849:289:128"},"returnParameters":{"id":77066,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77065,"mutability":"mutable","name":"success","nameLocation":"1170:7:128","nodeType":"VariableDeclaration","scope":77067,"src":"1165:12:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":77064,"name":"bool","nodeType":"ElementaryTypeName","src":"1165:4:128","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1164:14:128"},"scope":77075,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":77074,"nodeType":"FunctionDefinition","src":"1184:75:128","nodes":[],"functionSelector":"0d582f13","implemented":false,"kind":"function","modifiers":[],"name":"addOwnerWithThreshold","nameLocation":"1193:21:128","parameters":{"id":77072,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77069,"mutability":"mutable","name":"owner","nameLocation":"1223:5:128","nodeType":"VariableDeclaration","scope":77074,"src":"1215:13:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77068,"name":"address","nodeType":"ElementaryTypeName","src":"1215:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77071,"mutability":"mutable","name":"_threshold","nameLocation":"1238:10:128","nodeType":"VariableDeclaration","scope":77074,"src":"1230:18:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77070,"name":"uint256","nodeType":"ElementaryTypeName","src":"1230:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1214:35:128"},"returnParameters":{"id":77073,"nodeType":"ParameterList","parameters":[],"src":"1258:0:128"},"scope":77075,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"ISafe","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[77075],"name":"ISafe","nameLocation":"78:5:128","scope":77092,"usedErrors":[]},{"id":77087,"nodeType":"ContractDefinition","src":"1263:179:128","nodes":[{"id":77086,"nodeType":"FunctionDefinition","src":"1296:144:128","nodes":[],"functionSelector":"1688f0b9","implemented":false,"kind":"function","modifiers":[],"name":"createProxyWithNonce","nameLocation":"1305:20:128","parameters":{"id":77082,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77077,"mutability":"mutable","name":"_singleton","nameLocation":"1334:10:128","nodeType":"VariableDeclaration","scope":77086,"src":"1326:18:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77076,"name":"address","nodeType":"ElementaryTypeName","src":"1326:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":77079,"mutability":"mutable","name":"initializer","nameLocation":"1359:11:128","nodeType":"VariableDeclaration","scope":77086,"src":"1346:24:128","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":77078,"name":"bytes","nodeType":"ElementaryTypeName","src":"1346:5:128","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":77081,"mutability":"mutable","name":"saltNonce","nameLocation":"1380:9:128","nodeType":"VariableDeclaration","scope":77086,"src":"1372:17:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":77080,"name":"uint256","nodeType":"ElementaryTypeName","src":"1372:7:128","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1325:65:128"},"returnParameters":{"id":77085,"nodeType":"ParameterList","parameters":[{"constant":false,"id":77084,"mutability":"mutable","name":"proxy","nameLocation":"1433:5:128","nodeType":"VariableDeclaration","scope":77086,"src":"1425:13:128","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":77083,"name":"address","nodeType":"ElementaryTypeName","src":"1425:7:128","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1424:15:128"},"scope":77087,"stateMutability":"nonpayable","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"SafeProxyFactory","contractDependencies":[],"contractKind":"interface","fullyImplemented":false,"linearizedBaseContracts":[77087],"name":"SafeProxyFactory","nameLocation":"1273:16:128","scope":77092,"usedErrors":[]},{"id":77091,"nodeType":"ContractDefinition","src":"1444:88:128","nodes":[{"id":77090,"nodeType":"EnumDefinition","src":"1473:57:128","nodes":[],"canonicalName":"Enum.Operation","members":[{"id":77088,"name":"Call","nameLocation":"1498:4:128","nodeType":"EnumValue","src":"1498:4:128"},{"id":77089,"name":"DelegateCall","nameLocation":"1512:12:128","nodeType":"EnumValue","src":"1512:12:128"}],"name":"Operation","nameLocation":"1478:9:128"}],"abstract":true,"baseContracts":[],"canonicalName":"Enum","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[77091],"name":"Enum","nameLocation":"1462:4:128","scope":77092,"usedErrors":[]}],"license":"LGPL-3.0-only"},"id":128} \ No newline at end of file diff --git a/pkg/contracts/out/PassportScorer.sol/PassportScorer.json b/pkg/contracts/out/PassportScorer.sol/PassportScorer.json index a403ae60d..7e5b3d98e 100644 --- a/pkg/contracts/out/PassportScorer.sol/PassportScorer.json +++ b/pkg/contracts/out/PassportScorer.sol/PassportScorer.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"activateStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_threshold","type":"uint256","internalType":"uint256"},{"name":"_councilSafe","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addUserScore","inputs":[{"name":"_user","type":"address","internalType":"address"},{"name":"_score","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"canExecuteAction","inputs":[{"name":"_user","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"changeListManager","inputs":[{"name":"_newManager","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"_listManager","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":"listManager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"modifyThreshold","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_newThreshold","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"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":"proxyOwner","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":"removeUser","inputs":[{"name":"_user","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategies","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"threshold","type":"uint256","internalType":"uint256"},{"name":"active","type":"bool","internalType":"bool"},{"name":"councilSafe","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":"function","name":"userScores","inputs":[{"name":"","type":"address","internalType":"address"}],"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":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"ListManagerChanged","inputs":[{"name":"oldManager","type":"address","indexed":true,"internalType":"address"},{"name":"newManager","type":"address","indexed":true,"internalType":"address"}],"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":"StrategyActivated","inputs":[{"name":"strategy","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"strategy","type":"address","indexed":true,"internalType":"address"},{"name":"threshold","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"active","type":"bool","indexed":false,"internalType":"bool"},{"name":"councilSafe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"strategy","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ThresholdModified","inputs":[{"name":"strategy","type":"address","indexed":true,"internalType":"address"},{"name":"newThreshold","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"UserRemoved","inputs":[{"name":"user","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"UserScoreAdded","inputs":[{"name":"user","type":"address","indexed":true,"internalType":"address"},{"name":"score","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"OnlyAuthorized","inputs":[]},{"type":"error","name":"OnlyAuthorizedOrUser","inputs":[]},{"type":"error","name":"OnlyCouncil","inputs":[]},{"type":"error","name":"OnlyCouncilOrAuthorized","inputs":[]},{"type":"error","name":"StrategyAlreadyExists","inputs":[]},{"type":"error","name":"ZeroAddress","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b5060805161199661004c6000396000818161054b01528181610594015281816108310152818161087101526108ed01526119966000f3fe6080604052600436106100ef5760003560e01c8063025313a2146100f45780631413d4c014610126578063175188e8146101615780633659cfe61461018357806339ebf823146101a35780633d476830146101f957806342a987a014610219578063485cc955146102495780634f1ef2861461026957806352d1902d1461027c578063642ce76b14610291578063715018a6146102b15780638da5cb5b146102c65780638df8b2fe146102db57806398575188146102fb578063c4d66de81461031b578063d80ea5a01461033b578063f2fde38b1461035b578063fc2ebdd11461037b578063feec71451461039b575b600080fd5b34801561010057600080fd5b506101096103bb565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561013257600080fd5b50610153610141366004611620565b60666020526000908152604090205481565b60405190815260200161011d565b34801561016d57600080fd5b5061018161017c366004611620565b6103d4565b005b34801561018f57600080fd5b5061018161019e366004611620565b610541565b3480156101af57600080fd5b506101ea6101be366004611620565b6067602052600090815260409020805460019091015460ff81169061010090046001600160a01b031683565b60405161011d9392919061163d565b34801561020557600080fd5b50610181610214366004611620565b610612565b34801561022557600080fd5b5061023961023436600461165c565b610675565b604051901515815260200161011d565b34801561025557600080fd5b5061018161026436600461165c565b6106e9565b6101816102773660046116ab565b610827565b34801561028857600080fd5b506101536108e0565b34801561029d57600080fd5b506101816102ac36600461176e565b61098e565b3480156102bd57600080fd5b50610181610ae2565b3480156102d257600080fd5b50610109610af6565b3480156102e757600080fd5b50606554610109906001600160a01b031681565b34801561030757600080fd5b50610181610316366004611620565b610b8b565b34801561032757600080fd5b50610181610336366004611620565b610c27565b34801561034757600080fd5b50610181610356366004611620565b610c9b565b34801561036757600080fd5b50610181610376366004611620565b610de6565b34801561038757600080fd5b5061018161039636600461179a565b610e53565b3480156103a757600080fd5b506101816103b636600461176e565b61106d565b60006103cf6033546001600160a01b031690565b905090565b806000816001600160a01b0316636003e4146040518163ffffffff1660e01b8152600401602060405180830381865afa158015610415573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061043991906117dc565b9050610443610af6565b6001600160a01b0316336001600160a01b0316148061046a5750336001600160a01b038316145b8061047d5750336001600160a01b038216145b8061049257506065546001600160a01b031633145b806104be57506001600160a01b0382811660009081526067602052604090206001015461010090041633145b15610523576104cc83611105565b6001600160a01b03831660008181526067602052604080822082815560010180546001600160a81b0319169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49190a2505050565b60405163e3b6914b60e01b815260040160405180910390fd5b505050565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036105925760405162461bcd60e51b8152600401610589906117f9565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166105c461112c565b6001600160a01b0316146105ea5760405162461bcd60e51b815260040161058990611833565b6105f381611148565b6040805160008082526020820190925261060f91839190611194565b50565b61061a6112ff565b61062381611105565b606580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f5117c6c457d7b27a4cb68df40b118f157ac1f1ba81f8a571d189f829d74fbc8690600090a35050565b6001600160a01b0380831660009081526066602090815260408083205485851684526067835281842082516060810184528154815260019091015460ff811615159482018590526101009004909516918501919091529192906106dd576001925050506106e3565b51111590505b92915050565b600054610100900460ff16158080156107095750600054600160ff909116105b8061072a57506107183061135e565b15801561072a575060005460ff166001145b61078d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610589565b6000805460ff1916600117905580156107b0576000805461ff0019166101001790555b6107b982610c27565b6107c283611105565b606580546001600160a01b0319166001600160a01b038516179055801561053c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361086f5760405162461bcd60e51b8152600401610589906117f9565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166108a161112c565b6001600160a01b0316146108c75760405162461bcd60e51b815260040161058990611833565b6108d082611148565b6108dc82826001611194565b5050565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461097b5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610589565b5060008051602061191a83398151915290565b816000816001600160a01b0316636003e4146040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f391906117dc565b90506109fd610af6565b6001600160a01b0316336001600160a01b03161480610a245750336001600160a01b038316145b80610a375750336001600160a01b038216145b80610a4c57506065546001600160a01b031633145b80610a7857506001600160a01b0382811660009081526067602052604090206001015461010090041633145b1561052357610a8684611105565b6001600160a01b03841660008181526067602052604090819020859055517f40ba4d5d9facd2fda74e22251d1638576e05a30482470363c7c87a7b5b298c0990610ad39086815260200190565b60405180910390a25b50505050565b610aea6112ff565b610af4600061136d565b565b6000610b006103bb565b6001600160a01b03163b600003610b19576103cf6103bb565b610b216103bb565b6001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610b7a575060408051601f3d908101601f19168201909252610b77918101906117dc565b60015b610b86576103cf6103bb565b919050565b610b93610af6565b6001600160a01b0316336001600160a01b03161480610bbc57506065546001600160a01b031633145b15610c0e57610bca81611105565b6001600160a01b038116600081815260666020526040808220829055517fe9dce8c992623ce791725b21e857e33248d1f190a25b5168313420eebdaae99d9190a250565b604051637d7b71b560e01b815260040160405180910390fd5b600054610100900460ff16610c925760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610589565b61060f8161136d565b806000816001600160a01b0316636003e4146040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cdc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d0091906117dc565b9050610d0a610af6565b6001600160a01b0316336001600160a01b03161480610d315750336001600160a01b038316145b80610d445750336001600160a01b038216145b80610d5957506065546001600160a01b031633145b80610d8557506001600160a01b0382811660009081526067602052604090206001015461010090041633145b1561052357610d9383611105565b6001600160a01b0383166000818152606760205260408082206001908101805460ff19169091179055517f652f053fc39779b70b29678135ade972fcb79966fc68fcb77c996b1aa4fd9afb9190a2505050565b610dee6112ff565b6001600160a01b038116610c925760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610589565b826000816001600160a01b0316636003e4146040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb891906117dc565b9050610ec2610af6565b6001600160a01b0316336001600160a01b03161480610ee95750336001600160a01b038316145b80610efc5750336001600160a01b038216145b80610f1157506065546001600160a01b031633145b80610f3d57506001600160a01b0382811660009081526067602052604090206001015461010090041633145b1561052357610f4b85611105565b610f5483611105565b6001600160a01b038516600090815260676020526040902054151580610f9b57506001600160a01b0385811660009081526067602052604090206001015461010090041615155b15610fb95760405163c45546f760e01b815260040160405180910390fd5b60408051606081018252858152600060208083018281526001600160a01b038881168587019081528b821680865260679094528685209551865591516001909501805492516001600160a81b0319909316951515610100600160a81b03191695909517610100929091169190910217909255915190917f9b1a157188de9a0bd2e7995d72aaba244d9bd012ddf3ae3d4f492135175070cb9161105e918891889061163d565b60405180910390a25050505050565b611075610af6565b6001600160a01b0316336001600160a01b0316148061109e57506065546001600160a01b031633145b15610c0e576110ac82611105565b6001600160a01b03821660008181526066602052604090819020839055517f8b9ed475f52a60fa276f21d6848c06cbb59ebfcd26e8b8de2753c3e12a493ea7906110f99084815260200190565b60405180910390a25050565b6001600160a01b03811661060f5760405163d92e233d60e01b815260040160405180910390fd5b60008051602061191a833981519152546001600160a01b031690565b33611151610af6565b6001600160a01b03161461060f5733611168610af6565b60405163163678e960e01b81526001600160a01b03928316600482015291166024820152604401610589565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156111c75761053c836113bf565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611221575060408051601f3d908101601f1916820190925261121e9181019061186d565b60015b6112845760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610589565b60008051602061191a83398151915281146112f35760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610589565b5061053c838383611459565b33611308610af6565b6001600160a01b031614610af45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610589565b6001600160a01b03163b151590565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6113c88161135e565b61142a5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610589565b60008051602061191a83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6114628361147e565b60008251118061146f5750805b1561053c57610adc83836114be565b611487816113bf565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606114e3838360405180606001604052806027815260200161193a602791396114ea565b9392505050565b6060600080856001600160a01b03168560405161150791906118aa565b600060405180830381855af49150503d8060008114611542576040519150601f19603f3d011682016040523d82523d6000602084013e611547565b606091505b509150915061155886838387611562565b9695505050505050565b606083156115cf5782516000036115c85761157c8561135e565b6115c85760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610589565b50816115d9565b6115d983836115e1565b949350505050565b8151156115f15781518083602001fd5b8060405162461bcd60e51b815260040161058991906118c6565b6001600160a01b038116811461060f57600080fd5b60006020828403121561163257600080fd5b81356114e38161160b565b92835290151560208301526001600160a01b0316604082015260600190565b6000806040838503121561166f57600080fd5b823561167a8161160b565b9150602083013561168a8161160b565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156116be57600080fd5b82356116c98161160b565b915060208301356001600160401b03808211156116e557600080fd5b818501915085601f8301126116f957600080fd5b81358181111561170b5761170b611695565b604051601f8201601f19908116603f0116810190838211818310171561173357611733611695565b8160405282815288602084870101111561174c57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000806040838503121561178157600080fd5b823561178c8161160b565b946020939093013593505050565b6000806000606084860312156117af57600080fd5b83356117ba8161160b565b92506020840135915060408401356117d18161160b565b809150509250925092565b6000602082840312156117ee57600080fd5b81516114e38161160b565b6020808252602c908201526000805160206118fa83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206118fa83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b60006020828403121561187f57600080fd5b5051919050565b60005b838110156118a1578181015183820152602001611889565b50506000910152565b600082516118bc818460208701611886565b9190910192915050565b60208152600082518060208401526118e5816040850160208701611886565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212207bec1f3178ddc0774310e2c6f85e704b8b7218a43525211658fc4b30ee122fa964736f6c63430008130033","sourceMap":"505:5545:62:-:0;;;1088:4:32;1045:48;;505:5545:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106100ef5760003560e01c8063025313a2146100f45780631413d4c014610126578063175188e8146101615780633659cfe61461018357806339ebf823146101a35780633d476830146101f957806342a987a014610219578063485cc955146102495780634f1ef2861461026957806352d1902d1461027c578063642ce76b14610291578063715018a6146102b15780638da5cb5b146102c65780638df8b2fe146102db57806398575188146102fb578063c4d66de81461031b578063d80ea5a01461033b578063f2fde38b1461035b578063fc2ebdd11461037b578063feec71451461039b575b600080fd5b34801561010057600080fd5b506101096103bb565b6040516001600160a01b0390911681526020015b60405180910390f35b34801561013257600080fd5b50610153610141366004611620565b60666020526000908152604090205481565b60405190815260200161011d565b34801561016d57600080fd5b5061018161017c366004611620565b6103d4565b005b34801561018f57600080fd5b5061018161019e366004611620565b610541565b3480156101af57600080fd5b506101ea6101be366004611620565b6067602052600090815260409020805460019091015460ff81169061010090046001600160a01b031683565b60405161011d9392919061163d565b34801561020557600080fd5b50610181610214366004611620565b610612565b34801561022557600080fd5b5061023961023436600461165c565b610675565b604051901515815260200161011d565b34801561025557600080fd5b5061018161026436600461165c565b6106e9565b6101816102773660046116ab565b610827565b34801561028857600080fd5b506101536108e0565b34801561029d57600080fd5b506101816102ac36600461176e565b61098e565b3480156102bd57600080fd5b50610181610ae2565b3480156102d257600080fd5b50610109610af6565b3480156102e757600080fd5b50606554610109906001600160a01b031681565b34801561030757600080fd5b50610181610316366004611620565b610b8b565b34801561032757600080fd5b50610181610336366004611620565b610c27565b34801561034757600080fd5b50610181610356366004611620565b610c9b565b34801561036757600080fd5b50610181610376366004611620565b610de6565b34801561038757600080fd5b5061018161039636600461179a565b610e53565b3480156103a757600080fd5b506101816103b636600461176e565b61106d565b60006103cf6033546001600160a01b031690565b905090565b806000816001600160a01b0316636003e4146040518163ffffffff1660e01b8152600401602060405180830381865afa158015610415573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061043991906117dc565b9050610443610af6565b6001600160a01b0316336001600160a01b0316148061046a5750336001600160a01b038316145b8061047d5750336001600160a01b038216145b8061049257506065546001600160a01b031633145b806104be57506001600160a01b0382811660009081526067602052604090206001015461010090041633145b15610523576104cc83611105565b6001600160a01b03831660008181526067602052604080822082815560010180546001600160a81b0319169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49190a2505050565b60405163e3b6914b60e01b815260040160405180910390fd5b505050565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036105925760405162461bcd60e51b8152600401610589906117f9565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166105c461112c565b6001600160a01b0316146105ea5760405162461bcd60e51b815260040161058990611833565b6105f381611148565b6040805160008082526020820190925261060f91839190611194565b50565b61061a6112ff565b61062381611105565b606580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f5117c6c457d7b27a4cb68df40b118f157ac1f1ba81f8a571d189f829d74fbc8690600090a35050565b6001600160a01b0380831660009081526066602090815260408083205485851684526067835281842082516060810184528154815260019091015460ff811615159482018590526101009004909516918501919091529192906106dd576001925050506106e3565b51111590505b92915050565b600054610100900460ff16158080156107095750600054600160ff909116105b8061072a57506107183061135e565b15801561072a575060005460ff166001145b61078d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610589565b6000805460ff1916600117905580156107b0576000805461ff0019166101001790555b6107b982610c27565b6107c283611105565b606580546001600160a01b0319166001600160a01b038516179055801561053c576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361086f5760405162461bcd60e51b8152600401610589906117f9565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166108a161112c565b6001600160a01b0316146108c75760405162461bcd60e51b815260040161058990611833565b6108d082611148565b6108dc82826001611194565b5050565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461097b5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610589565b5060008051602061191a83398151915290565b816000816001600160a01b0316636003e4146040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f391906117dc565b90506109fd610af6565b6001600160a01b0316336001600160a01b03161480610a245750336001600160a01b038316145b80610a375750336001600160a01b038216145b80610a4c57506065546001600160a01b031633145b80610a7857506001600160a01b0382811660009081526067602052604090206001015461010090041633145b1561052357610a8684611105565b6001600160a01b03841660008181526067602052604090819020859055517f40ba4d5d9facd2fda74e22251d1638576e05a30482470363c7c87a7b5b298c0990610ad39086815260200190565b60405180910390a25b50505050565b610aea6112ff565b610af4600061136d565b565b6000610b006103bb565b6001600160a01b03163b600003610b19576103cf6103bb565b610b216103bb565b6001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610b7a575060408051601f3d908101601f19168201909252610b77918101906117dc565b60015b610b86576103cf6103bb565b919050565b610b93610af6565b6001600160a01b0316336001600160a01b03161480610bbc57506065546001600160a01b031633145b15610c0e57610bca81611105565b6001600160a01b038116600081815260666020526040808220829055517fe9dce8c992623ce791725b21e857e33248d1f190a25b5168313420eebdaae99d9190a250565b604051637d7b71b560e01b815260040160405180910390fd5b600054610100900460ff16610c925760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401610589565b61060f8161136d565b806000816001600160a01b0316636003e4146040518163ffffffff1660e01b8152600401602060405180830381865afa158015610cdc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d0091906117dc565b9050610d0a610af6565b6001600160a01b0316336001600160a01b03161480610d315750336001600160a01b038316145b80610d445750336001600160a01b038216145b80610d5957506065546001600160a01b031633145b80610d8557506001600160a01b0382811660009081526067602052604090206001015461010090041633145b1561052357610d9383611105565b6001600160a01b0383166000818152606760205260408082206001908101805460ff19169091179055517f652f053fc39779b70b29678135ade972fcb79966fc68fcb77c996b1aa4fd9afb9190a2505050565b610dee6112ff565b6001600160a01b038116610c925760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610589565b826000816001600160a01b0316636003e4146040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610eb891906117dc565b9050610ec2610af6565b6001600160a01b0316336001600160a01b03161480610ee95750336001600160a01b038316145b80610efc5750336001600160a01b038216145b80610f1157506065546001600160a01b031633145b80610f3d57506001600160a01b0382811660009081526067602052604090206001015461010090041633145b1561052357610f4b85611105565b610f5483611105565b6001600160a01b038516600090815260676020526040902054151580610f9b57506001600160a01b0385811660009081526067602052604090206001015461010090041615155b15610fb95760405163c45546f760e01b815260040160405180910390fd5b60408051606081018252858152600060208083018281526001600160a01b038881168587019081528b821680865260679094528685209551865591516001909501805492516001600160a81b0319909316951515610100600160a81b03191695909517610100929091169190910217909255915190917f9b1a157188de9a0bd2e7995d72aaba244d9bd012ddf3ae3d4f492135175070cb9161105e918891889061163d565b60405180910390a25050505050565b611075610af6565b6001600160a01b0316336001600160a01b0316148061109e57506065546001600160a01b031633145b15610c0e576110ac82611105565b6001600160a01b03821660008181526066602052604090819020839055517f8b9ed475f52a60fa276f21d6848c06cbb59ebfcd26e8b8de2753c3e12a493ea7906110f99084815260200190565b60405180910390a25050565b6001600160a01b03811661060f5760405163d92e233d60e01b815260040160405180910390fd5b60008051602061191a833981519152546001600160a01b031690565b33611151610af6565b6001600160a01b03161461060f5733611168610af6565b60405163163678e960e01b81526001600160a01b03928316600482015291166024820152604401610589565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff16156111c75761053c836113bf565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611221575060408051601f3d908101601f1916820190925261121e9181019061186d565b60015b6112845760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610589565b60008051602061191a83398151915281146112f35760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610589565b5061053c838383611459565b33611308610af6565b6001600160a01b031614610af45760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610589565b6001600160a01b03163b151590565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6113c88161135e565b61142a5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610589565b60008051602061191a83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6114628361147e565b60008251118061146f5750805b1561053c57610adc83836114be565b611487816113bf565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606114e3838360405180606001604052806027815260200161193a602791396114ea565b9392505050565b6060600080856001600160a01b03168560405161150791906118aa565b600060405180830381855af49150503d8060008114611542576040519150601f19603f3d011682016040523d82523d6000602084013e611547565b606091505b509150915061155886838387611562565b9695505050505050565b606083156115cf5782516000036115c85761157c8561135e565b6115c85760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610589565b50816115d9565b6115d983836115e1565b949350505050565b8151156115f15781518083602001fd5b8060405162461bcd60e51b815260040161058991906118c6565b6001600160a01b038116811461060f57600080fd5b60006020828403121561163257600080fd5b81356114e38161160b565b92835290151560208301526001600160a01b0316604082015260600190565b6000806040838503121561166f57600080fd5b823561167a8161160b565b9150602083013561168a8161160b565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156116be57600080fd5b82356116c98161160b565b915060208301356001600160401b03808211156116e557600080fd5b818501915085601f8301126116f957600080fd5b81358181111561170b5761170b611695565b604051601f8201601f19908116603f0116810190838211818310171561173357611733611695565b8160405282815288602084870101111561174c57600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000806040838503121561178157600080fd5b823561178c8161160b565b946020939093013593505050565b6000806000606084860312156117af57600080fd5b83356117ba8161160b565b92506020840135915060408401356117d18161160b565b809150509250925092565b6000602082840312156117ee57600080fd5b81516114e38161160b565b6020808252602c908201526000805160206118fa83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206118fa83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b60006020828403121561187f57600080fd5b5051919050565b60005b838110156118a1578181015183820152602001611889565b50506000910152565b600082516118bc818460208701611886565b9190910192915050565b60208152600082518060208401526118e5816040850160208701611886565b601f01601f1916919091016040019291505056fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212207bec1f3178ddc0774310e2c6f85e704b8b7218a43525211658fc4b30ee122fa964736f6c63430008130033","sourceMap":"505:5545:62:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;525:102:63;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;178:32:70;;;160:51;;148:2;133:18;525:102:63;;;;;;;;606:45:62;;;;;;;;;;-1:-1:-1;606:45:62;;;;;:::i;:::-;;;;;;;;;;;;;;;;;756:25:70;;;744:2;729:18;606:45:62;610:177:70;4509:221:62;;;;;;;;;;-1:-1:-1;4509:221:62;;;;;:::i;:::-;;:::i;:::-;;3143:195:32;;;;;;;;;;-1:-1:-1;3143:195:32;;;;;:::i;:::-;;:::i;657:46:62:-;;;;;;;;;;-1:-1:-1;657:46:62;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;657:46:62;;;;;;;;;;;;:::i;3376:259::-;;;;;;;;;;-1:-1:-1;3376:259:62;;;;;:::i;:::-;;:::i;5689:327::-;;;;;;;;;;-1:-1:-1;5689:327:62;;;;;:::i;:::-;;:::i;:::-;;;1710:14:70;;1703:22;1685:41;;1673:2;1658:18;5689:327:62;1545:187:70;2433:196:62;;;;;;;;;;-1:-1:-1;2433:196:62;;;;;:::i;:::-;;:::i;3657:220:32:-;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;5252:272:62:-;;;;;;;;;;-1:-1:-1;5252:272:62;;;;;:::i;:::-;;:::i;2085:101:14:-;;;;;;;;;;;;;:::i;633:544:63:-;;;;;;;;;;;;;:::i;573:26:62:-;;;;;;;;;;-1:-1:-1;573:26:62;;;;-1:-1:-1;;;;;573:26:62;;;3086:177;;;;;;;;;;-1:-1:-1;3086:177:62;;;;;:::i;:::-;;:::i;404:115:63:-;;;;;;;;;;-1:-1:-1;404:115:63;;;;;:::i;:::-;;:::i;4833:223:62:-;;;;;;;;;;-1:-1:-1;4833:223:62;;;;;:::i;:::-;;:::i;2335:198:14:-;;;;;;;;;;-1:-1:-1;2335:198:14;;;;;:::i;:::-;;:::i;3803:589:62:-;;;;;;;;;;-1:-1:-1;3803:589:62;;;;;:::i;:::-;;:::i;2777:208::-;;;;;;;;;;-1:-1:-1;2777:208:62;;;;;:::i;:::-;;:::i;525:102:63:-;568:7;594:26;1534:6:14;;-1:-1:-1;;;;;1534:6:14;;1462:85;594:26:63;587:33;;525:102;:::o;4509:221:62:-;4594:9;1625:25;1684:9;-1:-1:-1;;;;;1661:52:62;;:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1625:91;;1757:7;:5;:7::i;:::-;-1:-1:-1;;;;;1743:21:62;:10;-1:-1:-1;;;;;1743:21:62;;:48;;;-1:-1:-1;1768:10:62;-1:-1:-1;;;;;1768:23:62;;;1743:48;:83;;;-1:-1:-1;1795:10:62;-1:-1:-1;;;;;1795:31:62;;;1743:83;:128;;;-1:-1:-1;1860:11:62;;-1:-1:-1;;;;;1860:11:62;1846:10;:25;1743:128;:179;;;-1:-1:-1;;;;;;1889:21:62;;;;;;;:10;:21;;;;;:33;;;;;;;1875:10;:47;1743:179;1726:296;;;4615:29:::1;4634:9;4615:18;:29::i;:::-;-1:-1:-1::0;;;;;4661:21:62;::::1;;::::0;;;:10:::1;:21;::::0;;;;;4654:28;;;::::1;;::::0;;-1:-1:-1;;;;;;4654:28:62;;;4697:26;::::1;::::0;4661:21;4697:26:::1;1615:413:::0;4509:221;;:::o;1726:296::-;1986:25;;-1:-1:-1;;;1986:25:62;;;;;;;;;;;1726:296;1615:413;4509:221;;:::o;3143:195:32:-;-1:-1:-1;;;;;1654:6:32;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:32;;;;;;;:::i;:::-;;;;;;;;;1751:6;-1:-1:-1;;;;;1727:30:32;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:32;;1719:87;;;;-1:-1:-1;;;1719:87:32;;;;;;;:::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;3376:259:62:-;1355:13:14;:11;:13::i;:::-;3462:31:62::1;3481:11;3462:18;:31::i;:::-;3524:11;::::0;;-1:-1:-1;;;;;3545:25:62;;::::1;-1:-1:-1::0;;;;;;3545:25:62;::::1;::::0;::::1;::::0;;;3585:43:::1;::::0;3524:11;::::1;::::0;3545:25;3524:11;;3585:43:::1;::::0;3503:18:::1;::::0;3585:43:::1;3452:183;3376:259:::0;:::o;5689:327::-;-1:-1:-1;;;;;5817:17:62;;;5781:4;5817:17;;;:10;:17;;;;;;;;;5871:21;;;;;:10;:21;;;;;5844:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5781:4;;5844:48;5903:58;;5946:4;5939:11;;;;;;5903:58;5991:18;-1:-1:-1;5978:31:62;;-1:-1:-1;5689:327:62;;;;;:::o;2433:196::-;3279:19:16;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:16;;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:16;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:16;;5208:2:70;3325:201:16;;;5190:21:70;5247:2;5227:18;;;5220:30;5286:34;5266:18;;;5259:62;-1:-1:-1;;;5337:18:70;;;5330:44;5391:19;;3325:201:16;5006:410:70;3325:201:16;3536:12;:16;;-1:-1:-1;;3536:16:16;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:16;;;;;3562:65;2520:24:62::1;2537:6;2520:16;:24::i;:::-;2554:32;2573:12;2554:18;:32::i;:::-;2596:11;:26:::0;;-1:-1:-1;;;;;;2596:26:62::1;-1:-1:-1::0;;;;;2596:26:62;::::1;;::::0;;3647:99:16;;;;3697:5;3681:21;;-1:-1:-1;;3681:21:16;;;3721:14;;-1:-1:-1;5573:36:70;;3721:14:16;;5561:2:70;5546:18;3721:14:16;;;;;;;3269:483;2433:196:62;;:::o;3657:220:32:-;-1:-1:-1;;;;;1654:6:32;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:32;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:32;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:32;;1719:87;;;;-1:-1:-1;;;1719:87:32;;;;;;;:::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:32;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:32;;5822:2:70;2064:92:32;;;5804:21:70;5861:2;5841:18;;;5834:30;5900:34;5880:18;;;5873:62;-1:-1:-1;;;5951:18:70;;;5944:54;6015:19;;2064:92:32;5620:420:70;2064:92:32;-1:-1:-1;;;;;;;;;;;;2762:131:32;:::o;5252:272:62:-;5352:9;1625:25;1684:9;-1:-1:-1;;;;;1661:52:62;;:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1625:91;;1757:7;:5;:7::i;:::-;-1:-1:-1;;;;;1743:21:62;:10;-1:-1:-1;;;;;1743:21:62;;:48;;;-1:-1:-1;1768:10:62;-1:-1:-1;;;;;1768:23:62;;;1743:48;:83;;;-1:-1:-1;1795:10:62;-1:-1:-1;;;;;1795:31:62;;;1743:83;:128;;;-1:-1:-1;1860:11:62;;-1:-1:-1;;;;;1860:11:62;1846:10;:25;1743:128;:179;;;-1:-1:-1;;;;;;1889:21:62;;;;;;;:10;:21;;;;;:33;;;;;;;1875:10;:47;1743:179;1726:296;;;5373:29:::1;5392:9;5373:18;:29::i;:::-;-1:-1:-1::0;;;;;5412:21:62;::::1;;::::0;;;:10:::1;:21;::::0;;;;;;:47;;;5474:43;::::1;::::0;::::1;::::0;5446:13;756:25:70;;744:2;729:18;;610:177;5474:43:62::1;;;;;;;;1726:296:::0;1615:413;5252:272;;;:::o;2085:101:14:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;633:544:63:-;680:7;763:12;:10;:12::i;:::-;-1:-1:-1;;;;;755:33:63;;792:1;755:38;751:420;;877:12;:10;:12::i;751:420::-;943:12;:10;:12::i;:::-;-1:-1:-1;;;;;924:38:63;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;924:40:63;;;;;;;;-1:-1:-1;;924:40:63;;;;;;;;;;;;:::i;:::-;;;920:241;;1134:12;:10;:12::i;920:241::-;1015:6;633:544;-1:-1:-1;633:544:63:o;3086:177:62:-;1433:7;:5;:7::i;:::-;-1:-1:-1;;;;;1419:21:62;:10;-1:-1:-1;;;;;1419:21:62;;:50;;;-1:-1:-1;1458:11:62;;-1:-1:-1;;;;;1458:11:62;1444:10;:25;1419:50;1415:136;;;3164:25:::1;3183:5;3164:18;:25::i;:::-;-1:-1:-1::0;;;;;3206:17:62;::::1;;::::0;;;:10:::1;:17;::::0;;;;;3199:24;;;3238:18;::::1;::::0;3206:17;3238:18:::1;3143:195:32::0;:::o;1415:136:62:-;1524:16;;-1:-1:-1;;;1524:16:62;;;;;;;;;;;404:115:63;5374:13:16;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:16;;6503:2:70;5366:69:16;;;6485:21:70;6542:2;6522:18;;;6515:30;6581:34;6561:18;;;6554:62;-1:-1:-1;;;6632:18:70;;;6625:41;6683:19;;5366:69:16;6301:407:70;5366:69:16;480:32:63::1;499:12;480:18;:32::i;4833:223:62:-:0;4911:9;1625:25;1684:9;-1:-1:-1;;;;;1661:52:62;;:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1625:91;;1757:7;:5;:7::i;:::-;-1:-1:-1;;;;;1743:21:62;:10;-1:-1:-1;;;;;1743:21:62;;:48;;;-1:-1:-1;1768:10:62;-1:-1:-1;;;;;1768:23:62;;;1743:48;:83;;;-1:-1:-1;1795:10:62;-1:-1:-1;;;;;1795:31:62;;;1743:83;:128;;;-1:-1:-1;1860:11:62;;-1:-1:-1;;;;;1860:11:62;1846:10;:25;1743:128;:179;;;-1:-1:-1;;;;;;1889:21:62;;;;;;;:10;:21;;;;;:33;;;;;;;1875:10;:47;1743:179;1726:296;;;4932:29:::1;4951:9;4932:18;:29::i;:::-;-1:-1:-1::0;;;;;4971:21:62;::::1;;::::0;;;:10:::1;:21;::::0;;;;;5002:4:::1;4971:28:::0;;::::1;:35:::0;;-1:-1:-1;;4971:35:62::1;::::0;;::::1;::::0;;5021:28;::::1;::::0;4971:21;5021:28:::1;1615:413:::0;4509:221;;:::o;2335:198:14:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:14;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:14;;6915:2:70;2415:73:14::1;::::0;::::1;6897:21:70::0;6954:2;6934:18;;;6927:30;6993:34;6973:18;;;6966:62;-1:-1:-1;;;7044:18:70;;;7037:36;7090:19;;2415:73:14::1;6713:402:70::0;3803:589:62;3951:9;1625:25;1684:9;-1:-1:-1;;;;;1661:52:62;;:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1625:91;;1757:7;:5;:7::i;:::-;-1:-1:-1;;;;;1743:21:62;:10;-1:-1:-1;;;;;1743:21:62;;:48;;;-1:-1:-1;1768:10:62;-1:-1:-1;;;;;1768:23:62;;;1743:48;:83;;;-1:-1:-1;1795:10:62;-1:-1:-1;;;;;1795:31:62;;;1743:83;:128;;;-1:-1:-1;1860:11:62;;-1:-1:-1;;;;;1860:11:62;1846:10;:25;1743:128;:179;;;-1:-1:-1;;;;;;1889:21:62;;;;;;;:10;:21;;;;;:33;;;;;;;1875:10;:47;1743:179;1726:296;;;3976:29:::1;3995:9;3976:18;:29::i;:::-;4015:32;4034:12;4015:18;:32::i;:::-;-1:-1:-1::0;;;;;4061:21:62;::::1;;::::0;;;:10:::1;:21;::::0;;;;:31;:36;::::1;::::0;:87:::1;;-1:-1:-1::0;;;;;;4101:21:62;;::::1;4146:1;4101:21:::0;;;:10:::1;:21;::::0;;;;:33:::1;;::::0;::::1;::::0;::::1;;:47:::0;::::1;4061:87;4057:148;;;4171:23;;-1:-1:-1::0;;;4171:23:62::1;;;;;;;;;;;4057:148;4238:75;::::0;;::::1;::::0;::::1;::::0;;;;;-1:-1:-1;4238:75:62::1;::::0;;::::1;::::0;;;-1:-1:-1;;;;;4238:75:62;;::::1;::::0;;;;;;4214:21;;::::1;::::0;;;:10:::1;:21:::0;;;;;;:99;;;;;;4238:75;4214:99;;::::1;::::0;;;;-1:-1:-1;;;;;;4214:99:62;;;;::::1;;-1:-1:-1::0;;;;;;4214:99:62;;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;;;4328:57;;4214:21;;4328:57:::1;::::0;::::1;::::0;4238:75;;;;4328:57:::1;:::i;:::-;;;;;;;;1615:413:::0;3803:589;;;;:::o;2777:208::-;1433:7;:5;:7::i;:::-;-1:-1:-1;;;;;1419:21:62;:10;-1:-1:-1;;;;;1419:21:62;;:50;;;-1:-1:-1;1458:11:62;;-1:-1:-1;;;;;1458:11:62;1444:10;:25;1419:50;1415:136;;;2873:25:::1;2892:5;2873:18;:25::i;:::-;-1:-1:-1::0;;;;;2908:17:62;::::1;;::::0;;;:10:::1;:17;::::0;;;;;;:26;;;2949:29;::::1;::::0;::::1;::::0;2928:6;756:25:70;;744:2;729:18;;610:177;2949:29:62::1;;;;;;;;3657:220:32::0;;:::o;2226:148:62:-;-1:-1:-1;;;;;2299:22:62;;2295:73;;2344:13;;-1:-1:-1;;;2344:13:62;;;;;;;;;;;1175:140:28;-1:-1:-1;;;;;;;;;;;1254:54:28;-1:-1:-1;;;;;1254:54:28;;1175:140::o;1183:169:63:-;1267:10;1256:7;:5;:7::i;:::-;-1:-1:-1;;;;;1256:21:63;;1252:94;;1315:10;1327:7;:5;:7::i;:::-;1300:35;;-1:-1:-1;;;1300:35:63;;-1:-1:-1;;;;;7350:15:70;;;1300:35:63;;;7332:34:70;7402:15;;7382:18;;;7375:43;7267:18;;1300:35:63;7120:304:70;2494:922:28;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:28;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:28;;;;;;;;-1:-1:-1;;3046:52:28;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:28;;7820:2:70;3262:56:28;;;7802:21:70;7859:2;7839:18;;;7832:30;7898:34;7878:18;;;7871:62;-1:-1:-1;;;7949:18:70;;;7942:44;8003:19;;3262:56:28;7618:410:70;3042:291:28;-1:-1:-1;;;;;;;;;;;3148:28:28;;3140:82;;;;-1:-1:-1;;;3140:82:28;;8235:2:70;3140:82:28;;;8217:21:70;8274:2;8254:18;;;8247:30;8313:34;8293:18;;;8286:62;-1:-1:-1;;;8364:18:70;;;8357:39;8413:19;;3140:82:28;8033:405:70;3140:82:28;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;1620:130:14:-;965:10:19;1683:7:14;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:14;;1675:68;;;;-1:-1:-1;;;1675:68:14;;8645:2:70;1675:68:14;;;8627:21:70;;;8664:18;;;8657:30;8723:34;8703:18;;;8696:62;8775:18;;1675:68:14;8443:356:70;1423:320:18;-1:-1:-1;;;;;1713:19:18;;:23;;;1423:320::o;2687:187:14:-;2779:6;;;-1:-1:-1;;;;;2795:17:14;;;-1:-1:-1;;;;;;2795:17:14;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;1406:259:28:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:28;;9006:2:70;1479:95:28;;;8988:21:70;9045:2;9025:18;;;9018:30;9084:34;9064:18;;;9057:62;-1:-1:-1;;;9135:18:70;;;9128:43;9188:19;;1479:95:28;8804:409:70;1479:95:28;-1:-1:-1;;;;;;;;;;;1584:74:28;;-1:-1:-1;;;;;;1584:74:28;-1:-1:-1;;;;;1584:74:28;;;;;;;;;;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;1771:152::-;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:28;;;;;;;;1771:152;:::o;6674:198:38:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;:::-;6781:84;6674:198;-1:-1:-1;;;6674:198:38:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:38;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:38: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:38;;9967:2:70;8113:60:38;;;9949:21:70;10006:2;9986:18;;;9979:30;10045:31;10025:18;;;10018:59;10094:18;;8113:60:38;9765:353:70;8113:60:38;-1:-1:-1;8208:10:38;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:38;;;;;;;;:::i;222:131:70:-;-1:-1:-1;;;;;297:31:70;;287:42;;277:70;;343:1;340;333:12;358:247;417:6;470:2;458:9;449:7;445:23;441:32;438:52;;;486:1;483;476:12;438:52;525:9;512:23;544:31;569:5;544:31;:::i;792:355::-;988:25;;;1056:14;;1049:22;1044:2;1029:18;;1022:50;-1:-1:-1;;;;;1108:32:70;1103:2;1088:18;;1081:60;976:2;961:18;;792:355::o;1152:388::-;1220:6;1228;1281:2;1269:9;1260:7;1256:23;1252:32;1249:52;;;1297:1;1294;1287:12;1249:52;1336:9;1323:23;1355:31;1380:5;1355:31;:::i;:::-;1405:5;-1:-1:-1;1462:2:70;1447:18;;1434:32;1475:33;1434:32;1475:33;:::i;:::-;1527:7;1517:17;;;1152:388;;;;;:::o;1737:127::-;1798:10;1793:3;1789:20;1786:1;1779:31;1829:4;1826:1;1819:15;1853:4;1850:1;1843:15;1869:1056;1946:6;1954;2007:2;1995:9;1986:7;1982:23;1978:32;1975:52;;;2023:1;2020;2013:12;1975:52;2062:9;2049:23;2081:31;2106:5;2081:31;:::i;:::-;2131:5;-1:-1:-1;2187:2:70;2172:18;;2159:32;-1:-1:-1;;;;;2240:14:70;;;2237:34;;;2267:1;2264;2257:12;2237:34;2305:6;2294:9;2290:22;2280:32;;2350:7;2343:4;2339:2;2335:13;2331:27;2321:55;;2372:1;2369;2362:12;2321:55;2408:2;2395:16;2430:2;2426;2423:10;2420:36;;;2436:18;;:::i;:::-;2511:2;2505:9;2479:2;2565:13;;-1:-1:-1;;2561:22:70;;;2585:2;2557:31;2553:40;2541:53;;;2609:18;;;2629:22;;;2606:46;2603:72;;;2655:18;;:::i;:::-;2695:10;2691:2;2684:22;2730:2;2722:6;2715:18;2770:7;2765:2;2760;2756;2752:11;2748:20;2745:33;2742:53;;;2791:1;2788;2781:12;2742:53;2847:2;2842;2838;2834:11;2829:2;2821:6;2817:15;2804:46;2892:1;2887:2;2882;2874:6;2870:15;2866:24;2859:35;2913:6;2903:16;;;;;;;1869:1056;;;;;:::o;3112:315::-;3180:6;3188;3241:2;3229:9;3220:7;3216:23;3212:32;3209:52;;;3257:1;3254;3247:12;3209:52;3296:9;3283:23;3315:31;3340:5;3315:31;:::i;:::-;3365:5;3417:2;3402:18;;;;3389:32;;-1:-1:-1;;;3112:315:70:o;3432:456::-;3509:6;3517;3525;3578:2;3566:9;3557:7;3553:23;3549:32;3546:52;;;3594:1;3591;3584:12;3546:52;3633:9;3620:23;3652:31;3677:5;3652:31;:::i;:::-;3702:5;-1:-1:-1;3754:2:70;3739:18;;3726:32;;-1:-1:-1;3810:2:70;3795:18;;3782:32;3823:33;3782:32;3823:33;:::i;:::-;3875:7;3865:17;;;3432:456;;;;;:::o;3893:282::-;3994:6;4047:2;4035:9;4026:7;4022:23;4018:32;4015:52;;;4063:1;4060;4053:12;4015:52;4095:9;4089:16;4114:31;4139:5;4114:31;:::i;4180:408::-;4382:2;4364:21;;;4421:2;4401:18;;;4394:30;-1:-1:-1;;;;;;;;;;;4455:2:70;4440:18;;4433:62;-1:-1:-1;;;4526:2:70;4511:18;;4504:42;4578:3;4563:19;;4180:408::o;4593:::-;4795:2;4777:21;;;4834:2;4814:18;;;4807:30;-1:-1:-1;;;;;;;;;;;4868:2:70;4853:18;;4846:62;-1:-1:-1;;;4939:2:70;4924:18;;4917:42;4991:3;4976:19;;4593:408::o;7429:184::-;7499:6;7552:2;7540:9;7531:7;7527:23;7523:32;7520:52;;;7568:1;7565;7558:12;7520:52;-1:-1:-1;7591:16:70;;7429:184;-1:-1:-1;7429:184:70:o;9218:250::-;9303:1;9313:113;9327:6;9324:1;9321:13;9313:113;;;9403:11;;;9397:18;9384:11;;;9377:39;9349:2;9342:10;9313:113;;;-1:-1:-1;;9460:1:70;9442:16;;9435:27;9218:250::o;9473:287::-;9602:3;9640:6;9634:13;9656:66;9715:6;9710:3;9703:4;9695:6;9691:17;9656:66;:::i;:::-;9738:16;;;;;9473:287;-1:-1:-1;;9473:287:70:o;10123:396::-;10272:2;10261:9;10254:21;10235:4;10304:6;10298:13;10347:6;10342:2;10331:9;10327:18;10320:34;10363:79;10435:6;10430:2;10419:9;10415:18;10410:2;10402:6;10398:15;10363:79;:::i;:::-;10503:2;10482:15;-1:-1:-1;;10478:29:70;10463:45;;;;10510:2;10459:54;;10123:396;-1:-1:-1;;10123:396:70:o","linkReferences":{},"immutableReferences":{"16633":[{"start":1355,"length":32},{"start":1428,"length":32},{"start":2097,"length":32},{"start":2161,"length":32},{"start":2285,"length":32}]}},"methodIdentifiers":{"activateStrategy(address)":"d80ea5a0","addStrategy(address,uint256,address)":"fc2ebdd1","addUserScore(address,uint256)":"feec7145","canExecuteAction(address,address)":"42a987a0","changeListManager(address)":"3d476830","initialize(address)":"c4d66de8","initialize(address,address)":"485cc955","listManager()":"8df8b2fe","modifyThreshold(address,uint256)":"642ce76b","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","proxyOwner()":"025313a2","removeStrategy(address)":"175188e8","removeUser(address)":"98575188","renounceOwnership()":"715018a6","strategies(address)":"39ebf823","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286","userScores(address)":"1413d4c0"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyAuthorized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyAuthorizedOrUser\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCouncilOrAuthorized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyAlreadyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZeroAddress\",\"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\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldManager\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newManager\",\"type\":\"address\"}],\"name\":\"ListManagerChanged\",\"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\":true,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"StrategyActivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"councilSafe\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newThreshold\",\"type\":\"uint256\"}],\"name\":\"ThresholdModified\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"UserRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"score\",\"type\":\"uint256\"}],\"name\":\"UserScoreAdded\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_threshold\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_councilSafe\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_score\",\"type\":\"uint256\"}],\"name\":\"addUserScore\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"canExecuteAction\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newManager\",\"type\":\"address\"}],\"name\":\"changeListManager\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_listManager\",\"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\":[],\"name\":\"listManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newThreshold\",\"type\":\"uint256\"}],\"name\":\"modifyThreshold\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":\"proxyOwner\",\"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\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"removeUser\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"strategies\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"councilSafe\",\"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\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"userScores\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"PassportScorer\",\"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\":{\"activateStrategy(address)\":{\"params\":{\"_strategy\":\"address of the strategy to activate\"}},\"addStrategy(address,uint256,address)\":{\"params\":{\"_councilSafe\":\"address of the council safe\",\"_threshold\":\"is expressed on a scale of 10**4\"}},\"addUserScore(address,uint256)\":{\"params\":{\"_score\":\"score to assign to the user\",\"_user\":\"address of the user to add\"}},\"canExecuteAction(address,address)\":{\"params\":{\"_strategy\":\"address of the strategy to check\",\"_user\":\"address of the user to check\"}},\"changeListManager(address)\":{\"params\":{\"_newManager\":\"address of the new list manager\"}},\"modifyThreshold(address,uint256)\":{\"params\":{\"_newThreshold\":\"new threshold to set expressed on a scale of 10**4\",\"_strategy\":\"address of the strategy to modify\"}},\"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.\"},\"removeStrategy(address)\":{\"params\":{\"_strategy\":\"address of the strategy to remove\"}},\"removeUser(address)\":{\"params\":{\"_user\":\"address of the user to remove\"}},\"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\":{\"activateStrategy(address)\":{\"notice\":\"Activate a strategy\"},\"addStrategy(address,uint256,address)\":{\"notice\":\"Add a strategy to the contract\"},\"addUserScore(address,uint256)\":{\"notice\":\"Add a userScore to the list\"},\"canExecuteAction(address,address)\":{\"notice\":\"Check if an action can be executed\"},\"changeListManager(address)\":{\"notice\":\"Change the list manager address\"},\"modifyThreshold(address,uint256)\":{\"notice\":\"Modify the threshold of a strategy\"},\"removeStrategy(address)\":{\"notice\":\"Remove a strategy from the contract\"},\"removeUser(address)\":{\"notice\":\"Remove a user from the list\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/PassportScorer.sol\":\"PassportScorer\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda\",\"dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"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":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"OnlyAuthorized"},{"inputs":[],"type":"error","name":"OnlyAuthorizedOrUser"},{"inputs":[],"type":"error","name":"OnlyCouncil"},{"inputs":[],"type":"error","name":"OnlyCouncilOrAuthorized"},{"inputs":[],"type":"error","name":"StrategyAlreadyExists"},{"inputs":[],"type":"error","name":"ZeroAddress"},{"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":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"oldManager","type":"address","indexed":true},{"internalType":"address","name":"newManager","type":"address","indexed":true}],"type":"event","name":"ListManagerChanged","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":"strategy","type":"address","indexed":true}],"type":"event","name":"StrategyActivated","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":true},{"internalType":"uint256","name":"threshold","type":"uint256","indexed":false},{"internalType":"bool","name":"active","type":"bool","indexed":false},{"internalType":"address","name":"councilSafe","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":true}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":true},{"internalType":"uint256","name":"newThreshold","type":"uint256","indexed":false}],"type":"event","name":"ThresholdModified","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"user","type":"address","indexed":true}],"type":"event","name":"UserRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"user","type":"address","indexed":true},{"internalType":"uint256","name":"score","type":"uint256","indexed":false}],"type":"event","name":"UserScoreAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateStrategy"},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"uint256","name":"_threshold","type":"uint256"},{"internalType":"address","name":"_councilSafe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_score","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addUserScore"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"canExecuteAction","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_newManager","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"changeListManager"},{"inputs":[{"internalType":"address","name":"_listManager","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":[],"stateMutability":"view","type":"function","name":"listManager","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"uint256","name":"_newThreshold","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"modifyThreshold"},{"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":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeUser"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"strategies","outputs":[{"internalType":"uint256","name":"threshold","type":"uint256"},{"internalType":"bool","name":"active","type":"bool"},{"internalType":"address","name":"councilSafe","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"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"userScores","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{"activateStrategy(address)":{"params":{"_strategy":"address of the strategy to activate"}},"addStrategy(address,uint256,address)":{"params":{"_councilSafe":"address of the council safe","_threshold":"is expressed on a scale of 10**4"}},"addUserScore(address,uint256)":{"params":{"_score":"score to assign to the user","_user":"address of the user to add"}},"canExecuteAction(address,address)":{"params":{"_strategy":"address of the strategy to check","_user":"address of the user to check"}},"changeListManager(address)":{"params":{"_newManager":"address of the new list manager"}},"modifyThreshold(address,uint256)":{"params":{"_newThreshold":"new threshold to set expressed on a scale of 10**4","_strategy":"address of the strategy to modify"}},"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."},"removeStrategy(address)":{"params":{"_strategy":"address of the strategy to remove"}},"removeUser(address)":{"params":{"_user":"address of the user to remove"}},"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":{"activateStrategy(address)":{"notice":"Activate a strategy"},"addStrategy(address,uint256,address)":{"notice":"Add a strategy to the contract"},"addUserScore(address,uint256)":{"notice":"Add a userScore to the list"},"canExecuteAction(address,address)":{"notice":"Check if an action can be executed"},"changeListManager(address)":{"notice":"Change the list manager address"},"modifyThreshold(address,uint256)":{"notice":"Modify the threshold of a strategy"},"removeStrategy(address)":{"notice":"Remove a strategy from the contract"},"removeUser(address)":{"notice":"Remove a user from the list"}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/PassportScorer.sol":"PassportScorer"},"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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f","urls":["bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda","dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"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":14129,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":14132,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":14756,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":13921,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":14041,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":30248,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"listManager","offset":0,"slot":"101","type":"t_address"},{"astId":30252,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"userScores","offset":0,"slot":"102","type":"t_mapping(t_address,t_uint256)"},{"astId":30257,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"strategies","offset":0,"slot":"103","type":"t_mapping(t_address,t_struct(Strategy)30175_storage)"},{"astId":30699,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"__gap","offset":0,"slot":"104","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(Strategy)30175_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Strategy)","numberOfBytes":"32","value":"t_struct(Strategy)30175_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_struct(Strategy)30175_storage":{"encoding":"inplace","label":"struct Strategy","numberOfBytes":"64","members":[{"astId":30170,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"threshold","offset":0,"slot":"0","type":"t_uint256"},{"astId":30172,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"active","offset":0,"slot":"1","type":"t_bool"},{"astId":30174,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"councilSafe","offset":1,"slot":"1","type":"t_address"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/PassportScorer.sol","id":30701,"exportedSymbols":{"CVStrategyV0_0":[30151],"ISybilScorer":[30228],"OwnableUpgradeable":[14042],"PassportScorer":[30700],"ProxyOwnableUpgrader":[30801],"Strategy":[30175],"UUPSUpgradeable":[16733]},"nodeType":"SourceUnit","src":"46:6005:62","nodes":[{"id":30230,"nodeType":"PragmaDirective","src":"46:24:62","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":30232,"nodeType":"ImportDirective","src":"72:64:62","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"./ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":30701,"sourceUnit":30802,"symbolAliases":[{"foreign":{"id":30231,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30801,"src":"80:20:62","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30235,"nodeType":"ImportDirective","src":"137:58:62","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"./ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":30701,"sourceUnit":30229,"symbolAliases":[{"foreign":{"id":30233,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30228,"src":"145:12:62","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":30234,"name":"Strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30175,"src":"159:8:62","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30237,"nodeType":"ImportDirective","src":"196:88:62","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":30701,"sourceUnit":16734,"symbolAliases":[{"foreign":{"id":30236,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16733,"src":"204:15:62","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30239,"nodeType":"ImportDirective","src":"285:110:62","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":30701,"sourceUnit":14043,"symbolAliases":[{"foreign":{"id":30238,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14042,"src":"293:18:62","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30241,"nodeType":"ImportDirective","src":"396:63:62","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"./CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":30701,"sourceUnit":30152,"symbolAliases":[{"foreign":{"id":30240,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30151,"src":"404:14:62","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30700,"nodeType":"ContractDefinition","src":"505:5545:62","nodes":[{"id":30248,"nodeType":"VariableDeclaration","src":"573:26:62","nodes":[],"constant":false,"functionSelector":"8df8b2fe","mutability":"mutable","name":"listManager","nameLocation":"588:11:62","scope":30700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30247,"name":"address","nodeType":"ElementaryTypeName","src":"573:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":30252,"nodeType":"VariableDeclaration","src":"606:45:62","nodes":[],"constant":false,"functionSelector":"1413d4c0","mutability":"mutable","name":"userScores","nameLocation":"641:10:62","scope":30700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":30251,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":30249,"name":"address","nodeType":"ElementaryTypeName","src":"614:7:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"606:27:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":30250,"name":"uint256","nodeType":"ElementaryTypeName","src":"625:7:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":30257,"nodeType":"VariableDeclaration","src":"657:46:62","nodes":[],"constant":false,"functionSelector":"39ebf823","mutability":"mutable","name":"strategies","nameLocation":"693:10:62","scope":30700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$30175_storage_$","typeString":"mapping(address => struct Strategy)"},"typeName":{"id":30256,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":30253,"name":"address","nodeType":"ElementaryTypeName","src":"665:7:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"657:28:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$30175_storage_$","typeString":"mapping(address => struct Strategy)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":30255,"nodeType":"UserDefinedTypeName","pathNode":{"id":30254,"name":"Strategy","nameLocations":["676:8:62"],"nodeType":"IdentifierPath","referencedDeclaration":30175,"src":"676:8:62"},"referencedDeclaration":30175,"src":"676:8:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_storage_ptr","typeString":"struct Strategy"}}},"visibility":"public"},{"id":30263,"nodeType":"EventDefinition","src":"710:58:62","nodes":[],"anonymous":false,"eventSelector":"8b9ed475f52a60fa276f21d6848c06cbb59ebfcd26e8b8de2753c3e12a493ea7","name":"UserScoreAdded","nameLocation":"716:14:62","parameters":{"id":30262,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30259,"indexed":true,"mutability":"mutable","name":"user","nameLocation":"747:4:62","nodeType":"VariableDeclaration","scope":30263,"src":"731:20:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30258,"name":"address","nodeType":"ElementaryTypeName","src":"731:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30261,"indexed":false,"mutability":"mutable","name":"score","nameLocation":"761:5:62","nodeType":"VariableDeclaration","scope":30263,"src":"753:13:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30260,"name":"uint256","nodeType":"ElementaryTypeName","src":"753:7:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"730:37:62"}},{"id":30267,"nodeType":"EventDefinition","src":"773:40:62","nodes":[],"anonymous":false,"eventSelector":"e9dce8c992623ce791725b21e857e33248d1f190a25b5168313420eebdaae99d","name":"UserRemoved","nameLocation":"779:11:62","parameters":{"id":30266,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30265,"indexed":true,"mutability":"mutable","name":"user","nameLocation":"807:4:62","nodeType":"VariableDeclaration","scope":30267,"src":"791:20:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30264,"name":"address","nodeType":"ElementaryTypeName","src":"791:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"790:22:62"}},{"id":30273,"nodeType":"EventDefinition","src":"818:81:62","nodes":[],"anonymous":false,"eventSelector":"5117c6c457d7b27a4cb68df40b118f157ac1f1ba81f8a571d189f829d74fbc86","name":"ListManagerChanged","nameLocation":"824:18:62","parameters":{"id":30272,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30269,"indexed":true,"mutability":"mutable","name":"oldManager","nameLocation":"859:10:62","nodeType":"VariableDeclaration","scope":30273,"src":"843:26:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30268,"name":"address","nodeType":"ElementaryTypeName","src":"843:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30271,"indexed":true,"mutability":"mutable","name":"newManager","nameLocation":"887:10:62","nodeType":"VariableDeclaration","scope":30273,"src":"871:26:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30270,"name":"address","nodeType":"ElementaryTypeName","src":"871:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"842:56:62"}},{"id":30283,"nodeType":"EventDefinition","src":"904:99:62","nodes":[],"anonymous":false,"eventSelector":"9b1a157188de9a0bd2e7995d72aaba244d9bd012ddf3ae3d4f492135175070cb","name":"StrategyAdded","nameLocation":"910:13:62","parameters":{"id":30282,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30275,"indexed":true,"mutability":"mutable","name":"strategy","nameLocation":"940:8:62","nodeType":"VariableDeclaration","scope":30283,"src":"924:24:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30274,"name":"address","nodeType":"ElementaryTypeName","src":"924:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30277,"indexed":false,"mutability":"mutable","name":"threshold","nameLocation":"958:9:62","nodeType":"VariableDeclaration","scope":30283,"src":"950:17:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30276,"name":"uint256","nodeType":"ElementaryTypeName","src":"950:7:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":30279,"indexed":false,"mutability":"mutable","name":"active","nameLocation":"974:6:62","nodeType":"VariableDeclaration","scope":30283,"src":"969:11:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":30278,"name":"bool","nodeType":"ElementaryTypeName","src":"969:4:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":30281,"indexed":false,"mutability":"mutable","name":"councilSafe","nameLocation":"990:11:62","nodeType":"VariableDeclaration","scope":30283,"src":"982:19:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30280,"name":"address","nodeType":"ElementaryTypeName","src":"982:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"923:79:62"}},{"id":30287,"nodeType":"EventDefinition","src":"1008:48:62","nodes":[],"anonymous":false,"eventSelector":"09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4","name":"StrategyRemoved","nameLocation":"1014:15:62","parameters":{"id":30286,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30285,"indexed":true,"mutability":"mutable","name":"strategy","nameLocation":"1046:8:62","nodeType":"VariableDeclaration","scope":30287,"src":"1030:24:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30284,"name":"address","nodeType":"ElementaryTypeName","src":"1030:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1029:26:62"}},{"id":30291,"nodeType":"EventDefinition","src":"1061:50:62","nodes":[],"anonymous":false,"eventSelector":"652f053fc39779b70b29678135ade972fcb79966fc68fcb77c996b1aa4fd9afb","name":"StrategyActivated","nameLocation":"1067:17:62","parameters":{"id":30290,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30289,"indexed":true,"mutability":"mutable","name":"strategy","nameLocation":"1101:8:62","nodeType":"VariableDeclaration","scope":30291,"src":"1085:24:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30288,"name":"address","nodeType":"ElementaryTypeName","src":"1085:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1084:26:62"}},{"id":30297,"nodeType":"EventDefinition","src":"1116:72:62","nodes":[],"anonymous":false,"eventSelector":"40ba4d5d9facd2fda74e22251d1638576e05a30482470363c7c87a7b5b298c09","name":"ThresholdModified","nameLocation":"1122:17:62","parameters":{"id":30296,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30293,"indexed":true,"mutability":"mutable","name":"strategy","nameLocation":"1156:8:62","nodeType":"VariableDeclaration","scope":30297,"src":"1140:24:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30292,"name":"address","nodeType":"ElementaryTypeName","src":"1140:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30295,"indexed":false,"mutability":"mutable","name":"newThreshold","nameLocation":"1174:12:62","nodeType":"VariableDeclaration","scope":30297,"src":"1166:20:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30294,"name":"uint256","nodeType":"ElementaryTypeName","src":"1166:7:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1139:48:62"}},{"id":30299,"nodeType":"ErrorDefinition","src":"1194:23:62","nodes":[],"errorSelector":"7d7b71b5","name":"OnlyAuthorized","nameLocation":"1200:14:62","parameters":{"id":30298,"nodeType":"ParameterList","parameters":[],"src":"1214:2:62"}},{"id":30301,"nodeType":"ErrorDefinition","src":"1222:29:62","nodes":[],"errorSelector":"545d3289","name":"OnlyAuthorizedOrUser","nameLocation":"1228:20:62","parameters":{"id":30300,"nodeType":"ParameterList","parameters":[],"src":"1248:2:62"}},{"id":30303,"nodeType":"ErrorDefinition","src":"1256:32:62","nodes":[],"errorSelector":"e3b6914b","name":"OnlyCouncilOrAuthorized","nameLocation":"1262:23:62","parameters":{"id":30302,"nodeType":"ParameterList","parameters":[],"src":"1285:2:62"}},{"id":30305,"nodeType":"ErrorDefinition","src":"1293:20:62","nodes":[],"errorSelector":"97ffbac9","name":"OnlyCouncil","nameLocation":"1299:11:62","parameters":{"id":30304,"nodeType":"ParameterList","parameters":[],"src":"1310:2:62"}},{"id":30307,"nodeType":"ErrorDefinition","src":"1318:20:62","nodes":[],"errorSelector":"d92e233d","name":"ZeroAddress","nameLocation":"1324:11:62","parameters":{"id":30306,"nodeType":"ParameterList","parameters":[],"src":"1335:2:62"}},{"id":30309,"nodeType":"ErrorDefinition","src":"1343:30:62","nodes":[],"errorSelector":"c45546f7","name":"StrategyAlreadyExists","nameLocation":"1349:21:62","parameters":{"id":30308,"nodeType":"ParameterList","parameters":[],"src":"1370:2:62"}},{"id":30329,"nodeType":"ModifierDefinition","src":"1379:178:62","nodes":[],"body":{"id":30328,"nodeType":"Block","src":"1405:152:62","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":30320,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":30315,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":30311,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1419:3:62","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":30312,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1423:6:62","memberName":"sender","nodeType":"MemberAccess","src":"1419:10:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":30313,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[30779],"referencedDeclaration":30779,"src":"1433:5:62","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":30314,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1433:7:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1419:21:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":30319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":30316,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1444:3:62","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":30317,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1448:6:62","memberName":"sender","nodeType":"MemberAccess","src":"1444:10:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":30318,"name":"listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30248,"src":"1458:11:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1444:25:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1419:50:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":30326,"nodeType":"Block","src":"1503:48:62","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":30323,"name":"OnlyAuthorized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30299,"src":"1524:14:62","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":30324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1524:16:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30325,"nodeType":"RevertStatement","src":"1517:23:62"}]},"id":30327,"nodeType":"IfStatement","src":"1415:136:62","trueBody":{"id":30322,"nodeType":"Block","src":"1471:26:62","statements":[{"id":30321,"nodeType":"PlaceholderStatement","src":"1485:1:62"}]}}]},"name":"onlyAuthorized","nameLocation":"1388:14:62","parameters":{"id":30310,"nodeType":"ParameterList","parameters":[],"src":"1402:2:62"},"virtual":false,"visibility":"internal"},{"id":30383,"nodeType":"ModifierDefinition","src":"1563:465:62","nodes":[],"body":{"id":30382,"nodeType":"Block","src":"1615:413:62","nodes":[],"statements":[{"assignments":[30334],"declarations":[{"constant":false,"id":30334,"mutability":"mutable","name":"registryCommunity","nameLocation":"1633:17:62","nodeType":"VariableDeclaration","scope":30382,"src":"1625:25:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30333,"name":"address","nodeType":"ElementaryTypeName","src":"1625:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":30346,"initialValue":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"id":30340,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30331,"src":"1684:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30339,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1676:8:62","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":30338,"name":"address","nodeType":"ElementaryTypeName","src":"1676:8:62","stateMutability":"payable","typeDescriptions":{}}},"id":30341,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1676:18:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":30337,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30151,"src":"1661:14:62","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$30151_$","typeString":"type(contract CVStrategyV0_0)"}},"id":30342,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1661:34:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}},"id":30343,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1696:17:62","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":26535,"src":"1661:52:62","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_RegistryCommunityV0_0_$33072_$","typeString":"function () view external returns (contract RegistryCommunityV0_0)"}},"id":30344,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1661:54:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}],"id":30336,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1653:7:62","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":30335,"name":"address","nodeType":"ElementaryTypeName","src":"1653:7:62","typeDescriptions":{}}},"id":30345,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1653:63:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"1625:91:62"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":30374,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":30366,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":30361,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":30356,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":30351,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":30347,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1743:3:62","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":30348,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1747:6:62","memberName":"sender","nodeType":"MemberAccess","src":"1743:10:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":30349,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[30779],"referencedDeclaration":30779,"src":"1757:5:62","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":30350,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1757:7:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1743:21:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":30355,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":30352,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1768:3:62","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":30353,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1772:6:62","memberName":"sender","nodeType":"MemberAccess","src":"1768:10:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":30354,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30331,"src":"1782:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1768:23:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1743:48:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":30360,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":30357,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1795:3:62","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":30358,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1799:6:62","memberName":"sender","nodeType":"MemberAccess","src":"1795:10:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":30359,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30334,"src":"1809:17:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1795:31:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1743:83:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":30365,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":30362,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1846:3:62","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":30363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1850:6:62","memberName":"sender","nodeType":"MemberAccess","src":"1846:10:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":30364,"name":"listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30248,"src":"1860:11:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1846:25:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1743:128:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":30373,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":30367,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1875:3:62","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":30368,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1879:6:62","memberName":"sender","nodeType":"MemberAccess","src":"1875:10:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"baseExpression":{"id":30369,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30257,"src":"1889:10:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$30175_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":30371,"indexExpression":{"id":30370,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30331,"src":"1900:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1889:21:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_storage","typeString":"struct Strategy storage ref"}},"id":30372,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1911:11:62","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":30174,"src":"1889:33:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1875:47:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1743:179:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":30380,"nodeType":"Block","src":"1965:57:62","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":30377,"name":"OnlyCouncilOrAuthorized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30303,"src":"1986:23:62","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":30378,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1986:25:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30379,"nodeType":"RevertStatement","src":"1979:32:62"}]},"id":30381,"nodeType":"IfStatement","src":"1726:296:62","trueBody":{"id":30376,"nodeType":"Block","src":"1933:26:62","statements":[{"id":30375,"nodeType":"PlaceholderStatement","src":"1947:1:62"}]}}]},"name":"onlyCouncilOrAuthorized","nameLocation":"1572:23:62","parameters":{"id":30332,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30331,"mutability":"mutable","name":"_strategy","nameLocation":"1604:9:62","nodeType":"VariableDeclaration","scope":30383,"src":"1596:17:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30330,"name":"address","nodeType":"ElementaryTypeName","src":"1596:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1595:19:62"},"virtual":false,"visibility":"internal"},{"id":30402,"nodeType":"ModifierDefinition","src":"2034:186:62","nodes":[],"body":{"id":30401,"nodeType":"Block","src":"2074:146:62","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":30393,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":30387,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"2088:3:62","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":30388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2092:6:62","memberName":"sender","nodeType":"MemberAccess","src":"2088:10:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"baseExpression":{"id":30389,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30257,"src":"2102:10:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$30175_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":30391,"indexExpression":{"id":30390,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30385,"src":"2113:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2102:21:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_storage","typeString":"struct Strategy storage ref"}},"id":30392,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2124:11:62","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":30174,"src":"2102:33:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2088:47:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":30399,"nodeType":"Block","src":"2169:45:62","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":30396,"name":"OnlyCouncil","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30305,"src":"2190:11:62","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":30397,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2190:13:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30398,"nodeType":"RevertStatement","src":"2183:20:62"}]},"id":30400,"nodeType":"IfStatement","src":"2084:130:62","trueBody":{"id":30395,"nodeType":"Block","src":"2137:26:62","statements":[{"id":30394,"nodeType":"PlaceholderStatement","src":"2151:1:62"}]}}]},"name":"onlyCouncil","nameLocation":"2043:11:62","parameters":{"id":30386,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30385,"mutability":"mutable","name":"_strategy","nameLocation":"2063:9:62","nodeType":"VariableDeclaration","scope":30402,"src":"2055:17:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30384,"name":"address","nodeType":"ElementaryTypeName","src":"2055:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2054:19:62"},"virtual":false,"visibility":"internal"},{"id":30419,"nodeType":"FunctionDefinition","src":"2226:148:62","nodes":[],"body":{"id":30418,"nodeType":"Block","src":"2285:89:62","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":30412,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":30407,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30404,"src":"2299:8:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":30410,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2319:1:62","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":30409,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2311:7:62","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":30408,"name":"address","nodeType":"ElementaryTypeName","src":"2311:7:62","typeDescriptions":{}}},"id":30411,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2311:10:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2299:22:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30417,"nodeType":"IfStatement","src":"2295:73:62","trueBody":{"id":30416,"nodeType":"Block","src":"2323:45:62","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":30413,"name":"ZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30307,"src":"2344:11:62","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":30414,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2344:13:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30415,"nodeType":"RevertStatement","src":"2337:20:62"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"2235:18:62","parameters":{"id":30405,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30404,"mutability":"mutable","name":"_address","nameLocation":"2262:8:62","nodeType":"VariableDeclaration","scope":30419,"src":"2254:16:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30403,"name":"address","nodeType":"ElementaryTypeName","src":"2254:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2253:18:62"},"returnParameters":{"id":30406,"nodeType":"ParameterList","parameters":[],"src":"2285:0:62"},"scope":30700,"stateMutability":"pure","virtual":false,"visibility":"private"},{"id":30443,"nodeType":"FunctionDefinition","src":"2433:196:62","nodes":[],"body":{"id":30442,"nodeType":"Block","src":"2510:119:62","nodes":[],"statements":[{"expression":{"arguments":[{"id":30431,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30423,"src":"2537:6:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":30428,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"2520:5:62","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_PassportScorer_$30700_$","typeString":"type(contract super PassportScorer)"}},"id":30430,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2526:10:62","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":30728,"src":"2520:16:62","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":30432,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2520:24:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30433,"nodeType":"ExpressionStatement","src":"2520:24:62"},{"expression":{"arguments":[{"id":30435,"name":"_listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30421,"src":"2573:12:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30434,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30419,"src":"2554:18:62","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":30436,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2554:32:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30437,"nodeType":"ExpressionStatement","src":"2554:32:62"},{"expression":{"id":30440,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":30438,"name":"listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30248,"src":"2596:11:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":30439,"name":"_listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30421,"src":"2610:12:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2596:26:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":30441,"nodeType":"ExpressionStatement","src":"2596:26:62"}]},"functionSelector":"485cc955","implemented":true,"kind":"function","modifiers":[{"id":30426,"kind":"modifierInvocation","modifierName":{"id":30425,"name":"initializer","nameLocations":["2498:11:62"],"nodeType":"IdentifierPath","referencedDeclaration":14193,"src":"2498:11:62"},"nodeType":"ModifierInvocation","src":"2498:11:62"}],"name":"initialize","nameLocation":"2442:10:62","parameters":{"id":30424,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30421,"mutability":"mutable","name":"_listManager","nameLocation":"2461:12:62","nodeType":"VariableDeclaration","scope":30443,"src":"2453:20:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30420,"name":"address","nodeType":"ElementaryTypeName","src":"2453:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30423,"mutability":"mutable","name":"_owner","nameLocation":"2483:6:62","nodeType":"VariableDeclaration","scope":30443,"src":"2475:14:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30422,"name":"address","nodeType":"ElementaryTypeName","src":"2475:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2452:38:62"},"returnParameters":{"id":30427,"nodeType":"ParameterList","parameters":[],"src":"2510:0:62"},"scope":30700,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":30470,"nodeType":"FunctionDefinition","src":"2777:208:62","nodes":[],"body":{"id":30469,"nodeType":"Block","src":"2863:122:62","nodes":[],"statements":[{"expression":{"arguments":[{"id":30455,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30446,"src":"2892:5:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30454,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30419,"src":"2873:18:62","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":30456,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2873:25:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30457,"nodeType":"ExpressionStatement","src":"2873:25:62"},{"expression":{"id":30462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":30458,"name":"userScores","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30252,"src":"2908:10:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":30460,"indexExpression":{"id":30459,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30446,"src":"2919:5:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2908:17:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":30461,"name":"_score","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30448,"src":"2928:6:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2908:26:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":30463,"nodeType":"ExpressionStatement","src":"2908:26:62"},{"eventCall":{"arguments":[{"id":30465,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30446,"src":"2964:5:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":30466,"name":"_score","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30448,"src":"2971:6:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":30464,"name":"UserScoreAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30263,"src":"2949:14:62","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":30467,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2949:29:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30468,"nodeType":"EmitStatement","src":"2944:34:62"}]},"baseFunctions":[30182],"documentation":{"id":30444,"nodeType":"StructuredDocumentation","src":"2635:137:62","text":"@notice Add a userScore to the list\n @param _user address of the user to add\n @param _score score to assign to the user"},"functionSelector":"feec7145","implemented":true,"kind":"function","modifiers":[{"id":30452,"kind":"modifierInvocation","modifierName":{"id":30451,"name":"onlyAuthorized","nameLocations":["2848:14:62"],"nodeType":"IdentifierPath","referencedDeclaration":30329,"src":"2848:14:62"},"nodeType":"ModifierInvocation","src":"2848:14:62"}],"name":"addUserScore","nameLocation":"2786:12:62","overrides":{"id":30450,"nodeType":"OverrideSpecifier","overrides":[],"src":"2839:8:62"},"parameters":{"id":30449,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30446,"mutability":"mutable","name":"_user","nameLocation":"2807:5:62","nodeType":"VariableDeclaration","scope":30470,"src":"2799:13:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30445,"name":"address","nodeType":"ElementaryTypeName","src":"2799:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30448,"mutability":"mutable","name":"_score","nameLocation":"2822:6:62","nodeType":"VariableDeclaration","scope":30470,"src":"2814:14:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30447,"name":"uint256","nodeType":"ElementaryTypeName","src":"2814:7:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2798:31:62"},"returnParameters":{"id":30453,"nodeType":"ParameterList","parameters":[],"src":"2863:0:62"},"scope":30700,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":30493,"nodeType":"FunctionDefinition","src":"3086:177:62","nodes":[],"body":{"id":30492,"nodeType":"Block","src":"3154:109:62","nodes":[],"statements":[{"expression":{"arguments":[{"id":30480,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30473,"src":"3183:5:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30479,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30419,"src":"3164:18:62","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":30481,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3164:25:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30482,"nodeType":"ExpressionStatement","src":"3164:25:62"},{"expression":{"id":30486,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"3199:24:62","subExpression":{"baseExpression":{"id":30483,"name":"userScores","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30252,"src":"3206:10:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":30485,"indexExpression":{"id":30484,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30473,"src":"3217:5:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3206:17:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30487,"nodeType":"ExpressionStatement","src":"3199:24:62"},{"eventCall":{"arguments":[{"id":30489,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30473,"src":"3250:5:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30488,"name":"UserRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30267,"src":"3238:11:62","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":30490,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3238:18:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30491,"nodeType":"EmitStatement","src":"3233:23:62"}]},"baseFunctions":[30187],"documentation":{"id":30471,"nodeType":"StructuredDocumentation","src":"2991:90:62","text":"@notice Remove a user from the list\n @param _user address of the user to remove"},"functionSelector":"98575188","implemented":true,"kind":"function","modifiers":[{"id":30477,"kind":"modifierInvocation","modifierName":{"id":30476,"name":"onlyAuthorized","nameLocations":["3139:14:62"],"nodeType":"IdentifierPath","referencedDeclaration":30329,"src":"3139:14:62"},"nodeType":"ModifierInvocation","src":"3139:14:62"}],"name":"removeUser","nameLocation":"3095:10:62","overrides":{"id":30475,"nodeType":"OverrideSpecifier","overrides":[],"src":"3130:8:62"},"parameters":{"id":30474,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30473,"mutability":"mutable","name":"_user","nameLocation":"3114:5:62","nodeType":"VariableDeclaration","scope":30493,"src":"3106:13:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30472,"name":"address","nodeType":"ElementaryTypeName","src":"3106:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3105:15:62"},"returnParameters":{"id":30478,"nodeType":"ParameterList","parameters":[],"src":"3154:0:62"},"scope":30700,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":30520,"nodeType":"FunctionDefinition","src":"3376:259:62","nodes":[],"body":{"id":30519,"nodeType":"Block","src":"3452:183:62","nodes":[],"statements":[{"expression":{"arguments":[{"id":30503,"name":"_newManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30496,"src":"3481:11:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30502,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30419,"src":"3462:18:62","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":30504,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3462:31:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30505,"nodeType":"ExpressionStatement","src":"3462:31:62"},{"assignments":[30507],"declarations":[{"constant":false,"id":30507,"mutability":"mutable","name":"oldManager","nameLocation":"3511:10:62","nodeType":"VariableDeclaration","scope":30519,"src":"3503:18:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30506,"name":"address","nodeType":"ElementaryTypeName","src":"3503:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":30509,"initialValue":{"id":30508,"name":"listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30248,"src":"3524:11:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"3503:32:62"},{"expression":{"id":30512,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":30510,"name":"listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30248,"src":"3545:11:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":30511,"name":"_newManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30496,"src":"3559:11:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3545:25:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":30513,"nodeType":"ExpressionStatement","src":"3545:25:62"},{"eventCall":{"arguments":[{"id":30515,"name":"oldManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30507,"src":"3604:10:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":30516,"name":"_newManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30496,"src":"3616:11:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":30514,"name":"ListManagerChanged","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30273,"src":"3585:18:62","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":30517,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3585:43:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30518,"nodeType":"EmitStatement","src":"3580:48:62"}]},"baseFunctions":[30192],"documentation":{"id":30494,"nodeType":"StructuredDocumentation","src":"3269:102:62","text":"@notice Change the list manager address\n @param _newManager address of the new list manager"},"functionSelector":"3d476830","implemented":true,"kind":"function","modifiers":[{"id":30500,"kind":"modifierInvocation","modifierName":{"id":30499,"name":"onlyOwner","nameLocations":["3442:9:62"],"nodeType":"IdentifierPath","referencedDeclaration":13956,"src":"3442:9:62"},"nodeType":"ModifierInvocation","src":"3442:9:62"}],"name":"changeListManager","nameLocation":"3385:17:62","overrides":{"id":30498,"nodeType":"OverrideSpecifier","overrides":[],"src":"3433:8:62"},"parameters":{"id":30497,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30496,"mutability":"mutable","name":"_newManager","nameLocation":"3411:11:62","nodeType":"VariableDeclaration","scope":30520,"src":"3403:19:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30495,"name":"address","nodeType":"ElementaryTypeName","src":"3403:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3402:21:62"},"returnParameters":{"id":30501,"nodeType":"ParameterList","parameters":[],"src":"3452:0:62"},"scope":30700,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":30581,"nodeType":"FunctionDefinition","src":"3803:589:62","nodes":[],"body":{"id":30580,"nodeType":"Block","src":"3966:426:62","nodes":[],"statements":[{"expression":{"arguments":[{"id":30535,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30523,"src":"3995:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30534,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30419,"src":"3976:18:62","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":30536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3976:29:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30537,"nodeType":"ExpressionStatement","src":"3976:29:62"},{"expression":{"arguments":[{"id":30539,"name":"_councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30527,"src":"4034:12:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30538,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30419,"src":"4015:18:62","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":30540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4015:32:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30541,"nodeType":"ExpressionStatement","src":"4015:32:62"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":30557,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":30547,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":30542,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30257,"src":"4061:10:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$30175_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":30544,"indexExpression":{"id":30543,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30523,"src":"4072:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4061:21:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_storage","typeString":"struct Strategy storage ref"}},"id":30545,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4083:9:62","memberName":"threshold","nodeType":"MemberAccess","referencedDeclaration":30170,"src":"4061:31:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":30546,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4096:1:62","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"4061:36:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":30556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":30548,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30257,"src":"4101:10:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$30175_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":30550,"indexExpression":{"id":30549,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30523,"src":"4112:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4101:21:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_storage","typeString":"struct Strategy storage ref"}},"id":30551,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4123:11:62","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":30174,"src":"4101:33:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":30554,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4146:1:62","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":30553,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4138:7:62","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":30552,"name":"address","nodeType":"ElementaryTypeName","src":"4138:7:62","typeDescriptions":{}}},"id":30555,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4138:10:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4101:47:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"4061:87:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30562,"nodeType":"IfStatement","src":"4057:148:62","trueBody":{"id":30561,"nodeType":"Block","src":"4150:55:62","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":30558,"name":"StrategyAlreadyExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30309,"src":"4171:21:62","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":30559,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4171:23:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30560,"nodeType":"RevertStatement","src":"4164:30:62"}]}},{"expression":{"id":30571,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":30563,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30257,"src":"4214:10:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$30175_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":30565,"indexExpression":{"id":30564,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30523,"src":"4225:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"4214:21:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_storage","typeString":"struct Strategy storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":30567,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30525,"src":"4259:10:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"66616c7365","id":30568,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4279:5:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},{"id":30569,"name":"_councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30527,"src":"4299:12:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_address","typeString":"address"}],"id":30566,"name":"Strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30175,"src":"4238:8:62","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Strategy_$30175_storage_ptr_$","typeString":"type(struct Strategy storage pointer)"}},"id":30570,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["4248:9:62","4271:6:62","4286:11:62"],"names":["threshold","active","councilSafe"],"nodeType":"FunctionCall","src":"4238:75:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_memory_ptr","typeString":"struct Strategy memory"}},"src":"4214:99:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_storage","typeString":"struct Strategy storage ref"}},"id":30572,"nodeType":"ExpressionStatement","src":"4214:99:62"},{"eventCall":{"arguments":[{"id":30574,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30523,"src":"4342:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":30575,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30525,"src":"4353:10:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"66616c7365","id":30576,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4365:5:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},{"id":30577,"name":"_councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30527,"src":"4372:12:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_address","typeString":"address"}],"id":30573,"name":"StrategyAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30283,"src":"4328:13:62","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bool_$_t_address_$returns$__$","typeString":"function (address,uint256,bool,address)"}},"id":30578,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4328:57:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30579,"nodeType":"EmitStatement","src":"4323:62:62"}]},"baseFunctions":[30217],"documentation":{"id":30521,"nodeType":"StructuredDocumentation","src":"3641:157:62","text":"@notice Add a strategy to the contract\n @param _threshold is expressed on a scale of 10**4\n @param _councilSafe address of the council safe"},"functionSelector":"fc2ebdd1","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":30531,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30523,"src":"3951:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":30532,"kind":"modifierInvocation","modifierName":{"id":30530,"name":"onlyCouncilOrAuthorized","nameLocations":["3927:23:62"],"nodeType":"IdentifierPath","referencedDeclaration":30383,"src":"3927:23:62"},"nodeType":"ModifierInvocation","src":"3927:34:62"}],"name":"addStrategy","nameLocation":"3812:11:62","overrides":{"id":30529,"nodeType":"OverrideSpecifier","overrides":[],"src":"3910:8:62"},"parameters":{"id":30528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30523,"mutability":"mutable","name":"_strategy","nameLocation":"3832:9:62","nodeType":"VariableDeclaration","scope":30581,"src":"3824:17:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30522,"name":"address","nodeType":"ElementaryTypeName","src":"3824:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30525,"mutability":"mutable","name":"_threshold","nameLocation":"3851:10:62","nodeType":"VariableDeclaration","scope":30581,"src":"3843:18:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30524,"name":"uint256","nodeType":"ElementaryTypeName","src":"3843:7:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":30527,"mutability":"mutable","name":"_councilSafe","nameLocation":"3871:12:62","nodeType":"VariableDeclaration","scope":30581,"src":"3863:20:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30526,"name":"address","nodeType":"ElementaryTypeName","src":"3863:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3823:61:62"},"returnParameters":{"id":30533,"nodeType":"ParameterList","parameters":[],"src":"3966:0:62"},"scope":30700,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":30605,"nodeType":"FunctionDefinition","src":"4509:221:62","nodes":[],"body":{"id":30604,"nodeType":"Block","src":"4605:125:62","nodes":[],"statements":[{"expression":{"arguments":[{"id":30592,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30584,"src":"4634:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30591,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30419,"src":"4615:18:62","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":30593,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4615:29:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30594,"nodeType":"ExpressionStatement","src":"4615:29:62"},{"expression":{"id":30598,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"4654:28:62","subExpression":{"baseExpression":{"id":30595,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30257,"src":"4661:10:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$30175_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":30597,"indexExpression":{"id":30596,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30584,"src":"4672:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"4661:21:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_storage","typeString":"struct Strategy storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30599,"nodeType":"ExpressionStatement","src":"4654:28:62"},{"eventCall":{"arguments":[{"id":30601,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30584,"src":"4713:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30600,"name":"StrategyRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30287,"src":"4697:15:62","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":30602,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4697:26:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30603,"nodeType":"EmitStatement","src":"4692:31:62"}]},"baseFunctions":[30222],"documentation":{"id":30582,"nodeType":"StructuredDocumentation","src":"4398:106:62","text":"@notice Remove a strategy from the contract\n @param _strategy address of the strategy to remove"},"functionSelector":"175188e8","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":30588,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30584,"src":"4594:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":30589,"kind":"modifierInvocation","modifierName":{"id":30587,"name":"onlyCouncilOrAuthorized","nameLocations":["4570:23:62"],"nodeType":"IdentifierPath","referencedDeclaration":30383,"src":"4570:23:62"},"nodeType":"ModifierInvocation","src":"4570:34:62"}],"name":"removeStrategy","nameLocation":"4518:14:62","overrides":{"id":30586,"nodeType":"OverrideSpecifier","overrides":[],"src":"4561:8:62"},"parameters":{"id":30585,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30584,"mutability":"mutable","name":"_strategy","nameLocation":"4541:9:62","nodeType":"VariableDeclaration","scope":30605,"src":"4533:17:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30583,"name":"address","nodeType":"ElementaryTypeName","src":"4533:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4532:19:62"},"returnParameters":{"id":30590,"nodeType":"ParameterList","parameters":[],"src":"4605:0:62"},"scope":30700,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":30630,"nodeType":"FunctionDefinition","src":"4833:223:62","nodes":[],"body":{"id":30629,"nodeType":"Block","src":"4922:134:62","nodes":[],"statements":[{"expression":{"arguments":[{"id":30615,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30608,"src":"4951:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30614,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30419,"src":"4932:18:62","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":30616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4932:29:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30617,"nodeType":"ExpressionStatement","src":"4932:29:62"},{"expression":{"id":30623,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":30618,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30257,"src":"4971:10:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$30175_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":30620,"indexExpression":{"id":30619,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30608,"src":"4982:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4971:21:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_storage","typeString":"struct Strategy storage ref"}},"id":30621,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4993:6:62","memberName":"active","nodeType":"MemberAccess","referencedDeclaration":30172,"src":"4971:28:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":30622,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5002:4:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"4971:35:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30624,"nodeType":"ExpressionStatement","src":"4971:35:62"},{"eventCall":{"arguments":[{"id":30626,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30608,"src":"5039:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30625,"name":"StrategyActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30291,"src":"5021:17:62","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":30627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5021:28:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30628,"nodeType":"EmitStatement","src":"5016:33:62"}]},"baseFunctions":[30227],"documentation":{"id":30606,"nodeType":"StructuredDocumentation","src":"4736:92:62","text":"@notice Activate a strategy\n @param _strategy address of the strategy to activate"},"functionSelector":"d80ea5a0","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":30611,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30608,"src":"4911:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":30612,"kind":"modifierInvocation","modifierName":{"id":30610,"name":"onlyCouncilOrAuthorized","nameLocations":["4887:23:62"],"nodeType":"IdentifierPath","referencedDeclaration":30383,"src":"4887:23:62"},"nodeType":"ModifierInvocation","src":"4887:34:62"}],"name":"activateStrategy","nameLocation":"4842:16:62","parameters":{"id":30609,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30608,"mutability":"mutable","name":"_strategy","nameLocation":"4867:9:62","nodeType":"VariableDeclaration","scope":30630,"src":"4859:17:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30607,"name":"address","nodeType":"ElementaryTypeName","src":"4859:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4858:19:62"},"returnParameters":{"id":30613,"nodeType":"ParameterList","parameters":[],"src":"4922:0:62"},"scope":30700,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":30658,"nodeType":"FunctionDefinition","src":"5252:272:62","nodes":[],"body":{"id":30657,"nodeType":"Block","src":"5363:161:62","nodes":[],"statements":[{"expression":{"arguments":[{"id":30642,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30633,"src":"5392:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":30641,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30419,"src":"5373:18:62","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":30643,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5373:29:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30644,"nodeType":"ExpressionStatement","src":"5373:29:62"},{"expression":{"id":30650,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":30645,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30257,"src":"5412:10:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$30175_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":30647,"indexExpression":{"id":30646,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30633,"src":"5423:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5412:21:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_storage","typeString":"struct Strategy storage ref"}},"id":30648,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"5434:9:62","memberName":"threshold","nodeType":"MemberAccess","referencedDeclaration":30170,"src":"5412:31:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":30649,"name":"_newThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30635,"src":"5446:13:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5412:47:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":30651,"nodeType":"ExpressionStatement","src":"5412:47:62"},{"eventCall":{"arguments":[{"id":30653,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30633,"src":"5492:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":30654,"name":"_newThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30635,"src":"5503:13:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":30652,"name":"ThresholdModified","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30297,"src":"5474:17:62","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":30655,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5474:43:62","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":30656,"nodeType":"EmitStatement","src":"5469:48:62"}]},"baseFunctions":[30208],"documentation":{"id":30631,"nodeType":"StructuredDocumentation","src":"5062:185:62","text":"@notice Modify the threshold of a strategy\n @param _strategy address of the strategy to modify\n @param _newThreshold new threshold to set expressed on a scale of 10**4"},"functionSelector":"642ce76b","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":30638,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30633,"src":"5352:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":30639,"kind":"modifierInvocation","modifierName":{"id":30637,"name":"onlyCouncilOrAuthorized","nameLocations":["5328:23:62"],"nodeType":"IdentifierPath","referencedDeclaration":30383,"src":"5328:23:62"},"nodeType":"ModifierInvocation","src":"5328:34:62"}],"name":"modifyThreshold","nameLocation":"5261:15:62","parameters":{"id":30636,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30633,"mutability":"mutable","name":"_strategy","nameLocation":"5285:9:62","nodeType":"VariableDeclaration","scope":30658,"src":"5277:17:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30632,"name":"address","nodeType":"ElementaryTypeName","src":"5277:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30635,"mutability":"mutable","name":"_newThreshold","nameLocation":"5304:13:62","nodeType":"VariableDeclaration","scope":30658,"src":"5296:21:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30634,"name":"uint256","nodeType":"ElementaryTypeName","src":"5296:7:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5276:42:62"},"returnParameters":{"id":30640,"nodeType":"ParameterList","parameters":[],"src":"5363:0:62"},"scope":30700,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":30695,"nodeType":"FunctionDefinition","src":"5689:327:62","nodes":[],"body":{"id":30694,"nodeType":"Block","src":"5787:229:62","nodes":[],"statements":[{"assignments":[30670],"declarations":[{"constant":false,"id":30670,"mutability":"mutable","name":"userScore","nameLocation":"5805:9:62","nodeType":"VariableDeclaration","scope":30694,"src":"5797:17:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30669,"name":"uint256","nodeType":"ElementaryTypeName","src":"5797:7:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":30674,"initialValue":{"baseExpression":{"id":30671,"name":"userScores","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30252,"src":"5817:10:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":30673,"indexExpression":{"id":30672,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30661,"src":"5828:5:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5817:17:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5797:37:62"},{"assignments":[30677],"declarations":[{"constant":false,"id":30677,"mutability":"mutable","name":"strategy","nameLocation":"5860:8:62","nodeType":"VariableDeclaration","scope":30694,"src":"5844:24:62","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_memory_ptr","typeString":"struct Strategy"},"typeName":{"id":30676,"nodeType":"UserDefinedTypeName","pathNode":{"id":30675,"name":"Strategy","nameLocations":["5844:8:62"],"nodeType":"IdentifierPath","referencedDeclaration":30175,"src":"5844:8:62"},"referencedDeclaration":30175,"src":"5844:8:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_storage_ptr","typeString":"struct Strategy"}},"visibility":"internal"}],"id":30681,"initialValue":{"baseExpression":{"id":30678,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30257,"src":"5871:10:62","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$30175_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":30680,"indexExpression":{"id":30679,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30663,"src":"5882:9:62","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5871:21:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_storage","typeString":"struct Strategy storage ref"}},"nodeType":"VariableDeclarationStatement","src":"5844:48:62"},{"condition":{"id":30684,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"5907:16:62","subExpression":{"expression":{"id":30682,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30677,"src":"5908:8:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_memory_ptr","typeString":"struct Strategy memory"}},"id":30683,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5917:6:62","memberName":"active","nodeType":"MemberAccess","referencedDeclaration":30172,"src":"5908:15:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":30688,"nodeType":"IfStatement","src":"5903:58:62","trueBody":{"id":30687,"nodeType":"Block","src":"5925:36:62","statements":[{"expression":{"hexValue":"74727565","id":30685,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5946:4:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":30668,"id":30686,"nodeType":"Return","src":"5939:11:62"}]}},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":30692,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":30689,"name":"userScore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30670,"src":"5978:9:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"expression":{"id":30690,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30677,"src":"5991:8:62","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$30175_memory_ptr","typeString":"struct Strategy memory"}},"id":30691,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"6000:9:62","memberName":"threshold","nodeType":"MemberAccess","referencedDeclaration":30170,"src":"5991:18:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5978:31:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":30668,"id":30693,"nodeType":"Return","src":"5971:38:62"}]},"baseFunctions":[30201],"documentation":{"id":30659,"nodeType":"StructuredDocumentation","src":"5530:154:62","text":"@notice Check if an action can be executed\n @param _user address of the user to check\n @param _strategy address of the strategy to check"},"functionSelector":"42a987a0","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteAction","nameLocation":"5698:16:62","overrides":{"id":30665,"nodeType":"OverrideSpecifier","overrides":[],"src":"5763:8:62"},"parameters":{"id":30664,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30661,"mutability":"mutable","name":"_user","nameLocation":"5723:5:62","nodeType":"VariableDeclaration","scope":30695,"src":"5715:13:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30660,"name":"address","nodeType":"ElementaryTypeName","src":"5715:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30663,"mutability":"mutable","name":"_strategy","nameLocation":"5738:9:62","nodeType":"VariableDeclaration","scope":30695,"src":"5730:17:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30662,"name":"address","nodeType":"ElementaryTypeName","src":"5730:7:62","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5714:34:62"},"returnParameters":{"id":30668,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30667,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":30695,"src":"5781:4:62","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":30666,"name":"bool","nodeType":"ElementaryTypeName","src":"5781:4:62","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5780:6:62"},"scope":30700,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":30699,"nodeType":"VariableDeclaration","src":"6022:25:62","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"6042:5:62","scope":30700,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":30696,"name":"uint256","nodeType":"ElementaryTypeName","src":"6022:7:62","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":30698,"length":{"hexValue":"3530","id":30697,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6030:2:62","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"6022:11:62","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":30243,"name":"ISybilScorer","nameLocations":["532:12:62"],"nodeType":"IdentifierPath","referencedDeclaration":30228,"src":"532:12:62"},"id":30244,"nodeType":"InheritanceSpecifier","src":"532:12:62"},{"baseName":{"id":30245,"name":"ProxyOwnableUpgrader","nameLocations":["546:20:62"],"nodeType":"IdentifierPath","referencedDeclaration":30801,"src":"546:20:62"},"id":30246,"nodeType":"InheritanceSpecifier","src":"546:20:62"}],"canonicalName":"PassportScorer","contractDependencies":[],"contractKind":"contract","documentation":{"id":30242,"nodeType":"StructuredDocumentation","src":"461:44:62","text":"@custom:oz-upgrades-from PassportScorer"},"fullyImplemented":true,"linearizedBaseContracts":[30700,30801,16733,16386,16035,16045,14042,14757,14291,30228],"name":"PassportScorer","nameLocation":"514:14:62","scope":30701,"usedErrors":[30299,30301,30303,30305,30307,30309,30716]}],"license":"AGPL-3.0-or-later"},"id":62} \ No newline at end of file +{"abi":[{"type":"function","name":"activateStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addStrategy","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_threshold","type":"uint256","internalType":"uint256"},{"name":"_councilSafe","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"addUserScore","inputs":[{"name":"_user","type":"address","internalType":"address"},{"name":"_score","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"canExecuteAction","inputs":[{"name":"_user","type":"address","internalType":"address"},{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"changeListManager","inputs":[{"name":"_newManager","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"initialize","inputs":[{"name":"_listManager","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":"listManager","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"modifyThreshold","inputs":[{"name":"_strategy","type":"address","internalType":"address"},{"name":"_newThreshold","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"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":"proxyOwner","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":"removeUser","inputs":[{"name":"_user","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"strategies","inputs":[{"name":"","type":"address","internalType":"address"}],"outputs":[{"name":"threshold","type":"uint256","internalType":"uint256"},{"name":"active","type":"bool","internalType":"bool"},{"name":"councilSafe","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":"function","name":"userScores","inputs":[{"name":"","type":"address","internalType":"address"}],"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":"BeaconUpgraded","inputs":[{"name":"beacon","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"ListManagerChanged","inputs":[{"name":"oldManager","type":"address","indexed":true,"internalType":"address"},{"name":"newManager","type":"address","indexed":true,"internalType":"address"}],"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":"StrategyActivated","inputs":[{"name":"strategy","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyAdded","inputs":[{"name":"strategy","type":"address","indexed":true,"internalType":"address"},{"name":"threshold","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"active","type":"bool","indexed":false,"internalType":"bool"},{"name":"councilSafe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"StrategyRemoved","inputs":[{"name":"strategy","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"ThresholdModified","inputs":[{"name":"strategy","type":"address","indexed":true,"internalType":"address"},{"name":"newThreshold","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"Upgraded","inputs":[{"name":"implementation","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"UserRemoved","inputs":[{"name":"user","type":"address","indexed":true,"internalType":"address"}],"anonymous":false},{"type":"event","name":"UserScoreAdded","inputs":[{"name":"user","type":"address","indexed":true,"internalType":"address"},{"name":"score","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"OnlyAuthorized","inputs":[]},{"type":"error","name":"OnlyAuthorizedOrUser","inputs":[]},{"type":"error","name":"OnlyCouncil","inputs":[]},{"type":"error","name":"OnlyCouncilOrAuthorized","inputs":[]},{"type":"error","name":"StrategyAlreadyExists","inputs":[]},{"type":"error","name":"ZeroAddress","inputs":[]}],"bytecode":{"object":"0x60a0806040523461003157306080526117ff9081610037823960805181818161087b0152818161099c0152610ed80152f35b600080fdfe6080604081815260048036101561001557600080fd5b600092833560e01c908163025313a21461123c575080631413d4c014611204578063175188e8146110e45780633659cfe614610eb157806339ebf82314610e5b5780633d47683014610de757806342a987a014610db0578063485cc95514610c0c5780634f1ef2861461092357806352d1902d14610866578063642ce76b14610729578063715018a6146106db5780638da5cb5b146106ad5780638df8b2fe1461068057806398575188146105e9578063c4d66de814610572578063d80ea5a014610430578063f2fde38b1461039f578063fc2ebdd1146101a25763feec7145146100ff57600080fd5b3461019e578160031936011261019e57610117611261565b602435916001600160a01b0391908261012e611641565b1633148015610191575b156101835750916020918361016d7f8b9ed475f52a60fa276f21d6848c06cbb59ebfcd26e8b8de2753c3e12a493ea795611599565b169384865260668352818187205551908152a280f35b8451637d7b71b560e01b8152fd5b5082606554163314610138565b8280fd5b50903461019e57606036600319011261019e576101bd611261565b60443592602435926001600160a01b038086169391929084870361039b578351631800f90560e21b8152838216976020949091858186818d5afa908115610391578b91610364575b508380610210611641565b16331491821561035a575b821561034d575b50508015610340575b8015610325575b15610315579061024461024992611599565b611599565b868852606783528388209081541591821592610302575b50506102f457509181866060947f9b1a157188de9a0bd2e7995d72aaba244d9bd012ddf3ae3d4f492135175070cb96945161029a81611292565b858152818101908382526001858201918783528b8652606785528686209051815501915115159060ff835491610100600160a81b03905160081b1692169060018060a81b031916171790558251948552840152820152a280f35b825163c45546f760e01b8152fd5b6001015460081c16151590503880610260565b855163e3b6914b60e01b81528490fd5b50888a5260678552826001878c20015460081c163314610232565b508260655416331461022b565b9091501633148338610222565b338c14925061021b565b6103849150863d881161038a575b61037c81836112c3565b8101906115bb565b38610205565b503d610372565b87513d8d823e3d90fd5b8780fd5b503461019e57602036600319011261019e576103b9611261565b916103c2611301565b6001600160a01b038316156103de57836103db84611360565b80f35b906020608492519162461bcd60e51b8352820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152fd5b50903461019e5760208060031936011261056e5761044c611261565b8251631800f90560e21b81526001600160a01b03828116959190848284818a5afa918215610564578892610545575b5080610485611641565b16331491821561053b575b821561052e575b50811561051f575b8115610503575b50156104f55750600192916104bc606792611599565b84865252832001805460ff191660011790557f652f053fc39779b70b29678135ade972fcb79966fc68fcb77c996b1aa4fd9afb8280a280f35b835163e3b6914b60e01b8152fd5b9050858752606784526001858820015460081c163314386104a6565b8091506065541633149061049f565b8192501633149038610497565b3388149250610490565b61055d919250853d871161038a5761037c81836112c3565b903861047b565b86513d8a823e3d90fd5b8380fd5b503461019e57602036600319011261019e5761058c611261565b9160ff845460081c16156105a457836103db84611360565b906020608492519162461bcd60e51b8352820152602b602482015260008051602061172a83398151915260448201526a6e697469616c697a696e6760a81b6064820152fd5b503461019e57602036600319011261019e57610603611261565b6001600160a01b039182610615611641565b1633148015610673575b15610665575090816106318593611599565b169182825260666020528120557fe9dce8c992623ce791725b21e857e33248d1f190a25b5168313420eebdaae99d8280a280f35b8351637d7b71b560e01b8152fd5b508260655416331461061f565b5050346106a957816003193601126106a95760655490516001600160a01b039091168152602090f35b5080fd5b5050346106a957816003193601126106a9576020906106ca611641565b90516001600160a01b039091168152f35b83346107265780600319360112610726576106f4611301565b603380546001600160a01b0319811690915581906001600160a01b031660008051602061174a8339815191528280a380f35b80fd5b508290346106a957826003193601126106a957610744611261565b8351631800f90560e21b815290936001600160a01b03808616936020936024359392858284818a5afa91821561085c57889261083d575b5080610785611641565b163314918215610833575b8215610826575b508115610817575b81156107fb575b50156107ed57506107d97f40ba4d5d9facd2fda74e22251d1638576e05a30482470363c7c87a7b5b298c09949596611599565b84865260678352818187205551908152a280f35b905163e3b6914b60e01b8152fd5b9050858752606785526001838820015460081c163314886107a6565b8091506065541633149061079f565b8192501633149089610797565b3388149250610790565b610855919250863d881161038a5761037c81836112c3565b908961077b565b84513d8a823e3d90fd5b508234610726578060031936011261072657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036108c0576020825160008051602061170a8339815191528152f35b6020608492519162461bcd60e51b8352820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152fd5b50908060031936011261019e57610938611261565b906024908135906001600160401b038211610c085736602383011215610c085781850135610965816112e6565b610971835191826112c3565b81815287602094858301933688828401011161019e5780888893018637830101526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116906109ca30831415611397565b6109e760008051602061170a8339815191529282845416146113e6565b6109ef611641565b8133911603610be1576000805160206116ca8339815191525460ff1615610a2157505050505050506103db9150611435565b87929394959697169085516352d1902d60e01b815287818b81865afa8b9181610bae575b50610a9157865162461bcd60e51b8152808b01899052602e818b01526000805160206117aa83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b989294989791939703610b6c575050610aa982611435565b60008051602061176a8339815191528780a285845115801590610b64575b610ad5575b50505050505080f35b80610b4e96845196610ae688611292565b602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b868901525190845af4913d15610b5a573d610b40610b37826112e6565b925192836112c3565b81528681943d92013e6114c5565b50388080808085610acc565b50606092506114c5565b506001610ac7565b845162461bcd60e51b815291820186905260299082015260008051602061178a8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508881813d8311610bda575b610bc681836112c3565b81010312610bd657519038610a45565b8b80fd5b503d610bbc565b888760449287610bef611641565b90519363163678e960e01b855233908501521690820152fd5b8580fd5b503461019e578160031936011261019e57610c25611261565b610c2d61127c565b84549260ff8460081c161593848095610da3575b8015610d8c575b15610d325760ff198116600117875584610d21575b5060ff865460081c1615610cdc5750610c7590611360565b610c7e81611599565b606580546001600160a01b0319166001600160a01b0392909216919091179055610ca6575080f35b60207f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989161ff001984541684555160018152a180f35b608490602086519162461bcd60e51b8352820152602b602482015260008051602061172a83398151915260448201526a6e697469616c697a696e6760a81b6064820152fd5b61ffff191661010117865538610c5d565b855162461bcd60e51b8152602081840152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b158015610c485750600160ff821614610c48565b50600160ff821610610c41565b5050346106a957806003193601126106a957602090610dde610dd0611261565b610dd861127c565b906115da565b90519015158152f35b833461072657602036600319011261072657610e01611261565b610e09611301565b610e1281611599565b606580546001600160a01b039283166001600160a01b0319821681179092559091167f5117c6c457d7b27a4cb68df40b118f157ac1f1ba81f8a571d189f829d74fbc868380a380f35b5050346106a95760203660031901126106a9576060916001600160a01b039190819083610e86611261565b1681526067602052209160018354930154825193845260ff81161515602085015260081c1690820152f35b50903461019e5760208060031936011261056e57610ecd611261565b916001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116610f0530821415611397565b610f2260008051602061170a8339815191529183835416146113e6565b610f2a611641565b82339116036110bd578251848101929091906001600160401b038411838510176110aa578385528883526000805160206116ca8339815191525460ff1615610f7c575050505050506103db9150611435565b869293949596169085516352d1902d60e01b815287818a81865afa8a9181611077575b50610fec57865162461bcd60e51b8152808a01899052602e60248201526000805160206117aa83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b979192939695949703611034575061100382611435565b60008051602061176a8339815191528780a28584511580159061102d57610ad55750505050505080f35b5080610ac7565b835162461bcd60e51b81529081018590526029602482015260008051602061178a8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508881813d83116110a3575b61108f81836112c3565b8101031261109f57519038610f9f565b8a80fd5b503d611085565b634e487b7160e01b895260418852602489fd5b60448683856110ca611641565b90519263163678e960e01b84523390840152166024820152fd5b50903461019e5760208060031936011261056e57611100611261565b8251631800f90560e21b81526001600160a01b03828116959190848284818a5afa9182156105645788926111e5575b5080611139611641565b1633149182156111db575b82156111ce575b5081156111bf575b81156111a3575b50156104f557509160676001926111718795611599565b85855252822082815501557f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea48280a280f35b9050858752606784526001858820015460081c1633143861115a565b80915060655416331490611153565b819250163314903861114b565b3388149250611144565b6111fd919250853d871161038a5761037c81836112c3565b903861112f565b5050346106a95760203660031901126106a95760209181906001600160a01b0361122c611261565b1681526066845220549051908152f35b8490346106a957816003193601126106a9576033546001600160a01b03168152602090f35b600435906001600160a01b038216820361127757565b600080fd5b602435906001600160a01b038216820361127757565b606081019081106001600160401b038211176112ad57604052565b634e487b7160e01b600052604160045260246000fd5b601f909101601f19168101906001600160401b038211908210176112ad57604052565b6001600160401b0381116112ad57601f01601f191660200190565b611309611641565b336001600160a01b039091160361131c57565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602061174a833981519152600080a3565b1561139e57565b60405162461bcd60e51b815260206004820152602c60248201526000805160206116ea83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b156113ed57565b60405162461bcd60e51b815260206004820152602c60248201526000805160206116ea83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b1561146a5760008051602061170a83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b9192901561152757508151156114d9575090565b3b156114e25790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b82519091501561153a5750805190602001fd5b6040519062461bcd60e51b82528160208060048301528251908160248401526000935b828510611580575050604492506000838284010152601f80199101168101030190fd5b848101820151868601604401529381019385935061155d565b6001600160a01b0316156115a957565b60405163d92e233d60e01b8152600490fd5b9081602091031261127757516001600160a01b03811681036112775790565b9060018060a01b038092166000526066602052816040600020549116600052606760205260406000209160405161161081611292565b6040600185549586845201549260ff841615938415602085015260081c1691015261163a57101590565b5050600190565b6033546001600160a01b0390811690813b61165a575090565b604051638da5cb5b60e01b8152602081600481865afa91829160009361168a575b5050611685575090565b905090565b602093919293813d82116116c1575b816116a6602093836112c3565b810103126106a957519182168203610726575090388061167b565b3d915061169956fe4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc496e697469616c697a61626c653a20636f6e7472616374206973206e6f7420698be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b45524331393637557067726164653a20756e737570706f727465642070726f7845524331393637557067726164653a206e657720696d706c656d656e74617469a264697066735822122090453e44fa69fefae757d018fe317928cf51401c7897c3475408a45934d6a9f864736f6c63430008130033","sourceMap":"505:5545:101:-:0;;;;;;;1088:4:61;1080:13;;505:5545:101;;;;;;1080:13:61;505:5545:101;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604081815260048036101561001557600080fd5b600092833560e01c908163025313a21461123c575080631413d4c014611204578063175188e8146110e45780633659cfe614610eb157806339ebf82314610e5b5780633d47683014610de757806342a987a014610db0578063485cc95514610c0c5780634f1ef2861461092357806352d1902d14610866578063642ce76b14610729578063715018a6146106db5780638da5cb5b146106ad5780638df8b2fe1461068057806398575188146105e9578063c4d66de814610572578063d80ea5a014610430578063f2fde38b1461039f578063fc2ebdd1146101a25763feec7145146100ff57600080fd5b3461019e578160031936011261019e57610117611261565b602435916001600160a01b0391908261012e611641565b1633148015610191575b156101835750916020918361016d7f8b9ed475f52a60fa276f21d6848c06cbb59ebfcd26e8b8de2753c3e12a493ea795611599565b169384865260668352818187205551908152a280f35b8451637d7b71b560e01b8152fd5b5082606554163314610138565b8280fd5b50903461019e57606036600319011261019e576101bd611261565b60443592602435926001600160a01b038086169391929084870361039b578351631800f90560e21b8152838216976020949091858186818d5afa908115610391578b91610364575b508380610210611641565b16331491821561035a575b821561034d575b50508015610340575b8015610325575b15610315579061024461024992611599565b611599565b868852606783528388209081541591821592610302575b50506102f457509181866060947f9b1a157188de9a0bd2e7995d72aaba244d9bd012ddf3ae3d4f492135175070cb96945161029a81611292565b858152818101908382526001858201918783528b8652606785528686209051815501915115159060ff835491610100600160a81b03905160081b1692169060018060a81b031916171790558251948552840152820152a280f35b825163c45546f760e01b8152fd5b6001015460081c16151590503880610260565b855163e3b6914b60e01b81528490fd5b50888a5260678552826001878c20015460081c163314610232565b508260655416331461022b565b9091501633148338610222565b338c14925061021b565b6103849150863d881161038a575b61037c81836112c3565b8101906115bb565b38610205565b503d610372565b87513d8d823e3d90fd5b8780fd5b503461019e57602036600319011261019e576103b9611261565b916103c2611301565b6001600160a01b038316156103de57836103db84611360565b80f35b906020608492519162461bcd60e51b8352820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152fd5b50903461019e5760208060031936011261056e5761044c611261565b8251631800f90560e21b81526001600160a01b03828116959190848284818a5afa918215610564578892610545575b5080610485611641565b16331491821561053b575b821561052e575b50811561051f575b8115610503575b50156104f55750600192916104bc606792611599565b84865252832001805460ff191660011790557f652f053fc39779b70b29678135ade972fcb79966fc68fcb77c996b1aa4fd9afb8280a280f35b835163e3b6914b60e01b8152fd5b9050858752606784526001858820015460081c163314386104a6565b8091506065541633149061049f565b8192501633149038610497565b3388149250610490565b61055d919250853d871161038a5761037c81836112c3565b903861047b565b86513d8a823e3d90fd5b8380fd5b503461019e57602036600319011261019e5761058c611261565b9160ff845460081c16156105a457836103db84611360565b906020608492519162461bcd60e51b8352820152602b602482015260008051602061172a83398151915260448201526a6e697469616c697a696e6760a81b6064820152fd5b503461019e57602036600319011261019e57610603611261565b6001600160a01b039182610615611641565b1633148015610673575b15610665575090816106318593611599565b169182825260666020528120557fe9dce8c992623ce791725b21e857e33248d1f190a25b5168313420eebdaae99d8280a280f35b8351637d7b71b560e01b8152fd5b508260655416331461061f565b5050346106a957816003193601126106a95760655490516001600160a01b039091168152602090f35b5080fd5b5050346106a957816003193601126106a9576020906106ca611641565b90516001600160a01b039091168152f35b83346107265780600319360112610726576106f4611301565b603380546001600160a01b0319811690915581906001600160a01b031660008051602061174a8339815191528280a380f35b80fd5b508290346106a957826003193601126106a957610744611261565b8351631800f90560e21b815290936001600160a01b03808616936020936024359392858284818a5afa91821561085c57889261083d575b5080610785611641565b163314918215610833575b8215610826575b508115610817575b81156107fb575b50156107ed57506107d97f40ba4d5d9facd2fda74e22251d1638576e05a30482470363c7c87a7b5b298c09949596611599565b84865260678352818187205551908152a280f35b905163e3b6914b60e01b8152fd5b9050858752606785526001838820015460081c163314886107a6565b8091506065541633149061079f565b8192501633149089610797565b3388149250610790565b610855919250863d881161038a5761037c81836112c3565b908961077b565b84513d8a823e3d90fd5b508234610726578060031936011261072657507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031630036108c0576020825160008051602061170a8339815191528152f35b6020608492519162461bcd60e51b8352820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152fd5b50908060031936011261019e57610938611261565b906024908135906001600160401b038211610c085736602383011215610c085781850135610965816112e6565b610971835191826112c3565b81815287602094858301933688828401011161019e5780888893018637830101526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116906109ca30831415611397565b6109e760008051602061170a8339815191529282845416146113e6565b6109ef611641565b8133911603610be1576000805160206116ca8339815191525460ff1615610a2157505050505050506103db9150611435565b87929394959697169085516352d1902d60e01b815287818b81865afa8b9181610bae575b50610a9157865162461bcd60e51b8152808b01899052602e818b01526000805160206117aa83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b989294989791939703610b6c575050610aa982611435565b60008051602061176a8339815191528780a285845115801590610b64575b610ad5575b50505050505080f35b80610b4e96845196610ae688611292565b602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b868901525190845af4913d15610b5a573d610b40610b37826112e6565b925192836112c3565b81528681943d92013e6114c5565b50388080808085610acc565b50606092506114c5565b506001610ac7565b845162461bcd60e51b815291820186905260299082015260008051602061178a8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508881813d8311610bda575b610bc681836112c3565b81010312610bd657519038610a45565b8b80fd5b503d610bbc565b888760449287610bef611641565b90519363163678e960e01b855233908501521690820152fd5b8580fd5b503461019e578160031936011261019e57610c25611261565b610c2d61127c565b84549260ff8460081c161593848095610da3575b8015610d8c575b15610d325760ff198116600117875584610d21575b5060ff865460081c1615610cdc5750610c7590611360565b610c7e81611599565b606580546001600160a01b0319166001600160a01b0392909216919091179055610ca6575080f35b60207f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989161ff001984541684555160018152a180f35b608490602086519162461bcd60e51b8352820152602b602482015260008051602061172a83398151915260448201526a6e697469616c697a696e6760a81b6064820152fd5b61ffff191661010117865538610c5d565b855162461bcd60e51b8152602081840152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b158015610c485750600160ff821614610c48565b50600160ff821610610c41565b5050346106a957806003193601126106a957602090610dde610dd0611261565b610dd861127c565b906115da565b90519015158152f35b833461072657602036600319011261072657610e01611261565b610e09611301565b610e1281611599565b606580546001600160a01b039283166001600160a01b0319821681179092559091167f5117c6c457d7b27a4cb68df40b118f157ac1f1ba81f8a571d189f829d74fbc868380a380f35b5050346106a95760203660031901126106a9576060916001600160a01b039190819083610e86611261565b1681526067602052209160018354930154825193845260ff81161515602085015260081c1690820152f35b50903461019e5760208060031936011261056e57610ecd611261565b916001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116610f0530821415611397565b610f2260008051602061170a8339815191529183835416146113e6565b610f2a611641565b82339116036110bd578251848101929091906001600160401b038411838510176110aa578385528883526000805160206116ca8339815191525460ff1615610f7c575050505050506103db9150611435565b869293949596169085516352d1902d60e01b815287818a81865afa8a9181611077575b50610fec57865162461bcd60e51b8152808a01899052602e60248201526000805160206117aa83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b979192939695949703611034575061100382611435565b60008051602061176a8339815191528780a28584511580159061102d57610ad55750505050505080f35b5080610ac7565b835162461bcd60e51b81529081018590526029602482015260008051602061178a8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508881813d83116110a3575b61108f81836112c3565b8101031261109f57519038610f9f565b8a80fd5b503d611085565b634e487b7160e01b895260418852602489fd5b60448683856110ca611641565b90519263163678e960e01b84523390840152166024820152fd5b50903461019e5760208060031936011261056e57611100611261565b8251631800f90560e21b81526001600160a01b03828116959190848284818a5afa9182156105645788926111e5575b5080611139611641565b1633149182156111db575b82156111ce575b5081156111bf575b81156111a3575b50156104f557509160676001926111718795611599565b85855252822082815501557f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea48280a280f35b9050858752606784526001858820015460081c1633143861115a565b80915060655416331490611153565b819250163314903861114b565b3388149250611144565b6111fd919250853d871161038a5761037c81836112c3565b903861112f565b5050346106a95760203660031901126106a95760209181906001600160a01b0361122c611261565b1681526066845220549051908152f35b8490346106a957816003193601126106a9576033546001600160a01b03168152602090f35b600435906001600160a01b038216820361127757565b600080fd5b602435906001600160a01b038216820361127757565b606081019081106001600160401b038211176112ad57604052565b634e487b7160e01b600052604160045260246000fd5b601f909101601f19168101906001600160401b038211908210176112ad57604052565b6001600160401b0381116112ad57601f01601f191660200190565b611309611641565b336001600160a01b039091160361131c57565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602061174a833981519152600080a3565b1561139e57565b60405162461bcd60e51b815260206004820152602c60248201526000805160206116ea83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b156113ed57565b60405162461bcd60e51b815260206004820152602c60248201526000805160206116ea83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b1561146a5760008051602061170a83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b9192901561152757508151156114d9575090565b3b156114e25790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b82519091501561153a5750805190602001fd5b6040519062461bcd60e51b82528160208060048301528251908160248401526000935b828510611580575050604492506000838284010152601f80199101168101030190fd5b848101820151868601604401529381019385935061155d565b6001600160a01b0316156115a957565b60405163d92e233d60e01b8152600490fd5b9081602091031261127757516001600160a01b03811681036112775790565b9060018060a01b038092166000526066602052816040600020549116600052606760205260406000209160405161161081611292565b6040600185549586845201549260ff841615938415602085015260081c1691015261163a57101590565b5050600190565b6033546001600160a01b0390811690813b61165a575090565b604051638da5cb5b60e01b8152602081600481865afa91829160009361168a575b5050611685575090565b905090565b602093919293813d82116116c1575b816116a6602093836112c3565b810103126106a957519182168203610726575090388061167b565b3d915061169956fe4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc496e697469616c697a61626c653a20636f6e7472616374206973206e6f7420698be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b45524331393637557067726164653a20756e737570706f727465642070726f7845524331393637557067726164653a206e657720696d706c656d656e74617469a264697066735822122090453e44fa69fefae757d018fe317928cf51401c7897c3475408a45934d6a9f864736f6c63430008130033","sourceMap":"505:5545:101:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;505:5545:101;;;1433:7;;:::i;:::-;505:5545;1419:10;:21;:50;;;;505:5545;1415:136;;;2892:5;;505:5545;2892:5;;;2949:29;2892:5;;:::i;:::-;505:5545;;;;;2908:10;505:5545;;;;;;;;;;;2949:29;505:5545;;1415:136;505:5545;;-1:-1:-1;;;1524:16:101;;;1419:50;505:5545;;1458:11;505:5545;;1419:10;1444:25;1419:50;;505:5545;;;;;;;;;;;;-1:-1:-1;;505:5545:101;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;505:5545:101;;;;;;;;;;;;;;-1:-1:-1;;;1661:54:101;;505:5545;;;;;;;;;;1661:54;505:5545;;1661:54;;;;;;;;;;;505:5545;1757:7;;;;;:::i;:::-;505:5545;1743:10;:21;:48;;;;;505:5545;1743:83;;;;505:5545;1743:128;;;;;;505:5545;1743:179;;;;505:5545;1726:296;;;3995:9;;4034:12;3995:9;;:::i;:::-;4034:12;:::i;:::-;505:5545;;;4061:10;505:5545;;;;;;;;4061:36;;;;:87;;;1726:296;4057:148;;;;505:5545;;;;;;4328:57;505:5545;;;;;;:::i;:::-;;;;4238:75;;;505:5545;;;;;4238:75;;;505:5545;;;;;;;4061:10;505:5545;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4328:57;505:5545;;4057:148;505:5545;;-1:-1:-1;;;4171:23:101;;;4061:87;505:5545;4101:33;505:5545;;;;4101:47;;;-1:-1:-1;4061:87:101;;;;1726:296;505:5545;;-1:-1:-1;;;1986:25:101;;505:5545;;1986:25;1743:179;505:5545;;;;1889:10;505:5545;;;;;;;1889:33;505:5545;;;;1743:10;1875:47;1743:179;;:128;505:5545;;1860:11;505:5545;;1743:10;1846:25;1743:128;;:83;505:5545;;;;1743:10;1795:31;1743:83;;;;:48;:10;1768:23;;;-1:-1:-1;1743:48:101;;1661:54;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;505:5545;;689:66:57;505:5545:101;;689:66:57;;;;505:5545:101;;;;;;;;;;;-1:-1:-1;;505:5545:101;;;;;;:::i;:::-;1324:62:42;;;:::i;:::-;-1:-1:-1;;;;;505:5545:101;;2423:22:42;505:5545:101;;2517:8:42;;;;:::i;:::-;505:5545:101;;;;;;;;689:66:57;;;;505:5545:101;;;;;;;;;;;;;;;-1:-1:-1;;;505:5545:101;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;1661:54:101;;-1:-1:-1;;;;;505:5545:101;;;;;;1661:54;505:5545;;;;1661:54;;;;;;;;;;;505:5545;1757:7;;;;:::i;:::-;505:5545;1743:10;:21;:48;;;;;505:5545;1743:83;;;;505:5545;1743:128;;;;;505:5545;1743:179;;;;505:5545;-1:-1:-1;1726:296:101;;;4951:9;505:5545;4951:9;;;4971:10;4951:9;;:::i;:::-;505:5545;;;;;;4971:28;505:5545;;-1:-1:-1;;505:5545:101;;;;;5021:28;505:5545;;5021:28;505:5545;;1726:296;505:5545;;-1:-1:-1;;;1986:25:101;;;1743:179;505:5545;;;;;1889:10;505:5545;;;;;;1889:33;505:5545;;;;1743:10;1875:47;1743:179;;;:128;505:5545;;;1860:11;505:5545;;1743:10;1846:25;1743:128;;;:83;505:5545;;;;1743:10;1795:31;1743:83;;;;:48;:10;1768:23;;;-1:-1:-1;1743:48:101;;1661:54;;;;;;;;;;;;;;;:::i;:::-;;;;;;505:5545;;689:66:57;505:5545:101;;689:66:57;;;;505:5545:101;;;;;;;;;;;-1:-1:-1;;505:5545:101;;;;;;:::i;:::-;;;;;;;;;;;499:12:102;;;;:::i;505:5545:101:-;;;;;;689:66:57;;;;505:5545:101;;;;;;;;;;-1:-1:-1;;;;;;;;;;;505:5545:101;;;;-1:-1:-1;;;505:5545:101;;;;;;;;;;;;-1:-1:-1;;505:5545:101;;;;;;:::i;:::-;-1:-1:-1;;;;;505:5545:101;;1433:7;;:::i;:::-;505:5545;1419:10;:21;:50;;;;505:5545;1415:136;;;3183:5;;;;;;;:::i;:::-;505:5545;;;;;3206:10;505:5545;;;;;3238:18;;;;505:5545;;1415:136;505:5545;;-1:-1:-1;;;1524:16:101;;;1419:50;505:5545;;1458:11;505:5545;;1419:10;1444:25;1419:50;;505:5545;;;;;;;;;;;;;;573:26;505:5545;;;-1:-1:-1;;;;;505:5545:101;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;505:5545:101;;;;;;;;;;;;;;;;;;;1324:62:42;;:::i;:::-;2779:6;505:5545:101;;-1:-1:-1;;;;;;505:5545:101;;;;;;;-1:-1:-1;;;;;505:5545:101;-1:-1:-1;;;;;;;;;;;505:5545:101;;2827:40:42;505:5545:101;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;1661:54:101;;505:5545;;-1:-1:-1;;;;;505:5545:101;;;;;;;;;;;;;;;1661:54;;;;;;;;;;;505:5545;1757:7;;;;:::i;:::-;505:5545;1743:10;:21;:48;;;;;505:5545;1743:83;;;;505:5545;1743:128;;;;;505:5545;1743:179;;;;505:5545;-1:-1:-1;1726:296:101;;;5392:9;;5474:43;5392:9;;;;:::i;:::-;505:5545;;;5412:10;505:5545;;;;;;;;;;;5474:43;505:5545;;1726:296;505:5545;;-1:-1:-1;;;1986:25:101;;;1743:179;505:5545;;;;;1889:10;505:5545;;;;;;1889:33;505:5545;;;;1743:10;1875:47;1743:179;;;:128;505:5545;;;1860:11;505:5545;;1743:10;1846:25;1743:128;;;:83;505:5545;;;;1743:10;1795:31;1743:83;;;;:48;:10;1768:23;;;-1:-1:-1;1743:48:101;;1661:54;;;;;;;;;;;;;;;:::i;:::-;;;;;;505:5545;;689:66:57;505:5545:101;;689:66:57;;;;505:5545:101;;;;;;;;;;;;;;-1:-1:-1;2089:6:61;-1:-1:-1;;;;;505:5545:101;2080:4:61;2072:23;505:5545:101;;;;;-1:-1:-1;;;;;;;;;;;505:5545:101;;;;;;;;689:66:57;;;;505:5545:101;;;;;;;;;;;;;;;-1:-1:-1;;;505:5545:101;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;505:5545:101;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1654:6:61;505:5545:101;;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;505:5545:101;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;505:5545:101;;1256:21:102;1252:94;;-1:-1:-1;;;;;;;;;;;505:5545:101;;;;;;2993:17:57;;;;;;;;;;;:::i;2906:504::-;505:5545:101;;;;;;;;;;;689:66:57;;;3046:52;;;;;;;;;;;;;;2906:504;-1:-1:-1;3042:291:57;;505:5545:101;;-1:-1:-1;;;3262:56:57;;;;;689:66;;;;;;;505:5545:101;-1:-1:-1;;;;;;;;;;;505:5545:101;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;;;;;;689:66;;3042:291;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;1889:27:57;;;505:5545:101;;;2208:15:57;;;:28;;;3042:291;2204:112;;3042:291;2906:504;;;;;;505:5545:101;;2204:112:57;505:5545:101;7307:69:73;505:5545:101;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;505:5545:101;;;;7265:25:73;;;;;;505:5545:101;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;7307:69:73;:::i;:::-;;2204:112:57;;;;;;;;505:5545:101;-1:-1:-1;505:5545:101;;-1:-1:-1;7307:69:73;:::i;2208:28:57:-;;505:5545:101;2208:28:57;;689:66;505:5545:101;;-1:-1:-1;;;689:66:57;;;;;;;;;;;;505:5545:101;-1:-1:-1;;;;;;;;;;;505:5545:101;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;689:66;505:5545:101;;;3046:52:57;;;;;1252:94:102;1327:7;;505:5545:101;1327:7:102;;;;:::i;:::-;505:5545:101;;1300:35:102;;;;;;1267:10;1300:35;;;505:5545:101;;;;;;1300:35:102;505:5545:101;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;;;;;3301:14:44;3347:34;;;;;;505:5545:101;3346:108:44;;;;505:5545:101;;;;-1:-1:-1;;505:5545:101;;3551:1:44;505:5545:101;;;;3562:65:44;;505:5545:101;;;;;;;;;;;499:12:102;;;;:::i;:::-;2573::101;;;:::i;:::-;2596:26;505:5545;;-1:-1:-1;;;;;;505:5545:101;-1:-1:-1;;;;;505:5545:101;;;;;;;;;;3647:99:44;;505:5545:101;;;3647:99:44;505:5545:101;3721:14:44;505:5545:101;;;;;;;;;3551:1:44;505:5545:101;;3721:14:44;505:5545:101;;;;;;;;689:66:57;;;;505:5545:101;;;;;;;;;;-1:-1:-1;;;;;;;;;;;505:5545:101;;;;-1:-1:-1;;;505:5545:101;;;;;3562:65:44;-1:-1:-1;;505:5545:101;;;;;3562:65:44;;;505:5545:101;;;-1:-1:-1;;;505:5545:101;;;;;;;;;;;;;;;;;-1:-1:-1;;;505:5545:101;;;;;;;3346:108:44;3426:4;;1702:19:73;:23;3387:66:44;;3346:108;3387:66;505:5545:101;3452:1:44;505:5545:101;;;3436:17:44;3346:108;;3347:34;505:5545:101;3380:1:44;505:5545:101;;;3365:16:44;3347:34;;505:5545:101;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;505:5545:101;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;3481:11:101;;;:::i;:::-;3524;505:5545;;-1:-1:-1;;;;;505:5545:101;;;-1:-1:-1;;;;;;505:5545:101;;;;;;;;;;3585:43;;;;505:5545;;;;;;;;;;-1:-1:-1;;505:5545:101;;;;;;-1:-1:-1;;;;;505:5545:101;;;;;;;:::i;:::-;;;;657:46;505:5545;;;;;;;657:46;;505:5545;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;-1:-1:-1;;;;;1654:6:61;505:5545:101;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;505:5545:101;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;505:5545:101;;1256:21:102;1252:94;;505:5545:101;;;;;;;;;-1:-1:-1;;;;;505:5545:101;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;505:5545:101;;;;;;2993:17:57;;;;;;;;;;:::i;2906:504::-;505:5545:101;;;;;;;;;;689:66:57;;;3046:52;;;;;;;;;;;;;;2906:504;-1:-1:-1;3042:291:57;;505:5545:101;;-1:-1:-1;;;3262:56:57;;;;;689:66;;;;;;;505:5545:101;-1:-1:-1;;;;;;;;;;;505:5545:101;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;;;;;;689:66;;3042:291;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;1889:27:57;;;505:5545:101;;;2208:15:57;;;:28;;;2204:112;;2906:504;;;;;;505:5545:101;;2208:28:57;;;;;689:66;505:5545:101;;-1:-1:-1;;;689:66:57;;;;;;;;;;;;505:5545:101;-1:-1:-1;;;;;;;;;;;505:5545:101;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;689:66;505:5545:101;;;3046:52:57;;;;;505:5545:101;-1:-1:-1;;;505:5545:101;;;;;;;;1252:94:102;505:5545:101;1327:7:102;;;;;:::i;:::-;505:5545:101;;1300:35:102;;;;;;1267:10;1300:35;;;505:5545:101;;;;;;1300:35:102;505:5545:101;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;1661:54:101;;-1:-1:-1;;;;;505:5545:101;;;;;;1661:54;505:5545;;;;1661:54;;;;;;;;;;;505:5545;1757:7;;;;:::i;:::-;505:5545;1743:10;:21;:48;;;;;505:5545;1743:83;;;;505:5545;1743:128;;;;;505:5545;1743:179;;;;505:5545;-1:-1:-1;1726:296:101;;;4634:9;;4661:10;505:5545;4634:9;;;;;:::i;:::-;505:5545;;;;;;;;;;;4697:26;;;;505:5545;;1743:179;505:5545;;;;;1889:10;505:5545;;;;;;1889:33;505:5545;;;;1743:10;1875:47;1743:179;;;:128;505:5545;;;1860:11;505:5545;;1743:10;1846:25;1743:128;;;:83;505:5545;;;;1743:10;1795:31;1743:83;;;;:48;:10;1768:23;;;-1:-1:-1;1743:48:101;;1661:54;;;;;;;;;;;;;;;:::i;:::-;;;;;505:5545;;;;;;;;-1:-1:-1;;505:5545:101;;;;;;;;-1:-1:-1;;;;;505:5545:101;;:::i;:::-;;;;606:45;505:5545;;;;;;;;;;;;;;;;;;;;;;;;1534:6:42;505:5545:101;-1:-1:-1;;;;;505:5545:101;;;;;;;;;;-1:-1:-1;;;;;505:5545:101;;;;;;:::o;:::-;;;;;;;;-1:-1:-1;;;;;505:5545:101;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;505:5545:101;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;;505:5545:101;;;;-1:-1:-1;;;;;505:5545:101;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;505:5545:101;;;;;;-1:-1:-1;;505:5545:101;;;;:::o;1620:130:42:-;1683:7;;:::i;:::-;965:10:48;-1:-1:-1;;;;;505:5545:101;;;1683:23:42;505:5545:101;;1620:130:42:o;505:5545:101:-;;;;689:66:57;;;505:5545:101;;;;;;;;;;;;;;;;;;2687:187:42;2779:6;505:5545:101;;-1:-1:-1;;;;;505:5545:101;;;-1:-1:-1;;;;;;505:5545:101;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;2827:40:42;2687:187::o;505:5545:101:-;;;;:::o;:::-;;;-1:-1:-1;;;505:5545:101;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;505:5545:101;;;;-1:-1:-1;;;505:5545:101;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;505:5545:101;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;505:5545:101;;;;-1:-1:-1;;;505:5545:101;;;;;;;1406:259:57;1702:19:73;;:23;505:5545:101;;-1:-1:-1;;;;;;;;;;;505:5545:101;;-1:-1:-1;;;;;;505:5545:101;-1:-1:-1;;;;;505:5545:101;;;;;;;;;1406:259:57:o;505:5545:101:-;;;-1:-1:-1;;;505:5545:101;;;;;;;;;;;;;;;;;-1:-1:-1;;;505:5545:101;;;;;;;7671:628:73;;;;7875:418;;;505:5545:101;;;7906:22:73;7902:286;;8201:17;;:::o;7902:286::-;1702:19;:23;505:5545:101;;8201:17:73;:::o;505:5545:101:-;;;-1:-1:-1;;;505:5545:101;;;;;;;;;;;;;;;;;;;;7875:418:73;505:5545:101;;;;-1:-1:-1;8980:21:73;:17;;9152:142;;;;;;;8976:379;505:5545:101;;689:66:57;;;;9324:20:73;;505:5545:101;;9324:20:73;;;;505:5545:101;;;;;;;;;9000:1:73;505:5545:101;;;;;;;;;;;;9000:1:73;505:5545:101;;;;;;;;;;;;;;9324:20:73;;;;505:5545:101;;;;;;;;;;;;;;;;;;;-1:-1:-1;505:5545:101;;2226:148;-1:-1:-1;;;;;505:5545:101;2299:22;2295:73;;2226:148::o;2295:73::-;505:5545;;-1:-1:-1;;;2344:13:101;;;;;505:5545;;;;;;;;;;-1:-1:-1;;;;;505:5545:101;;;;;;;:::o;5689:327::-;;505:5545;;;;;;;;-1:-1:-1;505:5545:101;5817:10;505:5545;;;;-1:-1:-1;505:5545:101;;;;-1:-1:-1;505:5545:101;5871:10;505:5545;;;-1:-1:-1;505:5545:101;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5903:58;;5978:31;;5689:327;:::o;5903:58::-;5939:11;;505:5545;5939:11;:::o;633:544:102:-;1534:6:42;505:5545:101;-1:-1:-1;;;;;505:5545:101;;;;755:33:102;;1534:6:42;;870:19:102;;:::o;751:420::-;505:5545:101;;-1:-1:-1;;;924:40:102;;;505:5545:101;924:40:102;505:5545:101;924:40:102;;;;;;-1:-1:-1;924:40:102;;;751:420;-1:-1:-1;;920:241:102;;1127:19;;:::o;920:241::-;1008:13;;;:::o;924:40::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;505:5545:101;;;;;;;;;;;;924:40:102;;;;;;;;;-1:-1:-1;924:40:102;","linkReferences":{},"immutableReferences":{"54869":[{"start":2171,"length":32},{"start":2460,"length":32},{"start":3800,"length":32}]}},"methodIdentifiers":{"activateStrategy(address)":"d80ea5a0","addStrategy(address,uint256,address)":"fc2ebdd1","addUserScore(address,uint256)":"feec7145","canExecuteAction(address,address)":"42a987a0","changeListManager(address)":"3d476830","initialize(address)":"c4d66de8","initialize(address,address)":"485cc955","listManager()":"8df8b2fe","modifyThreshold(address,uint256)":"642ce76b","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","proxyOwner()":"025313a2","removeStrategy(address)":"175188e8","removeUser(address)":"98575188","renounceOwnership()":"715018a6","strategies(address)":"39ebf823","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286","userScores(address)":"1413d4c0"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyAuthorized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyAuthorizedOrUser\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCouncil\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"OnlyCouncilOrAuthorized\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"StrategyAlreadyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"ZeroAddress\",\"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\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"oldManager\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"newManager\",\"type\":\"address\"}],\"name\":\"ListManagerChanged\",\"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\":true,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"StrategyActivated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"councilSafe\",\"type\":\"address\"}],\"name\":\"StrategyAdded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"StrategyRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"strategy\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"newThreshold\",\"type\":\"uint256\"}],\"name\":\"ThresholdModified\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"}],\"name\":\"UserRemoved\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"user\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint256\",\"name\":\"score\",\"type\":\"uint256\"}],\"name\":\"UserScoreAdded\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"activateStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_threshold\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_councilSafe\",\"type\":\"address\"}],\"name\":\"addStrategy\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_score\",\"type\":\"uint256\"}],\"name\":\"addUserScore\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_user\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"canExecuteAction\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_newManager\",\"type\":\"address\"}],\"name\":\"changeListManager\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_listManager\",\"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\":[],\"name\":\"listManager\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"_newThreshold\",\"type\":\"uint256\"}],\"name\":\"modifyThreshold\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":\"proxyOwner\",\"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\":\"address\",\"name\":\"_user\",\"type\":\"address\"}],\"name\":\"removeUser\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"strategies\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"threshold\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"active\",\"type\":\"bool\"},{\"internalType\":\"address\",\"name\":\"councilSafe\",\"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\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"userScores\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"custom:oz-upgrades-from\":\"PassportScorer\",\"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\":{\"activateStrategy(address)\":{\"params\":{\"_strategy\":\"address of the strategy to activate\"}},\"addStrategy(address,uint256,address)\":{\"params\":{\"_councilSafe\":\"address of the council safe\",\"_threshold\":\"is expressed on a scale of 10**4\"}},\"addUserScore(address,uint256)\":{\"params\":{\"_score\":\"score to assign to the user\",\"_user\":\"address of the user to add\"}},\"canExecuteAction(address,address)\":{\"params\":{\"_strategy\":\"address of the strategy to check\",\"_user\":\"address of the user to check\"}},\"changeListManager(address)\":{\"params\":{\"_newManager\":\"address of the new list manager\"}},\"modifyThreshold(address,uint256)\":{\"params\":{\"_newThreshold\":\"new threshold to set expressed on a scale of 10**4\",\"_strategy\":\"address of the strategy to modify\"}},\"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.\"},\"removeStrategy(address)\":{\"params\":{\"_strategy\":\"address of the strategy to remove\"}},\"removeUser(address)\":{\"params\":{\"_user\":\"address of the user to remove\"}},\"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\":{\"activateStrategy(address)\":{\"notice\":\"Activate a strategy\"},\"addStrategy(address,uint256,address)\":{\"notice\":\"Add a strategy to the contract\"},\"addUserScore(address,uint256)\":{\"notice\":\"Add a userScore to the list\"},\"canExecuteAction(address,address)\":{\"notice\":\"Check if an action can be executed\"},\"changeListManager(address)\":{\"notice\":\"Change the list manager address\"},\"modifyThreshold(address,uint256)\":{\"notice\":\"Modify the threshold of a strategy\"},\"removeStrategy(address)\":{\"notice\":\"Remove a strategy from the contract\"},\"removeUser(address)\":{\"notice\":\"Remove a user from the list\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/PassportScorer.sol\":\"PassportScorer\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a\",\"dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"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":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"OnlyAuthorized"},{"inputs":[],"type":"error","name":"OnlyAuthorizedOrUser"},{"inputs":[],"type":"error","name":"OnlyCouncil"},{"inputs":[],"type":"error","name":"OnlyCouncilOrAuthorized"},{"inputs":[],"type":"error","name":"StrategyAlreadyExists"},{"inputs":[],"type":"error","name":"ZeroAddress"},{"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":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"address","name":"oldManager","type":"address","indexed":true},{"internalType":"address","name":"newManager","type":"address","indexed":true}],"type":"event","name":"ListManagerChanged","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":"strategy","type":"address","indexed":true}],"type":"event","name":"StrategyActivated","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":true},{"internalType":"uint256","name":"threshold","type":"uint256","indexed":false},{"internalType":"bool","name":"active","type":"bool","indexed":false},{"internalType":"address","name":"councilSafe","type":"address","indexed":false}],"type":"event","name":"StrategyAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":true}],"type":"event","name":"StrategyRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"strategy","type":"address","indexed":true},{"internalType":"uint256","name":"newThreshold","type":"uint256","indexed":false}],"type":"event","name":"ThresholdModified","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"user","type":"address","indexed":true}],"type":"event","name":"UserRemoved","anonymous":false},{"inputs":[{"internalType":"address","name":"user","type":"address","indexed":true},{"internalType":"uint256","name":"score","type":"uint256","indexed":false}],"type":"event","name":"UserScoreAdded","anonymous":false},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"activateStrategy"},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"uint256","name":"_threshold","type":"uint256"},{"internalType":"address","name":"_councilSafe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"addStrategy"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"uint256","name":"_score","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"addUserScore"},{"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"canExecuteAction","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[{"internalType":"address","name":"_newManager","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"changeListManager"},{"inputs":[{"internalType":"address","name":"_listManager","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":[],"stateMutability":"view","type":"function","name":"listManager","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"},{"internalType":"uint256","name":"_newThreshold","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"modifyThreshold"},{"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":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeStrategy"},{"inputs":[{"internalType":"address","name":"_user","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"removeUser"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"strategies","outputs":[{"internalType":"uint256","name":"threshold","type":"uint256"},{"internalType":"bool","name":"active","type":"bool"},{"internalType":"address","name":"councilSafe","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"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function","name":"userScores","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]}],"devdoc":{"kind":"dev","methods":{"activateStrategy(address)":{"params":{"_strategy":"address of the strategy to activate"}},"addStrategy(address,uint256,address)":{"params":{"_councilSafe":"address of the council safe","_threshold":"is expressed on a scale of 10**4"}},"addUserScore(address,uint256)":{"params":{"_score":"score to assign to the user","_user":"address of the user to add"}},"canExecuteAction(address,address)":{"params":{"_strategy":"address of the strategy to check","_user":"address of the user to check"}},"changeListManager(address)":{"params":{"_newManager":"address of the new list manager"}},"modifyThreshold(address,uint256)":{"params":{"_newThreshold":"new threshold to set expressed on a scale of 10**4","_strategy":"address of the strategy to modify"}},"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."},"removeStrategy(address)":{"params":{"_strategy":"address of the strategy to remove"}},"removeUser(address)":{"params":{"_user":"address of the user to remove"}},"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":{"activateStrategy(address)":{"notice":"Activate a strategy"},"addStrategy(address,uint256,address)":{"notice":"Add a strategy to the contract"},"addUserScore(address,uint256)":{"notice":"Add a userScore to the list"},"canExecuteAction(address,address)":{"notice":"Check if an action can be executed"},"changeListManager(address)":{"notice":"Change the list manager address"},"modifyThreshold(address,uint256)":{"notice":"Modify the threshold of a strategy"},"removeStrategy(address)":{"notice":"Remove a strategy from the contract"},"removeUser(address)":{"notice":"Remove a user from the list"}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/PassportScorer.sol":"PassportScorer"},"evmVersion":"paris","libraries":{},"viaIR":true},"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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4","urls":["bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a","dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"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":52287,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52290,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":52992,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52079,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52199,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":70628,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"listManager","offset":0,"slot":"101","type":"t_address"},{"astId":70632,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"userScores","offset":0,"slot":"102","type":"t_mapping(t_address,t_uint256)"},{"astId":70637,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"strategies","offset":0,"slot":"103","type":"t_mapping(t_address,t_struct(Strategy)70555_storage)"},{"astId":71079,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"__gap","offset":0,"slot":"104","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(Strategy)70555_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Strategy)","numberOfBytes":"32","value":"t_struct(Strategy)70555_storage"},"t_mapping(t_address,t_uint256)":{"encoding":"mapping","key":"t_address","label":"mapping(address => uint256)","numberOfBytes":"32","value":"t_uint256"},"t_struct(Strategy)70555_storage":{"encoding":"inplace","label":"struct Strategy","numberOfBytes":"64","members":[{"astId":70550,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"threshold","offset":0,"slot":"0","type":"t_uint256"},{"astId":70552,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"active","offset":0,"slot":"1","type":"t_bool"},{"astId":70554,"contract":"pkg/contracts/src/PassportScorer.sol:PassportScorer","label":"councilSafe","offset":1,"slot":"1","type":"t_address"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/PassportScorer.sol","id":71081,"exportedSymbols":{"CVStrategyV0_0":[70249],"ISybilScorer":[70608],"OwnableUpgradeable":[52200],"PassportScorer":[71080],"ProxyOwnableUpgrader":[71181],"Strategy":[70555],"UUPSUpgradeable":[54969]},"nodeType":"SourceUnit","src":"46:6005:101","nodes":[{"id":70610,"nodeType":"PragmaDirective","src":"46:24:101","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":70612,"nodeType":"ImportDirective","src":"72:64:101","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"./ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":71081,"sourceUnit":71182,"symbolAliases":[{"foreign":{"id":70611,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71181,"src":"80:20:101","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70615,"nodeType":"ImportDirective","src":"137:58:101","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"./ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":71081,"sourceUnit":70609,"symbolAliases":[{"foreign":{"id":70613,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70608,"src":"145:12:101","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":70614,"name":"Strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70555,"src":"159:8:101","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70617,"nodeType":"ImportDirective","src":"196:88:101","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":71081,"sourceUnit":54970,"symbolAliases":[{"foreign":{"id":70616,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54969,"src":"204:15:101","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70619,"nodeType":"ImportDirective","src":"285:110:101","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":71081,"sourceUnit":52201,"symbolAliases":[{"foreign":{"id":70618,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52200,"src":"293:18:101","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":70621,"nodeType":"ImportDirective","src":"396:63:101","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"./CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":71081,"sourceUnit":70250,"symbolAliases":[{"foreign":{"id":70620,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70249,"src":"404:14:101","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71080,"nodeType":"ContractDefinition","src":"505:5545:101","nodes":[{"id":70628,"nodeType":"VariableDeclaration","src":"573:26:101","nodes":[],"constant":false,"functionSelector":"8df8b2fe","mutability":"mutable","name":"listManager","nameLocation":"588:11:101","scope":71080,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70627,"name":"address","nodeType":"ElementaryTypeName","src":"573:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":70632,"nodeType":"VariableDeclaration","src":"606:45:101","nodes":[],"constant":false,"functionSelector":"1413d4c0","mutability":"mutable","name":"userScores","nameLocation":"641:10:101","scope":71080,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"typeName":{"id":70631,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":70629,"name":"address","nodeType":"ElementaryTypeName","src":"614:7:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"606:27:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":70630,"name":"uint256","nodeType":"ElementaryTypeName","src":"625:7:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}},"visibility":"public"},{"id":70637,"nodeType":"VariableDeclaration","src":"657:46:101","nodes":[],"constant":false,"functionSelector":"39ebf823","mutability":"mutable","name":"strategies","nameLocation":"693:10:101","scope":71080,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$70555_storage_$","typeString":"mapping(address => struct Strategy)"},"typeName":{"id":70636,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":70633,"name":"address","nodeType":"ElementaryTypeName","src":"665:7:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"657:28:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$70555_storage_$","typeString":"mapping(address => struct Strategy)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":70635,"nodeType":"UserDefinedTypeName","pathNode":{"id":70634,"name":"Strategy","nameLocations":["676:8:101"],"nodeType":"IdentifierPath","referencedDeclaration":70555,"src":"676:8:101"},"referencedDeclaration":70555,"src":"676:8:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_storage_ptr","typeString":"struct Strategy"}}},"visibility":"public"},{"id":70643,"nodeType":"EventDefinition","src":"710:58:101","nodes":[],"anonymous":false,"eventSelector":"8b9ed475f52a60fa276f21d6848c06cbb59ebfcd26e8b8de2753c3e12a493ea7","name":"UserScoreAdded","nameLocation":"716:14:101","parameters":{"id":70642,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70639,"indexed":true,"mutability":"mutable","name":"user","nameLocation":"747:4:101","nodeType":"VariableDeclaration","scope":70643,"src":"731:20:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70638,"name":"address","nodeType":"ElementaryTypeName","src":"731:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70641,"indexed":false,"mutability":"mutable","name":"score","nameLocation":"761:5:101","nodeType":"VariableDeclaration","scope":70643,"src":"753:13:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70640,"name":"uint256","nodeType":"ElementaryTypeName","src":"753:7:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"730:37:101"}},{"id":70647,"nodeType":"EventDefinition","src":"773:40:101","nodes":[],"anonymous":false,"eventSelector":"e9dce8c992623ce791725b21e857e33248d1f190a25b5168313420eebdaae99d","name":"UserRemoved","nameLocation":"779:11:101","parameters":{"id":70646,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70645,"indexed":true,"mutability":"mutable","name":"user","nameLocation":"807:4:101","nodeType":"VariableDeclaration","scope":70647,"src":"791:20:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70644,"name":"address","nodeType":"ElementaryTypeName","src":"791:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"790:22:101"}},{"id":70653,"nodeType":"EventDefinition","src":"818:81:101","nodes":[],"anonymous":false,"eventSelector":"5117c6c457d7b27a4cb68df40b118f157ac1f1ba81f8a571d189f829d74fbc86","name":"ListManagerChanged","nameLocation":"824:18:101","parameters":{"id":70652,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70649,"indexed":true,"mutability":"mutable","name":"oldManager","nameLocation":"859:10:101","nodeType":"VariableDeclaration","scope":70653,"src":"843:26:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70648,"name":"address","nodeType":"ElementaryTypeName","src":"843:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70651,"indexed":true,"mutability":"mutable","name":"newManager","nameLocation":"887:10:101","nodeType":"VariableDeclaration","scope":70653,"src":"871:26:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70650,"name":"address","nodeType":"ElementaryTypeName","src":"871:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"842:56:101"}},{"id":70663,"nodeType":"EventDefinition","src":"904:99:101","nodes":[],"anonymous":false,"eventSelector":"9b1a157188de9a0bd2e7995d72aaba244d9bd012ddf3ae3d4f492135175070cb","name":"StrategyAdded","nameLocation":"910:13:101","parameters":{"id":70662,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70655,"indexed":true,"mutability":"mutable","name":"strategy","nameLocation":"940:8:101","nodeType":"VariableDeclaration","scope":70663,"src":"924:24:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70654,"name":"address","nodeType":"ElementaryTypeName","src":"924:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70657,"indexed":false,"mutability":"mutable","name":"threshold","nameLocation":"958:9:101","nodeType":"VariableDeclaration","scope":70663,"src":"950:17:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70656,"name":"uint256","nodeType":"ElementaryTypeName","src":"950:7:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70659,"indexed":false,"mutability":"mutable","name":"active","nameLocation":"974:6:101","nodeType":"VariableDeclaration","scope":70663,"src":"969:11:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":70658,"name":"bool","nodeType":"ElementaryTypeName","src":"969:4:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":70661,"indexed":false,"mutability":"mutable","name":"councilSafe","nameLocation":"990:11:101","nodeType":"VariableDeclaration","scope":70663,"src":"982:19:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70660,"name":"address","nodeType":"ElementaryTypeName","src":"982:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"923:79:101"}},{"id":70667,"nodeType":"EventDefinition","src":"1008:48:101","nodes":[],"anonymous":false,"eventSelector":"09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4","name":"StrategyRemoved","nameLocation":"1014:15:101","parameters":{"id":70666,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70665,"indexed":true,"mutability":"mutable","name":"strategy","nameLocation":"1046:8:101","nodeType":"VariableDeclaration","scope":70667,"src":"1030:24:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70664,"name":"address","nodeType":"ElementaryTypeName","src":"1030:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1029:26:101"}},{"id":70671,"nodeType":"EventDefinition","src":"1061:50:101","nodes":[],"anonymous":false,"eventSelector":"652f053fc39779b70b29678135ade972fcb79966fc68fcb77c996b1aa4fd9afb","name":"StrategyActivated","nameLocation":"1067:17:101","parameters":{"id":70670,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70669,"indexed":true,"mutability":"mutable","name":"strategy","nameLocation":"1101:8:101","nodeType":"VariableDeclaration","scope":70671,"src":"1085:24:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70668,"name":"address","nodeType":"ElementaryTypeName","src":"1085:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1084:26:101"}},{"id":70677,"nodeType":"EventDefinition","src":"1116:72:101","nodes":[],"anonymous":false,"eventSelector":"40ba4d5d9facd2fda74e22251d1638576e05a30482470363c7c87a7b5b298c09","name":"ThresholdModified","nameLocation":"1122:17:101","parameters":{"id":70676,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70673,"indexed":true,"mutability":"mutable","name":"strategy","nameLocation":"1156:8:101","nodeType":"VariableDeclaration","scope":70677,"src":"1140:24:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70672,"name":"address","nodeType":"ElementaryTypeName","src":"1140:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70675,"indexed":false,"mutability":"mutable","name":"newThreshold","nameLocation":"1174:12:101","nodeType":"VariableDeclaration","scope":70677,"src":"1166:20:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70674,"name":"uint256","nodeType":"ElementaryTypeName","src":"1166:7:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1139:48:101"}},{"id":70679,"nodeType":"ErrorDefinition","src":"1194:23:101","nodes":[],"errorSelector":"7d7b71b5","name":"OnlyAuthorized","nameLocation":"1200:14:101","parameters":{"id":70678,"nodeType":"ParameterList","parameters":[],"src":"1214:2:101"}},{"id":70681,"nodeType":"ErrorDefinition","src":"1222:29:101","nodes":[],"errorSelector":"545d3289","name":"OnlyAuthorizedOrUser","nameLocation":"1228:20:101","parameters":{"id":70680,"nodeType":"ParameterList","parameters":[],"src":"1248:2:101"}},{"id":70683,"nodeType":"ErrorDefinition","src":"1256:32:101","nodes":[],"errorSelector":"e3b6914b","name":"OnlyCouncilOrAuthorized","nameLocation":"1262:23:101","parameters":{"id":70682,"nodeType":"ParameterList","parameters":[],"src":"1285:2:101"}},{"id":70685,"nodeType":"ErrorDefinition","src":"1293:20:101","nodes":[],"errorSelector":"97ffbac9","name":"OnlyCouncil","nameLocation":"1299:11:101","parameters":{"id":70684,"nodeType":"ParameterList","parameters":[],"src":"1310:2:101"}},{"id":70687,"nodeType":"ErrorDefinition","src":"1318:20:101","nodes":[],"errorSelector":"d92e233d","name":"ZeroAddress","nameLocation":"1324:11:101","parameters":{"id":70686,"nodeType":"ParameterList","parameters":[],"src":"1335:2:101"}},{"id":70689,"nodeType":"ErrorDefinition","src":"1343:30:101","nodes":[],"errorSelector":"c45546f7","name":"StrategyAlreadyExists","nameLocation":"1349:21:101","parameters":{"id":70688,"nodeType":"ParameterList","parameters":[],"src":"1370:2:101"}},{"id":70709,"nodeType":"ModifierDefinition","src":"1379:178:101","nodes":[],"body":{"id":70708,"nodeType":"Block","src":"1405:152:101","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":70700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70695,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70691,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1419:3:101","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70692,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1423:6:101","memberName":"sender","nodeType":"MemberAccess","src":"1419:10:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":70693,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[71159],"referencedDeclaration":71159,"src":"1433:5:101","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":70694,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1433:7:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1419:21:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70699,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70696,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1444:3:101","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70697,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1448:6:101","memberName":"sender","nodeType":"MemberAccess","src":"1444:10:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":70698,"name":"listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70628,"src":"1458:11:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1444:25:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1419:50:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":70706,"nodeType":"Block","src":"1503:48:101","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70703,"name":"OnlyAuthorized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70679,"src":"1524:14:101","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70704,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1524:16:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70705,"nodeType":"RevertStatement","src":"1517:23:101"}]},"id":70707,"nodeType":"IfStatement","src":"1415:136:101","trueBody":{"id":70702,"nodeType":"Block","src":"1471:26:101","statements":[{"id":70701,"nodeType":"PlaceholderStatement","src":"1485:1:101"}]}}]},"name":"onlyAuthorized","nameLocation":"1388:14:101","parameters":{"id":70690,"nodeType":"ParameterList","parameters":[],"src":"1402:2:101"},"virtual":false,"visibility":"internal"},{"id":70763,"nodeType":"ModifierDefinition","src":"1563:465:101","nodes":[],"body":{"id":70762,"nodeType":"Block","src":"1615:413:101","nodes":[],"statements":[{"assignments":[70714],"declarations":[{"constant":false,"id":70714,"mutability":"mutable","name":"registryCommunity","nameLocation":"1633:17:101","nodeType":"VariableDeclaration","scope":70762,"src":"1625:25:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70713,"name":"address","nodeType":"ElementaryTypeName","src":"1625:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":70726,"initialValue":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"id":70720,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70711,"src":"1684:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70719,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1676:8:101","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":70718,"name":"address","nodeType":"ElementaryTypeName","src":"1676:8:101","stateMutability":"payable","typeDescriptions":{}}},"id":70721,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1676:18:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":70717,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70249,"src":"1661:14:101","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$70249_$","typeString":"type(contract CVStrategyV0_0)"}},"id":70722,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1661:34:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}},"id":70723,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1696:17:101","memberName":"registryCommunity","nodeType":"MemberAccess","referencedDeclaration":66625,"src":"1661:52:101","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_RegistryCommunityV0_0_$73556_$","typeString":"function () view external returns (contract RegistryCommunityV0_0)"}},"id":70724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1661:54:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":70716,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1653:7:101","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70715,"name":"address","nodeType":"ElementaryTypeName","src":"1653:7:101","typeDescriptions":{}}},"id":70725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1653:63:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"1625:91:101"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":70754,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":70746,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":70741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":70736,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70731,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70727,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1743:3:101","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70728,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1747:6:101","memberName":"sender","nodeType":"MemberAccess","src":"1743:10:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[],"expression":{"argumentTypes":[],"id":70729,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[71159],"referencedDeclaration":71159,"src":"1757:5:101","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":70730,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1757:7:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1743:21:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70732,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1768:3:101","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70733,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1772:6:101","memberName":"sender","nodeType":"MemberAccess","src":"1768:10:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":70734,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70711,"src":"1782:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1768:23:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1743:48:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70740,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70737,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1795:3:101","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70738,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1799:6:101","memberName":"sender","nodeType":"MemberAccess","src":"1795:10:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":70739,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70714,"src":"1809:17:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1795:31:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1743:83:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70745,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70742,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1846:3:101","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70743,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1850:6:101","memberName":"sender","nodeType":"MemberAccess","src":"1846:10:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":70744,"name":"listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70628,"src":"1860:11:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1846:25:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1743:128:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70753,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70747,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"1875:3:101","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70748,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1879:6:101","memberName":"sender","nodeType":"MemberAccess","src":"1875:10:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"baseExpression":{"id":70749,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70637,"src":"1889:10:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$70555_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":70751,"indexExpression":{"id":70750,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70711,"src":"1900:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1889:21:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_storage","typeString":"struct Strategy storage ref"}},"id":70752,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"1911:11:101","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70554,"src":"1889:33:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1875:47:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1743:179:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":70760,"nodeType":"Block","src":"1965:57:101","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70757,"name":"OnlyCouncilOrAuthorized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70683,"src":"1986:23:101","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1986:25:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70759,"nodeType":"RevertStatement","src":"1979:32:101"}]},"id":70761,"nodeType":"IfStatement","src":"1726:296:101","trueBody":{"id":70756,"nodeType":"Block","src":"1933:26:101","statements":[{"id":70755,"nodeType":"PlaceholderStatement","src":"1947:1:101"}]}}]},"name":"onlyCouncilOrAuthorized","nameLocation":"1572:23:101","parameters":{"id":70712,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70711,"mutability":"mutable","name":"_strategy","nameLocation":"1604:9:101","nodeType":"VariableDeclaration","scope":70763,"src":"1596:17:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70710,"name":"address","nodeType":"ElementaryTypeName","src":"1596:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1595:19:101"},"virtual":false,"visibility":"internal"},{"id":70782,"nodeType":"ModifierDefinition","src":"2034:186:101","nodes":[],"body":{"id":70781,"nodeType":"Block","src":"2074:146:101","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":70767,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"2088:3:101","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":70768,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2092:6:101","memberName":"sender","nodeType":"MemberAccess","src":"2088:10:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"baseExpression":{"id":70769,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70637,"src":"2102:10:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$70555_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":70771,"indexExpression":{"id":70770,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70765,"src":"2113:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2102:21:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_storage","typeString":"struct Strategy storage ref"}},"id":70772,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"2124:11:101","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70554,"src":"2102:33:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2088:47:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":70779,"nodeType":"Block","src":"2169:45:101","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70776,"name":"OnlyCouncil","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70685,"src":"2190:11:101","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70777,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2190:13:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70778,"nodeType":"RevertStatement","src":"2183:20:101"}]},"id":70780,"nodeType":"IfStatement","src":"2084:130:101","trueBody":{"id":70775,"nodeType":"Block","src":"2137:26:101","statements":[{"id":70774,"nodeType":"PlaceholderStatement","src":"2151:1:101"}]}}]},"name":"onlyCouncil","nameLocation":"2043:11:101","parameters":{"id":70766,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70765,"mutability":"mutable","name":"_strategy","nameLocation":"2063:9:101","nodeType":"VariableDeclaration","scope":70782,"src":"2055:17:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70764,"name":"address","nodeType":"ElementaryTypeName","src":"2055:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2054:19:101"},"virtual":false,"visibility":"internal"},{"id":70799,"nodeType":"FunctionDefinition","src":"2226:148:101","nodes":[],"body":{"id":70798,"nodeType":"Block","src":"2285:89:101","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70792,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":70787,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70784,"src":"2299:8:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":70790,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2319:1:101","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":70789,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2311:7:101","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70788,"name":"address","nodeType":"ElementaryTypeName","src":"2311:7:101","typeDescriptions":{}}},"id":70791,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2311:10:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2299:22:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70797,"nodeType":"IfStatement","src":"2295:73:101","trueBody":{"id":70796,"nodeType":"Block","src":"2323:45:101","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70793,"name":"ZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70687,"src":"2344:11:101","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70794,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2344:13:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70795,"nodeType":"RevertStatement","src":"2337:20:101"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"2235:18:101","parameters":{"id":70785,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70784,"mutability":"mutable","name":"_address","nameLocation":"2262:8:101","nodeType":"VariableDeclaration","scope":70799,"src":"2254:16:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70783,"name":"address","nodeType":"ElementaryTypeName","src":"2254:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2253:18:101"},"returnParameters":{"id":70786,"nodeType":"ParameterList","parameters":[],"src":"2285:0:101"},"scope":71080,"stateMutability":"pure","virtual":false,"visibility":"private"},{"id":70823,"nodeType":"FunctionDefinition","src":"2433:196:101","nodes":[],"body":{"id":70822,"nodeType":"Block","src":"2510:119:101","nodes":[],"statements":[{"expression":{"arguments":[{"id":70811,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70803,"src":"2537:6:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":70808,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"2520:5:101","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_PassportScorer_$71080_$","typeString":"type(contract super PassportScorer)"}},"id":70810,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2526:10:101","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":71108,"src":"2520:16:101","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":70812,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2520:24:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70813,"nodeType":"ExpressionStatement","src":"2520:24:101"},{"expression":{"arguments":[{"id":70815,"name":"_listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70801,"src":"2573:12:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70814,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70799,"src":"2554:18:101","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70816,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2554:32:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70817,"nodeType":"ExpressionStatement","src":"2554:32:101"},{"expression":{"id":70820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70818,"name":"listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70628,"src":"2596:11:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70819,"name":"_listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70801,"src":"2610:12:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2596:26:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70821,"nodeType":"ExpressionStatement","src":"2596:26:101"}]},"functionSelector":"485cc955","implemented":true,"kind":"function","modifiers":[{"id":70806,"kind":"modifierInvocation","modifierName":{"id":70805,"name":"initializer","nameLocations":["2498:11:101"],"nodeType":"IdentifierPath","referencedDeclaration":52351,"src":"2498:11:101"},"nodeType":"ModifierInvocation","src":"2498:11:101"}],"name":"initialize","nameLocation":"2442:10:101","parameters":{"id":70804,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70801,"mutability":"mutable","name":"_listManager","nameLocation":"2461:12:101","nodeType":"VariableDeclaration","scope":70823,"src":"2453:20:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70800,"name":"address","nodeType":"ElementaryTypeName","src":"2453:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70803,"mutability":"mutable","name":"_owner","nameLocation":"2483:6:101","nodeType":"VariableDeclaration","scope":70823,"src":"2475:14:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70802,"name":"address","nodeType":"ElementaryTypeName","src":"2475:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2452:38:101"},"returnParameters":{"id":70807,"nodeType":"ParameterList","parameters":[],"src":"2510:0:101"},"scope":71080,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":70850,"nodeType":"FunctionDefinition","src":"2777:208:101","nodes":[],"body":{"id":70849,"nodeType":"Block","src":"2863:122:101","nodes":[],"statements":[{"expression":{"arguments":[{"id":70835,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70826,"src":"2892:5:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70834,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70799,"src":"2873:18:101","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70836,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2873:25:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70837,"nodeType":"ExpressionStatement","src":"2873:25:101"},{"expression":{"id":70842,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70838,"name":"userScores","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70632,"src":"2908:10:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":70840,"indexExpression":{"id":70839,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70826,"src":"2919:5:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2908:17:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70841,"name":"_score","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70828,"src":"2928:6:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2908:26:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":70843,"nodeType":"ExpressionStatement","src":"2908:26:101"},{"eventCall":{"arguments":[{"id":70845,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70826,"src":"2964:5:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70846,"name":"_score","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70828,"src":"2971:6:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":70844,"name":"UserScoreAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70643,"src":"2949:14:101","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":70847,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2949:29:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70848,"nodeType":"EmitStatement","src":"2944:34:101"}]},"baseFunctions":[70562],"documentation":{"id":70824,"nodeType":"StructuredDocumentation","src":"2635:137:101","text":"@notice Add a userScore to the list\n @param _user address of the user to add\n @param _score score to assign to the user"},"functionSelector":"feec7145","implemented":true,"kind":"function","modifiers":[{"id":70832,"kind":"modifierInvocation","modifierName":{"id":70831,"name":"onlyAuthorized","nameLocations":["2848:14:101"],"nodeType":"IdentifierPath","referencedDeclaration":70709,"src":"2848:14:101"},"nodeType":"ModifierInvocation","src":"2848:14:101"}],"name":"addUserScore","nameLocation":"2786:12:101","overrides":{"id":70830,"nodeType":"OverrideSpecifier","overrides":[],"src":"2839:8:101"},"parameters":{"id":70829,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70826,"mutability":"mutable","name":"_user","nameLocation":"2807:5:101","nodeType":"VariableDeclaration","scope":70850,"src":"2799:13:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70825,"name":"address","nodeType":"ElementaryTypeName","src":"2799:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70828,"mutability":"mutable","name":"_score","nameLocation":"2822:6:101","nodeType":"VariableDeclaration","scope":70850,"src":"2814:14:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70827,"name":"uint256","nodeType":"ElementaryTypeName","src":"2814:7:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2798:31:101"},"returnParameters":{"id":70833,"nodeType":"ParameterList","parameters":[],"src":"2863:0:101"},"scope":71080,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70873,"nodeType":"FunctionDefinition","src":"3086:177:101","nodes":[],"body":{"id":70872,"nodeType":"Block","src":"3154:109:101","nodes":[],"statements":[{"expression":{"arguments":[{"id":70860,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70853,"src":"3183:5:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70859,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70799,"src":"3164:18:101","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70861,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3164:25:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70862,"nodeType":"ExpressionStatement","src":"3164:25:101"},{"expression":{"id":70866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"3199:24:101","subExpression":{"baseExpression":{"id":70863,"name":"userScores","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70632,"src":"3206:10:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":70865,"indexExpression":{"id":70864,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70853,"src":"3217:5:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3206:17:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70867,"nodeType":"ExpressionStatement","src":"3199:24:101"},{"eventCall":{"arguments":[{"id":70869,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70853,"src":"3250:5:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70868,"name":"UserRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70647,"src":"3238:11:101","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":70870,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3238:18:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70871,"nodeType":"EmitStatement","src":"3233:23:101"}]},"baseFunctions":[70567],"documentation":{"id":70851,"nodeType":"StructuredDocumentation","src":"2991:90:101","text":"@notice Remove a user from the list\n @param _user address of the user to remove"},"functionSelector":"98575188","implemented":true,"kind":"function","modifiers":[{"id":70857,"kind":"modifierInvocation","modifierName":{"id":70856,"name":"onlyAuthorized","nameLocations":["3139:14:101"],"nodeType":"IdentifierPath","referencedDeclaration":70709,"src":"3139:14:101"},"nodeType":"ModifierInvocation","src":"3139:14:101"}],"name":"removeUser","nameLocation":"3095:10:101","overrides":{"id":70855,"nodeType":"OverrideSpecifier","overrides":[],"src":"3130:8:101"},"parameters":{"id":70854,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70853,"mutability":"mutable","name":"_user","nameLocation":"3114:5:101","nodeType":"VariableDeclaration","scope":70873,"src":"3106:13:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70852,"name":"address","nodeType":"ElementaryTypeName","src":"3106:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3105:15:101"},"returnParameters":{"id":70858,"nodeType":"ParameterList","parameters":[],"src":"3154:0:101"},"scope":71080,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70900,"nodeType":"FunctionDefinition","src":"3376:259:101","nodes":[],"body":{"id":70899,"nodeType":"Block","src":"3452:183:101","nodes":[],"statements":[{"expression":{"arguments":[{"id":70883,"name":"_newManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70876,"src":"3481:11:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70882,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70799,"src":"3462:18:101","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70884,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3462:31:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70885,"nodeType":"ExpressionStatement","src":"3462:31:101"},{"assignments":[70887],"declarations":[{"constant":false,"id":70887,"mutability":"mutable","name":"oldManager","nameLocation":"3511:10:101","nodeType":"VariableDeclaration","scope":70899,"src":"3503:18:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70886,"name":"address","nodeType":"ElementaryTypeName","src":"3503:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":70889,"initialValue":{"id":70888,"name":"listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70628,"src":"3524:11:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"3503:32:101"},{"expression":{"id":70892,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":70890,"name":"listManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70628,"src":"3545:11:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":70891,"name":"_newManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70876,"src":"3559:11:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3545:25:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":70893,"nodeType":"ExpressionStatement","src":"3545:25:101"},{"eventCall":{"arguments":[{"id":70895,"name":"oldManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70887,"src":"3604:10:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70896,"name":"_newManager","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70876,"src":"3616:11:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":70894,"name":"ListManagerChanged","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70653,"src":"3585:18:101","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":70897,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3585:43:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70898,"nodeType":"EmitStatement","src":"3580:48:101"}]},"baseFunctions":[70572],"documentation":{"id":70874,"nodeType":"StructuredDocumentation","src":"3269:102:101","text":"@notice Change the list manager address\n @param _newManager address of the new list manager"},"functionSelector":"3d476830","implemented":true,"kind":"function","modifiers":[{"id":70880,"kind":"modifierInvocation","modifierName":{"id":70879,"name":"onlyOwner","nameLocations":["3442:9:101"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"3442:9:101"},"nodeType":"ModifierInvocation","src":"3442:9:101"}],"name":"changeListManager","nameLocation":"3385:17:101","overrides":{"id":70878,"nodeType":"OverrideSpecifier","overrides":[],"src":"3433:8:101"},"parameters":{"id":70877,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70876,"mutability":"mutable","name":"_newManager","nameLocation":"3411:11:101","nodeType":"VariableDeclaration","scope":70900,"src":"3403:19:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70875,"name":"address","nodeType":"ElementaryTypeName","src":"3403:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3402:21:101"},"returnParameters":{"id":70881,"nodeType":"ParameterList","parameters":[],"src":"3452:0:101"},"scope":71080,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70961,"nodeType":"FunctionDefinition","src":"3803:589:101","nodes":[],"body":{"id":70960,"nodeType":"Block","src":"3966:426:101","nodes":[],"statements":[{"expression":{"arguments":[{"id":70915,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70903,"src":"3995:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70914,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70799,"src":"3976:18:101","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70916,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3976:29:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70917,"nodeType":"ExpressionStatement","src":"3976:29:101"},{"expression":{"arguments":[{"id":70919,"name":"_councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70907,"src":"4034:12:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70918,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70799,"src":"4015:18:101","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4015:32:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70921,"nodeType":"ExpressionStatement","src":"4015:32:101"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":70937,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":70927,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":70922,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70637,"src":"4061:10:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$70555_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":70924,"indexExpression":{"id":70923,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70903,"src":"4072:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4061:21:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_storage","typeString":"struct Strategy storage ref"}},"id":70925,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4083:9:101","memberName":"threshold","nodeType":"MemberAccess","referencedDeclaration":70550,"src":"4061:31:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":70926,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4096:1:101","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"4061:36:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":70936,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":70928,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70637,"src":"4101:10:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$70555_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":70930,"indexExpression":{"id":70929,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70903,"src":"4112:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4101:21:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_storage","typeString":"struct Strategy storage ref"}},"id":70931,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4123:11:101","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":70554,"src":"4101:33:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":70934,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4146:1:101","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":70933,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4138:7:101","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":70932,"name":"address","nodeType":"ElementaryTypeName","src":"4138:7:101","typeDescriptions":{}}},"id":70935,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4138:10:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4101:47:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"4061:87:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":70942,"nodeType":"IfStatement","src":"4057:148:101","trueBody":{"id":70941,"nodeType":"Block","src":"4150:55:101","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":70938,"name":"StrategyAlreadyExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70689,"src":"4171:21:101","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":70939,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4171:23:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70940,"nodeType":"RevertStatement","src":"4164:30:101"}]}},{"expression":{"id":70951,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":70943,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70637,"src":"4214:10:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$70555_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":70945,"indexExpression":{"id":70944,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70903,"src":"4225:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"4214:21:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_storage","typeString":"struct Strategy storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":70947,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70905,"src":"4259:10:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"66616c7365","id":70948,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4279:5:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},{"id":70949,"name":"_councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70907,"src":"4299:12:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_address","typeString":"address"}],"id":70946,"name":"Strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70555,"src":"4238:8:101","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_Strategy_$70555_storage_ptr_$","typeString":"type(struct Strategy storage pointer)"}},"id":70950,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["4248:9:101","4271:6:101","4286:11:101"],"names":["threshold","active","councilSafe"],"nodeType":"FunctionCall","src":"4238:75:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_memory_ptr","typeString":"struct Strategy memory"}},"src":"4214:99:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_storage","typeString":"struct Strategy storage ref"}},"id":70952,"nodeType":"ExpressionStatement","src":"4214:99:101"},{"eventCall":{"arguments":[{"id":70954,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70903,"src":"4342:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":70955,"name":"_threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70905,"src":"4353:10:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"66616c7365","id":70956,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4365:5:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},{"id":70957,"name":"_councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70907,"src":"4372:12:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_address","typeString":"address"}],"id":70953,"name":"StrategyAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70663,"src":"4328:13:101","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_bool_$_t_address_$returns$__$","typeString":"function (address,uint256,bool,address)"}},"id":70958,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4328:57:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70959,"nodeType":"EmitStatement","src":"4323:62:101"}]},"baseFunctions":[70597],"documentation":{"id":70901,"nodeType":"StructuredDocumentation","src":"3641:157:101","text":"@notice Add a strategy to the contract\n @param _threshold is expressed on a scale of 10**4\n @param _councilSafe address of the council safe"},"functionSelector":"fc2ebdd1","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":70911,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70903,"src":"3951:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":70912,"kind":"modifierInvocation","modifierName":{"id":70910,"name":"onlyCouncilOrAuthorized","nameLocations":["3927:23:101"],"nodeType":"IdentifierPath","referencedDeclaration":70763,"src":"3927:23:101"},"nodeType":"ModifierInvocation","src":"3927:34:101"}],"name":"addStrategy","nameLocation":"3812:11:101","overrides":{"id":70909,"nodeType":"OverrideSpecifier","overrides":[],"src":"3910:8:101"},"parameters":{"id":70908,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70903,"mutability":"mutable","name":"_strategy","nameLocation":"3832:9:101","nodeType":"VariableDeclaration","scope":70961,"src":"3824:17:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70902,"name":"address","nodeType":"ElementaryTypeName","src":"3824:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":70905,"mutability":"mutable","name":"_threshold","nameLocation":"3851:10:101","nodeType":"VariableDeclaration","scope":70961,"src":"3843:18:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":70904,"name":"uint256","nodeType":"ElementaryTypeName","src":"3843:7:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":70907,"mutability":"mutable","name":"_councilSafe","nameLocation":"3871:12:101","nodeType":"VariableDeclaration","scope":70961,"src":"3863:20:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70906,"name":"address","nodeType":"ElementaryTypeName","src":"3863:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3823:61:101"},"returnParameters":{"id":70913,"nodeType":"ParameterList","parameters":[],"src":"3966:0:101"},"scope":71080,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":70985,"nodeType":"FunctionDefinition","src":"4509:221:101","nodes":[],"body":{"id":70984,"nodeType":"Block","src":"4605:125:101","nodes":[],"statements":[{"expression":{"arguments":[{"id":70972,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70964,"src":"4634:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70971,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70799,"src":"4615:18:101","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70973,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4615:29:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70974,"nodeType":"ExpressionStatement","src":"4615:29:101"},{"expression":{"id":70978,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"4654:28:101","subExpression":{"baseExpression":{"id":70975,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70637,"src":"4661:10:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$70555_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":70977,"indexExpression":{"id":70976,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70964,"src":"4672:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"4661:21:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_storage","typeString":"struct Strategy storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70979,"nodeType":"ExpressionStatement","src":"4654:28:101"},{"eventCall":{"arguments":[{"id":70981,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70964,"src":"4713:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70980,"name":"StrategyRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70667,"src":"4697:15:101","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":70982,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4697:26:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70983,"nodeType":"EmitStatement","src":"4692:31:101"}]},"baseFunctions":[70602],"documentation":{"id":70962,"nodeType":"StructuredDocumentation","src":"4398:106:101","text":"@notice Remove a strategy from the contract\n @param _strategy address of the strategy to remove"},"functionSelector":"175188e8","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":70968,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70964,"src":"4594:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":70969,"kind":"modifierInvocation","modifierName":{"id":70967,"name":"onlyCouncilOrAuthorized","nameLocations":["4570:23:101"],"nodeType":"IdentifierPath","referencedDeclaration":70763,"src":"4570:23:101"},"nodeType":"ModifierInvocation","src":"4570:34:101"}],"name":"removeStrategy","nameLocation":"4518:14:101","overrides":{"id":70966,"nodeType":"OverrideSpecifier","overrides":[],"src":"4561:8:101"},"parameters":{"id":70965,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70964,"mutability":"mutable","name":"_strategy","nameLocation":"4541:9:101","nodeType":"VariableDeclaration","scope":70985,"src":"4533:17:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70963,"name":"address","nodeType":"ElementaryTypeName","src":"4533:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4532:19:101"},"returnParameters":{"id":70970,"nodeType":"ParameterList","parameters":[],"src":"4605:0:101"},"scope":71080,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":71010,"nodeType":"FunctionDefinition","src":"4833:223:101","nodes":[],"body":{"id":71009,"nodeType":"Block","src":"4922:134:101","nodes":[],"statements":[{"expression":{"arguments":[{"id":70995,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70988,"src":"4951:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":70994,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70799,"src":"4932:18:101","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":70996,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4932:29:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":70997,"nodeType":"ExpressionStatement","src":"4932:29:101"},{"expression":{"id":71003,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":70998,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70637,"src":"4971:10:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$70555_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":71000,"indexExpression":{"id":70999,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70988,"src":"4982:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4971:21:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_storage","typeString":"struct Strategy storage ref"}},"id":71001,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4993:6:101","memberName":"active","nodeType":"MemberAccess","referencedDeclaration":70552,"src":"4971:28:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":71002,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5002:4:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"4971:35:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71004,"nodeType":"ExpressionStatement","src":"4971:35:101"},{"eventCall":{"arguments":[{"id":71006,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70988,"src":"5039:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71005,"name":"StrategyActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70671,"src":"5021:17:101","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71007,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5021:28:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71008,"nodeType":"EmitStatement","src":"5016:33:101"}]},"baseFunctions":[70607],"documentation":{"id":70986,"nodeType":"StructuredDocumentation","src":"4736:92:101","text":"@notice Activate a strategy\n @param _strategy address of the strategy to activate"},"functionSelector":"d80ea5a0","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":70991,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70988,"src":"4911:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":70992,"kind":"modifierInvocation","modifierName":{"id":70990,"name":"onlyCouncilOrAuthorized","nameLocations":["4887:23:101"],"nodeType":"IdentifierPath","referencedDeclaration":70763,"src":"4887:23:101"},"nodeType":"ModifierInvocation","src":"4887:34:101"}],"name":"activateStrategy","nameLocation":"4842:16:101","parameters":{"id":70989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":70988,"mutability":"mutable","name":"_strategy","nameLocation":"4867:9:101","nodeType":"VariableDeclaration","scope":71010,"src":"4859:17:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":70987,"name":"address","nodeType":"ElementaryTypeName","src":"4859:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4858:19:101"},"returnParameters":{"id":70993,"nodeType":"ParameterList","parameters":[],"src":"4922:0:101"},"scope":71080,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":71038,"nodeType":"FunctionDefinition","src":"5252:272:101","nodes":[],"body":{"id":71037,"nodeType":"Block","src":"5363:161:101","nodes":[],"statements":[{"expression":{"arguments":[{"id":71022,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"5392:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71021,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70799,"src":"5373:18:101","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5373:29:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71024,"nodeType":"ExpressionStatement","src":"5373:29:101"},{"expression":{"id":71030,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":71025,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70637,"src":"5412:10:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$70555_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":71027,"indexExpression":{"id":71026,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"5423:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5412:21:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_storage","typeString":"struct Strategy storage ref"}},"id":71028,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"5434:9:101","memberName":"threshold","nodeType":"MemberAccess","referencedDeclaration":70550,"src":"5412:31:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71029,"name":"_newThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71015,"src":"5446:13:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5412:47:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71031,"nodeType":"ExpressionStatement","src":"5412:47:101"},{"eventCall":{"arguments":[{"id":71033,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"5492:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":71034,"name":"_newThreshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71015,"src":"5503:13:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71032,"name":"ThresholdModified","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70677,"src":"5474:17:101","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":71035,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5474:43:101","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71036,"nodeType":"EmitStatement","src":"5469:48:101"}]},"baseFunctions":[70588],"documentation":{"id":71011,"nodeType":"StructuredDocumentation","src":"5062:185:101","text":"@notice Modify the threshold of a strategy\n @param _strategy address of the strategy to modify\n @param _newThreshold new threshold to set expressed on a scale of 10**4"},"functionSelector":"642ce76b","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":71018,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71013,"src":"5352:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":71019,"kind":"modifierInvocation","modifierName":{"id":71017,"name":"onlyCouncilOrAuthorized","nameLocations":["5328:23:101"],"nodeType":"IdentifierPath","referencedDeclaration":70763,"src":"5328:23:101"},"nodeType":"ModifierInvocation","src":"5328:34:101"}],"name":"modifyThreshold","nameLocation":"5261:15:101","parameters":{"id":71016,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71013,"mutability":"mutable","name":"_strategy","nameLocation":"5285:9:101","nodeType":"VariableDeclaration","scope":71038,"src":"5277:17:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71012,"name":"address","nodeType":"ElementaryTypeName","src":"5277:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71015,"mutability":"mutable","name":"_newThreshold","nameLocation":"5304:13:101","nodeType":"VariableDeclaration","scope":71038,"src":"5296:21:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71014,"name":"uint256","nodeType":"ElementaryTypeName","src":"5296:7:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5276:42:101"},"returnParameters":{"id":71020,"nodeType":"ParameterList","parameters":[],"src":"5363:0:101"},"scope":71080,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":71075,"nodeType":"FunctionDefinition","src":"5689:327:101","nodes":[],"body":{"id":71074,"nodeType":"Block","src":"5787:229:101","nodes":[],"statements":[{"assignments":[71050],"declarations":[{"constant":false,"id":71050,"mutability":"mutable","name":"userScore","nameLocation":"5805:9:101","nodeType":"VariableDeclaration","scope":71074,"src":"5797:17:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71049,"name":"uint256","nodeType":"ElementaryTypeName","src":"5797:7:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71054,"initialValue":{"baseExpression":{"id":71051,"name":"userScores","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70632,"src":"5817:10:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":71053,"indexExpression":{"id":71052,"name":"_user","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71041,"src":"5828:5:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5817:17:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"5797:37:101"},{"assignments":[71057],"declarations":[{"constant":false,"id":71057,"mutability":"mutable","name":"strategy","nameLocation":"5860:8:101","nodeType":"VariableDeclaration","scope":71074,"src":"5844:24:101","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_memory_ptr","typeString":"struct Strategy"},"typeName":{"id":71056,"nodeType":"UserDefinedTypeName","pathNode":{"id":71055,"name":"Strategy","nameLocations":["5844:8:101"],"nodeType":"IdentifierPath","referencedDeclaration":70555,"src":"5844:8:101"},"referencedDeclaration":70555,"src":"5844:8:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_storage_ptr","typeString":"struct Strategy"}},"visibility":"internal"}],"id":71061,"initialValue":{"baseExpression":{"id":71058,"name":"strategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70637,"src":"5871:10:101","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Strategy_$70555_storage_$","typeString":"mapping(address => struct Strategy storage ref)"}},"id":71060,"indexExpression":{"id":71059,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71043,"src":"5882:9:101","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5871:21:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_storage","typeString":"struct Strategy storage ref"}},"nodeType":"VariableDeclarationStatement","src":"5844:48:101"},{"condition":{"id":71064,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"5907:16:101","subExpression":{"expression":{"id":71062,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71057,"src":"5908:8:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_memory_ptr","typeString":"struct Strategy memory"}},"id":71063,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5917:6:101","memberName":"active","nodeType":"MemberAccess","referencedDeclaration":70552,"src":"5908:15:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71068,"nodeType":"IfStatement","src":"5903:58:101","trueBody":{"id":71067,"nodeType":"Block","src":"5925:36:101","statements":[{"expression":{"hexValue":"74727565","id":71065,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5946:4:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"functionReturnParameters":71048,"id":71066,"nodeType":"Return","src":"5939:11:101"}]}},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71072,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71069,"name":"userScore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71050,"src":"5978:9:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"expression":{"id":71070,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71057,"src":"5991:8:101","typeDescriptions":{"typeIdentifier":"t_struct$_Strategy_$70555_memory_ptr","typeString":"struct Strategy memory"}},"id":71071,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"6000:9:101","memberName":"threshold","nodeType":"MemberAccess","referencedDeclaration":70550,"src":"5991:18:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5978:31:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":71048,"id":71073,"nodeType":"Return","src":"5971:38:101"}]},"baseFunctions":[70581],"documentation":{"id":71039,"nodeType":"StructuredDocumentation","src":"5530:154:101","text":"@notice Check if an action can be executed\n @param _user address of the user to check\n @param _strategy address of the strategy to check"},"functionSelector":"42a987a0","implemented":true,"kind":"function","modifiers":[],"name":"canExecuteAction","nameLocation":"5698:16:101","overrides":{"id":71045,"nodeType":"OverrideSpecifier","overrides":[],"src":"5763:8:101"},"parameters":{"id":71044,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71041,"mutability":"mutable","name":"_user","nameLocation":"5723:5:101","nodeType":"VariableDeclaration","scope":71075,"src":"5715:13:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71040,"name":"address","nodeType":"ElementaryTypeName","src":"5715:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71043,"mutability":"mutable","name":"_strategy","nameLocation":"5738:9:101","nodeType":"VariableDeclaration","scope":71075,"src":"5730:17:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71042,"name":"address","nodeType":"ElementaryTypeName","src":"5730:7:101","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5714:34:101"},"returnParameters":{"id":71048,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71047,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":71075,"src":"5781:4:101","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":71046,"name":"bool","nodeType":"ElementaryTypeName","src":"5781:4:101","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5780:6:101"},"scope":71080,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":71079,"nodeType":"VariableDeclaration","src":"6022:25:101","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"6042:5:101","scope":71080,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":71076,"name":"uint256","nodeType":"ElementaryTypeName","src":"6022:7:101","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71078,"length":{"hexValue":"3530","id":71077,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6030:2:101","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"6022:11:101","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":70623,"name":"ISybilScorer","nameLocations":["532:12:101"],"nodeType":"IdentifierPath","referencedDeclaration":70608,"src":"532:12:101"},"id":70624,"nodeType":"InheritanceSpecifier","src":"532:12:101"},{"baseName":{"id":70625,"name":"ProxyOwnableUpgrader","nameLocations":["546:20:101"],"nodeType":"IdentifierPath","referencedDeclaration":71181,"src":"546:20:101"},"id":70626,"nodeType":"InheritanceSpecifier","src":"546:20:101"}],"canonicalName":"PassportScorer","contractDependencies":[],"contractKind":"contract","documentation":{"id":70622,"nodeType":"StructuredDocumentation","src":"461:44:101","text":"@custom:oz-upgrades-from PassportScorer"},"fullyImplemented":true,"linearizedBaseContracts":[71080,71181,54969,54622,54271,54281,52200,52993,52449,70608],"name":"PassportScorer","nameLocation":"514:14:101","scope":71081,"usedErrors":[70679,70681,70683,70685,70687,70689,71096]}],"license":"AGPL-3.0-or-later"},"id":101} \ 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 1701bcc66..632f25a3a 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_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":"sybilScorerThreshold","type":"uint256","internalType":"uint256"},{"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":"sybilScorerThreshold","type":"uint256","internalType":"uint256"},{"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":"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":"","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":"onlyStrategyEnabled","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"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":"proxyOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"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":"rejectPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"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":"setCommunityParams","inputs":[{"name":"_params","type":"tuple","internalType":"struct CommunityParams","components":[{"name":"councilSafe","type":"address","internalType":"address"},{"name":"feeReceiver","type":"address","internalType":"address"},{"name":"communityFee","type":"uint256","internalType":"uint256"},{"name":"communityName","type":"string","internalType":"string"},{"name":"registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"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":[{"name":"covenantSig","type":"string","internalType":"string"}],"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":"totalMembers","inputs":[],"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":"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":"BasisStakedAmountUpdated","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":"CommunityNameUpdated","inputs":[{"name":"_communityName","type":"string","indexed":false,"internalType":"string"}],"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":"CouncilSafeUpdated","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CovenantIpfsHashUpdated","inputs":[{"name":"_covenantIpfsHash","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"FeeReceiverChanged","inputs":[{"name":"_feeReceiver","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":"KickEnabledUpdated","inputs":[{"name":"_isKickEnabled","type":"bool","indexed":false,"internalType":"bool"}],"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":"MemberRegisteredWithCovenant","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_covenantSig","type":"string","indexed":false,"internalType":"string"}],"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":"PoolRejected","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"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":"AllowlistTooBig","inputs":[{"name":"size","type":"uint256","internalType":"uint256"}]},{"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":"OnlyEmptyCommunity","inputs":[{"name":"totalMembers","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PointsDeactivated","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":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a06040523060805234801561001457600080fd5b506080516162c86200004d60003960008181611c2901528181611c6c01528181611d9701528181611dda0152611e5b01526162c86000f3fe608060405260043610620003685760003560e01c806301ffc9a7146200036d578063025313a214620003a75780630331383c14620003ce57806308386eba14620003ef5780630d12bbdb14620004075780630d4a8b49146200042e578063175188e814620004535780631b71f0e414620004785780631f787d28146200049d578063223e547914620004b857806322bcf99914620004dd578063248a9ca3146200050257806328c309e914620005275780632b38c69c146200053f5780632c611c4a14620005645780632f2ff15d14620005a257806331f61bca14620005c75780633396045914620005ec57806334196355146200060457806336568abe14620006295780633659cfe6146200064e578063397e254314620006735780633a871fe11462000698578063411481e614620006cd578063477a5cc014620006f25780634f1ef286146200073257806352d1902d1462000749578063559de05d14620007615780635c94e4d214620007865780635ecf71c514620007a957806365e3864c14620007ce5780636871eb4d146200080b57806368decabb14620008305780636c53db9a1462000853578063715018a6146200087657806373265c37146200088e578063733a2d1f14620008b357806376e9255914620008d857806377122d5614620008f15780637817ee4f146200091457806378a0b8a9146200095f5780637b103999146200097757806382d6a1e7146200099a57806388cfe68414620009bf5780638961be6b1462000a355780638da5cb5b1462000a4d57806391d148541462000a655780639a1f46e21462000a8a578063a0cf0aea1462000aaf578063a217fddf1462000ad9578063a230c5241462000af0578063b0d3713a1462000b15578063b3f006741462000b3a578063b5058c501462000b61578063b64e39af1462000b79578063b99b43701462000ba0578063bc063e1a1462000bb8578063c4d66de81462000bd0578063c6d572ae1462000bf5578063d547741f1462000c0d578063d6d8428d1462000c32578063d7050f071462000c55578063db61d65c1462000c6d578063e0eab9881462000c90578063ebd7dc521462000cd3578063f24b150f1462000cf8578063f2d774e71462000d1d578063f2fde38b1462000d42578063f86c5f891462000d67578063fb1f69171462000d8a578063ffa1ad741462000daf575b600080fd5b3480156200037a57600080fd5b50620003926200038c36600462004783565b62000de0565b60405190151581526020015b60405180910390f35b348015620003b457600080fd5b50620003bf62000e18565b6040516200039e9190620047bc565b348015620003db57600080fd5b5060fb545b6040519081526020016200039e565b348015620003fc57600080fd5b50620003e060fe5481565b3480156200041457600080fd5b506200042c62000426366004620047d0565b62000e32565b005b3480156200043b57600080fd5b506200042c6200044d3660046200480d565b62000ea8565b3480156200046057600080fd5b506200042c620004723660046200484b565b6200122c565b3480156200048557600080fd5b506200042c620004973660046200484b565b62001244565b348015620004aa57600080fd5b5060ff805462000392911681565b348015620004c557600080fd5b506200042c620004d73660046200484b565b62001271565b348015620004ea57600080fd5b506200042c620004fc3660046200480d565b62001286565b3480156200050f57600080fd5b50620003e062000521366004620047d0565b62001375565b3480156200053457600080fd5b50620003e06200138a565b3480156200054c57600080fd5b50620003bf6200055e3660046200486b565b62001485565b3480156200057157600080fd5b50620003e0620005833660046200484b565b6001600160a01b0316600090815261010c602052604090206001015490565b348015620005af57600080fd5b506200042c620005c13660046200489a565b620014bf565b348015620005d457600080fd5b506200042c620005e6366004620047d0565b620014e6565b348015620005f957600080fd5b50620003e060fd5481565b3480156200061157600080fd5b506200042c6200062336600462004acf565b62001530565b3480156200063657600080fd5b506200042c620006483660046200489a565b62001ba1565b3480156200065b57600080fd5b506200042c6200066d3660046200484b565b62001c1f565b3480156200068057600080fd5b506200042c620006923660046200484b565b62001cf0565b348015620006a557600080fd5b5062000392620006b73660046200484b565b61010a6020526000908152604090205460ff1681565b348015620006da57600080fd5b506200042c620006ec3660046200484b565b62001d52565b348015620006ff57600080fd5b5062000392620007113660046200480d565b61010e60209081526000928352604080842090915290825290205460ff1681565b6200042c6200074336600462004c62565b62001d8d565b3480156200075657600080fd5b50620003e062001e4e565b3480156200076e57600080fd5b506200042c62000780366004620047d0565b62001eff565b3480156200079357600080fd5b5061010254620003bf906001600160a01b031681565b348015620007b657600080fd5b506200042c620007c8366004620047d0565b6200211a565b348015620007db57600080fd5b50620003e0620007ed3660046200480d565b61010b60209081526000928352604080842090915290825290205481565b3480156200081857600080fd5b506200042c6200082a3660046200480d565b620024ca565b3480156200083d57600080fd5b5061010354620003bf906001600160a01b031681565b3480156200086057600080fd5b5061010654620003bf906001600160a01b031681565b3480156200088357600080fd5b506200042c62002641565b3480156200089b57600080fd5b506200042c620008ad366004620047d0565b62002659565b348015620008c057600080fd5b50620003e06000805160206200620c83398151915281565b348015620008e557600080fd5b50620003e06101105481565b348015620008fe57600080fd5b5061010154620003bf906001600160a01b031681565b3480156200092157600080fd5b50620003e0620009333660046200480d565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200096c57600080fd5b50620003e060fb5481565b3480156200098457600080fd5b5061010454620003bf906001600160a01b031681565b348015620009a757600080fd5b506200042c620009b9366004620047d0565b620026ea565b348015620009cc57600080fd5b5062000a0d620009de3660046200484b565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b03909416845260208401929092521515908201526060016200039e565b34801562000a4257600080fd5b50620003e060fc5481565b34801562000a5a57600080fd5b50620003bf6200279d565b34801562000a7257600080fd5b506200039262000a843660046200489a565b6200283f565b34801562000a9757600080fd5b506200042c62000aa936600462004ccc565b6200286a565b34801562000abc57600080fd5b50620003bf73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000ae657600080fd5b50620003e0600081565b34801562000afd57600080fd5b506200039262000b0f3660046200484b565b62002ad8565b34801562000b2257600080fd5b506200042c62000b343660046200484b565b62002afa565b34801562000b4757600080fd5b5060ff54620003bf9061010090046001600160a01b031681565b34801562000b6e57600080fd5b506200042c62002b27565b34801562000b8657600080fd5b5062000b9162002c0b565b6040516200039e919062004d58565b34801562000bad57600080fd5b506200042c62002ca2565b34801562000bc557600080fd5b50620003e062002dd1565b34801562000bdd57600080fd5b506200042c62000bef3660046200484b565b62002de3565b34801562000c0257600080fd5b5062000b9162002e18565b34801562000c1a57600080fd5b506200042c62000c2c3660046200489a565b62002e28565b34801562000c3f57600080fd5b5061010754620003bf906001600160a01b031681565b34801562000c6257600080fd5b50620003e061271081565b34801562000c7a57600080fd5b5061010554620003bf906001600160a01b031681565b34801562000c9d57600080fd5b5062000cb562000caf3660046200503c565b62002e4a565b604080519283526001600160a01b039091166020830152016200039e565b34801562000ce057600080fd5b506200039262000cf23660046200484b565b6200308a565b34801562000d0557600080fd5b5062000cb562000d17366004620050ba565b620030a7565b34801562000d2a57600080fd5b506200042c62000d3c3660046200514d565b620031d1565b34801562000d4f57600080fd5b506200042c62000d613660046200484b565b62003472565b34801562000d7457600080fd5b5061010054620003bf906001600160a01b031681565b34801562000d9757600080fd5b506200042c62000da93660046200484b565b620034e3565b34801562000dbc57600080fd5b5062000b91604051806040016040528060038152602001620302e360ec1b81525081565b60006001600160e01b03198216637965db0b60e01b148062000e1257506301ffc9a760e01b6001600160e01b03198316145b92915050565b600062000e2d6033546001600160a01b031690565b905090565b62000e3c6200354c565b62000e4b612710600a6200524b565b81111562000e6c5760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000eb262003589565b62000ebd82620035e4565b62000ec88162001d52565b62000ed433826200360d565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000f1d57604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000fab573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fd191906200527b565b600381111562000fe55762000fe562005265565b036200106a5760405163782aadff60e01b81526001600160a01b0385169063782aadff906200101c9088906000906004016200529b565b6020604051808303816000875af11580156200103c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010629190620052b4565b905062001166565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af1158015620010ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010d391906200527b565b6003811115620010e757620010e762005265565b14620011665760405163782aadff60e01b81526001600160a01b0385169063782aadff906200111d90889086906004016200529b565b6020604051808303816000875af11580156200113d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011639190620052b4565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200121290879087908590620052ce565b60405180910390a1505050620012286001606555565b5050565b620012366200354c565b620012418162003647565b50565b6200124e6200369a565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b6200127b6200354c565b6200124181620036fd565b6200129182620035e4565b6200129d33826200360d565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff16620012e557604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b81528282209382529290925281205562001337828262003866565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b828260405162001369929190620052f2565b60405180910390a15050565b600090815260c9602052604090206001015490565b6000806200139c61271060646200524b565b60fc5460fb54620013ae91906200524b565b620013ba91906200530c565b90506000620013cd61271060646200524b565b610100546040516302a64b8360e21b81526001600160a01b0390911690630a992e0c9062001400903090600401620047bc565b602060405180830381865afa1580156200141e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620014449190620052b4565b60fb546200145391906200524b565b6200145f91906200530c565b9050808260fb546200147291906200532f565b6200147e91906200532f565b9250505090565b61010d6020528160005260406000208181548110620014a357600080fd5b6000918252602090912001546001600160a01b03169150829050565b620014ca8262001375565b620014d5816200399c565b620014e18383620039a8565b505050565b620014f06200354c565b620014fa62003a32565b60fb8190556040518181527f5e2d447f427e49fd08832fd025a56589500352417199aa65728feaf05123e8569060200162000e9d565b600054610100900460ff1615808015620015515750600054600160ff909116105b80620015765750620015633062003a5d565b15801562001576575060005460ff166001145b620015df5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001603576000805461ff0019166101001790555b6200160e8262002de3565b6200161862003a6c565b6200162262003aa0565b6200163e6000805160206200620c833981519152600062003aca565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001699576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff191691151591909117905561012085015161010890620016d69082620053d3565b5061016085015161010990620016ed9082620053d3565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b031916918516840291909117905590870151610106805490921692811692909217905560006101105562001768906000805160206200620c83398151915290620039a8565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa158015620017bd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017e391906200549f565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b6000036200186f576040805160038082526080820190925290602082016060803683370190505090503381600081518110620018495762001849620054bf565b60200260200101906001600160a01b031690816001600160a01b031681525050620019ac565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa158015620018ba573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620018e49190810190620054d5565b905080516002620018f691906200532f565b6001600160401b03811115620019105762001910620048c2565b6040519080825280602002602001820160405280156200193a578160200160208202803683370190505b50915060005b8151811015620019a9578181815181106200195f576200195f620054bf565b60200260200101518382815181106200197c576200197c620054bf565b6001600160a01b039092166020928302919091019091015280620019a0816200556e565b91505062001940565b50505b6101065481516001600160a01b03909116908290620019ce906001906200558a565b81518110620019e157620019e1620054bf565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001a1391906200558a565b8151811062001a265762001a26620054bf565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001a79929161010891309088906004016200568c565b6020604051808303816000875af115801562001a99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001abf9190620052b4565b60fe55805162001ad89061010f906020840190620046d4565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001b4a9290916101089190620056ec565b60405180910390a150801562001b9a576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b6001600160a01b038116331462001c135760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401620015d6565b62001228828262003b1f565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001c6a5760405162461bcd60e51b8152600401620015d6906200571b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001c9e62003b89565b6001600160a01b03161462001cc75760405162461bcd60e51b8152600401620015d69062005756565b62001cd28162003ba6565b60408051600080825260208201909252620012419183919062003be8565b62001cfa6200354c565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000e9d9392169190620052f2565b6001600160a01b038116600090815261010a602052604090205460ff1662001241576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001dd85760405162461bcd60e51b8152600401620015d6906200571b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001e0c62003b89565b6001600160a01b03161462001e355760405162461bcd60e51b8152600401620015d69062005756565b62001e408262003ba6565b620012288282600162003be8565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161462001eeb5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401620015d6565b506000805160206200624c83398151915290565b62001f0962003589565b62001f1362003d60565b336000805b6001600160a01b038316600090815261010d602052604090205481101562002082576001600160a01b038316600090815261010d6020526040902080548290811062001f685762001f68620054bf565b60009182526020909120015460405163782aadff60e01b81526001600160a01b039091169063782aadff9062001fa590869088906004016200529b565b6020604051808303816000875af115801562001fc5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001feb9190620052b4565b915081156200206d576001600160a01b038316600090815261010b6020908152604080832061010d909252822080548593919085908110620020315762002031620054bf565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620020679084906200532f565b90915550505b8062002079816200556e565b91505062001f18565b50610105546200209e906001600160a01b031683308662003d89565b6001600160a01b038216600090815261010c602052604081206001018054859290620020cc9084906200532f565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200210590849086906200529b565b60405180910390a15050620012416001606555565b6200212462003589565b6200212e62003d60565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620021629086906200558a565b10156200218257604051634e23e81760e11b815260040160405180910390fd5b610105546200219c906001600160a01b0316848662003de5565b60005b82548110156200244c576000838281548110620021c057620021c0620054bf565b6000918252602090912001546001600160a01b03169050620021ea8163f1801e6160e01b62003e07565b156200237057604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620022209088908a906004016200529b565b6020604051808303816000875af115801562002240573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620022669190620052b4565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620022a757620022a7620054bf565b60009182526020808320909101546001600160a01b03168352820192909252604001902054905080841115620022fb576040516311423e6360e31b81526004810185905260248101829052604401620015d6565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200232e576200232e620054bf565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620023649084906200558a565b90915550505062002436565b8354849062002382906001906200558a565b81548110620023955762002395620054bf565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620023c857620023c8620054bf565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508380548062002409576200240962005791565b600082815260209020810160001990810180546001600160a01b0319169055019055620024368162003647565b508062002443816200556e565b9150506200219f565b506001600160a01b038316600090815261010c6020526040812060010180548692906200247b9084906200558a565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff890620024b490859087906200529b565b60405180910390a1505050620012416001606555565b620024d462003589565b620024de6200354c565b60ff80541662002501576040516365b1ee3960e11b815260040160405180910390fd5b6200250c8262002ad8565b6200252a57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515908201526200257b8362003e2f565b6001600160a01b038316600090815261010c6020526040812080546001600160a01b031916815560018082018390556002909101805460ff19169055610110805491929091620025cd9084906200558a565b9091555050602081015161010554620025f4916001600160a01b0390911690849062003de5565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3838383602001516040516200262d93929190620052ce565b60405180910390a150620012286001606555565b6200264b6200369a565b62002657600062003f44565b565b620026636200354c565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015620026af573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620026d99190810190620057a7565b602001519050620012288162003647565b620026f46200354c565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002740573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200276a9190810190620057a7565b6020015190506200278c6001600160a01b03821663f1801e6160e01b62003e07565b1562001228576200122881620036fd565b6000620027a962000e18565b6001600160a01b03163b600003620027c55762000e2d62000e18565b620027cf62000e18565b6001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156200282b575060408051601f3d908101601f1916820190925262002828918101906200549f565b60015b6200283a5762000e2d62000e18565b919050565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6200287462003589565b610100546001600160a01b031660006200289261271060646200524b565b60fc5460fb54620028a491906200524b565b620028b091906200530c565b90506000620028c361271060646200524b565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c90620028f1903090600401620047bc565b602060405180830381865afa1580156200290f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620029359190620052b4565b60fb546200294491906200524b565b6200295091906200530c565b90506200295d3362002ad8565b62002aca5733600081815261010c6020526040902060028101805460ff1916600190811790915560fb549101819055620029c5919030908490620029a39087906200532f565b620029af91906200532f565b610105546001600160a01b031692919062003d89565b8115620029f25760ff5461010554620029f2916001600160a01b0391821691610100909104168462003de5565b801562002a775762002a77836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562002a3c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002a6291906200549f565b610105546001600160a01b0316908362003de5565b6001610110600082825462002a8d91906200532f565b909155505060fb546040517f0bd09b1e448ffe881e884ac37014bf3e0274007308056b6469b50fa485542abf91620024b4913391908890620058dd565b505050620012416001606555565b6001600160a01b0316600090815261010c602052604090206002015460ff1690565b62002b046200369a565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002b54576040516375e686b760e11b815260040160405180910390fd5b6101035462002b7d906000805160206200620c833981519152906001600160a01b0316620039a8565b6101065462002ba6906000805160206200620c833981519152906001600160a01b031662003b1f565b610103805461010680546001600160a01b0383166001600160a01b031991821681179092559091169091556040517ffea29da7321ca6d0ee0a7359009bb9d4a57035aea0ef6cb4d062341f4a9615199162002c0191620047bc565b60405180910390a1565b610109805462002c1b9062005345565b80601f016020809104026020016040519081016040528092919081815260200182805462002c499062005345565b801562002c9a5780601f1062002c6e5761010080835404028352916020019162002c9a565b820191906000526020600020905b81548152906001019060200180831162002c7c57829003601f168201915b505050505081565b62002cac62003589565b62002cb662003d60565b3362002cc28162003e2f565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d9052918220909162002d3d91906200473e565b610110541562002d63576001610110600082825462002d5d91906200558a565b90915550505b60208101516101055462002d85916001600160a01b0390911690849062003de5565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162002dbc9291906200529b565b60405180910390a15050620026576001606555565b62002de0612710600a6200524b565b81565b600054610100900460ff1662002e0d5760405162461bcd60e51b8152600401620015d6906200590f565b620012418162003f44565b610108805462002c1b9062005345565b62002e338262001375565b62002e3e816200399c565b620014e1838362003b1f565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b928116911662002e8062000e18565b6040516001600160a01b0393841660248201529183166044830152909116606482015260840160408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162002ee5906200475e565b62002ef29291906200595a565b604051809103906000f08015801562002f0f573d6000803e3d6000fd5b50905062002f2081878787620030a7565b60c087015191945092506001600160a01b031662002ff15761271085610100015151111562002f6d578461010001515160405163107b111560e31b8152600401620015d691815260200190565b60008360405160200162002f82919062005980565b60405160208183030381529060405280519060200120905060005b8661010001515181101562002fee5762002fd982886101000151838151811062002fcb5762002fcb620054bf565b6020026020010151620039a8565b8062002fe5816200556e565b91505062002f9d565b50505b6200304d8360405160200162003008919062005980565b60405160208183030381529060405280519060200120846040516020016200303191906200599d565b6040516020818303038152906040528051906020012062003aca565b62003081836040516020016200306491906200599d565b6040516020818303038152906040528051906020012083620039a8565b50935093915050565b600062000e126000805160206200620c833981519152836200283f565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b03861615620030d25750845b6101075460fe546040518994506001600160a01b039092169163e1007d4a9190859062003104908a90602001620059ea565b6040516020818303038152906040528560008a61010f6040518863ffffffff1660e01b81526004016200313e979695949392919062005afe565b6020604051808303816000875af11580156200315e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620031849190620052b4565b92507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838383308988604051620031bf95949392919062005b9a565b60405180910390a15094509492505050565b620031db6200354c565b60fb548160800151141580620031fe575060ff805460a083015115159116151514155b806200322e575061010960405162003217919062005bd6565b60405180910390208160c001518051906020012014155b1562003339576200323e62003a32565b60fb548160800151146200325b576200325b8160800151620014e6565b60ff805460a083015115159116151514620032b95760a081015160ff805460ff191691151591821790556040519081527f4ca826489011b9a44719ccfa206813b072bb58604af41f245a6a1a6d913588759060200160405180910390a15b610109604051620032cb919062005bd6565b60405180910390208160c001518051906020012014620033395760c081015161010990620032fa9082620053d3565b507f8fd46764d9fde733a671bd3aa6710da0668b1c4eb78d33f42e104553ea4bc76e8160c0015160405162003330919062004d58565b60405180910390a15b6101086040516200334b919062005bd6565b604051809103902081606001518051906020012014620033b9576060810151610108906200337a9082620053d3565b507ff67fb6c95f41f58a276869ca2608214f0a6aab1c9ffe445affaa58680fddd4978160600151604051620033b0919062004d58565b60405180910390a15b60fc54816040015114620033d657620033d6816040015162000e32565b60ff5460208201516001600160a01b0390811661010090920416146200345457602081015160ff8054610100600160a81b0319166101006001600160a01b038416021790556040517f647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059916200344b91620047bc565b60405180910390a15b80516001600160a01b03161562001241578051620012419062001cf0565b6200347c6200369a565b6001600160a01b03811662002e0d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620015d6565b620034ed6200354c565b6001600160a01b038116600090815261010a602052604090205460ff16156200351b576200351b8162003647565b7f6723d9f32d040ca8ddd4dabf6f03ad485e63fc3fd625ac1fa1c557de6719314f8160405162000e9d9190620047bc565b620035676000805160206200620c833981519152336200283f565b62002657573360405163fc4be72f60e01b8152600401620015d69190620047bc565b600260655403620035dd5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401620015d6565b6002606555565b620035ef8162002ad8565b6200124157604051636a5cfb6d60e01b815260040160405180910390fd5b806001600160a01b0316826001600160a01b031614620012285760405163bbe7961160e01b815260040160405180910390fd5b6001606555565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000e9d908390620047bc565b33620036a56200279d565b6001600160a01b031614620026575760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620015d6565b6001600160a01b038116600090815261010a602052604090205460ff161562003739576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600081815261010a60209081526040808320805460ff19166001179055805163b6c61f3160e01b8152905192939263b6c61f31926004808401939192918290030181865afa1580156200379a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620037c091906200549f565b90506001600160a01b0381161562003835576040516306c0752d60e51b81526001600160a01b0382169063d80ea5a09062003800908590600401620047bc565b600060405180830381600087803b1580156200381b57600080fd5b505af115801562003830573d6000803e3d6000fd5b505050505b7f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f182604051620013699190620047bc565b6001600160a01b038216600090815261010d60205260408120905b81548110156200399657826001600160a01b0316828281548110620038aa57620038aa620054bf565b6000918252602090912001546001600160a01b031603620039815781548290620038d7906001906200558a565b81548110620038ea57620038ea620054bf565b9060005260206000200160009054906101000a90046001600160a01b03168282815481106200391d576200391d620054bf565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550818054806200395e576200395e62005791565b600082815260209020810160001990810180546001600160a01b03191690550190555b806200398d816200556e565b91505062003881565b50505050565b62001241813362003f96565b620039b482826200283f565b6200122857600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620039ee3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6101105415620026575761011054604051637d95539f60e11b8152600401620015d691815260200190565b6001600160a01b03163b151590565b600054610100900460ff1662003a965760405162461bcd60e51b8152600401620015d6906200590f565b6200265762003ffa565b600054610100900460ff16620026575760405162461bcd60e51b8152600401620015d6906200590f565b600062003ad78362001375565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b62003b2b82826200283f565b156200122857600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000805160206200624c833981519152546001600160a01b031690565b3362003bb16200279d565b6001600160a01b03161462001241573362003bcb6200279d565b60405163163678e960e01b8152600401620015d6929190620052f2565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562003c1e57620014e18362004024565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003c7b575060408051601f3d908101601f1916820190925262003c7891810190620052b4565b60015b62003ce05760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401620015d6565b6000805160206200624c833981519152811462003d525760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401620015d6565b50620014e1838383620040c3565b62003d6b3362002ad8565b6200265757604051636a5cfb6d60e01b815260040160405180910390fd5b62003996846323b872dd60e01b85858560405160240162003dad93929190620052ce565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152620040ee565b620014e18363a9059cbb60e01b848460405160240162003dad9291906200529b565b600062003e1483620041ca565b801562003e28575062003e28838362004202565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003e9c57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003e7d575b5050505050905060005b8151811015620014e15781818151811062003ec55762003ec5620054bf565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003efa9190620047bc565b600060405180830381600087803b15801562003f1557600080fd5b505af115801562003f2a573d6000803e3d6000fd5b50505050808062003f3b906200556e565b91505062003ea6565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b62003fa282826200283f565b620012285762003fb2816200428d565b62003fbf836020620042a0565b60405160200162003fd292919062005c54565b60408051601f198184030181529082905262461bcd60e51b8252620015d69160040162004d58565b600054610100900460ff16620036405760405162461bcd60e51b8152600401620015d6906200590f565b6200402f8162003a5d565b620040935760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620015d6565b6000805160206200624c83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b620040ce8362004459565b600082511180620040dc5750805b15620014e1576200399683836200449b565b600062004145826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316620044c39092919063ffffffff16565b90508051600014806200416957508080602001905181019062004169919062005cc7565b620014e15760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401620015d6565b6000620041df826301ffc9a760e01b62004202565b801562000e125750620041fb826001600160e01b031962004202565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562004275575060208210155b8015620042825750600081115b979650505050505050565b606062000e126001600160a01b03831660145b60606000620042b18360026200524b565b620042be9060026200532f565b6001600160401b03811115620042d857620042d8620048c2565b6040519080825280601f01601f19166020018201604052801562004303576020820181803683370190505b509050600360fc1b81600081518110620043215762004321620054bf565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620043535762004353620054bf565b60200101906001600160f81b031916908160001a9053506000620043798460026200524b565b620043869060016200532f565b90505b600181111562004408576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110620043be57620043be620054bf565b1a60f81b828281518110620043d757620043d7620054bf565b60200101906001600160f81b031916908160001a90535060049490941c93620044008162005ce7565b905062004389565b50831562003e285760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620015d6565b620044648162004024565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003e2883836040518060600160405280602781526020016200626c60279139620044dc565b6060620044d484846000856200455a565b949350505050565b6060600080856001600160a01b031685604051620044fb919062005d01565b600060405180830381855af49150503d806000811462004538576040519150601f19603f3d011682016040523d82523d6000602084013e6200453d565b606091505b509150915062004550868383876200462d565b9695505050505050565b606082471015620045bd5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401620015d6565b600080866001600160a01b03168587604051620045db919062005d01565b60006040518083038185875af1925050503d80600081146200461a576040519150601f19603f3d011682016040523d82523d6000602084013e6200461f565b606091505b509150915062004282878383875b60608315620046a157825160000362004699576200464b8562003a5d565b620046995760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620015d6565b5081620044d4565b620044d48383815115620046b85781518083602001fd5b8060405162461bcd60e51b8152600401620015d6919062004d58565b8280548282559060005260206000209081019282156200472c579160200282015b828111156200472c57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620046f5565b506200473a9291506200476c565b5090565b50805460008255906000526020600020908101906200124191906200476c565b6104ec8062005d2083390190565b5b808211156200473a57600081556001016200476d565b6000602082840312156200479657600080fd5b81356001600160e01b03198116811462003e2857600080fd5b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b600060208284031215620047e357600080fd5b5035919050565b6001600160a01b03811681146200124157600080fd5b80356200283a81620047ea565b600080604083850312156200482157600080fd5b82356200482e81620047ea565b915060208301356200484081620047ea565b809150509250929050565b6000602082840312156200485e57600080fd5b813562003e2881620047ea565b600080604083850312156200487f57600080fd5b82356200488c81620047ea565b946020939093013593505050565b60008060408385031215620048ae57600080fd5b8235915060208301356200484081620047ea565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620048fd57620048fd620048c2565b60405290565b60405161018081016001600160401b0381118282101715620048fd57620048fd620048c2565b60405160c081016001600160401b0381118282101715620048fd57620048fd620048c2565b60405161012081016001600160401b0381118282101715620048fd57620048fd620048c2565b60405160e081016001600160401b0381118282101715620048fd57620048fd620048c2565b604051601f8201601f191681016001600160401b0381118282101715620049c457620049c4620048c2565b604052919050565b60006001600160401b03821115620049e857620049e8620048c2565b50601f01601f191660200190565b600062004a0d62004a0784620049cc565b62004999565b905082815283838301111562004a2257600080fd5b828260208301376000602084830101529392505050565b600082601f83011262004a4b57600080fd5b62003e2883833560208501620049f6565b60006040828403121562004a6f57600080fd5b62004a79620048d8565b82358152905060208201356001600160401b0381111562004a9957600080fd5b62004aa78482850162004a39565b60208301525092915050565b80151581146200124157600080fd5b80356200283a8162004ab3565b6000806000806080858703121562004ae657600080fd5b84356001600160401b038082111562004afe57600080fd5b90860190610180828903121562004b1457600080fd5b62004b1e62004903565b62004b298362004800565b815262004b396020840162004800565b602082015260408301356040820152606083013560608201526080830135608082015262004b6a60a0840162004800565b60a082015262004b7d60c0840162004800565b60c082015260e08301358281111562004b9557600080fd5b62004ba38a82860162004a5c565b60e08301525061010062004bb981850162004800565b90820152610120838101358381111562004bd257600080fd5b62004be08b82870162004a39565b82840152505061014062004bf681850162004ac2565b90820152610160838101358381111562004c0f57600080fd5b62004c1d8b82870162004a39565b82840152505080965050505062004c376020860162004800565b925062004c476040860162004800565b915062004c576060860162004800565b905092959194509250565b6000806040838503121562004c7657600080fd5b823562004c8381620047ea565b915060208301356001600160401b0381111562004c9f57600080fd5b8301601f8101851362004cb157600080fd5b62004cc285823560208401620049f6565b9150509250929050565b60006020828403121562004cdf57600080fd5b81356001600160401b0381111562004cf657600080fd5b620044d48482850162004a39565b60005b8381101562004d2157818101518382015260200162004d07565b50506000910152565b6000815180845262004d4481602086016020860162004d04565b601f01601f19169290920160200192915050565b60208152600062003e28602083018462004d2a565b60006080828403121562004d8057600080fd5b604051608081016001600160401b038111828210171562004da55762004da5620048c2565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200283a57600080fd5b600481106200124157600080fd5b80356200283a8162004de6565b60006020828403121562004e1457600080fd5b604051602081016001600160401b038111828210171562004e395762004e39620048c2565b6040529135825250919050565b600060c0828403121562004e5957600080fd5b62004e6362004929565b9050813562004e7281620047ea565b8152602082013562004e8481620047ea565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006001600160401b0382111562004ed55762004ed5620048c2565b5060051b60200190565b600082601f83011262004ef157600080fd5b8135602062004f0462004a078362004eb9565b82815260059290921b8401810191818101908684111562004f2457600080fd5b8286015b8481101562004f4c57803562004f3e81620047ea565b835291830191830162004f28565b509695505050505050565b6000610220828403121562004f6b57600080fd5b62004f756200494e565b905062004f83838362004d6d565b815262004f936080830162004dd6565b602082015262004fa660a0830162004df4565b604082015262004fba8360c0840162004e01565b606082015262004fce8360e0840162004e46565b608082015262004fe26101a0830162004800565b60a082015262004ff66101c0830162004800565b60c08201526101e082013560e08201526102008201356001600160401b038111156200502157600080fd5b6200502f8482850162004edf565b6101008301525092915050565b6000806000606084860312156200505257600080fd5b83356200505f81620047ea565b925060208401356001600160401b03808211156200507c57600080fd5b6200508a8783880162004f57565b93506040860135915080821115620050a157600080fd5b50620050b08682870162004a5c565b9150509250925092565b60008060008060808587031215620050d157600080fd5b8435620050de81620047ea565b93506020850135620050f081620047ea565b925060408501356001600160401b03808211156200510d57600080fd5b6200511b8883890162004f57565b935060608701359150808211156200513257600080fd5b50620051418782880162004a5c565b91505092959194509250565b6000602082840312156200516057600080fd5b81356001600160401b03808211156200517857600080fd5b9083019060e082860312156200518d57600080fd5b6200519762004974565b620051a28362004800565b8152620051b26020840162004800565b602082015260408301356040820152606083013582811115620051d457600080fd5b620051e28782860162004a39565b606083015250608083013560808201526200520060a0840162004ac2565b60a082015260c0830135828111156200521857600080fd5b620052268782860162004a39565b60c08301525095945050505050565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000e125762000e1262005235565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156200528e57600080fd5b815162003e288162004de6565b6001600160a01b03929092168252602082015260400190565b600060208284031215620052c757600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200532a57634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000e125762000e1262005235565b600181811c908216806200535a57607f821691505b6020821081036200537b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620014e157600081815260208120601f850160051c81016020861015620053aa5750805b601f850160051c820191505b81811015620053cb57828155600101620053b6565b505050505050565b81516001600160401b03811115620053ef57620053ef620048c2565b620054078162005400845462005345565b8462005381565b602080601f8311600181146200543f5760008415620054265750858301515b600019600386901b1c1916600185901b178555620053cb565b600085815260208120601f198616915b8281101562005470578886015182559484019460019091019084016200544f565b50858210156200548f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620054b257600080fd5b815162003e2881620047ea565b634e487b7160e01b600052603260045260246000fd5b60006020808385031215620054e957600080fd5b82516001600160401b038111156200550057600080fd5b8301601f810185136200551257600080fd5b80516200552362004a078262004eb9565b81815260059190911b820183019083810190878311156200554357600080fd5b928401925b82841015620042825783516200555e81620047ea565b8252928401929084019062005548565b60006001820162005583576200558362005235565b5060010190565b8181038181111562000e125762000e1262005235565b60008154620055af8162005345565b808552602060018381168015620055cf5760018114620055ea576200561a565b60ff1985168884015283151560051b8801830195506200561a565b866000528260002060005b85811015620056125781548a8201860152908301908401620055f5565b890184019650505b505050505092915050565b805182526000602082015160406020850152620044d4604085018262004d2a565b600081518084526020808501945080840160005b83811015620056815781516001600160a01b0316875295820195908201906001016200565a565b509495945050505050565b85815260a060208201526000620056a760a0830187620055a0565b8281036040840152620056bb818762005625565b6001600160a01b038616606085015283810360808501529050620056e0818562005646565b98975050505050505050565b838152606060208201526000620057076060830185620055a0565b828103604084015262004550818562005625565b6020808252602c908201526000805160206200622c83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200622c83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052603160045260246000fd5b60006020808385031215620057bb57600080fd5b82516001600160401b0380821115620057d357600080fd5b9084019060c08287031215620057e857600080fd5b620057f262004929565b82518152838301516200580581620047ea565b8185015260408301516200581981620047ea565b60408201526060830151828111156200583157600080fd5b8301604081890312156200584457600080fd5b6200584e620048d8565b8151815285820151848111156200586457600080fd5b82019350601f840189136200587857600080fd5b835191506200588b62004a0783620049cc565b8281528987848701011115620058a057600080fd5b620058b18388830189880162004d04565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b60018060a01b038416815282602082015260606040820152600062005906606083018462004d2a565b95945050505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0383168152604060208201819052600090620044d49083018462004d2a565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b60038110620059d357620059d362005265565b9052565b60048110620059d357620059d362005265565b6020815262005a1e602082018351805182526020810151602083015260408101516040830152606081015160608301525050565b6000602083015162005a3460a0840182620059c0565b50604083015162005a4960c0840182620059d7565b506060838101515160e084015260808085015180516001600160a01b039081166101008088019190915260208301519091166101208701526040820151610140870152928101516101608601529081015161018085015260a0908101516101a08501528401519062005ac06101c0850183620047af565b60c0850151915062005ad76101e0850183620047af565b60e0850151610200850152840151610220808501529050620044d461024084018262005646565b8781526000602060018060a01b03808a168285015260e0604085015262005b2960e085018a62004d2a565b818916606086015287608086015284810360a086015262005b4b818862005625565b85810360c0870152865480825260008881528581209350918501915b8181101562005b8757835485168352600193840193928601920162005b67565b50909d9c50505050505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a060808201819052600090620042829083018462005625565b600080835462005be68162005345565b6001828116801562005c01576001811462005c175762005c48565b60ff198416875282151583028701945062005c48565b8760005260208060002060005b8581101562005c3f5781548a82015290840190820162005c24565b50505082870194505b50929695505050505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005c8881601785016020880162004d04565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005cbb81602884016020880162004d04565b01602801949350505050565b60006020828403121562005cda57600080fd5b815162003e288162004ab3565b60008162005cf95762005cf962005235565b506000190190565b6000825162005d1581846020870162004d04565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212200823673c0a10d18d317cca6b4146580cb0465a62303846173ba8846c992ad28c64736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122024ef98697af34f9ae5553abc9f9a86be1e286849632547bbaf4a4a2f05c2f60264736f6c63430008130033","sourceMap":"3148:26794:64:-:0;;;1088:4:32;1045:48;;3148:26794:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610620003685760003560e01c806301ffc9a7146200036d578063025313a214620003a75780630331383c14620003ce57806308386eba14620003ef5780630d12bbdb14620004075780630d4a8b49146200042e578063175188e814620004535780631b71f0e414620004785780631f787d28146200049d578063223e547914620004b857806322bcf99914620004dd578063248a9ca3146200050257806328c309e914620005275780632b38c69c146200053f5780632c611c4a14620005645780632f2ff15d14620005a257806331f61bca14620005c75780633396045914620005ec57806334196355146200060457806336568abe14620006295780633659cfe6146200064e578063397e254314620006735780633a871fe11462000698578063411481e614620006cd578063477a5cc014620006f25780634f1ef286146200073257806352d1902d1462000749578063559de05d14620007615780635c94e4d214620007865780635ecf71c514620007a957806365e3864c14620007ce5780636871eb4d146200080b57806368decabb14620008305780636c53db9a1462000853578063715018a6146200087657806373265c37146200088e578063733a2d1f14620008b357806376e9255914620008d857806377122d5614620008f15780637817ee4f146200091457806378a0b8a9146200095f5780637b103999146200097757806382d6a1e7146200099a57806388cfe68414620009bf5780638961be6b1462000a355780638da5cb5b1462000a4d57806391d148541462000a655780639a1f46e21462000a8a578063a0cf0aea1462000aaf578063a217fddf1462000ad9578063a230c5241462000af0578063b0d3713a1462000b15578063b3f006741462000b3a578063b5058c501462000b61578063b64e39af1462000b79578063b99b43701462000ba0578063bc063e1a1462000bb8578063c4d66de81462000bd0578063c6d572ae1462000bf5578063d547741f1462000c0d578063d6d8428d1462000c32578063d7050f071462000c55578063db61d65c1462000c6d578063e0eab9881462000c90578063ebd7dc521462000cd3578063f24b150f1462000cf8578063f2d774e71462000d1d578063f2fde38b1462000d42578063f86c5f891462000d67578063fb1f69171462000d8a578063ffa1ad741462000daf575b600080fd5b3480156200037a57600080fd5b50620003926200038c36600462004783565b62000de0565b60405190151581526020015b60405180910390f35b348015620003b457600080fd5b50620003bf62000e18565b6040516200039e9190620047bc565b348015620003db57600080fd5b5060fb545b6040519081526020016200039e565b348015620003fc57600080fd5b50620003e060fe5481565b3480156200041457600080fd5b506200042c62000426366004620047d0565b62000e32565b005b3480156200043b57600080fd5b506200042c6200044d3660046200480d565b62000ea8565b3480156200046057600080fd5b506200042c620004723660046200484b565b6200122c565b3480156200048557600080fd5b506200042c620004973660046200484b565b62001244565b348015620004aa57600080fd5b5060ff805462000392911681565b348015620004c557600080fd5b506200042c620004d73660046200484b565b62001271565b348015620004ea57600080fd5b506200042c620004fc3660046200480d565b62001286565b3480156200050f57600080fd5b50620003e062000521366004620047d0565b62001375565b3480156200053457600080fd5b50620003e06200138a565b3480156200054c57600080fd5b50620003bf6200055e3660046200486b565b62001485565b3480156200057157600080fd5b50620003e0620005833660046200484b565b6001600160a01b0316600090815261010c602052604090206001015490565b348015620005af57600080fd5b506200042c620005c13660046200489a565b620014bf565b348015620005d457600080fd5b506200042c620005e6366004620047d0565b620014e6565b348015620005f957600080fd5b50620003e060fd5481565b3480156200061157600080fd5b506200042c6200062336600462004acf565b62001530565b3480156200063657600080fd5b506200042c620006483660046200489a565b62001ba1565b3480156200065b57600080fd5b506200042c6200066d3660046200484b565b62001c1f565b3480156200068057600080fd5b506200042c620006923660046200484b565b62001cf0565b348015620006a557600080fd5b5062000392620006b73660046200484b565b61010a6020526000908152604090205460ff1681565b348015620006da57600080fd5b506200042c620006ec3660046200484b565b62001d52565b348015620006ff57600080fd5b5062000392620007113660046200480d565b61010e60209081526000928352604080842090915290825290205460ff1681565b6200042c6200074336600462004c62565b62001d8d565b3480156200075657600080fd5b50620003e062001e4e565b3480156200076e57600080fd5b506200042c62000780366004620047d0565b62001eff565b3480156200079357600080fd5b5061010254620003bf906001600160a01b031681565b348015620007b657600080fd5b506200042c620007c8366004620047d0565b6200211a565b348015620007db57600080fd5b50620003e0620007ed3660046200480d565b61010b60209081526000928352604080842090915290825290205481565b3480156200081857600080fd5b506200042c6200082a3660046200480d565b620024ca565b3480156200083d57600080fd5b5061010354620003bf906001600160a01b031681565b3480156200086057600080fd5b5061010654620003bf906001600160a01b031681565b3480156200088357600080fd5b506200042c62002641565b3480156200089b57600080fd5b506200042c620008ad366004620047d0565b62002659565b348015620008c057600080fd5b50620003e06000805160206200620c83398151915281565b348015620008e557600080fd5b50620003e06101105481565b348015620008fe57600080fd5b5061010154620003bf906001600160a01b031681565b3480156200092157600080fd5b50620003e0620009333660046200480d565b6001600160a01b03918216600090815261010b6020908152604080832093909416825291909152205490565b3480156200096c57600080fd5b50620003e060fb5481565b3480156200098457600080fd5b5061010454620003bf906001600160a01b031681565b348015620009a757600080fd5b506200042c620009b9366004620047d0565b620026ea565b348015620009cc57600080fd5b5062000a0d620009de3660046200484b565b61010c602052600090815260409020805460018201546002909201546001600160a01b03909116919060ff1683565b604080516001600160a01b03909416845260208401929092521515908201526060016200039e565b34801562000a4257600080fd5b50620003e060fc5481565b34801562000a5a57600080fd5b50620003bf6200279d565b34801562000a7257600080fd5b506200039262000a843660046200489a565b6200283f565b34801562000a9757600080fd5b506200042c62000aa936600462004ccc565b6200286a565b34801562000abc57600080fd5b50620003bf73eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee81565b34801562000ae657600080fd5b50620003e0600081565b34801562000afd57600080fd5b506200039262000b0f3660046200484b565b62002ad8565b34801562000b2257600080fd5b506200042c62000b343660046200484b565b62002afa565b34801562000b4757600080fd5b5060ff54620003bf9061010090046001600160a01b031681565b34801562000b6e57600080fd5b506200042c62002b27565b34801562000b8657600080fd5b5062000b9162002c0b565b6040516200039e919062004d58565b34801562000bad57600080fd5b506200042c62002ca2565b34801562000bc557600080fd5b50620003e062002dd1565b34801562000bdd57600080fd5b506200042c62000bef3660046200484b565b62002de3565b34801562000c0257600080fd5b5062000b9162002e18565b34801562000c1a57600080fd5b506200042c62000c2c3660046200489a565b62002e28565b34801562000c3f57600080fd5b5061010754620003bf906001600160a01b031681565b34801562000c6257600080fd5b50620003e061271081565b34801562000c7a57600080fd5b5061010554620003bf906001600160a01b031681565b34801562000c9d57600080fd5b5062000cb562000caf3660046200503c565b62002e4a565b604080519283526001600160a01b039091166020830152016200039e565b34801562000ce057600080fd5b506200039262000cf23660046200484b565b6200308a565b34801562000d0557600080fd5b5062000cb562000d17366004620050ba565b620030a7565b34801562000d2a57600080fd5b506200042c62000d3c3660046200514d565b620031d1565b34801562000d4f57600080fd5b506200042c62000d613660046200484b565b62003472565b34801562000d7457600080fd5b5061010054620003bf906001600160a01b031681565b34801562000d9757600080fd5b506200042c62000da93660046200484b565b620034e3565b34801562000dbc57600080fd5b5062000b91604051806040016040528060038152602001620302e360ec1b81525081565b60006001600160e01b03198216637965db0b60e01b148062000e1257506301ffc9a760e01b6001600160e01b03198316145b92915050565b600062000e2d6033546001600160a01b031690565b905090565b62000e3c6200354c565b62000e4b612710600a6200524b565b81111562000e6c5760405163fe925f7d60e01b815260040160405180910390fd5b60fc8190556040518181527f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6906020015b60405180910390a150565b62000eb262003589565b62000ebd82620035e4565b62000ec88162001d52565b62000ed433826200360d565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff161562000f1d57604051636adcde4b60e11b815260040160405180910390fd5b6001600160a01b03808316600090815261010c602090815260409182902082516060810184528154909416845260018101549184018290526002015460ff1615159183019190915260fb546003846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000fab573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000fd191906200527b565b600381111562000fe55762000fe562005265565b036200106a5760405163782aadff60e01b81526001600160a01b0385169063782aadff906200101c9088906000906004016200529b565b6020604051808303816000875af11580156200103c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010629190620052b4565b905062001166565b6000846001600160a01b031663c32921716040518163ffffffff1660e01b81526004016020604051808303816000875af1158015620010ad573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010d391906200527b565b6003811115620010e757620010e762005265565b14620011665760405163782aadff60e01b81526001600160a01b0385169063782aadff906200111d90889086906004016200529b565b6020604051808303816000875af11580156200113d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011639190620052b4565b90505b6001600160a01b03808616600081815261010b6020908152604080832094891680845294825280832086905583835261010e82528083208584528252808320805460ff1916600190811790915593835261010d8252808320805494850181558352912090910180546001600160a01b031916909217909155517ff56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec906200121290879087908590620052ce565b60405180910390a1505050620012286001606555565b5050565b620012366200354c565b620012418162003647565b50565b6200124e6200369a565b61010280546001600160a01b0319166001600160a01b0392909216919091179055565b6200127b6200354c565b6200124181620036fd565b6200129182620035e4565b6200129d33826200360d565b6001600160a01b03808316600090815261010e602090815260408083209385168352929052205460ff16620012e557604051633048da7760e21b815260040160405180910390fd5b6001600160a01b03808316600081815261010e60209081526040808320948616808452948252808320805460ff1916905592825261010b81528282209382529290925281205562001337828262003866565b7ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b828260405162001369929190620052f2565b60405180910390a15050565b600090815260c9602052604090206001015490565b6000806200139c61271060646200524b565b60fc5460fb54620013ae91906200524b565b620013ba91906200530c565b90506000620013cd61271060646200524b565b610100546040516302a64b8360e21b81526001600160a01b0390911690630a992e0c9062001400903090600401620047bc565b602060405180830381865afa1580156200141e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620014449190620052b4565b60fb546200145391906200524b565b6200145f91906200530c565b9050808260fb546200147291906200532f565b6200147e91906200532f565b9250505090565b61010d6020528160005260406000208181548110620014a357600080fd5b6000918252602090912001546001600160a01b03169150829050565b620014ca8262001375565b620014d5816200399c565b620014e18383620039a8565b505050565b620014f06200354c565b620014fa62003a32565b60fb8190556040518181527f5e2d447f427e49fd08832fd025a56589500352417199aa65728feaf05123e8569060200162000e9d565b600054610100900460ff1615808015620015515750600054600160ff909116105b80620015765750620015633062003a5d565b15801562001576575060005460ff166001145b620015df5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562001603576000805461ff0019166101001790555b6200160e8262002de3565b6200161862003a6c565b6200162262003aa0565b6200163e6000805160206200620c833981519152600062003aca565b845161010780546001600160a01b039283166001600160a01b03199182161790915560208701516101058054919093169116179055604085015160000362001699576040516363868c5560e11b815260040160405180910390fd5b604085015160fb55606085015160fc5561014085015160ff805460ff191691151591909117905561012085015161010890620016d69082620053d3565b5061016085015161010990620016ed9082620053d3565b5060a085015161010080546001600160a01b03199081166001600160a01b0393841617825560c088015160ff8054610100600160a81b031916918516840291909117905590870151610106805490921692811692909217905560006101105562001768906000805160206200620c83398151915290620039a8565b61010760009054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa158015620017bd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017e391906200549f565b61010480546001600160a01b0319166001600160a01b0392831617905561010654606091163b6000036200186f576040805160038082526080820190925290602082016060803683370190505090503381600081518110620018495762001849620054bf565b60200260200101906001600160a01b031690816001600160a01b031681525050620019ac565b610106546040805163a0e67e2b60e01b815290516000926001600160a01b03169163a0e67e2b91600480830192869291908290030181865afa158015620018ba573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620018e49190810190620054d5565b905080516002620018f691906200532f565b6001600160401b03811115620019105762001910620048c2565b6040519080825280602002602001820160405280156200193a578160200160208202803683370190505b50915060005b8151811015620019a9578181815181106200195f576200195f620054bf565b60200260200101518382815181106200197c576200197c620054bf565b6001600160a01b039092166020928302919091019091015280620019a0816200556e565b91505062001940565b50505b6101065481516001600160a01b03909116908290620019ce906001906200558a565b81518110620019e157620019e1620054bf565b60200260200101906001600160a01b031690816001600160a01b03168152505030816002835162001a1391906200558a565b8151811062001a265762001a26620054bf565b6001600160a01b03928316602091820292909201015261010454608088015160e0890151604051633a92f65f60e01b81529290931692633a92f65f9262001a79929161010891309088906004016200568c565b6020604051808303816000875af115801562001a99573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001abf9190620052b4565b60fe55805162001ad89061010f906020840190620046d4565b5061010280546001600160a01b038088166001600160a01b03199283161790925561010180549287169290911691909117905560fe5460e08701516040517f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059262001b4a9290916101089190620056ec565b60405180910390a150801562001b9a576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050565b6001600160a01b038116331462001c135760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401620015d6565b62001228828262003b1f565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001c6a5760405162461bcd60e51b8152600401620015d6906200571b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001c9e62003b89565b6001600160a01b03161462001cc75760405162461bcd60e51b8152600401620015d69062005756565b62001cd28162003ba6565b60408051600080825260208201909252620012419183919062003be8565b62001cfa6200354c565b61010380546001600160a01b0319166001600160a01b03838116918217909255610106546040517f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf89362000e9d9392169190620052f2565b6001600160a01b038116600090815261010a602052604090205460ff1662001241576040516346c26e4b60e01b815260040160405180910390fd5b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300362001dd85760405162461bcd60e51b8152600401620015d6906200571b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031662001e0c62003b89565b6001600160a01b03161462001e355760405162461bcd60e51b8152600401620015d69062005756565b62001e408262003ba6565b620012288282600162003be8565b6000306001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161462001eeb5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401620015d6565b506000805160206200624c83398151915290565b62001f0962003589565b62001f1362003d60565b336000805b6001600160a01b038316600090815261010d602052604090205481101562002082576001600160a01b038316600090815261010d6020526040902080548290811062001f685762001f68620054bf565b60009182526020909120015460405163782aadff60e01b81526001600160a01b039091169063782aadff9062001fa590869088906004016200529b565b6020604051808303816000875af115801562001fc5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001feb9190620052b4565b915081156200206d576001600160a01b038316600090815261010b6020908152604080832061010d909252822080548593919085908110620020315762002031620054bf565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620020679084906200532f565b90915550505b8062002079816200556e565b91505062001f18565b50610105546200209e906001600160a01b031683308662003d89565b6001600160a01b038216600090815261010c602052604081206001018054859290620020cc9084906200532f565b90915550506040517f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f906200210590849086906200529b565b60405180910390a15050620012416001606555565b6200212462003589565b6200212e62003d60565b33600081815261010d6020908152604080832060fb5461010c9093529083206001015490929190620021629086906200558a565b10156200218257604051634e23e81760e11b815260040160405180910390fd5b610105546200219c906001600160a01b0316848662003de5565b60005b82548110156200244c576000838281548110620021c057620021c0620054bf565b6000918252602090912001546001600160a01b03169050620021ea8163f1801e6160e01b62003e07565b156200237057604051632ed04b2b60e01b81526001600160a01b03821690632ed04b2b90620022209088908a906004016200529b565b6020604051808303816000875af115801562002240573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620022669190620052b4565b9250600061010b6000876001600160a01b03166001600160a01b031681526020019081526020016000206000868581548110620022a757620022a7620054bf565b60009182526020808320909101546001600160a01b03168352820192909252604001902054905080841115620022fb576040516311423e6360e31b81526004810185905260248101829052604401620015d6565b6001600160a01b038616600090815261010b6020526040812086548692908890879081106200232e576200232e620054bf565b60009182526020808320909101546001600160a01b0316835282019290925260400181208054909190620023649084906200558a565b90915550505062002436565b8354849062002382906001906200558a565b81548110620023955762002395620054bf565b9060005260206000200160009054906101000a90046001600160a01b0316848381548110620023c857620023c8620054bf565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055508380548062002409576200240962005791565b600082815260209020810160001990810180546001600160a01b0319169055019055620024368162003647565b508062002443816200556e565b9150506200219f565b506001600160a01b038316600090815261010c6020526040812060010180548692906200247b9084906200558a565b90915550506040517f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff890620024b490859087906200529b565b60405180910390a1505050620012416001606555565b620024d462003589565b620024de6200354c565b60ff80541662002501576040516365b1ee3960e11b815260040160405180910390fd5b6200250c8262002ad8565b6200252a57604051636a5cfb6d60e01b815260040160405180910390fd5b6001600160a01b03808316600090815261010c60209081526040918290208251606081018452815490941684526001810154918401919091526002015460ff161515908201526200257b8362003e2f565b6001600160a01b038316600090815261010c6020526040812080546001600160a01b031916815560018082018390556002909101805460ff19169055610110805491929091620025cd9084906200558a565b9091555050602081015161010554620025f4916001600160a01b0390911690849062003de5565b7fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3838383602001516040516200262d93929190620052ce565b60405180910390a150620012286001606555565b6200264b6200369a565b62002657600062003f44565b565b620026636200354c565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa158015620026af573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620026d99190810190620057a7565b602001519050620012288162003647565b620026f46200354c565b6101075460405163068bcd8d60e01b8152600481018390526000916001600160a01b03169063068bcd8d90602401600060405180830381865afa15801562002740573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200276a9190810190620057a7565b6020015190506200278c6001600160a01b03821663f1801e6160e01b62003e07565b1562001228576200122881620036fd565b6000620027a962000e18565b6001600160a01b03163b600003620027c55762000e2d62000e18565b620027cf62000e18565b6001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa9250505080156200282b575060408051601f3d908101601f1916820190925262002828918101906200549f565b60015b6200283a5762000e2d62000e18565b919050565b600091825260c9602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6200287462003589565b610100546001600160a01b031660006200289261271060646200524b565b60fc5460fb54620028a491906200524b565b620028b091906200530c565b90506000620028c361271060646200524b565b6040516302a64b8360e21b81526001600160a01b03851690630a992e0c90620028f1903090600401620047bc565b602060405180830381865afa1580156200290f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620029359190620052b4565b60fb546200294491906200524b565b6200295091906200530c565b90506200295d3362002ad8565b62002aca5733600081815261010c6020526040902060028101805460ff1916600190811790915560fb549101819055620029c5919030908490620029a39087906200532f565b620029af91906200532f565b610105546001600160a01b031692919062003d89565b8115620029f25760ff5461010554620029f2916001600160a01b0391821691610100909104168462003de5565b801562002a775762002a77836001600160a01b031663987435be6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562002a3c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002a6291906200549f565b610105546001600160a01b0316908362003de5565b6001610110600082825462002a8d91906200532f565b909155505060fb546040517f0bd09b1e448ffe881e884ac37014bf3e0274007308056b6469b50fa485542abf91620024b4913391908890620058dd565b505050620012416001606555565b6001600160a01b0316600090815261010c602052604090206002015460ff1690565b62002b046200369a565b61010180546001600160a01b0319166001600160a01b0392909216919091179055565b610103546001600160a01b0316331462002b54576040516375e686b760e11b815260040160405180910390fd5b6101035462002b7d906000805160206200620c833981519152906001600160a01b0316620039a8565b6101065462002ba6906000805160206200620c833981519152906001600160a01b031662003b1f565b610103805461010680546001600160a01b0383166001600160a01b031991821681179092559091169091556040517ffea29da7321ca6d0ee0a7359009bb9d4a57035aea0ef6cb4d062341f4a9615199162002c0191620047bc565b60405180910390a1565b610109805462002c1b9062005345565b80601f016020809104026020016040519081016040528092919081815260200182805462002c499062005345565b801562002c9a5780601f1062002c6e5761010080835404028352916020019162002c9a565b820191906000526020600020905b81548152906001019060200180831162002c7c57829003601f168201915b505050505081565b62002cac62003589565b62002cb662003d60565b3362002cc28162003e2f565b6001600160a01b03808216600081815261010c602090815260408083208151606081018352815496871681526001820180548286015260028301805460ff81161515848701529787526001600160a01b03199098169092559084905560ff1990941690945561010d9052918220909162002d3d91906200473e565b610110541562002d63576001610110600082825462002d5d91906200558a565b90915550505b60208101516101055462002d85916001600160a01b0390911690849062003de5565b7fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f482826020015160405162002dbc9291906200529b565b60405180910390a15050620026576001606555565b62002de0612710600a6200524b565b81565b600054610100900460ff1662002e0d5760405162461bcd60e51b8152600401620015d6906200590f565b620012418162003f44565b610108805462002c1b9062005345565b62002e338262001375565b62002e3e816200399c565b620014e1838362003b1f565b610102546101075461010154600092839283926001600160a01b039283169263184b955960e01b928116911662002e8062000e18565b6040516001600160a01b0393841660248201529183166044830152909116606482015260840160408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905162002ee5906200475e565b62002ef29291906200595a565b604051809103906000f08015801562002f0f573d6000803e3d6000fd5b50905062002f2081878787620030a7565b60c087015191945092506001600160a01b031662002ff15761271085610100015151111562002f6d578461010001515160405163107b111560e31b8152600401620015d691815260200190565b60008360405160200162002f82919062005980565b60405160208183030381529060405280519060200120905060005b8661010001515181101562002fee5762002fd982886101000151838151811062002fcb5762002fcb620054bf565b6020026020010151620039a8565b8062002fe5816200556e565b91505062002f9d565b50505b6200304d8360405160200162003008919062005980565b60405160208183030381529060405280519060200120846040516020016200303191906200599d565b6040516020818303038152906040528051906020012062003aca565b62003081836040516020016200306491906200599d565b6040516020818303038152906040528051906020012083620039a8565b50935093915050565b600062000e126000805160206200620c833981519152836200283f565b60008073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee6001600160a01b03861615620030d25750845b6101075460fe546040518994506001600160a01b039092169163e1007d4a9190859062003104908a90602001620059ea565b6040516020818303038152906040528560008a61010f6040518863ffffffff1660e01b81526004016200313e979695949392919062005afe565b6020604051808303816000875af11580156200315e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620031849190620052b4565b92507f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2838383308988604051620031bf95949392919062005b9a565b60405180910390a15094509492505050565b620031db6200354c565b60fb548160800151141580620031fe575060ff805460a083015115159116151514155b806200322e575061010960405162003217919062005bd6565b60405180910390208160c001518051906020012014155b1562003339576200323e62003a32565b60fb548160800151146200325b576200325b8160800151620014e6565b60ff805460a083015115159116151514620032b95760a081015160ff805460ff191691151591821790556040519081527f4ca826489011b9a44719ccfa206813b072bb58604af41f245a6a1a6d913588759060200160405180910390a15b610109604051620032cb919062005bd6565b60405180910390208160c001518051906020012014620033395760c081015161010990620032fa9082620053d3565b507f8fd46764d9fde733a671bd3aa6710da0668b1c4eb78d33f42e104553ea4bc76e8160c0015160405162003330919062004d58565b60405180910390a15b6101086040516200334b919062005bd6565b604051809103902081606001518051906020012014620033b9576060810151610108906200337a9082620053d3565b507ff67fb6c95f41f58a276869ca2608214f0a6aab1c9ffe445affaa58680fddd4978160600151604051620033b0919062004d58565b60405180910390a15b60fc54816040015114620033d657620033d6816040015162000e32565b60ff5460208201516001600160a01b0390811661010090920416146200345457602081015160ff8054610100600160a81b0319166101006001600160a01b038416021790556040517f647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059916200344b91620047bc565b60405180910390a15b80516001600160a01b03161562001241578051620012419062001cf0565b6200347c6200369a565b6001600160a01b03811662002e0d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401620015d6565b620034ed6200354c565b6001600160a01b038116600090815261010a602052604090205460ff16156200351b576200351b8162003647565b7f6723d9f32d040ca8ddd4dabf6f03ad485e63fc3fd625ac1fa1c557de6719314f8160405162000e9d9190620047bc565b620035676000805160206200620c833981519152336200283f565b62002657573360405163fc4be72f60e01b8152600401620015d69190620047bc565b600260655403620035dd5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401620015d6565b6002606555565b620035ef8162002ad8565b6200124157604051636a5cfb6d60e01b815260040160405180910390fd5b806001600160a01b0316826001600160a01b031614620012285760405163bbe7961160e01b815260040160405180910390fd5b6001606555565b6001600160a01b038116600090815261010a602052604090819020805460ff19169055517f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea49062000e9d908390620047bc565b33620036a56200279d565b6001600160a01b031614620026575760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401620015d6565b6001600160a01b038116600090815261010a602052604090205460ff161562003739576040516325a2934b60e21b815260040160405180910390fd5b6001600160a01b038116600081815261010a60209081526040808320805460ff19166001179055805163b6c61f3160e01b8152905192939263b6c61f31926004808401939192918290030181865afa1580156200379a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620037c091906200549f565b90506001600160a01b0381161562003835576040516306c0752d60e51b81526001600160a01b0382169063d80ea5a09062003800908590600401620047bc565b600060405180830381600087803b1580156200381b57600080fd5b505af115801562003830573d6000803e3d6000fd5b505050505b7f3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f182604051620013699190620047bc565b6001600160a01b038216600090815261010d60205260408120905b81548110156200399657826001600160a01b0316828281548110620038aa57620038aa620054bf565b6000918252602090912001546001600160a01b031603620039815781548290620038d7906001906200558a565b81548110620038ea57620038ea620054bf565b9060005260206000200160009054906101000a90046001600160a01b03168282815481106200391d576200391d620054bf565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550818054806200395e576200395e62005791565b600082815260209020810160001990810180546001600160a01b03191690550190555b806200398d816200556e565b91505062003881565b50505050565b62001241813362003f96565b620039b482826200283f565b6200122857600082815260c9602090815260408083206001600160a01b03851684529091529020805460ff19166001179055620039ee3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6101105415620026575761011054604051637d95539f60e11b8152600401620015d691815260200190565b6001600160a01b03163b151590565b600054610100900460ff1662003a965760405162461bcd60e51b8152600401620015d6906200590f565b6200265762003ffa565b600054610100900460ff16620026575760405162461bcd60e51b8152600401620015d6906200590f565b600062003ad78362001375565b600084815260c96020526040808220600101859055519192508391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b62003b2b82826200283f565b156200122857600082815260c9602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b6000805160206200624c833981519152546001600160a01b031690565b3362003bb16200279d565b6001600160a01b03161462001241573362003bcb6200279d565b60405163163678e960e01b8152600401620015d6929190620052f2565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161562003c1e57620014e18362004024565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa92505050801562003c7b575060408051601f3d908101601f1916820190925262003c7891810190620052b4565b60015b62003ce05760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401620015d6565b6000805160206200624c833981519152811462003d525760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401620015d6565b50620014e1838383620040c3565b62003d6b3362002ad8565b6200265757604051636a5cfb6d60e01b815260040160405180910390fd5b62003996846323b872dd60e01b85858560405160240162003dad93929190620052ce565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b031990931692909217909152620040ee565b620014e18363a9059cbb60e01b848460405160240162003dad9291906200529b565b600062003e1483620041ca565b801562003e28575062003e28838362004202565b9392505050565b6001600160a01b038116600090815261010d602090815260408083208054825181850281018501909352808352919290919083018282801562003e9c57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831162003e7d575b5050505050905060005b8151811015620014e15781818151811062003ec55762003ec5620054bf565b60200260200101516001600160a01b0316636453d9c4846040518263ffffffff1660e01b815260040162003efa9190620047bc565b600060405180830381600087803b15801562003f1557600080fd5b505af115801562003f2a573d6000803e3d6000fd5b50505050808062003f3b906200556e565b91505062003ea6565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b62003fa282826200283f565b620012285762003fb2816200428d565b62003fbf836020620042a0565b60405160200162003fd292919062005c54565b60408051601f198184030181529082905262461bcd60e51b8252620015d69160040162004d58565b600054610100900460ff16620036405760405162461bcd60e51b8152600401620015d6906200590f565b6200402f8162003a5d565b620040935760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401620015d6565b6000805160206200624c83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b620040ce8362004459565b600082511180620040dc5750805b15620014e1576200399683836200449b565b600062004145826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316620044c39092919063ffffffff16565b90508051600014806200416957508080602001905181019062004169919062005cc7565b620014e15760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152608401620015d6565b6000620041df826301ffc9a760e01b62004202565b801562000e125750620041fb826001600160e01b031962004202565b1592915050565b604080516001600160e01b03198316602480830191909152825180830390910181526044909101909152602080820180516001600160e01b03166301ffc9a760e01b178152825160009392849283928392918391908a617530fa92503d9150600051905082801562004275575060208210155b8015620042825750600081115b979650505050505050565b606062000e126001600160a01b03831660145b60606000620042b18360026200524b565b620042be9060026200532f565b6001600160401b03811115620042d857620042d8620048c2565b6040519080825280601f01601f19166020018201604052801562004303576020820181803683370190505b509050600360fc1b81600081518110620043215762004321620054bf565b60200101906001600160f81b031916908160001a905350600f60fb1b81600181518110620043535762004353620054bf565b60200101906001600160f81b031916908160001a9053506000620043798460026200524b565b620043869060016200532f565b90505b600181111562004408576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110620043be57620043be620054bf565b1a60f81b828281518110620043d757620043d7620054bf565b60200101906001600160f81b031916908160001a90535060049490941c93620044008162005ce7565b905062004389565b50831562003e285760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401620015d6565b620044648162004024565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606062003e2883836040518060600160405280602781526020016200626c60279139620044dc565b6060620044d484846000856200455a565b949350505050565b6060600080856001600160a01b031685604051620044fb919062005d01565b600060405180830381855af49150503d806000811462004538576040519150601f19603f3d011682016040523d82523d6000602084013e6200453d565b606091505b509150915062004550868383876200462d565b9695505050505050565b606082471015620045bd5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b6064820152608401620015d6565b600080866001600160a01b03168587604051620045db919062005d01565b60006040518083038185875af1925050503d80600081146200461a576040519150601f19603f3d011682016040523d82523d6000602084013e6200461f565b606091505b509150915062004282878383875b60608315620046a157825160000362004699576200464b8562003a5d565b620046995760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401620015d6565b5081620044d4565b620044d48383815115620046b85781518083602001fd5b8060405162461bcd60e51b8152600401620015d6919062004d58565b8280548282559060005260206000209081019282156200472c579160200282015b828111156200472c57825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620046f5565b506200473a9291506200476c565b5090565b50805460008255906000526020600020908101906200124191906200476c565b6104ec8062005d2083390190565b5b808211156200473a57600081556001016200476d565b6000602082840312156200479657600080fd5b81356001600160e01b03198116811462003e2857600080fd5b6001600160a01b03169052565b6001600160a01b0391909116815260200190565b600060208284031215620047e357600080fd5b5035919050565b6001600160a01b03811681146200124157600080fd5b80356200283a81620047ea565b600080604083850312156200482157600080fd5b82356200482e81620047ea565b915060208301356200484081620047ea565b809150509250929050565b6000602082840312156200485e57600080fd5b813562003e2881620047ea565b600080604083850312156200487f57600080fd5b82356200488c81620047ea565b946020939093013593505050565b60008060408385031215620048ae57600080fd5b8235915060208301356200484081620047ea565b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b0381118282101715620048fd57620048fd620048c2565b60405290565b60405161018081016001600160401b0381118282101715620048fd57620048fd620048c2565b60405160c081016001600160401b0381118282101715620048fd57620048fd620048c2565b60405161012081016001600160401b0381118282101715620048fd57620048fd620048c2565b60405160e081016001600160401b0381118282101715620048fd57620048fd620048c2565b604051601f8201601f191681016001600160401b0381118282101715620049c457620049c4620048c2565b604052919050565b60006001600160401b03821115620049e857620049e8620048c2565b50601f01601f191660200190565b600062004a0d62004a0784620049cc565b62004999565b905082815283838301111562004a2257600080fd5b828260208301376000602084830101529392505050565b600082601f83011262004a4b57600080fd5b62003e2883833560208501620049f6565b60006040828403121562004a6f57600080fd5b62004a79620048d8565b82358152905060208201356001600160401b0381111562004a9957600080fd5b62004aa78482850162004a39565b60208301525092915050565b80151581146200124157600080fd5b80356200283a8162004ab3565b6000806000806080858703121562004ae657600080fd5b84356001600160401b038082111562004afe57600080fd5b90860190610180828903121562004b1457600080fd5b62004b1e62004903565b62004b298362004800565b815262004b396020840162004800565b602082015260408301356040820152606083013560608201526080830135608082015262004b6a60a0840162004800565b60a082015262004b7d60c0840162004800565b60c082015260e08301358281111562004b9557600080fd5b62004ba38a82860162004a5c565b60e08301525061010062004bb981850162004800565b90820152610120838101358381111562004bd257600080fd5b62004be08b82870162004a39565b82840152505061014062004bf681850162004ac2565b90820152610160838101358381111562004c0f57600080fd5b62004c1d8b82870162004a39565b82840152505080965050505062004c376020860162004800565b925062004c476040860162004800565b915062004c576060860162004800565b905092959194509250565b6000806040838503121562004c7657600080fd5b823562004c8381620047ea565b915060208301356001600160401b0381111562004c9f57600080fd5b8301601f8101851362004cb157600080fd5b62004cc285823560208401620049f6565b9150509250929050565b60006020828403121562004cdf57600080fd5b81356001600160401b0381111562004cf657600080fd5b620044d48482850162004a39565b60005b8381101562004d2157818101518382015260200162004d07565b50506000910152565b6000815180845262004d4481602086016020860162004d04565b601f01601f19169290920160200192915050565b60208152600062003e28602083018462004d2a565b60006080828403121562004d8057600080fd5b604051608081016001600160401b038111828210171562004da55762004da5620048c2565b8060405250809150823581526020830135602082015260408301356040820152606083013560608201525092915050565b8035600381106200283a57600080fd5b600481106200124157600080fd5b80356200283a8162004de6565b60006020828403121562004e1457600080fd5b604051602081016001600160401b038111828210171562004e395762004e39620048c2565b6040529135825250919050565b600060c0828403121562004e5957600080fd5b62004e6362004929565b9050813562004e7281620047ea565b8152602082013562004e8481620047ea565b8060208301525060408201356040820152606082013560608201526080820135608082015260a082013560a082015292915050565b60006001600160401b0382111562004ed55762004ed5620048c2565b5060051b60200190565b600082601f83011262004ef157600080fd5b8135602062004f0462004a078362004eb9565b82815260059290921b8401810191818101908684111562004f2457600080fd5b8286015b8481101562004f4c57803562004f3e81620047ea565b835291830191830162004f28565b509695505050505050565b6000610220828403121562004f6b57600080fd5b62004f756200494e565b905062004f83838362004d6d565b815262004f936080830162004dd6565b602082015262004fa660a0830162004df4565b604082015262004fba8360c0840162004e01565b606082015262004fce8360e0840162004e46565b608082015262004fe26101a0830162004800565b60a082015262004ff66101c0830162004800565b60c08201526101e082013560e08201526102008201356001600160401b038111156200502157600080fd5b6200502f8482850162004edf565b6101008301525092915050565b6000806000606084860312156200505257600080fd5b83356200505f81620047ea565b925060208401356001600160401b03808211156200507c57600080fd5b6200508a8783880162004f57565b93506040860135915080821115620050a157600080fd5b50620050b08682870162004a5c565b9150509250925092565b60008060008060808587031215620050d157600080fd5b8435620050de81620047ea565b93506020850135620050f081620047ea565b925060408501356001600160401b03808211156200510d57600080fd5b6200511b8883890162004f57565b935060608701359150808211156200513257600080fd5b50620051418782880162004a5c565b91505092959194509250565b6000602082840312156200516057600080fd5b81356001600160401b03808211156200517857600080fd5b9083019060e082860312156200518d57600080fd5b6200519762004974565b620051a28362004800565b8152620051b26020840162004800565b602082015260408301356040820152606083013582811115620051d457600080fd5b620051e28782860162004a39565b606083015250608083013560808201526200520060a0840162004ac2565b60a082015260c0830135828111156200521857600080fd5b620052268782860162004a39565b60c08301525095945050505050565b634e487b7160e01b600052601160045260246000fd5b808202811582820484141762000e125762000e1262005235565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156200528e57600080fd5b815162003e288162004de6565b6001600160a01b03929092168252602082015260400190565b600060208284031215620052c757600080fd5b5051919050565b6001600160a01b039384168152919092166020820152604081019190915260600190565b6001600160a01b0392831681529116602082015260400190565b6000826200532a57634e487b7160e01b600052601260045260246000fd5b500490565b8082018082111562000e125762000e1262005235565b600181811c908216806200535a57607f821691505b6020821081036200537b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620014e157600081815260208120601f850160051c81016020861015620053aa5750805b601f850160051c820191505b81811015620053cb57828155600101620053b6565b505050505050565b81516001600160401b03811115620053ef57620053ef620048c2565b620054078162005400845462005345565b8462005381565b602080601f8311600181146200543f5760008415620054265750858301515b600019600386901b1c1916600185901b178555620053cb565b600085815260208120601f198616915b8281101562005470578886015182559484019460019091019084016200544f565b50858210156200548f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620054b257600080fd5b815162003e2881620047ea565b634e487b7160e01b600052603260045260246000fd5b60006020808385031215620054e957600080fd5b82516001600160401b038111156200550057600080fd5b8301601f810185136200551257600080fd5b80516200552362004a078262004eb9565b81815260059190911b820183019083810190878311156200554357600080fd5b928401925b82841015620042825783516200555e81620047ea565b8252928401929084019062005548565b60006001820162005583576200558362005235565b5060010190565b8181038181111562000e125762000e1262005235565b60008154620055af8162005345565b808552602060018381168015620055cf5760018114620055ea576200561a565b60ff1985168884015283151560051b8801830195506200561a565b866000528260002060005b85811015620056125781548a8201860152908301908401620055f5565b890184019650505b505050505092915050565b805182526000602082015160406020850152620044d4604085018262004d2a565b600081518084526020808501945080840160005b83811015620056815781516001600160a01b0316875295820195908201906001016200565a565b509495945050505050565b85815260a060208201526000620056a760a0830187620055a0565b8281036040840152620056bb818762005625565b6001600160a01b038616606085015283810360808501529050620056e0818562005646565b98975050505050505050565b838152606060208201526000620057076060830185620055a0565b828103604084015262004550818562005625565b6020808252602c908201526000805160206200622c83398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201526000805160206200622c83398151915260408201526b6163746976652070726f787960a01b606082015260800190565b634e487b7160e01b600052603160045260246000fd5b60006020808385031215620057bb57600080fd5b82516001600160401b0380821115620057d357600080fd5b9084019060c08287031215620057e857600080fd5b620057f262004929565b82518152838301516200580581620047ea565b8185015260408301516200581981620047ea565b60408201526060830151828111156200583157600080fd5b8301604081890312156200584457600080fd5b6200584e620048d8565b8151815285820151848111156200586457600080fd5b82019350601f840189136200587857600080fd5b835191506200588b62004a0783620049cc565b8281528987848701011115620058a057600080fd5b620058b18388830189880162004d04565b95810195909552506060810193909352506080818101519083015260a090810151908201529392505050565b60018060a01b038416815282602082015260606040820152600062005906606083018462004d2a565b95945050505050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6001600160a01b0383168152604060208201819052600090620044d49083018462004d2a565b6810531313d5d31254d560ba1b8152600981019190915260290190565b6e20a62627aba624a9aa2fa0a226a4a760891b8152600f810191909152602f0190565b60038110620059d357620059d362005265565b9052565b60048110620059d357620059d362005265565b6020815262005a1e602082018351805182526020810151602083015260408101516040830152606081015160608301525050565b6000602083015162005a3460a0840182620059c0565b50604083015162005a4960c0840182620059d7565b506060838101515160e084015260808085015180516001600160a01b039081166101008088019190915260208301519091166101208701526040820151610140870152928101516101608601529081015161018085015260a0908101516101a08501528401519062005ac06101c0850183620047af565b60c0850151915062005ad76101e0850183620047af565b60e0850151610200850152840151610220808501529050620044d461024084018262005646565b8781526000602060018060a01b03808a168285015260e0604085015262005b2960e085018a62004d2a565b818916606086015287608086015284810360a086015262005b4b818862005625565b85810360c0870152865480825260008881528581209350918501915b8181101562005b8757835485168352600193840193928601920162005b67565b50909d9c50505050505050505050505050565b8581526001600160a01b03858116602083015284811660408301528316606082015260a060808201819052600090620042829083018462005625565b600080835462005be68162005345565b6001828116801562005c01576001811462005c175762005c48565b60ff198416875282151583028701945062005c48565b8760005260208060002060005b8581101562005c3f5781548a82015290840190820162005c24565b50505082870194505b50929695505050505050565b76020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81526000835162005c8881601785016020880162004d04565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835162005cbb81602884016020880162004d04565b01602801949350505050565b60006020828403121562005cda57600080fd5b815162003e288162004ab3565b60008162005cf95762005cf962005235565b506000190190565b6000825162005d1581846020870162004d04565b919091019291505056fe60806040526040516104ec3803806104ec833981016040819052610022916102e9565b61002e82826000610035565b5050610406565b61003e83610061565b60008251118061004b5750805b1561005c5761005a83836100a1565b505b505050565b61006a816100cd565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606100c683836040518060600160405280602781526020016104c56027913961017e565b9392505050565b6100d6816101f7565b61013d5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b60648201526084015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080856001600160a01b03168560405161019b91906103b7565b600060405180830381855af49150503d80600081146101d6576040519150601f19603f3d011682016040523d82523d6000602084013e6101db565b606091505b5090925090506101ed86838387610206565b9695505050505050565b6001600160a01b03163b151590565b6060831561027357825160000361026c57610220856101f7565b61026c5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610134565b508161027d565b61027d8383610285565b949350505050565b8151156102955781518083602001fd5b8060405162461bcd60e51b815260040161013491906103d3565b634e487b7160e01b600052604160045260246000fd5b60005b838110156102e05781810151838201526020016102c8565b50506000910152565b600080604083850312156102fc57600080fd5b82516001600160a01b038116811461031357600080fd5b60208401519092506001600160401b038082111561033057600080fd5b818501915085601f83011261034457600080fd5b815181811115610356576103566102af565b604051601f8201601f19908116603f0116810190838211818310171561037e5761037e6102af565b8160405282815288602084870101111561039757600080fd5b6103a88360208301602088016102c5565b80955050505050509250929050565b600082516103c98184602087016102c5565b9190910192915050565b60208152600082518060208401526103f28160408501602087016102c5565b601f01601f19169190910160400192915050565b60b1806104146000396000f3fe608060405236601057600e6013565b005b600e5b601f601b6021565b6058565b565b600060537f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b905090565b3660008037600080366000845af43d6000803e8080156076573d6000f35b3d6000fdfea26469706673582212200823673c0a10d18d317cca6b4146580cb0465a62303846173ba8846c992ad28c64736f6c63430008130033416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c656403be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fa46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122024ef98697af34f9ae5553abc9f9a86be1e286849632547bbaf4a4a2f05c2f60264736f6c63430008130033","sourceMap":"3148:26794:64:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3050:213:12;;;;;;;;;;-1:-1:-1;3050:213:12;;;;;:::i;:::-;;:::i;:::-;;;470:14:70;;463:22;445:41;;433:2;418:18;3050:213:12;;;;;;;;525:102:63;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;25807:115:64:-;;;;;;;;;;-1:-1:-1;25896:19:64;;25807:115;;;960:25:70;;;948:2;933:18;25807:115:64;814:177:70;6629:24:64;;;;;;;;;;;;;;;;27736:288;;;;;;;;;;-1:-1:-1;27736:288:64;;;;;:::i;:::-;;:::i;:::-;;15450:1225;;;;;;;;;;-1:-1:-1;15450:1225:64;;;;;:::i;:::-;;:::i;22462:128::-;;;;;;;;;;-1:-1:-1;22462:128:64;;;;;:::i;:::-;;:::i;10538:110::-;;;;;;;;;;-1:-1:-1;10538:110:64;;;;;:::i;:::-;;:::i;6710:25::-;;;;;;;;;;-1:-1:-1;6710:25:64;;;;;;;;21191:128;;;;;;;;;;-1:-1:-1;21191:128:64;;;;;:::i;:::-;;:::i;16681:702::-;;;;;;;;;;-1:-1:-1;16681:702:64;;;;;:::i;:::-;;:::i;4855:129:12:-;;;;;;;;;;-1:-1:-1;4855:129:12;;;;;:::i;:::-;;:::i;25372:429:64:-;;;;;;;;;;;;;:::i;8266:82::-;;;;;;;;;;-1:-1:-1;8266:82:64;;;;;:::i;:::-;;:::i;20704:151::-;;;;;;;;;;-1:-1:-1;20704:151:64;;;;;:::i;:::-;-1:-1:-1;;;;;20807:28:64;20781:7;20807:28;;;:19;:28;;;;;:41;;;;20704:151;5280:145:12;;;;;;;;;;-1:-1:-1;5280:145:12;;;;;:::i;:::-;;:::i;25928:222:64:-;;;;;;;;;;-1:-1:-1;25928:222:64;;;;;:::i;:::-;;:::i;6530:25::-;;;;;;;;;;;;;;;;10928:2544;;;;;;;;;;-1:-1:-1;10928:2544:64;;;;;:::i;:::-;;:::i;6389:214:12:-;;;;;;;;;;-1:-1:-1;6389:214:12;;;;;:::i;:::-;;:::i;3143:195:32:-;;;;;;;;;;-1:-1:-1;3143:195:32;;;;;:::i;:::-;;:::i;22596:251:64:-;;;;;;;;;;-1:-1:-1;22596:251:64;;;;;:::i;:::-;;:::i;7801:68::-;;;;;;;;;;-1:-1:-1;7801:68:64;;;;;:::i;:::-;;;;;;;;;;;;;;;;9697:161;;;;;;;;;;-1:-1:-1;9697:161:64;;;;;:::i;:::-;;:::i;8426:107::-;;;;;;;;;;-1:-1:-1;8426:107:64;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;3657:220:32;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;17828:986:64:-;;;;;;;;;;-1:-1:-1;17828:986:64;;;;;:::i;:::-;;:::i;7080:31::-;;;;;;;;;;-1:-1:-1;7080:31:64;;;;-1:-1:-1;;;;;7080:31:64;;;18957:1562;;;;;;;;;;-1:-1:-1;18957:1562:64;;;;;:::i;:::-;;:::i;7937:98::-;;;;;;;;;;-1:-1:-1;7937:98:64;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;29298:610;;;;;;;;;;-1:-1:-1;29298:610:64;;;;;:::i;:::-;;:::i;7179:41::-;;;;;;;;;;-1:-1:-1;7179:41:64;;;;-1:-1:-1;;;;;7179:41:64;;;7439:24;;;;;;;;;;-1:-1:-1;7439:24:64;;;;-1:-1:-1;;;;;7439:24:64;;;2085:101:14;;;;;;;;;;;;;:::i;22013:240:64:-;;;;;;;;;;-1:-1:-1;22013:240:64;;;;;:::i;:::-;;:::i;8962:68::-;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8962:68:64;;8718:27;;;;;;;;;;;;;;;;6983:38;;;;;;;;;;-1:-1:-1;6983:38:64;;;;-1:-1:-1;;;;;6983:38:64;;;20525:173;;;;;;;;;;-1:-1:-1;20525:173:64;;;;;:::i;:::-;-1:-1:-1;;;;;20650:30:64;;;20624:7;20650:30;;;:21;:30;;;;;;;;:41;;;;;;;;;;;;;20525:173;6325:34;;;;;;;;;;;;;;;;7270:25;;;;;;;;;;-1:-1:-1;7270:25:64;;;;-1:-1:-1;;;;;7270:25:64;;;20861:324;;;;;;;;;;-1:-1:-1;20861:324:64;;;;;:::i;:::-;;:::i;8135:60::-;;;;;;;;;;-1:-1:-1;8135:60:64;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8135:60:64;;;;;;;;;;;;;-1:-1:-1;;;;;9864:32:70;;;9846:51;;9928:2;9913:18;;9906:34;;;;9983:14;9976:22;9956:18;;;9949:50;9834:2;9819:18;8135:60:64;9650:355:70;6436:27:64;;;;;;;;;;;;;;;;633:544:63;;;;;;;;;;;;;:::i;3350:145:12:-;;;;;;;;;;-1:-1:-1;3350:145:12;;;;;:::i;:::-;;:::i;23403:1963:64:-;;;;;;;;;;-1:-1:-1;23403:1963:64;;;;;:::i;:::-;;:::i;5909:75::-;;;;;;;;;;;;5942:42;5909:75;;2320:49:12;;;;;;;;;;-1:-1:-1;2320:49:12;2365:4;2320:49;;23262:135:64;;;;;;;;;;-1:-1:-1;23262:135:64;;;;;:::i;:::-;;:::i;10654:124::-;;;;;;;;;;-1:-1:-1;10654:124:64;;;;;:::i;:::-;;:::i;6802:26::-;;;;;;;;;;-1:-1:-1;6802:26:64;;;;;;;-1:-1:-1;;;;;6802:26:64;;;22853:403;;;;;;;;;;;;;:::i;7655:30::-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;28169:643::-;;;;;;;;;;;;;:::i;6198:54::-;;;;;;;;;;;;;:::i;404:115:63:-;;;;;;;;;;-1:-1:-1;404:115:63;;;;;:::i;:::-;;:::i;7570:27:64:-;;;;;;;;;;;;;:::i;5705:147:12:-;;;;;;;;;;-1:-1:-1;5705:147:12;;;;;:::i;:::-;;:::i;7511:17:64:-;;;;;;;;;;-1:-1:-1;7511:17:64;;;;-1:-1:-1;;;;;7511:17:64;;;6074:49;;;;;;;;;;;;6116:7;6074:49;;7358:25;;;;;;;;;;-1:-1:-1;7358:25:64;;;;-1:-1:-1;;;;;7358:25:64;;;13478:1359;;;;;;;;;;-1:-1:-1;13478:1359:64;;;;;:::i;:::-;;:::i;:::-;;;;16629:25:70;;;-1:-1:-1;;;;;16690:32:70;;;16685:2;16670:18;;16663:60;16602:18;13478:1359:64;16455:274:70;28030:133:64;;;;;;;;;;-1:-1:-1;28030:133:64;;;;;:::i;:::-;;:::i;14843:601::-;;;;;;;;;;-1:-1:-1;14843:601:64;;;;;:::i;:::-;;:::i;26156:1574::-;;;;;;;;;;-1:-1:-1;26156:1574:64;;;;;:::i;:::-;;:::i;2335:198:14:-;;;;;;;;;;-1:-1:-1;2335:198:14;;;;;:::i;:::-;;:::i;6886:30:64:-;;;;;;;;;;-1:-1:-1;6886:30:64;;;;-1:-1:-1;;;;;6886:30:64;;;21787:220;;;;;;;;;;-1:-1:-1;21787:220:64;;;;;:::i;:::-;;:::i;5785:38::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5785:38:64;;;;;3050:213:12;3135:4;-1:-1:-1;;;;;;3158:58:12;;-1:-1:-1;;;3158:58:12;;:98;;-1:-1:-1;;;;;;;;;;1189:51:21;;;3220:36:12;3151:105;3050:213;-1:-1:-1;;3050:213:12:o;525:102:63:-;568:7;594:26;1534:6:14;;-1:-1:-1;;;;;1534:6:14;;1462:85;594:26:63;587:33;;525:102;:::o;27736:288:64:-;27812:17;:15;:17::i;:::-;6232:20;6116:7;6232:2;:20;:::i;:::-;27843:16;:26;27839:86;;;27892:22;;-1:-1:-1;;;27892:22:64;;;;;;;;;;;27839:86;27934:12;:31;;;27980:37;;960:25:70;;;27980:37:64;;948:2:70;933:18;27980:37:64;;;;;;;;27736:288;:::o;15450:1225::-;2526:21:17;:19;:21::i;:::-;15558:34:64::1;15584:7;15558:25;:34::i;:::-;15602:30;15622:9;15602:19;:30::i;:::-;15642:42;15662:10;15674:9;15642:19;:42::i;:::-;-1:-1:-1::0;;;;;15741:36:64;;::::1;;::::0;;;:27:::1;:36;::::0;;;;;;;:47;;::::1;::::0;;;;;;;::::1;;15737:107;;;15811:22;;-1:-1:-1::0;;;15811:22:64::1;;;;;;;;;;;15737:107;-1:-1:-1::0;;;;;15877:28:64;;::::1;15854:20;15877:28:::0;;;:19:::1;:28;::::0;;;;;;;;15854:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;;::::0;::::1;;;;::::0;;;;;;;16000:19:::1;::::0;16080:21:::1;16049:9;-1:-1:-1::0;;;;;16034:40:64::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:67;;;;;;;;:::i;:::-;::::0;16030:354:::1;;16136:51;::::0;-1:-1:-1;;;16136:51:64;;-1:-1:-1;;;;;16136:39:64;::::1;::::0;::::1;::::0;:51:::1;::::0;16176:7;;16185:1:::1;::::0;16136:51:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16117:70;;16030:354;;;16254:17;16223:9;-1:-1:-1::0;;;;;16208:40:64::1;;:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:63;;;;;;;;:::i;:::-;;16204:180;;16306:67;::::0;-1:-1:-1;;;16306:67:64;;-1:-1:-1;;;;;16306:39:64;::::1;::::0;::::1;::::0;:67:::1;::::0;16346:7;;16355:17;;16306:67:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16287:86;;16204:180;-1:-1:-1::0;;;;;16394:30:64;;::::1;;::::0;;;:21:::1;:30;::::0;;;;;;;:41;;::::1;::::0;;;;;;;;;:60;;;16483:36;;;:27:::1;:36:::0;;;;;:47;;;;;;;;:54;;-1:-1:-1;;16483:54:64::1;16533:4;16483:54:::0;;::::1;::::0;;;16548:27;;;:18:::1;:27:::0;;;;;:43;;;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;16548:43:64::1;::::0;;::::1;::::0;;;16607:61;::::1;::::0;::::1;::::0;16416:7;;16425:9;;16438:16;;16607:61:::1;:::i;:::-;;;;;;;;15548:1127;;;2568:20:17::0;1808:1;3074:7;:22;2894:209;2568:20;15450:1225:64;;:::o;22462:128::-;22530:17;:15;:17::i;:::-;22557:26;22573:9;22557:15;:26::i;:::-;22462:128;:::o;10538:110::-;1355:13:14;:11;:13::i;:::-;10614:16:64::1;:27:::0;;-1:-1:-1;;;;;;10614:27:64::1;-1:-1:-1::0;;;;;10614:27:64;;;::::1;::::0;;;::::1;::::0;;10538:110::o;21191:128::-;21259:17;:15;:17::i;:::-;21286:26;21299:12;21286;:26::i;16681:702::-;16778:34;16804:7;16778:25;:34::i;:::-;16864:42;16884:10;16896:9;16864:19;:42::i;:::-;-1:-1:-1;;;;;16922:36:64;;;;;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;16917:110;;16992:24;;-1:-1:-1;;;16992:24:64;;;;;;;;;;;16917:110;-1:-1:-1;;;;;17037:36:64;;;17087:5;17037:36;;;:27;:36;;;;;;;;:47;;;;;;;;;;;;:55;;-1:-1:-1;;17037:55:64;;;17102:30;;;:21;:30;;;;;:41;;;;;;;;;:45;17157:44;17065:7;17074:9;17157:24;:44::i;:::-;17331:45;17357:7;17366:9;17331:45;;;;;;;:::i;:::-;;;;;;;;16681:702;;:::o;4855:129:12:-;4929:7;4955:12;;;:6;:12;;;;;:22;;;;4855:129::o;25372:429:64:-;25435:7;;25523:21;6116:7;25523:3;:21;:::i;:::-;25506:12;;25484:19;;:34;;;;:::i;:::-;25483:62;;;;:::i;:::-;25454:91;-1:-1:-1;25555:24:64;25695:21;6116:7;25695:3;:21;:::i;:::-;25635:15;;25618:63;;-1:-1:-1;;;25618:63:64;;-1:-1:-1;;;;;25635:15:64;;;;25618:48;;:63;;25675:4;;25618:63;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25596:19;;:85;;;;:::i;:::-;25582:135;;;;:::i;:::-;25555:162;;25778:16;25757:18;25735:19;;:40;;;;:::i;:::-;:59;;;;:::i;:::-;25728:66;;;;25372:429;:::o;8266:82::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8266:82:64;;-1:-1:-1;8266:82:64;;-1:-1:-1;8266:82:64:o;5280:145:12:-;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;25928:222:64:-;26003:17;:15;:17::i;:::-;26030:20;:18;:20::i;:::-;26060:19;:32;;;26107:36;;960:25:70;;;26107:36:64;;948:2:70;933:18;26107:36:64;814:177:70;10928:2544:64;3279:19:16;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:16;;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:16;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:16;;21475:2:70;3325:201:16;;;21457:21:70;21514:2;21494:18;;;21487:30;21553:34;21533:18;;;21526:62;-1:-1:-1;;;21604:18:70;;;21597:44;21658:19;;3325:201:16;;;;;;;;;3536:12;:16;;-1:-1:-1;;3536:16:16;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:16;;;;;3562:65;11145:24:64::1;11162:6;11145:16;:24::i;:::-;11179;:22;:24::i;:::-;11213:22;:20;:22::i;:::-;11246:49;-1:-1:-1::0;;;;;;;;;;;2365:4:12::1;11246:13:64;:49::i;:::-;11647:12:::0;;11634:4:::1;:26:::0;;-1:-1:-1;;;;;11634:26:64;;::::1;-1:-1:-1::0;;;;;;11634:26:64;;::::1;;::::0;;;11684:19:::1;::::0;::::1;::::0;11670:11:::1;:33:::0;;;;;::::1;::::0;::::1;;::::0;;11717:27:::1;::::0;::::1;::::0;11647:12:::1;11717:32:::0;11713:89:::1;;11772:19;;-1:-1:-1::0;;;11772:19:64::1;;;;;;;;;;;11713:89;11833:27;::::0;::::1;::::0;11811:19:::1;:49:::0;11885:20:::1;::::0;::::1;::::0;11870:12:::1;:35:::0;11931:21:::1;::::0;::::1;::::0;11915:13:::1;:37:::0;;-1:-1:-1;;11915:37:64::1;::::0;::::1;;::::0;;;::::1;::::0;;11978:21:::1;::::0;::::1;::::0;11962:13:::1;::::0;:37:::1;::::0;:13;:37:::1;:::i;:::-;-1:-1:-1::0;12028:23:64::1;::::0;::::1;::::0;12009:16:::1;::::0;:42:::1;::::0;:16;:42:::1;:::i;:::-;-1:-1:-1::0;12080:23:64::1;::::0;::::1;::::0;12062:15:::1;:41:::0;;-1:-1:-1;;;;;;12062:41:64;;::::1;-1:-1:-1::0;;;;;12062:41:64;;::::1;;::::0;;12127:19:::1;::::0;::::1;::::0;12113:11:::1;:33:::0;;-1:-1:-1;;;;;;12113:33:64::1;::::0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;12176:19;;::::1;::::0;12156:11:::1;:40:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;-1:-1:-1;12206:12:64::1;:16:::0;12233:47:::1;::::0;-1:-1:-1;;;;;;;;;;;9003:27:64;12233:10:::1;:47::i;:::-;12312:4;;;;;;;;;-1:-1:-1::0;;;;;12312:4:64::1;-1:-1:-1::0;;;;;12312:16:64::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12291:8;:40:::0;;-1:-1:-1;;;;;;12291:40:64::1;-1:-1:-1::0;;;;;12291:40:64;;::::1;;::::0;;12438:11:::1;::::0;12342:36:::1;::::0;12438:11:::1;12430:32;-1:-1:-1::0;12430:37:64;12426:427:::1;;12505:16;::::0;;12519:1:::1;12505:16:::0;;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12505:16:64::1;12483:38;;12560:10;12535:19;12555:1;12535:22;;;;;;;;:::i;:::-;;;;;;:35;-1:-1:-1::0;;;;;12535:35:64::1;;;-1:-1:-1::0;;;;;12535:35:64::1;;;::::0;::::1;12426:427;;;12627:11;::::0;:23:::1;::::0;;-1:-1:-1;;;12627:23:64;;;;12601::::1;::::0;-1:-1:-1;;;;;12627:11:64::1;::::0;:21:::1;::::0;:23:::1;::::0;;::::1;::::0;12601;;12627;;;;;;;:11;:23:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;12627:23:64::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;12601:49;;12700:6;:13;12716:1;12700:17;;;;:::i;:::-;-1:-1:-1::0;;;;;12686:32:64::1;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;-1:-1:-1;12686:32:64::1;;12664:54;;12737:9;12732:111;12756:6;:13;12752:1;:17;12732:111;;;12819:6;12826:1;12819:9;;;;;;;;:::i;:::-;;;;;;;12794:19;12814:1;12794:22;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12794:34:64;;::::1;:22;::::0;;::::1;::::0;;;;;;;:34;12771:3;::::1;::::0;::::1;:::i;:::-;;;;12732:111;;;;12587:266;12426:427;12925:11;::::0;12883:26;;-1:-1:-1;;;;;12925:11:64;;::::1;::::0;12863:19;;12883:30:::1;::::0;12925:11;;12883:30:::1;:::i;:::-;12863:51;;;;;;;;:::i;:::-;;;;;;:74;-1:-1:-1::0;;;;;12863:74:64::1;;;-1:-1:-1::0;;;;;12863:74:64::1;;;::::0;::::1;13009:4;12947:19;12996:1;12967:19;:26;:30;;;;:::i;:::-;12947:51;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12947:67:64;;::::1;:51;::::0;;::::1;::::0;;;;;:67;13126:8:::1;::::0;13149:13:::1;::::0;::::1;::::0;13179:16:::1;::::0;::::1;::::0;13126:106:::1;::::0;-1:-1:-1;;;13126:106:64;;:8;;;::::1;::::0;:22:::1;::::0;:106:::1;::::0;13149:13;13164::::1;::::0;13205:4:::1;::::0;13212:19;;13126:106:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13102:9;:130:::0;13243:36;;::::1;::::0;:14:::1;::::0;:36:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;13290:16:64::1;:36:::0;;-1:-1:-1;;;;;13290:36:64;;::::1;-1:-1:-1::0;;;;;;13290:36:64;;::::1;;::::0;;;13336:23:::1;:50:::0;;;;::::1;::::0;;;::::1;::::0;;;::::1;::::0;;13422:9:::1;::::0;13448:16:::1;::::0;::::1;::::0;13402:63:::1;::::0;::::1;::::0;::::1;::::0;13422:9;;13433:13:::1;::::0;13448:16;13402:63:::1;:::i;:::-;;;;;;;;11135:2337;3651:14:16::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:16;;;3721:14;;-1:-1:-1;29050:36:70;;3721:14:16;;29038:2:70;29023:18;3721:14:16;;;;;;;3647:99;3269:483;10928:2544:64;;;;:::o;6389:214:12:-;-1:-1:-1;;;;;6484:23:12;;965:10:19;6484:23:12;6476:83;;;;-1:-1:-1;;;6476:83:12;;29299:2:70;6476:83:12;;;29281:21:70;29338:2;29318:18;;;29311:30;29377:34;29357:18;;;29350:62;-1:-1:-1;;;29428:18:70;;;29421:45;29483:19;;6476:83:12;29097:411:70;6476:83:12;6570:26;6582:4;6588:7;6570:11;:26::i;3143:195:32:-;-1:-1:-1;;;;;1654:6:32;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:32;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:32;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:32;;1719:87;;;;-1:-1:-1;;;1719:87:32;;;;;;;:::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;22596:251:64:-:0;22668:17;:15;:17::i;:::-;22733:18;:26;;-1:-1:-1;;;;;;22733:26:64;-1:-1:-1;;;;;22733:26:64;;;;;;;;;22807:11;;22774:66;;;;;;22807:11;;;22733:26;22774:66;:::i;9697:161::-;-1:-1:-1;;;;;9772:28:64;;;;;;:17;:28;;;;;;;;9767:85;;9823:18;;-1:-1:-1;;;9823:18:64;;;;;;;;;;;3657:220:32;-1:-1:-1;;;;;1654:6:32;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:32;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:32;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:32;;1719:87;;;;-1:-1:-1;;;1719:87:32;;;;;;;:::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:32;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:32;;30858:2:70;2064:92:32;;;30840:21:70;30897:2;30877:18;;;30870:30;30936:34;30916:18;;;30909:62;-1:-1:-1;;;30987:18:70;;;30980:54;31051:19;;2064:92:32;30656:420:70;2064:92:32;-1:-1:-1;;;;;;;;;;;;2762:131:32;:::o;17828:986:64:-;2526:21:17;:19;:21::i;:::-;17912:26:64::1;:24;:26::i;:::-;17965:10;17948:14;::::0;18020:586:::1;-1:-1:-1::0;;;;;18044:26:64;::::1;;::::0;;;:18:::1;:26;::::0;;;;:33;18040:37;::::1;18020:586;;;-1:-1:-1::0;;;;;18247:26:64;::::1;;::::0;;;:18:::1;:26;::::0;;;;:29;;18274:1;;18247:29;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;18232:82:::1;::::0;-1:-1:-1;;;18232:82:64;;-1:-1:-1;;;;;18247:29:64;;::::1;::::0;18232:59:::1;::::0;:82:::1;::::0;18292:6;;18300:13;;18232:82:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18213:101:::0;-1:-1:-1;18332:21:64;;18328:252:::1;;-1:-1:-1::0;;;;;18373:29:64;::::1;;::::0;;;:21:::1;:29;::::0;;;;;;;18403:18:::1;:26:::0;;;;;:29;;18437:16;;18373:29;18403:26;18430:1;;18403:29;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;18403:29:64::1;18373:60:::0;;;::::1;::::0;;;;;;;;:80;;:60;;18403:29;18373:80:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;18328:252:64::1;18079:3:::0;::::1;::::0;::::1;:::i;:::-;;;;18020:586;;;-1:-1:-1::0;18616:11:64::1;::::0;:66:::1;::::0;-1:-1:-1;;;;;18616:11:64::1;18645:6:::0;18661:4:::1;18668:13:::0;18616:28:::1;:66::i;:::-;-1:-1:-1::0;;;;;18692:27:64;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:57:::0;;18736:13;;18692:27;:57:::1;::::0;18736:13;;18692:57:::1;:::i;:::-;::::0;;;-1:-1:-1;;18764:43:64::1;::::0;::::1;::::0;::::1;::::0;18785:6;;18793:13;;18764:43:::1;:::i;:::-;;;;;;;;17902:912;;2568:20:17::0;1808:1;3074:7;:22;2894:209;18957:1562:64;2526:21:17;:19;:21::i;:::-;19043:26:64::1;:24;:26::i;:::-;19096:10;19079:14;19153:26:::0;;;:18:::1;:26;::::0;;;;;;;19290:19:::1;::::0;19229::::1;:27:::0;;;;;;:40:::1;;::::0;19153:26;;19079:14;19290:19;19229:58:::1;::::0;19272:15;;19229:58:::1;:::i;:::-;:80;19225:140;;;19332:22;;-1:-1:-1::0;;;19332:22:64::1;;;;;;;;;;;19225:140;19374:11;::::0;:49:::1;::::0;-1:-1:-1;;;;;19374:11:64::1;19399:6:::0;19407:15;19374:24:::1;:49::i;:::-;19438:9;19433:951;19457:23:::0;;19453:27;::::1;19433:951;;;19501:16;19520;19537:1;19520:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;19520:19:64::1;::::0;-1:-1:-1;19557:60:64::1;19520:19:::0;-1:-1:-1;;;19557:26:64::1;:60::i;:::-;19553:804;;;19656:63;::::0;-1:-1:-1;;;19656:63:64;;-1:-1:-1;;;;;19656:38:64;::::1;::::0;::::1;::::0;:63:::1;::::0;19695:6;;19703:15;;19656:63:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19637:82;;19737:20;19760:21;:29;19782:6;-1:-1:-1::0;;;;;19760:29:64::1;-1:-1:-1::0;;;;;19760:29:64::1;;;;;;;;;;;;:50;19790:16;19807:1;19790:19;;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;19790:19:64::1;19760:50:::0;;;::::1;::::0;;;;;;;;;;-1:-1:-1;19832:31:64;;::::1;19828:259;;;19894:57;::::0;-1:-1:-1;;;19894:57:64;;::::1;::::0;::::1;31255:25:70::0;;;31296:18;;;31289:34;;;31228:18;;19894:57:64::1;31081:248:70::0;19828:259:64::1;-1:-1:-1::0;;;;;19998:29:64;::::1;;::::0;;;:21:::1;:29;::::0;;;;20028:19;;20052:16;;19998:29;20028:16;;20045:1;;20028:19;::::1;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;20028:19:64::1;19998:50:::0;;;::::1;::::0;;;;;;;;:70;;:50;;20028:19;19998:70:::1;::::0;;;::::1;:::i;:::-;::::0;;;-1:-1:-1;;19619:482:64::1;19553:804;;;20231:23:::0;;20214:16;;20231:27:::1;::::0;20257:1:::1;::::0;20231:27:::1;:::i;:::-;20214:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;20214:45:64::1;20192:16;20209:1;20192:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1::0;;;;;20192:67:64::1;;;;;-1:-1:-1::0;;;;;20192:67:64::1;;;;;;20277:16;:22;;;;;;;:::i;:::-;;::::0;;;::::1;::::0;;;;-1:-1:-1;;20277:22:64;;;;;-1:-1:-1;;;;;;20277:22:64::1;::::0;;;;;20317:25:::1;20333:8:::0;20317:15:::1;:25::i;:::-;-1:-1:-1::0;19482:3:64;::::1;::::0;::::1;:::i;:::-;;;;19433:951;;;-1:-1:-1::0;;;;;;20393:27:64;::::1;;::::0;;;:19:::1;:27;::::0;;;;:40:::1;;:59:::0;;20437:15;;20393:27;:59:::1;::::0;20437:15;;20393:59:::1;:::i;:::-;::::0;;;-1:-1:-1;;20467:45:64::1;::::0;::::1;::::0;::::1;::::0;20488:6;;20496:15;;20467:45:::1;:::i;:::-;;;;;;;;19033:1486;;;2568:20:17::0;1808:1;3074:7;:22;2894:209;29298:610:64;2526:21:17;:19;:21::i;:::-;29399:17:64::1;:15;:17::i;:::-;29431:13;::::0;;::::1;29426:68;;29467:16;;-1:-1:-1::0;;;29467:16:64::1;;;;;;;;;;;29426:68;29508:17;29517:7;29508:8;:17::i;:::-;29503:75;;29548:19;;-1:-1:-1::0;;;29548:19:64::1;;;;;;;;;;;29503:75;-1:-1:-1::0;;;;;29610:28:64;;::::1;29587:20;29610:28:::0;;;:19:::1;:28;::::0;;;;;;;;29587:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;::::1;::::0;;;;::::1;;::::0;::::1;;;;::::0;;;;29648:32:::1;29630:7:::0;29648:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;29697:28:64;::::1;;::::0;;;:19:::1;:28;::::0;;;;29690:35;;-1:-1:-1;;;;;;29690:35:64::1;::::0;;;;;::::1;::::0;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;;29690:35:64::1;::::0;;29735:12:::1;:17:::0;;29690:35;;29735:12;;:17:::1;::::0;29690:35;;29735:17:::1;:::i;:::-;::::0;;;-1:-1:-1;;29806:19:64::1;::::0;::::1;::::0;29763:11:::1;::::0;:63:::1;::::0;-1:-1:-1;;;;;29763:11:64;;::::1;::::0;29788:16;;29763:24:::1;:63::i;:::-;29841:60;29854:7;29863:16;29881:6;:19;;;29841:60;;;;;;;;:::i;:::-;;;;;;;;29389:519;2568:20:17::0;1808:1;3074:7;:22;2894:209;2085:101:14;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;22013:240:64:-;22086:17;:15;:17::i;:::-;22140:4;;:20;;-1:-1:-1;;;22140:20:64;;;;;960:25:70;;;22113:16:64;;-1:-1:-1;;;;;22140:4:64;;:12;;933:18:70;;22140:20:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;22140:20:64;;;;;;;;;;;;:::i;:::-;:29;;;22113:57;;22221:25;22237:8;22221:15;:25::i;20861:324::-;20931:17;:15;:17::i;:::-;20985:4;;:20;;-1:-1:-1;;;20985:20:64;;;;;960:25:70;;;20958:16:64;;-1:-1:-1;;;;;20985:4:64;;:12;;933:18:70;;20985:20:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;20985:20:64;;;;;;;;;;;;:::i;:::-;:29;;;;-1:-1:-1;21070:60:64;-1:-1:-1;;;;;21070:26:64;;-1:-1:-1;;;21070:26:64;:60::i;:::-;21066:113;;;21146:22;21159:8;21146:12;:22::i;633:544:63:-;680:7;763:12;:10;:12::i;:::-;-1:-1:-1;;;;;755:33:63;;792:1;755:38;751:420;;877:12;:10;:12::i;751:420::-;943:12;:10;:12::i;:::-;-1:-1:-1;;;;;924:38:63;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;924:40:63;;;;;;;;-1:-1:-1;;924:40:63;;;;;;;;;;;;:::i;:::-;;;920:241;;1134:12;:10;:12::i;920:241::-;1015:6;633:544;-1:-1:-1;633:544:63:o;3350:145:12:-;3436:4;3459:12;;;:6;:12;;;;;;;;-1:-1:-1;;;;;3459:29:12;;;;;;;;;;;;;;;3350:145::o;23403:1963:64:-;2526:21:17;:19;:21::i;:::-;23551:15:64::1;::::0;-1:-1:-1;;;;;23551:15:64::1;23500:31;23646:21;6116:7;23646:3;:21;:::i;:::-;23629:12;;23607:19;;:34;;;;:::i;:::-;23606:62;;;;:::i;:::-;23577:91:::0;-1:-1:-1;23678:24:64::1;23789:21;6116:7;23789:3;:21;:::i;:::-;23740:44;::::0;-1:-1:-1;;;23740:44:64;;-1:-1:-1;;;;;23740:29:64;::::1;::::0;::::1;::::0;:44:::1;::::0;23778:4:::1;::::0;23740:44:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;23718:19;;:66;;;;:::i;:::-;23717:94;;;;:::i;:::-;23678:133;;23826:20;23835:10;23826:8;:20::i;:::-;23821:1539;;23882:10;23862:31;::::0;;;:19:::1;:31;::::0;;;;:44:::1;::::0;::::1;:51:::0;;-1:-1:-1;;23862:51:64::1;23909:4;23862:51:::0;;::::1;::::0;;;23975:19:::1;::::0;23928:44;::::1;:66:::0;;;24146:146:::1;::::0;23882:10;24212:4:::1;::::0;24262:16;;24219:40:::1;::::0;24241:18;;24219:40:::1;:::i;:::-;:59;;;;:::i;:::-;24146:11;::::0;-1:-1:-1;;;;;24146:11:64::1;::::0;:146;;:28:::1;:146::i;:::-;24717:22:::0;;24713:178:::1;;24844:11;::::0;24819::::1;::::0;:57:::1;::::0;-1:-1:-1;;;;;24819:11:64;;::::1;::::0;24844::::1;::::0;;::::1;;24857:18:::0;24819:24:::1;:57::i;:::-;24974:20:::0;;24970:255:::1;;25128:82;25153:14;-1:-1:-1::0;;;;;25153:36:64::1;;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25128:11;::::0;-1:-1:-1;;;;;25128:11:64::1;::::0;25193:16;25128:24:::1;:82::i;:::-;25254:1;25238:12;;:17;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;25316:19:64::1;::::0;25275:74:::1;::::0;::::1;::::0;::::1;::::0;25304:10:::1;::::0;25316:19;25337:11;;25275:74:::1;:::i;23821:1539::-;23490:1876;;;2568:20:17::0;1808:1;3074:7;:22;2894:209;23262:135:64;-1:-1:-1;;;;;23349:28:64;23326:4;23349:28;;;:19;:28;;;;;:41;;;;;;23262:135::o;10654:124::-;1355:13:14;:11;:13::i;:::-;10737:23:64::1;:34:::0;;-1:-1:-1;;;;;;10737:34:64::1;-1:-1:-1::0;;;;;10737:34:64;;;::::1;::::0;;;::::1;::::0;;10654:124::o;22853:403::-;22925:18;;-1:-1:-1;;;;;22925:18:64;22911:10;:32;22907:89;;22966:19;;-1:-1:-1;;;22966:19:64;;;;;;;;;;;22907:89;23032:18;;23005:46;;-1:-1:-1;;;;;;;;;;;9003:27:64;-1:-1:-1;;;;;23032:18:64;23005:10;:46::i;:::-;23097:11;;23061:49;;-1:-1:-1;;;;;;;;;;;9003:27:64;-1:-1:-1;;;;;23097:11:64;23061;:49::i;:::-;23140:18;;;23120:11;:39;;-1:-1:-1;;;;;23140:18:64;;-1:-1:-1;;;;;;23120:39:64;;;;;;;;23169:25;;;;;;23209:40;;;;;;;:::i;:::-;;;;;;;;22853:403::o;7655:30::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;28169:643::-;2526:21:17;:19;:21::i;:::-;28235:26:64::1;:24;:26::i;:::-;28289:10;28309:32;28289:10:::0;28309:23:::1;:32::i;:::-;-1:-1:-1::0;;;;;28374:28:64;;::::1;28351:20;28374:28:::0;;;:19:::1;:28;::::0;;;;;;;28351:51;;::::1;::::0;::::1;::::0;;;;;;::::1;::::0;;;;::::1;::::0;;;;::::1;::::0;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;;::::0;;;;28419:28;;;-1:-1:-1;;;;;;28412:35:64;;::::1;::::0;;;;;;;-1:-1:-1;;28412:35:64;;::::1;::::0;;;28464:18:::1;:27:::0;;;;;28351:51;;28457:34:::1;::::0;28464:27;28457:34:::1;:::i;:::-;28619:12;::::0;:16;28615:64:::1;;28667:1;28651:12;;:17;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;28615:64:64::1;28722:19;::::0;::::1;::::0;28688:11:::1;::::0;:54:::1;::::0;-1:-1:-1;;;;;28688:11:64;;::::1;::::0;28713:7;;28688:24:::1;:54::i;:::-;28757:48;28776:7;28785:6;:19;;;28757:48;;;;;;;:::i;:::-;;;;;;;;28225:587;;2568:20:17::0;1808:1;3074:7;:22;2894:209;6198:54:64;6232:20;6116:7;6232:2;:20;:::i;:::-;6198:54;:::o;404:115:63:-;5374:13:16;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:16;;;;;;;:::i;:::-;480:32:63::1;499:12;480:18;:32::i;7570:27:64:-:0;;;;;;;:::i;5705:147:12:-;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;13478:1359:64:-:0;13771:16;;13888:4;;13895:23;;13636:14;;;;;;-1:-1:-1;;;;;13771:16:64;;;;-1:-1:-1;;;13850:28:64;13888:4;;;13895:23;13920:12;:10;:12::i;:::-;13806:144;;-1:-1:-1;;;;;34185:15:70;;;13806:144:64;;;34167:34:70;34237:15;;;34217:18;;;34210:43;34289:15;;;34269:18;;;34262:43;34102:18;;13806:144:64;;;-1:-1:-1;;13806:144:64;;;;;;;;;;;;;;-1:-1:-1;;;;;13806:144:64;-1:-1:-1;;;;;;13806:144:64;;;;;;;;;;13729:235;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;13684:290;;14005:53;14016:13;14031:6;14039:7;14048:9;14005:10;:53::i;:::-;14081:19;;;;13984:74;;-1:-1:-1;13984:74:64;-1:-1:-1;;;;;;14073:42:64;14069:453;;14169:5;14135:7;:24;;;:31;:39;14131:133;;;14217:7;:24;;;:31;14201:48;;-1:-1:-1;;;14201:48:64;;;;;;960:25:70;;948:2;933:18;;814:177;14131:133:64;14277:21;14341:6;14311:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;14301:48;;;;;;14277:72;;14368:9;14363:149;14387:7;:24;;;:31;14383:1;:35;14363:149;;;14443:54;14454:13;14469:7;:24;;;14494:1;14469:27;;;;;;;;:::i;:::-;;;;;;;14443:10;:54::i;:::-;14420:3;;;;:::i;:::-;;;;14363:149;;;;14117:405;14069:453;14603:141;14670:6;14640:37;;;;;;;;:::i;:::-;;;;;;;;;;;;;14630:48;;;;;;14726:6;14690:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;14680:54;;;;;;14603:13;:141::i;:::-;14754:76;14811:6;14775:43;;;;;;;;:::i;:::-;;;;;;;;;;;;;14765:54;;;;;;14821:8;14754:10;:76::i;:::-;13674:1163;13478:1359;;;;;;:::o;28030:133::-;28101:4;28124:32;-1:-1:-1;;;;;;;;;;;28148:7:64;28124;:32::i;14843:601::-;15034:14;;5942:42;-1:-1:-1;;;;;15114:20:64;;;15110:65;;-1:-1:-1;15158:6:64;15110:65;15224:4;;15271:9;;15292:19;;15195:9;;-1:-1:-1;;;;;;15224:4:64;;;;:33;;15271:9;15195;;15292:19;;15303:7;;15292:19;;;:::i;:::-;;;;;;;;;;;;;15313:5;15320:1;15323:9;15334:14;15224:134;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15215:143;;15374:63;15386:6;15394:8;15412:4;15419:6;15427:9;15374:63;;;;;;;;;;:::i;:::-;;;;;;;;15068:376;14843:601;;;;;;;:::o;26156:1574::-;26235:17;:15;:17::i;:::-;26310:19;;26279:7;:27;;;:50;;:92;;;-1:-1:-1;26358:13:64;;;26333:21;;;;:38;;26358:13;;26333:38;;;;26279:92;:192;;;;26453:16;26437:34;;;;;;:::i;:::-;;;;;;;;26407:7;:24;;;26391:42;;;;;;:80;;26279:192;26262:854;;;26496:20;:18;:20::i;:::-;26565:19;;26534:7;:27;;;:50;26530:138;;26604:49;26625:7;:27;;;26604:20;:49::i;:::-;26710:13;;;26685:21;;;;:38;;26710:13;;26685:38;;;26681:178;;26759:21;;;;26743:13;:37;;-1:-1:-1;;26743:37:64;;;;;;;;;26803:41;;445::70;;;26803::64;;433:2:70;418:18;26803:41:64;;;;;;;26681:178;26938:16;26922:34;;;;;;:::i;:::-;;;;;;;;26892:7;:24;;;26876:42;;;;;;:80;26872:234;;26995:24;;;;26976:16;;:43;;:16;:43;:::i;:::-;;27042:49;27066:7;:24;;;27042:49;;;;;;:::i;:::-;;;;;;;;26872:234;27188:13;27172:31;;;;;;:::i;:::-;;;;;;;;27145:7;:21;;;27129:39;;;;;;:74;27125:204;;27235:21;;;;27219:13;;:37;;:13;:37;:::i;:::-;;27275:43;27296:7;:21;;;27275:43;;;;;;:::i;:::-;;;;;;;;27125:204;27366:12;;27342:7;:20;;;:36;27338:104;;27394:37;27410:7;:20;;;27394:15;:37::i;:::-;27478:11;;27455:19;;;;-1:-1:-1;;;;;27455:34:64;;;27478:11;;;;;27455:34;27451:156;;27519:19;;;;27505:11;:33;;-1:-1:-1;;;;;;27505:33:64;;-1:-1:-1;;;;;27505:33:64;;;;;;27557:39;;;;;;;:::i;:::-;;;;;;;;27451:156;27620:19;;-1:-1:-1;;;;;27620:33:64;;27616:108;;27692:19;;27669:44;;:14;:44::i;2335:198:14:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:14;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:14;;40769:2:70;2415:73:14::1;::::0;::::1;40751:21:70::0;40808:2;40788:18;;;40781:30;40847:34;40827:18;;;40820:62;-1:-1:-1;;;40898:18:70;;;40891:36;40944:19;;2415:73:14::1;40567:402:70::0;21787:220:64;21851:17;:15;:17::i;:::-;-1:-1:-1;;;;;21882:28:64;;;;;;:17;:28;;;;;;;;21878:85;;;21926:26;21942:9;21926:15;:26::i;:::-;21977:23;21990:9;21977:23;;;;;;:::i;9203:167::-;9267:35;-1:-1:-1;;;;;;;;;;;9291:10:64;9267:7;:35::i;:::-;9262:102;;9342:10;9325:28;;-1:-1:-1;;;9325:28:64;;;;;;;;:::i;2601:287:17:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:17;;41176:2:70;2725:63:17;;;41158:21:70;41215:2;41195:18;;;41188:30;41254:33;41234:18;;;41227:61;41305:18;;2725:63:17;40974:355:70;2725:63:17;1851:1;2863:7;:18;2601:287::o;9534:157:64:-;9615:17;9624:7;9615:8;:17::i;:::-;9610:75;;9655:19;;-1:-1:-1;;;9655:19:64;;;;;;;;;;;10016:172;10120:9;-1:-1:-1;;;;;10109:20:64;:7;-1:-1:-1;;;;;10109:20:64;;10105:77;;10152:19;;-1:-1:-1;;;10152:19:64;;;;;;;;;;;2894:209:17;1808:1;3074:7;:22;2894:209::o;22259:197:64:-;-1:-1:-1;;;;;22372:28:64;;22403:5;22372:28;;;:17;:28;;;;;;;:36;;-1:-1:-1;;22372:36:64;;;22423:26;;;;;22390:9;;22423:26;:::i;1620:130:14:-;965:10:19;1683:7:14;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:14;;1675:68;;;;-1:-1:-1;;;1675:68:14;;41536:2:70;1675:68:14;;;41518:21:70;;;41555:18;;;41548:30;41614:34;41594:18;;;41587:62;41666:18;;1675:68:14;41334:356:70;21325:456:64;-1:-1:-1;;;;;21400:31:64;;;;;;:17;:31;;;;;;;;21396:85;;;21454:16;;-1:-1:-1;;;21454:16:64;;;;;;;;;;;21396:85;-1:-1:-1;;;;;21490:31:64;;;;;;:17;:31;;;;;;;;:38;;-1:-1:-1;;21490:38:64;21524:4;21490:38;;;21565:51;;-1:-1:-1;;;21565:51:64;;;;21490:31;;;21565:49;;:51;;;;;21490:31;;21565:51;;;;;;21490:31;21565:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;21538:78;-1:-1:-1;;;;;;21630:34:64;;;21626:107;;21680:42;;-1:-1:-1;;;21680:42:64;;-1:-1:-1;;;;;21680:28:64;;;;;:42;;21709:12;;21680:42;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21626:107;21747:27;21761:12;21747:27;;;;;;:::i;17389:433::-;-1:-1:-1;;;;;17523:27:64;;17486:34;17523:27;;;:18;:27;;;;;;17560:256;17584:23;;17580:27;;17560:256;;;17655:9;-1:-1:-1;;;;;17632:32:64;:16;17649:1;17632:19;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;17632:19:64;:32;17628:178;;17723:23;;17706:16;;17723:27;;17749:1;;17723:27;:::i;:::-;17706:45;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17706:45:64;17684:16;17701:1;17684:19;;;;;;;;:::i;:::-;;;;;;;;;:67;;;;;-1:-1:-1;;;;;17684:67:64;;;;;-1:-1:-1;;;;;17684:67:64;;;;;;17769:16;:22;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;17769:22:64;;;;;-1:-1:-1;;;;;;17769:22:64;;;;;;17628:178;17609:3;;;;:::i;:::-;;;;17560:256;;;;17476:346;17389:433;;:::o;3789:103:12:-;3855:30;3866:4;965:10:19;3855::12;:30::i;7938:233::-;8021:22;8029:4;8035:7;8021;:22::i;:::-;8016:149;;8059:12;;;;:6;:12;;;;;;;;-1:-1:-1;;;;;8059:29:12;;;;;;;;;:36;;-1:-1:-1;;8059:36:12;8091:4;8059:36;;;8141:12;965:10:19;;886:96;8141:12:12;-1:-1:-1;;;;;8114:40:12;8132:7;-1:-1:-1;;;;;8114:40:12;8126:4;8114:40;;;;;;;;;;7938:233;;:::o;9864:146:64:-;9922:12;;:16;9918:86;;9980:12;;9961:32;;-1:-1:-1;;;9961:32:64;;;;;;960:25:70;;948:2;933:18;;814:177;1423:320:18;-1:-1:-1;;;;;1713:19:18;;:23;;;1423:320::o;1889:111:17:-;5374:13:16;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:16;;;;;;;:::i;:::-;1959:34:17::1;:32;:34::i;2838:65:12:-:0;5374:13:16;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:16;;;;;;;:::i;7523:247:12:-;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:12;;7606:46;;7669:4;;7711:52;;7662:12;7711:52;7596:174;7523:247;;:::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:12;;;;;;;;;;:37;;-1:-1:-1;;8463:37:12;;;8519:40;965:10:19;;8463:12:12;;8519:40;;8495:5;8519:40;8342:234;;:::o;1175:140:28:-;-1:-1:-1;;;;;;;;;;;1254:54:28;-1:-1:-1;;;;;1254:54:28;;1175:140::o;1183:169:63:-;1267:10;1256:7;:5;:7::i;:::-;-1:-1:-1;;;;;1256:21:63;;1252:94;;1315:10;1327:7;:5;:7::i;:::-;1300:35;;-1:-1:-1;;;1300:35:63;;;;;;;;;:::i;2494:922:28:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:28;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:28;;;;;;;;-1:-1:-1;;3046:52:28;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:28;;42175:2:70;3262:56:28;;;42157:21:70;42214:2;42194:18;;;42187:30;42253:34;42233:18;;;42226:62;-1:-1:-1;;;42304:18:70;;;42297:44;42358:19;;3262:56:28;41973:410:70;3042:291:28;-1:-1:-1;;;;;;;;;;;3148:28:28;;3140:82;;;;-1:-1:-1;;;3140:82:28;;42590:2:70;3140:82:28;;;42572:21:70;42629:2;42609:18;;;42602:30;42668:34;42648:18;;;42641:62;-1:-1:-1;;;42719:18:70;;;42712:39;42768:19;;3140:82:28;42388:405:70;3140:82:28;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;9376:152:64:-;9449:20;9458:10;9449:8;:20::i;:::-;9444:78;;9492:19;;-1:-1:-1;;;9492:19:64;;;;;;;;;;;1355:203:37;1455:96;1475:5;1505:27;;;1534:4;1540:2;1544:5;1482:68;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;1482:68:37;;;;;;;;;;;;;;-1:-1:-1;;;;;1482:68:37;-1:-1:-1;;;;;;1482:68:37;;;;;;;;;;1455:19;:96::i;941:175::-;1023:86;1043:5;1073:23;;;1098:2;1102:5;1050:58;;;;;;;;;:::i;1349:282:43:-;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:43:o;28818:474:64:-;-1:-1:-1;;;;;28931:27:64;;28895:33;28931:27;;;:18;:27;;;;;;;;28895:63;;;;;;;;;;;;;;;;;;;28931:27;;28895:63;;;28931:27;28895:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;28895:63:64;;;;;;;;;;;;;;;;;;;;;;;29039:9;29034:252;29058:16;:23;29054:1;:27;29034:252;;;29229:16;29246:1;29229:19;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;29214:52:64;;29267:7;29214:61;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29083:3;;;;;:::i;:::-;;;;29034:252;;2687:187:14;2779:6;;;-1:-1:-1;;;;;2795:17:14;;;-1:-1:-1;;;;;;2795:17:14;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;4173:501:12:-;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:12;;;;;;;;;;-1:-1:-1;;;4299:358:12;;;;;;;:::i;2006:109:17:-;5374:13:16;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:16;;;;;;;:::i;1406:259:28:-;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:28;;43817:2:70;1479:95:28;;;43799:21:70;43856:2;43836:18;;;43829:30;43895:34;43875:18;;;43868:62;-1:-1:-1;;;43946:18:70;;;43939:43;43999:19;;1479:95:28;43615:409:70;1479:95:28;-1:-1:-1;;;;;;;;;;;1584:74:28;;-1:-1:-1;;;;;;1584:74:28;-1:-1:-1;;;;;1584:74:28;;;;;;;;;;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;5173:642:37:-;5592:23;5618:69;5646:4;5618:69;;;;;;;;;;;;;;;;;5626:5;-1:-1:-1;;;;;5618:27:37;;;:69;;;;;:::i;:::-;5592:95;;5705:10;:17;5726:1;5705:22;:56;;;;5742:10;5731:30;;;;;;;;;;;;:::i;:::-;5697:111;;;;-1:-1:-1;;;5697:111:37;;44481:2:70;5697:111:37;;;44463:21:70;44520:2;44500:18;;;44493:30;44559:34;44539:18;;;44532:62;-1:-1:-1;;;44610:18:70;;;44603:40;44660:19;;5697:111:37;44279:406:70;704:427:43;768:4;975:68;1008:7;-1:-1:-1;;;975:32:43;:68::i;:::-;:149;;;;-1:-1:-1;1060:64:43;1093:7;-1:-1:-1;;;;;;1060:32:43;:64::i;:::-;1059:65;956:168;704:427;-1:-1:-1;;704:427:43:o;4421:647::-;4592:71;;;-1:-1:-1;;;;;;44852:33:70;;4592:71:43;;;;44834:52:70;;;;4592:71:43;;;;;;;;;;44807:18:70;;;;4592:71:43;;;;;;;;;-1:-1:-1;;;;;4592:71:43;-1:-1:-1;;;4592:71:43;;;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:43:o;2473:149:20:-;2531:13;2563:52;-1:-1:-1;;;;;2575:22:20;;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:20;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;2006:25:20;;1984:47;;-1:-1:-1;;;2041:6:20;2048:1;2041:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2041:15:20;;;;;;;;;-1:-1:-1;;;2066:6:20;2073:1;2066:9;;;;;;;;:::i;:::-;;;;:15;-1:-1:-1;;;;;2066:15:20;;;;;;;;-1:-1:-1;2096:9:20;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:20;2179:3;2171:11;2162:21;;;;;;;:::i;:::-;;;;2150:6;2157:1;2150:9;;;;;;;;:::i;:::-;;;;:33;-1:-1:-1;;;;;2150:33:20;;;;;;;;-1:-1:-1;2207:1:20;2197:11;;;;;2131:3;;;:::i;:::-;;;2091:128;;;-1:-1:-1;2236:10:20;;2228:55;;;;-1:-1:-1;;;2228:55:20;;45240:2:70;2228:55:20;;;45222:21:70;;;45259:18;;;45252:30;45318:34;45298:18;;;45291:62;45370:18;;2228:55:20;45038:356:70;1771:152:28;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:28;;;;;;;;1771:152;:::o;6674:198:38:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;:20;:77::i;4108:223::-;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:38:o;7058:325::-;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:38;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:38:o;5165:446::-;5330:12;5387:5;5362:21;:30;;5354:81;;;;-1:-1:-1;;;5354:81:38;;45893:2:70;5354:81:38;;;45875:21:70;45932:2;45912:18;;;45905:30;45971:34;45951:18;;;45944:62;-1:-1:-1;;;46022:18:70;;;46015:36;46068:19;;5354:81:38;45691:402:70;5354:81:38;5446:12;5460:23;5487:6;-1:-1:-1;;;;;5487:11:38;5506:5;5513:4;5487:31;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5445:73;;;;5535:69;5562:6;5570:7;5579:10;5591:12;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:38;;46300:2:70;8113:60:38;;;46282:21:70;46339:2;46319:18;;;46312:30;46378:31;46358:18;;;46351:59;46427:18;;8113:60:38;46098:353:70;8113:60:38;-1:-1:-1;8208:10:38;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:38;;;;;;;;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;14:286:70;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:70;;209:43;;199:71;;266:1;263;256:12;497:104;-1:-1:-1;;;;;563:31:70;551:44;;497:104::o;606:203::-;-1:-1:-1;;;;;770:32:70;;;;752:51;;740:2;725:18;;606:203::o;1178:180::-;1237:6;1290:2;1278:9;1269:7;1265:23;1261:32;1258:52;;;1306:1;1303;1296:12;1258:52;-1:-1:-1;1329:23:70;;1178:180;-1:-1:-1;1178:180:70:o;1363:131::-;-1:-1:-1;;;;;1438:31:70;;1428:42;;1418:70;;1484:1;1481;1474:12;1499:134;1567:20;;1596:31;1567:20;1596:31;:::i;1638:388::-;1706:6;1714;1767:2;1755:9;1746:7;1742:23;1738:32;1735:52;;;1783:1;1780;1773:12;1735:52;1822:9;1809:23;1841:31;1866:5;1841:31;:::i;:::-;1891:5;-1:-1:-1;1948:2:70;1933:18;;1920:32;1961:33;1920:32;1961:33;:::i;:::-;2013:7;2003:17;;;1638:388;;;;;:::o;2031:247::-;2090:6;2143:2;2131:9;2122:7;2118:23;2114:32;2111:52;;;2159:1;2156;2149:12;2111:52;2198:9;2185:23;2217:31;2242:5;2217:31;:::i;2468:315::-;2536:6;2544;2597:2;2585:9;2576:7;2572:23;2568:32;2565:52;;;2613:1;2610;2603:12;2565:52;2652:9;2639:23;2671:31;2696:5;2671:31;:::i;:::-;2721:5;2773:2;2758:18;;;;2745:32;;-1:-1:-1;;;2468:315:70:o;2788:::-;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:70;;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:70;;3674:22;;;3635:62;3632:88;;;3700:18;;:::i;3762:253::-;3834:2;3828:9;3876:4;3864:17;;-1:-1:-1;;;;;3896:34:70;;3932:22;;;3893:62;3890:88;;;3958:18;;:::i;4020:255::-;4092:2;4086:9;4134:6;4122:19;;-1:-1:-1;;;;;4156:34:70;;4192:22;;;4153:62;4150:88;;;4218:18;;:::i;4280:253::-;4352:2;4346:9;4394:4;4382:17;;-1:-1:-1;;;;;4414:34:70;;4450:22;;;4411:62;4408:88;;;4476:18;;:::i;4538:275::-;4609:2;4603:9;4674:2;4655:13;;-1:-1:-1;;4651:27:70;4639:40;;-1:-1:-1;;;;;4694:34:70;;4730:22;;;4691:62;4688:88;;;4756:18;;:::i;:::-;4792:2;4785:22;4538:275;;-1:-1:-1;4538:275:70:o;4818:187::-;4867:4;-1:-1:-1;;;;;4889:30:70;;4886:56;;;4922:18;;:::i;:::-;-1:-1:-1;4988:2:70;4967:15;-1:-1:-1;;4963:29:70;4994:4;4959:40;;4818:187::o;5010:338::-;5075:5;5104:53;5120:36;5149:6;5120:36;:::i;:::-;5104:53;:::i;:::-;5095:62;;5180:6;5173:5;5166:21;5220:3;5211:6;5206:3;5202:16;5199:25;5196:45;;;5237:1;5234;5227:12;5196:45;5286:6;5281:3;5274:4;5267:5;5263:16;5250:43;5340:1;5333:4;5324:6;5317:5;5313:18;5309:29;5302:40;5010:338;;;;;:::o;5353:222::-;5396:5;5449:3;5442:4;5434:6;5430:17;5426:27;5416:55;;5467:1;5464;5457:12;5416:55;5489:80;5565:3;5556:6;5543:20;5536:4;5528:6;5524:17;5489:80;:::i;5580:411::-;5635:5;5683:4;5671:9;5666:3;5662:19;5658:30;5655:50;;;5701:1;5698;5691:12;5655:50;5723:22;;:::i;:::-;5768:23;;5754:38;;5714:31;-1:-1:-1;5843:2:70;5828:18;;5815:32;-1:-1:-1;;;;;5859:30:70;;5856:50;;;5902:1;5899;5892:12;5856:50;5938:46;5980:3;5971:6;5960:9;5956:22;5938:46;:::i;:::-;5933:2;5926:5;5922:14;5915:70;;5580:411;;;;:::o;5996:118::-;6082:5;6075:13;6068:21;6061:5;6058:32;6048:60;;6104:1;6101;6094:12;6119:128;6184:20;;6213:28;6184:20;6213:28;:::i;6252:1871::-;6394:6;6402;6410;6418;6471:3;6459:9;6450:7;6446:23;6442:33;6439:53;;;6488:1;6485;6478:12;6439:53;6515:23;;-1:-1:-1;;;;;6587:14:70;;;6584:34;;;6614:1;6611;6604:12;6584:34;6637:22;;;;6693:6;6675:16;;;6671:29;6668:49;;;6713:1;6710;6703:12;6668:49;6739:22;;:::i;:::-;6784;6803:2;6784:22;:::i;:::-;6777:5;6770:37;6839:31;6866:2;6862;6858:11;6839:31;:::i;:::-;6834:2;6827:5;6823:14;6816:55;6924:2;6920;6916:11;6903:25;6898:2;6891:5;6887:14;6880:49;6982:2;6978;6974:11;6961:25;6956:2;6949:5;6945:14;6938:49;7041:3;7037:2;7033:12;7020:26;7014:3;7007:5;7003:15;6996:51;7080:32;7107:3;7103:2;7099:12;7080:32;:::i;:::-;7074:3;7067:5;7063:15;7056:57;7146:32;7173:3;7169:2;7165:12;7146:32;:::i;:::-;7140:3;7133:5;7129:15;7122:57;7225:3;7221:2;7217:12;7204:26;7255:2;7245:8;7242:16;7239:36;;;7271:1;7268;7261:12;7239:36;7308:54;7354:7;7343:8;7339:2;7335:17;7308:54;:::i;:::-;7302:3;7295:5;7291:15;7284:79;;7382:3;7417:31;7444:2;7440;7436:11;7417:31;:::i;:::-;7401:14;;;7394:55;7468:3;7509:11;;;7496:25;7533:16;;;7530:36;;;7562:1;7559;7552:12;7530:36;7598:45;7635:7;7624:8;7620:2;7616:17;7598:45;:::i;:::-;7593:2;7586:5;7582:14;7575:69;;;7663:3;7698:28;7722:2;7718;7714:11;7698:28;:::i;:::-;7682:14;;;7675:52;7746:3;7787:11;;;7774:25;7811:16;;;7808:36;;;7840:1;7837;7830:12;7808:36;7876:45;7913:7;7902:8;7898:2;7894:17;7876:45;:::i;:::-;7871:2;7864:5;7860:14;7853:69;;;7941:5;7931:15;;;;;7965:38;7999:2;7988:9;7984:18;7965:38;:::i;:::-;7955:48;;8022:38;8056:2;8045:9;8041:18;8022:38;:::i;:::-;8012:48;;8079:38;8113:2;8102:9;8098:18;8079:38;:::i;:::-;8069:48;;6252:1871;;;;;;;:::o;8388:585::-;8465:6;8473;8526:2;8514:9;8505:7;8501:23;8497:32;8494:52;;;8542:1;8539;8532:12;8494:52;8581:9;8568:23;8600:31;8625:5;8600:31;:::i;:::-;8650:5;-1:-1:-1;8706:2:70;8691:18;;8678:32;-1:-1:-1;;;;;8722:30:70;;8719:50;;;8765:1;8762;8755:12;8719:50;8788:22;;8841:4;8833:13;;8829:27;-1:-1:-1;8819:55:70;;8870:1;8867;8860:12;8819:55;8893:74;8959:7;8954:2;8941:16;8936:2;8932;8928:11;8893:74;:::i;:::-;8883:84;;;8388:585;;;;;:::o;10010:322::-;10079:6;10132:2;10120:9;10111:7;10107:23;10103:32;10100:52;;;10148:1;10145;10138:12;10100:52;10175:23;;-1:-1:-1;;;;;10210:30:70;;10207:50;;;10253:1;10250;10243:12;10207:50;10276;10318:7;10309:6;10298:9;10294:22;10276:50;:::i;10337:250::-;10422:1;10432:113;10446:6;10443:1;10440:13;10432:113;;;10522:11;;;10516:18;10503:11;;;10496:39;10468:2;10461:10;10432:113;;;-1:-1:-1;;10579:1:70;10561:16;;10554:27;10337:250::o;10592:271::-;10634:3;10672:5;10666:12;10699:6;10694:3;10687:19;10715:76;10784:6;10777:4;10772:3;10768:14;10761:4;10754:5;10750:16;10715:76;:::i;:::-;10845:2;10824:15;-1:-1:-1;;10820:29:70;10811:39;;;;10852:4;10807:50;;10592:271;-1:-1:-1;;10592:271:70:o;10868:220::-;11017:2;11006:9;10999:21;10980:4;11037:45;11078:2;11067:9;11063:18;11055:6;11037:45;:::i;11540:605::-;11595:5;11643:4;11631:9;11626:3;11622:19;11618:30;11615:50;;;11661:1;11658;11651:12;11615:50;11694:2;11688:9;11736:4;11724:17;;-1:-1:-1;;;;;11756:34:70;;11792:22;;;11753:62;11750:88;;;11818:18;;:::i;:::-;11858:10;11854:2;11847:22;;11887:6;11878:15;;11930:9;11917:23;11909:6;11902:39;12002:2;11991:9;11987:18;11974:32;11969:2;11961:6;11957:15;11950:57;12068:2;12057:9;12053:18;12040:32;12035:2;12027:6;12023:15;12016:57;12134:2;12123:9;12119:18;12106:32;12101:2;12093:6;12089:15;12082:57;;11540:605;;;;:::o;12150:153::-;12228:20;;12277:1;12267:12;;12257:40;;12293:1;12290;12283:12;12308:110;12392:1;12385:5;12382:12;12372:40;;12408:1;12405;12398:12;12423:152;12500:20;;12529:40;12500:20;12529:40;:::i;12580:416::-;12644:5;12692:4;12680:9;12675:3;12671:19;12667:30;12664:50;;;12710:1;12707;12700:12;12664:50;12743:2;12737:9;12785:4;12773:17;;-1:-1:-1;;;;;12805:34:70;;12841:22;;;12802:62;12799:88;;;12867:18;;:::i;:::-;12903:2;12896:22;12966:23;;12951:39;;-1:-1:-1;12936:6:70;12580:416;-1:-1:-1;12580:416:70:o;13001:701::-;13064:5;13112:4;13100:9;13095:3;13091:19;13087:30;13084:50;;;13130:1;13127;13120:12;13084:50;13152:22;;:::i;:::-;13143:31;;13211:9;13198:23;13230:33;13255:7;13230:33;:::i;:::-;13272:22;;13346:2;13331:18;;13318:32;13359:33;13318:32;13359:33;:::i;:::-;13424:7;13419:2;13412:5;13408:14;13401:31;;13492:2;13481:9;13477:18;13464:32;13459:2;13452:5;13448:14;13441:56;13557:2;13546:9;13542:18;13529:32;13524:2;13517:5;13513:14;13506:56;13623:3;13612:9;13608:19;13595:33;13589:3;13582:5;13578:15;13571:58;13690:3;13679:9;13675:19;13662:33;13656:3;13649:5;13645:15;13638:58;13001:701;;;;:::o;13707:183::-;13767:4;-1:-1:-1;;;;;13789:30:70;;13786:56;;;13822:18;;:::i;:::-;-1:-1:-1;13867:1:70;13863:14;13879:4;13859:25;;13707:183::o;13895:737::-;13949:5;14002:3;13995:4;13987:6;13983:17;13979:27;13969:55;;14020:1;14017;14010:12;13969:55;14056:6;14043:20;14082:4;14106:60;14122:43;14162:2;14122:43;:::i;14106:60::-;14200:15;;;14286:1;14282:10;;;;14270:23;;14266:32;;;14231:12;;;;14310:15;;;14307:35;;;14338:1;14335;14328:12;14307:35;14374:2;14366:6;14362:15;14386:217;14402:6;14397:3;14394:15;14386:217;;;14482:3;14469:17;14499:31;14524:5;14499:31;:::i;:::-;14543:18;;14581:12;;;;14419;;14386:217;;;-1:-1:-1;14621:5:70;13895:737;-1:-1:-1;;;;;;13895:737:70:o;14637:1038::-;14712:5;14760:6;14748:9;14743:3;14739:19;14735:32;14732:52;;;14780:1;14777;14770:12;14732:52;14802:22;;:::i;:::-;14793:31;;14847:42;14885:3;14874:9;14847:42;:::i;:::-;14840:5;14833:57;14924:49;14968:3;14957:9;14953:19;14924:49;:::i;:::-;14917:4;14910:5;14906:16;14899:75;15008:48;15051:3;15040:9;15036:19;15008:48;:::i;:::-;15001:4;14994:5;14990:16;14983:74;15091:61;15148:3;15142;15131:9;15127:19;15091:61;:::i;:::-;15084:4;15077:5;15073:16;15066:87;15186:60;15242:3;15236;15225:9;15221:19;15186:60;:::i;:::-;15180:3;15173:5;15169:15;15162:85;15280:39;15314:3;15303:9;15299:19;15280:39;:::i;:::-;15274:3;15267:5;15263:15;15256:64;15353:39;15387:3;15376:9;15372:19;15353:39;:::i;:::-;15347:3;15336:15;;15329:64;15454:3;15439:19;;15426:33;15420:3;15409:15;;15402:58;15511:3;15496:19;;15483:33;-1:-1:-1;;;;;15528:30:70;;15525:50;;;15571:1;15568;15561:12;15525:50;15611:57;15664:3;15655:6;15644:9;15640:22;15611:57;:::i;:::-;15602:6;15595:5;15591:18;15584:85;;14637:1038;;;;:::o;15680:770::-;15831:6;15839;15847;15900:2;15888:9;15879:7;15875:23;15871:32;15868:52;;;15916:1;15913;15906:12;15868:52;15955:9;15942:23;15974:31;15999:5;15974:31;:::i;:::-;16024:5;-1:-1:-1;16080:2:70;16065:18;;16052:32;-1:-1:-1;;;;;16133:14:70;;;16130:34;;;16160:1;16157;16150:12;16130:34;16183:79;16254:7;16245:6;16234:9;16230:22;16183:79;:::i;:::-;16173:89;;16315:2;16304:9;16300:18;16287:32;16271:48;;16344:2;16334:8;16331:16;16328:36;;;16360:1;16357;16350:12;16328:36;;16383:61;16436:7;16425:8;16414:9;16410:24;16383:61;:::i;:::-;16373:71;;;15680:770;;;;;:::o;16734:912::-;16894:6;16902;16910;16918;16971:3;16959:9;16950:7;16946:23;16942:33;16939:53;;;16988:1;16985;16978:12;16939:53;17027:9;17014:23;17046:31;17071:5;17046:31;:::i;:::-;17096:5;-1:-1:-1;17153:2:70;17138:18;;17125:32;17166:33;17125:32;17166:33;:::i;:::-;17218:7;-1:-1:-1;17276:2:70;17261:18;;17248:32;-1:-1:-1;;;;;17329:14:70;;;17326:34;;;17356:1;17353;17346:12;17326:34;17379:79;17450:7;17441:6;17430:9;17426:22;17379:79;:::i;:::-;17369:89;;17511:2;17500:9;17496:18;17483:32;17467:48;;17540:2;17530:8;17527:16;17524:36;;;17556:1;17553;17546:12;17524:36;;17579:61;17632:7;17621:8;17610:9;17606:24;17579:61;:::i;:::-;17569:71;;;16734:912;;;;;;;:::o;17651:1102::-;17744:6;17797:2;17785:9;17776:7;17772:23;17768:32;17765:52;;;17813:1;17810;17803:12;17765:52;17840:23;;-1:-1:-1;;;;;17912:14:70;;;17909:34;;;17939:1;17936;17929:12;17909:34;17962:22;;;;18018:4;18000:16;;;17996:27;17993:47;;;18036:1;18033;18026:12;17993:47;18062:22;;:::i;:::-;18107;18126:2;18107:22;:::i;:::-;18100:5;18093:37;18162:31;18189:2;18185;18181:11;18162:31;:::i;:::-;18157:2;18150:5;18146:14;18139:55;18247:2;18243;18239:11;18226:25;18221:2;18214:5;18210:14;18203:49;18298:2;18294;18290:11;18277:25;18327:2;18317:8;18314:16;18311:36;;;18343:1;18340;18333:12;18311:36;18379:45;18416:7;18405:8;18401:2;18397:17;18379:45;:::i;:::-;18374:2;18367:5;18363:14;18356:69;;18479:3;18475:2;18471:12;18458:26;18452:3;18445:5;18441:15;18434:51;18518:29;18542:3;18538:2;18534:12;18518:29;:::i;:::-;18512:3;18505:5;18501:15;18494:54;18594:3;18590:2;18586:12;18573:26;18624:2;18614:8;18611:16;18608:36;;;18640:1;18637;18630:12;18608:36;18677:45;18714:7;18703:8;18699:2;18695:17;18677:45;:::i;:::-;18671:3;18660:15;;18653:70;-1:-1:-1;18664:5:70;17651:1102;-1:-1:-1;;;;;17651:1102:70:o;18758:127::-;18819:10;18814:3;18810:20;18807:1;18800:31;18850:4;18847:1;18840:15;18874:4;18871:1;18864:15;18890:168;18963:9;;;18994;;19011:15;;;19005:22;;18991:37;18981:71;;19032:18;;:::i;19063:127::-;19124:10;19119:3;19115:20;19112:1;19105:31;19155:4;19152:1;19145:15;19179:4;19176:1;19169:15;19195:277;19282:6;19335:2;19323:9;19314:7;19310:23;19306:32;19303:52;;;19351:1;19348;19341:12;19303:52;19383:9;19377:16;19402:40;19436:5;19402:40;:::i;19477:282::-;-1:-1:-1;;;;;19677:32:70;;;;19659:51;;19741:2;19726:18;;19719:34;19647:2;19632:18;;19477:282::o;19764:184::-;19834:6;19887:2;19875:9;19866:7;19862:23;19858:32;19855:52;;;19903:1;19900;19893:12;19855:52;-1:-1:-1;19926:16:70;;19764:184;-1:-1:-1;19764:184:70:o;20232:375::-;-1:-1:-1;;;;;20490:15:70;;;20472:34;;20542:15;;;;20537:2;20522:18;;20515:43;20589:2;20574:18;;20567:34;;;;20422:2;20407:18;;20232:375::o;20612:304::-;-1:-1:-1;;;;;20842:15:70;;;20824:34;;20894:15;;20889:2;20874:18;;20867:43;20774:2;20759:18;;20612:304::o;20921:217::-;20961:1;20987;20977:132;;21031:10;21026:3;21022:20;21019:1;21012:31;21066:4;21063:1;21056:15;21094:4;21091:1;21084:15;20977:132;-1:-1:-1;21123:9:70;;20921:217::o;21143:125::-;21208:9;;;21229:10;;;21226:36;;;21242:18;;:::i;21688:380::-;21767:1;21763:12;;;;21810;;;21831:61;;21885:4;21877:6;21873:17;21863:27;;21831:61;21938:2;21930:6;21927:14;21907:18;21904:38;21901:161;;21984:10;21979:3;21975:20;21972:1;21965:31;22019:4;22016:1;22009:15;22047:4;22044:1;22037:15;21901:161;;21688:380;;;:::o;22199:545::-;22301:2;22296:3;22293:11;22290:448;;;22337:1;22362:5;22358:2;22351:17;22407:4;22403:2;22393:19;22477:2;22465:10;22461:19;22458:1;22454:27;22448:4;22444:38;22513:4;22501:10;22498:20;22495:47;;;-1:-1:-1;22536:4:70;22495:47;22591:2;22586:3;22582:12;22579:1;22575:20;22569:4;22565:31;22555:41;;22646:82;22664:2;22657:5;22654:13;22646:82;;;22709:17;;;22690:1;22679:13;22646:82;;;22650:3;;;22199:545;;;:::o;22920:1352::-;23040:10;;-1:-1:-1;;;;;23062:30:70;;23059:56;;;23095:18;;:::i;:::-;23124:97;23214:6;23174:38;23206:4;23200:11;23174:38;:::i;:::-;23168:4;23124:97;:::i;:::-;23276:4;;23340:2;23329:14;;23357:1;23352:663;;;;24059:1;24076:6;24073:89;;;-1:-1:-1;24128:19:70;;;24122:26;24073:89;-1:-1:-1;;22877:1:70;22873:11;;;22869:24;22865:29;22855:40;22901:1;22897:11;;;22852:57;24175:81;;23322:944;;23352:663;22146:1;22139:14;;;22183:4;22170:18;;-1:-1:-1;;23388:20:70;;;23506:236;23520:7;23517:1;23514:14;23506:236;;;23609:19;;;23603:26;23588:42;;23701:27;;;;23669:1;23657:14;;;;23536:19;;23506:236;;;23510:3;23770:6;23761:7;23758:19;23755:201;;;23831:19;;;23825:26;-1:-1:-1;;23914:1:70;23910:14;;;23926:3;23906:24;23902:37;23898:42;23883:58;23868:74;;23755:201;-1:-1:-1;;;;;24002:1:70;23986:14;;;23982:22;23969:36;;-1:-1:-1;22920:1352:70:o;24277:251::-;24347:6;24400:2;24388:9;24379:7;24375:23;24371:32;24368:52;;;24416:1;24413;24406:12;24368:52;24448:9;24442:16;24467:31;24492:5;24467:31;:::i;24533:127::-;24594:10;24589:3;24585:20;24582:1;24575:31;24625:4;24622:1;24615:15;24649:4;24646:1;24639:15;24665:956;24760:6;24791:2;24834;24822:9;24813:7;24809:23;24805:32;24802:52;;;24850:1;24847;24840:12;24802:52;24877:16;;-1:-1:-1;;;;;24905:30:70;;24902:50;;;24948:1;24945;24938:12;24902:50;24971:22;;25024:4;25016:13;;25012:27;-1:-1:-1;25002:55:70;;25053:1;25050;25043:12;25002:55;25082:2;25076:9;25105:60;25121:43;25161:2;25121:43;:::i;25105:60::-;25199:15;;;25281:1;25277:10;;;;25269:19;;25265:28;;;25230:12;;;;25305:19;;;25302:39;;;25337:1;25334;25327:12;25302:39;25361:11;;;;25381:210;25397:6;25392:3;25389:15;25381:210;;;25470:3;25464:10;25487:31;25512:5;25487:31;:::i;:::-;25531:18;;25414:12;;;;25569;;;;25381:210;;25626:135;25665:3;25686:17;;;25683:43;;25706:18;;:::i;:::-;-1:-1:-1;25753:1:70;25742:13;;25626:135::o;25766:128::-;25833:9;;;25854:11;;;25851:37;;;25868:18;;:::i;25899:772::-;25949:3;25990:5;25984:12;26019:36;26045:9;26019:36;:::i;:::-;26064:19;;;26102:4;26125:1;26142:18;;;26169:146;;;;26329:1;26324:341;;;;26135:530;;26169:146;-1:-1:-1;;26211:24:70;;26197:12;;;26190:46;26283:14;;26276:22;26273:1;26269:30;26260:40;;26256:49;;;-1:-1:-1;26169:146:70;;26324:341;26355:5;26352:1;26345:16;26402:2;26399:1;26389:16;26427:1;26441:174;26455:6;26452:1;26449:13;26441:174;;;26542:14;;26524:11;;;26520:20;;26513:44;26585:16;;;;26470:10;;26441:174;;;26639:11;;26635:20;;;-1:-1:-1;;26135:530:70;;;;;;25899:772;;;;:::o;26676:252::-;26763:5;26757:12;26752:3;26745:25;26727:3;26816:4;26809:5;26805:16;26799:23;26854:4;26847;26842:3;26838:14;26831:28;26875:47;26916:4;26911:3;26907:14;26893:12;26875:47;:::i;26933:461::-;26986:3;27024:5;27018:12;27051:6;27046:3;27039:19;27077:4;27106:2;27101:3;27097:12;27090:19;;27143:2;27136:5;27132:14;27164:1;27174:195;27188:6;27185:1;27182:13;27174:195;;;27253:13;;-1:-1:-1;;;;;27249:39:70;27237:52;;27309:12;;;;27344:15;;;;27285:1;27203:9;27174:195;;;-1:-1:-1;27385:3:70;;26933:461;-1:-1:-1;;;;;26933:461:70:o;27399:802::-;27757:6;27746:9;27739:25;27800:3;27795:2;27784:9;27780:18;27773:31;27720:4;27827:54;27876:3;27865:9;27861:19;27853:6;27827:54;:::i;:::-;27929:9;27921:6;27917:22;27912:2;27901:9;27897:18;27890:50;27963:42;27998:6;27990;27963:42;:::i;:::-;-1:-1:-1;;;;;28041:32:70;;28036:2;28021:18;;28014:60;28111:22;;;28105:3;28090:19;;28083:51;27949:56;-1:-1:-1;28151:44:70;27949:56;28180:6;28151:44;:::i;:::-;28143:52;27399:802;-1:-1:-1;;;;;;;;27399:802:70:o;28395:498::-;28647:6;28636:9;28629:25;28690:2;28685;28674:9;28670:18;28663:30;28610:4;28716:53;28765:2;28754:9;28750:18;28742:6;28716:53;:::i;:::-;28817:9;28809:6;28805:22;28800:2;28789:9;28785:18;28778:50;28845:42;28880:6;28872;28845:42;:::i;29513:408::-;29715:2;29697:21;;;29754:2;29734:18;;;29727:30;-1:-1:-1;;;;;;;;;;;29788:2:70;29773:18;;29766:62;-1:-1:-1;;;29859:2:70;29844:18;;29837:42;29911:3;29896:19;;29513:408::o;29926:::-;30128:2;30110:21;;;30167:2;30147:18;;;30140:30;-1:-1:-1;;;;;;;;;;;30201:2:70;30186:18;;30179:62;-1:-1:-1;;;30272:2:70;30257:18;;30250:42;30324:3;30309:19;;29926:408::o;31334:127::-;31395:10;31390:3;31386:20;31383:1;31376:31;31426:4;31423:1;31416:15;31450:4;31447:1;31440:15;31466:1651;31556:6;31587:2;31630;31618:9;31609:7;31605:23;31601:32;31598:52;;;31646:1;31643;31636:12;31598:52;31673:16;;-1:-1:-1;;;;;31738:14:70;;;31735:34;;;31765:1;31762;31755:12;31735:34;31788:22;;;;31844:4;31826:16;;;31822:27;31819:47;;;31862:1;31859;31852:12;31819:47;31888:22;;:::i;:::-;31939:2;31933:9;31926:5;31919:24;31981:2;31977;31973:11;31967:18;31994:33;32019:7;31994:33;:::i;:::-;32043:14;;;32036:31;32105:2;32097:11;;32091:18;32118:33;32091:18;32118:33;:::i;:::-;32178:2;32167:14;;32160:31;32230:2;32222:11;;32216:18;32246:16;;;32243:36;;;32275:1;32272;32265:12;32243:36;32298:17;;32349:2;32331:16;;;32327:25;32324:45;;;32365:1;32362;32355:12;32324:45;32393:22;;:::i;:::-;32446:2;32440:9;32431:7;32424:26;32489:2;32485;32481:11;32475:18;32518:2;32508:8;32505:16;32502:36;;;32534:1;32531;32524:12;32502:36;32557:17;;;-1:-1:-1;32605:4:70;32597:13;;32593:27;-1:-1:-1;32583:55:70;;32634:1;32631;32624:12;32583:55;32663:2;32657:9;32647:19;;32688:49;32704:32;32733:2;32704:32;:::i;32688:49::-;32760:2;32753:5;32746:17;32800:7;32795:2;32790;32786;32782:11;32778:20;32775:33;32772:53;;;32821:1;32818;32811:12;32772:53;32834:67;32898:2;32893;32886:5;32882:14;32877:2;32873;32869:11;32834:67;:::i;:::-;32917:16;;;32910:31;;;;-1:-1:-1;32968:2:70;32957:14;;32950:31;;;;-1:-1:-1;33028:3:70;33020:12;;;33014:19;32997:15;;;32990:44;33081:3;33073:12;;;33067:19;33050:15;;;33043:44;32961:5;31466:1651;-1:-1:-1;;;31466:1651:70:o;33122:388::-;33356:1;33352;33347:3;33343:11;33339:19;33331:6;33327:32;33316:9;33309:51;33396:6;33391:2;33380:9;33376:18;33369:34;33439:2;33434;33423:9;33419:18;33412:30;33290:4;33459:45;33500:2;33489:9;33485:18;33477:6;33459:45;:::i;:::-;33451:53;33122:388;-1:-1:-1;;;;;33122:388:70:o;33515:407::-;33717:2;33699:21;;;33756:2;33736:18;;;33729:30;33795:34;33790:2;33775:18;;33768:62;-1:-1:-1;;;33861:2:70;33846:18;;33839:41;33912:3;33897:19;;33515:407::o;34316:315::-;-1:-1:-1;;;;;34491:32:70;;34473:51;;34560:2;34555;34540:18;;34533:30;;;-1:-1:-1;;34580:45:70;;34606:18;;34598:6;34580:45;:::i;34636:324::-;-1:-1:-1;;;34866:24:70;;34915:1;34906:11;;34899:27;;;;34951:2;34942:12;;34636:324::o;34965:331::-;-1:-1:-1;;;35195:30:70;;35250:2;35241:12;;35234:28;;;;35287:2;35278:12;;34965:331::o;35567:143::-;35651:1;35644:5;35641:12;35631:46;;35657:18;;:::i;:::-;35686;;35567:143::o;35715:142::-;35798:1;35791:5;35788:12;35778:46;;35804:18;;:::i;36399:1345::-;36626:2;36615:9;36608:21;36638:61;36695:2;36684:9;36680:18;36671:6;36665:13;35381:5;35375:12;35370:3;35363:25;35437:4;35430:5;35426:16;35420:23;35413:4;35408:3;35404:14;35397:47;35493:4;35486:5;35482:16;35476:23;35469:4;35464:3;35460:14;35453:47;35549:4;35542:5;35538:16;35532:23;35525:4;35520:3;35516:14;35509:47;;;35301:261;36638:61;36589:4;36746:2;36738:6;36734:15;36728:22;36759:63;36817:3;36806:9;36802:19;36788:12;36759:63;:::i;:::-;;36871:4;36863:6;36859:17;36853:24;36886:64;36945:3;36934:9;36930:19;36914:14;36886:64;:::i;:::-;-1:-1:-1;36999:4:70;36987:17;;;36981:24;35937:12;37081:3;37066:19;;35925:25;37135:4;37123:17;;;37117:24;36081:12;;-1:-1:-1;;;;;36077:21:70;;;37160:3;37223:18;;;36065:34;;;;36152:4;36141:16;;36135:23;36131:32;;;36115:14;;;36108:56;36213:4;36202:16;;36196:23;36180:14;;;36173:47;36258:16;;;36252:23;36236:14;;;36229:47;36314:16;;;36308:23;36292:14;;;36285:47;36045:3;36370:16;;;36364:23;36348:14;;;36341:47;37279:16;;37273:23;;37305:55;37355:3;37340:19;;37273:23;37305:55;:::i;:::-;37409:3;37401:6;37397:16;37391:23;37369:45;;37423:55;37473:3;37462:9;37458:19;37442:14;37423:55;:::i;:::-;37533:3;37521:16;;37515:23;37509:3;37494:19;;37487:52;37576:15;;37570:22;37611:6;37633:18;;;37626:30;37570:22;-1:-1:-1;37673:65:70;37733:3;37718:19;;37570:22;37673:65;:::i;37749:1348::-;38169:6;38158:9;38151:25;38132:4;38195:2;38233:1;38229;38224:3;38220:11;38216:19;38283:2;38275:6;38271:15;38266:2;38255:9;38251:18;38244:43;38323:3;38318:2;38307:9;38303:18;38296:31;38350:46;38391:3;38380:9;38376:19;38368:6;38350:46;:::i;:::-;38444:2;38436:6;38432:15;38427:2;38416:9;38412:18;38405:43;38485:6;38479:3;38468:9;38464:19;38457:35;38541:9;38533:6;38529:22;38523:3;38512:9;38508:19;38501:51;38575:42;38610:6;38602;38575:42;:::i;:::-;38654:22;;;38648:3;38633:19;;38626:51;38726:13;;38748:22;;;38817:1;38810:17;;;38850:16;;;;-1:-1:-1;38786:15:70;;;;38894:177;38908:6;38905:1;38902:13;38894:177;;;38973:13;;38969:22;;38957:35;;39059:1;39047:14;;;;39012:12;;;;38923:9;38894:177;;;-1:-1:-1;39088:3:70;;37749:1348;-1:-1:-1;;;;;;;;;;;;;37749:1348:70:o;39102:611::-;39375:25;;;-1:-1:-1;;;;;39474:15:70;;;39469:2;39454:18;;39447:43;39526:15;;;39521:2;39506:18;;39499:43;39578:15;;39573:2;39558:18;;39551:43;39427:3;39625;39610:19;;39603:32;;;39356:4;;39652:55;;39687:19;;39679:6;39652:55;:::i;39718:844::-;39848:3;39877:1;39910:6;39904:13;39940:36;39966:9;39940:36;:::i;:::-;39995:1;40012:18;;;40039:133;;;;40186:1;40181:356;;;;40005:532;;40039:133;-1:-1:-1;;40072:24:70;;40060:37;;40145:14;;40138:22;40126:35;;40117:45;;;-1:-1:-1;40039:133:70;;40181:356;40212:6;40209:1;40202:17;40242:4;40287:2;40284:1;40274:16;40312:1;40326:165;40340:6;40337:1;40334:13;40326:165;;;40418:14;;40405:11;;;40398:35;40461:16;;;;40355:10;;40326:165;;;40330:3;;;40520:6;40515:3;40511:16;40504:23;;40005:532;-1:-1:-1;40553:3:70;;39718:844;-1:-1:-1;;;;;;39718:844:70:o;42798:812::-;-1:-1:-1;;;43204:3:70;43197:38;43179:3;43264:6;43258:13;43280:75;43348:6;43343:2;43338:3;43334:12;43327:4;43319:6;43315:17;43280:75;:::i;:::-;-1:-1:-1;;;43414:2:70;43374:16;;;43406:11;;;43399:40;43464:13;;43486:76;43464:13;43548:2;43540:11;;43533:4;43521:17;;43486:76;:::i;:::-;43582:17;43601:2;43578:26;;42798:812;-1:-1:-1;;;;42798:812:70:o;44029:245::-;44096:6;44149:2;44137:9;44128:7;44124:23;44120:32;44117:52;;;44165:1;44162;44155:12;44117:52;44197:9;44191:16;44216:28;44238:5;44216:28;:::i;44897:136::-;44936:3;44964:5;44954:39;;44973:18;;:::i;:::-;-1:-1:-1;;;45009:18:70;;44897:136::o;45399:287::-;45528:3;45566:6;45560:13;45582:66;45641:6;45636:3;45629:4;45621:6;45617:17;45582:66;:::i;:::-;45664:16;;;;;45399:287;-1:-1:-1;;45399:287:70:o","linkReferences":{},"immutableReferences":{"16633":[{"start":7209,"length":32},{"start":7276,"length":32},{"start":7575,"length":32},{"start":7642,"length":32},{"start":7771,"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,address[]),(uint256,string))":"e0eab988","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,uint256,address[]),(uint256,string))":"f24b150f","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","onlyStrategyEnabled(address)":"411481e6","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","proxyOwner()":"025313a2","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","rejectPool(address)":"fb1f6917","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","setCommunityParams((address,address,uint256,string,uint256,bool,string))":"f2d774e7","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember(string)":"9a1f46e2","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","totalMembers()":"76e92559","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\":[{\"internalType\":\"uint256\",\"name\":\"size\",\"type\":\"uint256\"}],\"name\":\"AllowlistTooBig\",\"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\":[{\"internalType\":\"uint256\",\"name\":\"totalMembers\",\"type\":\"uint256\"}],\"name\":\"OnlyEmptyCommunity\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"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\":[{\"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\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountUpdated\",\"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\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"}],\"name\":\"CommunityNameUpdated\",\"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\":\"CouncilSafeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_covenantIpfsHash\",\"type\":\"string\"}],\"name\":\"CovenantIpfsHashUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"}],\"name\":\"KickEnabledUpdated\",\"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\":\"_amountStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_covenantSig\",\"type\":\"string\"}],\"name\":\"MemberRegisteredWithCovenant\",\"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\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"PoolRejected\",\"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\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"},{\"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\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"},{\"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\":\"_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\":\"\",\"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\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"onlyStrategyEnabled\",\"outputs\":[],\"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\":\"proxyOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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\":\"rejectPool\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"councilSafe\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"feeReceiver\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"communityFee\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"communityName\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct CommunityParams\",\"name\":\"_params\",\"type\":\"tuple\"}],\"name\":\"setCommunityParams\",\"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\":[{\"internalType\":\"string\",\"name\":\"covenantSig\",\"type\":\"string\"}],\"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\":[],\"name\":\"totalMembers\",\"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\":[],\"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\"},\"totalMembers()\":{\"notice\":\"The total number of members in the community\"}},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda\",\"dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"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":"uint256","name":"size","type":"uint256"}],"type":"error","name":"AllowlistTooBig"},{"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":[{"internalType":"uint256","name":"totalMembers","type":"uint256"}],"type":"error","name":"OnlyEmptyCommunity"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"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":[{"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":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountUpdated","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":"string","name":"_communityName","type":"string","indexed":false}],"type":"event","name":"CommunityNameUpdated","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":"CouncilSafeUpdated","anonymous":false},{"inputs":[{"internalType":"string","name":"_covenantIpfsHash","type":"string","indexed":false}],"type":"event","name":"CovenantIpfsHashUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_feeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverChanged","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"bool","name":"_isKickEnabled","type":"bool","indexed":false}],"type":"event","name":"KickEnabledUpdated","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":"_amountStaked","type":"uint256","indexed":false},{"internalType":"string","name":"_covenantSig","type":"string","indexed":false}],"type":"event","name":"MemberRegisteredWithCovenant","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":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"PoolRejected","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_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":"uint256","name":"sybilScorerThreshold","type":"uint256"},{"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":"uint256","name":"sybilScorerThreshold","type":"uint256"},{"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":"_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":"","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":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"onlyStrategyEnabled"},{"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":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"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":"rejectPool"},{"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":"struct CommunityParams","name":"_params","type":"tuple","components":[{"internalType":"address","name":"councilSafe","type":"address"},{"internalType":"address","name":"feeReceiver","type":"address"},{"internalType":"uint256","name":"communityFee","type":"uint256"},{"internalType":"string","name":"communityName","type":"string"},{"internalType":"uint256","name":"registerStakeAmount","type":"uint256"},{"internalType":"bool","name":"isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"setCommunityParams"},{"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":[{"internalType":"string","name":"covenantSig","type":"string"}],"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":[],"stateMutability":"view","type":"function","name":"totalMembers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"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"},"totalMembers()":{"notice":"The total number of members in the community"}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f","urls":["bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda","dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"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":14129,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":14132,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":14756,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":13921,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":14041,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":14306,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":14375,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":15030,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":13528,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)13523_storage)"},{"astId":13835,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":31097,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":31100,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":31103,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":31106,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":31109,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":31112,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":31115,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":31118,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":31121,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":31124,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":31128,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)506"},{"astId":31132,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)17398"},{"astId":31136,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)33380"},{"astId":31140,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)33113"},{"astId":31143,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":31146,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":31151,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":31158,"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":31164,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)30875_storage)"},{"astId":31170,"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":31177,"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":31181,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":31184,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"totalMembers","offset":0,"slot":"272","type":"t_uint256"},{"astId":33071,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"273","type":"t_array(t_uint256)49_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)33113":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)17398":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)506":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)33380":{"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)30875_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)30875_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)13523_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)13523_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)30875_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":30870,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":30872,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":30874,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)13523_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":13520,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":13522,"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":33073,"exportedSymbols":{"AccessControlUpgradeable":[13836],"CVStrategyInitializeParamsV0_1":[26280],"CVStrategyV0_0":[30151],"Clone":[706],"CommunityParams":[30890],"ERC165Checker":[18744],"ERC1967Proxy":[16082],"FAllo":[33113],"IAllo":[314],"IERC20":[17398],"IPointStrategy":[26134],"IRegistry":[506],"IRegistryFactory":[30166],"ISafe":[33380],"ISybilScorer":[30228],"Member":[30875],"Metadata":[802],"PointSystem":[26143],"ProxyOwnableUpgrader":[30801],"ReentrancyGuardUpgradeable":[14376],"RegistryCommunityInitializeParamsV0_0":[30868],"RegistryCommunityV0_0":[33072],"SafeERC20":[17835],"Strategies":[30894],"UUPSUpgradeable":[16733],"Upgrades":[22001]},"nodeType":"SourceUnit","src":"42:29901:64","nodes":[{"id":30803,"nodeType":"PragmaDirective","src":"42:24:64","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":30805,"nodeType":"ImportDirective","src":"68:70:64","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"@openzeppelin/contracts/token/ERC20/IERC20.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":17399,"symbolAliases":[{"foreign":{"id":30804,"name":"IERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17398,"src":"76:6:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30807,"nodeType":"ImportDirective","src":"139:82:64","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","file":"@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":17836,"symbolAliases":[{"foreign":{"id":30806,"name":"SafeERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17835,"src":"147:9:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30809,"nodeType":"ImportDirective","src":"222:92:64","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/introspection/ERC165Checker.sol","file":"@openzeppelin/contracts/utils/introspection/ERC165Checker.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":18745,"symbolAliases":[{"foreign":{"id":30808,"name":"ERC165Checker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":18744,"src":"230:13:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30811,"nodeType":"ImportDirective","src":"315:88:64","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":16734,"symbolAliases":[{"foreign":{"id":30810,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16733,"src":"323:15:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30813,"nodeType":"ImportDirective","src":"405:132:64","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":14377,"symbolAliases":[{"foreign":{"id":30812,"name":"ReentrancyGuardUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14376,"src":"413:26:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30815,"nodeType":"ImportDirective","src":"538:126:64","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/AccessControlUpgradeable.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":13837,"symbolAliases":[{"foreign":{"id":30814,"name":"AccessControlUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13836,"src":"546:24:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30817,"nodeType":"ImportDirective","src":"666:66:64","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IAllo.sol","file":"allo-v2-contracts/core/interfaces/IAllo.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":315,"symbolAliases":[{"foreign":{"id":30816,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":314,"src":"674:5:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30819,"nodeType":"ImportDirective","src":"733:65:64","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":707,"symbolAliases":[{"foreign":{"id":30818,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":706,"src":"741:5:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30822,"nodeType":"ImportDirective","src":"799:84:64","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/interfaces/IRegistry.sol","file":"allo-v2-contracts/core/interfaces/IRegistry.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":507,"symbolAliases":[{"foreign":{"id":30820,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":506,"src":"807:9:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":30821,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":802,"src":"818:8:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30824,"nodeType":"ImportDirective","src":"884:46:64","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/FAllo.sol","file":"../interfaces/FAllo.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":33114,"symbolAliases":[{"foreign":{"id":30823,"name":"FAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33113,"src":"892:5:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30826,"nodeType":"ImportDirective","src":"931:46:64","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ISafe.sol","file":"../interfaces/ISafe.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":33397,"symbolAliases":[{"foreign":{"id":30825,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33380,"src":"939:5:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30828,"nodeType":"ImportDirective","src":"978:57:64","nodes":[],"absolutePath":"pkg/contracts/src/IRegistryFactory.sol","file":"../IRegistryFactory.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":30167,"symbolAliases":[{"foreign":{"id":30827,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30166,"src":"986:16:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30833,"nodeType":"ImportDirective","src":"1036:143:64","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":30152,"symbolAliases":[{"foreign":{"id":30829,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30151,"src":"1049:14:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":30830,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26134,"src":"1069:14:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":30831,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26280,"src":"1089:30:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":30832,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"1125:11:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30835,"nodeType":"ImportDirective","src":"1180:66:64","nodes":[],"absolutePath":"lib/openzeppelin-foundry-upgrades/src/LegacyUpgrades.sol","file":"@openzeppelin/foundry/LegacyUpgrades.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":22122,"symbolAliases":[{"foreign":{"id":30834,"name":"Upgrades","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22001,"src":"1188:8:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30837,"nodeType":"ImportDirective","src":"1247:84:64","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":16083,"symbolAliases":[{"foreign":{"id":30836,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":16082,"src":"1255:12:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30839,"nodeType":"ImportDirective","src":"1332:65:64","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"../ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":30802,"symbolAliases":[{"foreign":{"id":30838,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30801,"src":"1340:20:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30841,"nodeType":"ImportDirective","src":"1398:49:64","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":33073,"sourceUnit":30229,"symbolAliases":[{"foreign":{"id":30840,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30228,"src":"1406:12:64","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":30868,"nodeType":"StructDefinition","src":"2339:368:64","nodes":[],"canonicalName":"RegistryCommunityInitializeParamsV0_0","members":[{"constant":false,"id":30843,"mutability":"mutable","name":"_allo","nameLocation":"2398:5:64","nodeType":"VariableDeclaration","scope":30868,"src":"2390:13:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30842,"name":"address","nodeType":"ElementaryTypeName","src":"2390:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30846,"mutability":"mutable","name":"_gardenToken","nameLocation":"2416:12:64","nodeType":"VariableDeclaration","scope":30868,"src":"2409:19:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},"typeName":{"id":30845,"nodeType":"UserDefinedTypeName","pathNode":{"id":30844,"name":"IERC20","nameLocations":["2409:6:64"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"2409:6:64"},"referencedDeclaration":17398,"src":"2409:6:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":30848,"mutability":"mutable","name":"_registerStakeAmount","nameLocation":"2442:20:64","nodeType":"VariableDeclaration","scope":30868,"src":"2434:28:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30847,"name":"uint256","nodeType":"ElementaryTypeName","src":"2434:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":30850,"mutability":"mutable","name":"_communityFee","nameLocation":"2476:13:64","nodeType":"VariableDeclaration","scope":30868,"src":"2468:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30849,"name":"uint256","nodeType":"ElementaryTypeName","src":"2468:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":30852,"mutability":"mutable","name":"_nonce","nameLocation":"2503:6:64","nodeType":"VariableDeclaration","scope":30868,"src":"2495:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30851,"name":"uint256","nodeType":"ElementaryTypeName","src":"2495:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":30854,"mutability":"mutable","name":"_registryFactory","nameLocation":"2523:16:64","nodeType":"VariableDeclaration","scope":30868,"src":"2515:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30853,"name":"address","nodeType":"ElementaryTypeName","src":"2515:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30856,"mutability":"mutable","name":"_feeReceiver","nameLocation":"2553:12:64","nodeType":"VariableDeclaration","scope":30868,"src":"2545:20:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30855,"name":"address","nodeType":"ElementaryTypeName","src":"2545:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30859,"mutability":"mutable","name":"_metadata","nameLocation":"2580:9:64","nodeType":"VariableDeclaration","scope":30868,"src":"2571:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":30858,"nodeType":"UserDefinedTypeName","pathNode":{"id":30857,"name":"Metadata","nameLocations":["2571:8:64"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"2571:8:64"},"referencedDeclaration":802,"src":"2571:8:64","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":30861,"mutability":"mutable","name":"_councilSafe","nameLocation":"2611:12:64","nodeType":"VariableDeclaration","scope":30868,"src":"2595:28:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":30860,"name":"address","nodeType":"ElementaryTypeName","src":"2595:15:64","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":30863,"mutability":"mutable","name":"_communityName","nameLocation":"2636:14:64","nodeType":"VariableDeclaration","scope":30868,"src":"2629:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":30862,"name":"string","nodeType":"ElementaryTypeName","src":"2629:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":30865,"mutability":"mutable","name":"_isKickEnabled","nameLocation":"2661:14:64","nodeType":"VariableDeclaration","scope":30868,"src":"2656:19:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":30864,"name":"bool","nodeType":"ElementaryTypeName","src":"2656:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":30867,"mutability":"mutable","name":"covenantIpfsHash","nameLocation":"2688:16:64","nodeType":"VariableDeclaration","scope":30868,"src":"2681:23:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":30866,"name":"string","nodeType":"ElementaryTypeName","src":"2681:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"name":"RegistryCommunityInitializeParamsV0_0","nameLocation":"2346:37:64","scope":33073,"visibility":"public"},{"id":30875,"nodeType":"StructDefinition","src":"2709:86:64","nodes":[],"canonicalName":"Member","members":[{"constant":false,"id":30870,"mutability":"mutable","name":"member","nameLocation":"2737:6:64","nodeType":"VariableDeclaration","scope":30875,"src":"2729:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30869,"name":"address","nodeType":"ElementaryTypeName","src":"2729:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30872,"mutability":"mutable","name":"stakedAmount","nameLocation":"2757:12:64","nodeType":"VariableDeclaration","scope":30875,"src":"2749:20:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30871,"name":"uint256","nodeType":"ElementaryTypeName","src":"2749:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":30874,"mutability":"mutable","name":"isRegistered","nameLocation":"2780:12:64","nodeType":"VariableDeclaration","scope":30875,"src":"2775:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":30873,"name":"bool","nodeType":"ElementaryTypeName","src":"2775:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"Member","nameLocation":"2716:6:64","scope":33073,"visibility":"public"},{"id":30890,"nodeType":"StructDefinition","src":"2797:249:64","nodes":[],"canonicalName":"CommunityParams","members":[{"constant":false,"id":30877,"mutability":"mutable","name":"councilSafe","nameLocation":"2834:11:64","nodeType":"VariableDeclaration","scope":30890,"src":"2826:19:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30876,"name":"address","nodeType":"ElementaryTypeName","src":"2826:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30879,"mutability":"mutable","name":"feeReceiver","nameLocation":"2859:11:64","nodeType":"VariableDeclaration","scope":30890,"src":"2851:19:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30878,"name":"address","nodeType":"ElementaryTypeName","src":"2851:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30881,"mutability":"mutable","name":"communityFee","nameLocation":"2884:12:64","nodeType":"VariableDeclaration","scope":30890,"src":"2876:20:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30880,"name":"uint256","nodeType":"ElementaryTypeName","src":"2876:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":30883,"mutability":"mutable","name":"communityName","nameLocation":"2909:13:64","nodeType":"VariableDeclaration","scope":30890,"src":"2902:20:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":30882,"name":"string","nodeType":"ElementaryTypeName","src":"2902:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":30885,"mutability":"mutable","name":"registerStakeAmount","nameLocation":"2971:19:64","nodeType":"VariableDeclaration","scope":30890,"src":"2963:27:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30884,"name":"uint256","nodeType":"ElementaryTypeName","src":"2963:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":30887,"mutability":"mutable","name":"isKickEnabled","nameLocation":"3001:13:64","nodeType":"VariableDeclaration","scope":30890,"src":"2996:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":30886,"name":"bool","nodeType":"ElementaryTypeName","src":"2996:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":30889,"mutability":"mutable","name":"covenantIpfsHash","nameLocation":"3027:16:64","nodeType":"VariableDeclaration","scope":30890,"src":"3020:23:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":30888,"name":"string","nodeType":"ElementaryTypeName","src":"3020:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"name":"CommunityParams","nameLocation":"2804:15:64","scope":33073,"visibility":"public"},{"id":30894,"nodeType":"StructDefinition","src":"3048:47:64","nodes":[],"canonicalName":"Strategies","members":[{"constant":false,"id":30893,"mutability":"mutable","name":"strategies","nameLocation":"3082:10:64","nodeType":"VariableDeclaration","scope":30894,"src":"3072:20:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":30891,"name":"address","nodeType":"ElementaryTypeName","src":"3072:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":30892,"nodeType":"ArrayTypeName","src":"3072:9:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"Strategies","nameLocation":"3055:10:64","scope":33073,"visibility":"public"},{"id":33072,"nodeType":"ContractDefinition","src":"3148:26794:64","nodes":[{"id":30905,"nodeType":"EventDefinition","src":"3429:40:64","nodes":[],"anonymous":false,"eventSelector":"fea29da7321ca6d0ee0a7359009bb9d4a57035aea0ef6cb4d062341f4a961519","name":"CouncilSafeUpdated","nameLocation":"3435:18:64","parameters":{"id":30904,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30903,"indexed":false,"mutability":"mutable","name":"_safe","nameLocation":"3462:5:64","nodeType":"VariableDeclaration","scope":30905,"src":"3454:13:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30902,"name":"address","nodeType":"ElementaryTypeName","src":"3454:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3453:15:64"}},{"id":30911,"nodeType":"EventDefinition","src":"3474:74:64","nodes":[],"anonymous":false,"eventSelector":"83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf8","name":"CouncilSafeChangeStarted","nameLocation":"3480:24:64","parameters":{"id":30910,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30907,"indexed":false,"mutability":"mutable","name":"_safeOwner","nameLocation":"3513:10:64","nodeType":"VariableDeclaration","scope":30911,"src":"3505:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30906,"name":"address","nodeType":"ElementaryTypeName","src":"3505:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30909,"indexed":false,"mutability":"mutable","name":"_newSafeOwner","nameLocation":"3533:13:64","nodeType":"VariableDeclaration","scope":30911,"src":"3525:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30908,"name":"address","nodeType":"ElementaryTypeName","src":"3525:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3504:43:64"}},{"id":30917,"nodeType":"EventDefinition","src":"3553:63:64","nodes":[],"anonymous":false,"eventSelector":"67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f7689","name":"MemberRegistered","nameLocation":"3559:16:64","parameters":{"id":30916,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30913,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3584:7:64","nodeType":"VariableDeclaration","scope":30917,"src":"3576:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30912,"name":"address","nodeType":"ElementaryTypeName","src":"3576:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30915,"indexed":false,"mutability":"mutable","name":"_amountStaked","nameLocation":"3601:13:64","nodeType":"VariableDeclaration","scope":30917,"src":"3593:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30914,"name":"uint256","nodeType":"ElementaryTypeName","src":"3593:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3575:40:64"}},{"id":30925,"nodeType":"EventDefinition","src":"3621:96:64","nodes":[],"anonymous":false,"eventSelector":"0bd09b1e448ffe881e884ac37014bf3e0274007308056b6469b50fa485542abf","name":"MemberRegisteredWithCovenant","nameLocation":"3627:28:64","parameters":{"id":30924,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30919,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3664:7:64","nodeType":"VariableDeclaration","scope":30925,"src":"3656:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30918,"name":"address","nodeType":"ElementaryTypeName","src":"3656:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30921,"indexed":false,"mutability":"mutable","name":"_amountStaked","nameLocation":"3681:13:64","nodeType":"VariableDeclaration","scope":30925,"src":"3673:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30920,"name":"uint256","nodeType":"ElementaryTypeName","src":"3673:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":30923,"indexed":false,"mutability":"mutable","name":"_covenantSig","nameLocation":"3703:12:64","nodeType":"VariableDeclaration","scope":30925,"src":"3696:19:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":30922,"name":"string","nodeType":"ElementaryTypeName","src":"3696:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3655:61:64"}},{"id":30931,"nodeType":"EventDefinition","src":"3722:67:64","nodes":[],"anonymous":false,"eventSelector":"a13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f4","name":"MemberUnregistered","nameLocation":"3728:18:64","parameters":{"id":30930,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30927,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3755:7:64","nodeType":"VariableDeclaration","scope":30931,"src":"3747:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30926,"name":"address","nodeType":"ElementaryTypeName","src":"3747:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30929,"indexed":false,"mutability":"mutable","name":"_amountReturned","nameLocation":"3772:15:64","nodeType":"VariableDeclaration","scope":30931,"src":"3764:23:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30928,"name":"uint256","nodeType":"ElementaryTypeName","src":"3764:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3746:42:64"}},{"id":30939,"nodeType":"EventDefinition","src":"3794:87:64","nodes":[],"anonymous":false,"eventSelector":"b5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3","name":"MemberKicked","nameLocation":"3800:12:64","parameters":{"id":30938,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30933,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3821:7:64","nodeType":"VariableDeclaration","scope":30939,"src":"3813:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30932,"name":"address","nodeType":"ElementaryTypeName","src":"3813:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30935,"indexed":false,"mutability":"mutable","name":"_transferAddress","nameLocation":"3838:16:64","nodeType":"VariableDeclaration","scope":30939,"src":"3830:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30934,"name":"address","nodeType":"ElementaryTypeName","src":"3830:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30937,"indexed":false,"mutability":"mutable","name":"_amountReturned","nameLocation":"3864:15:64","nodeType":"VariableDeclaration","scope":30939,"src":"3856:23:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30936,"name":"uint256","nodeType":"ElementaryTypeName","src":"3856:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3812:68:64"}},{"id":30943,"nodeType":"EventDefinition","src":"3886:43:64","nodes":[],"anonymous":false,"eventSelector":"611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6","name":"CommunityFeeUpdated","nameLocation":"3892:19:64","parameters":{"id":30942,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30941,"indexed":false,"mutability":"mutable","name":"_newFee","nameLocation":"3920:7:64","nodeType":"VariableDeclaration","scope":30943,"src":"3912:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30940,"name":"uint256","nodeType":"ElementaryTypeName","src":"3912:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3911:17:64"}},{"id":30952,"nodeType":"EventDefinition","src":"3934:89:64","nodes":[],"anonymous":false,"eventSelector":"2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed03205","name":"RegistryInitialized","nameLocation":"3940:19:64","parameters":{"id":30951,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30945,"indexed":false,"mutability":"mutable","name":"_profileId","nameLocation":"3968:10:64","nodeType":"VariableDeclaration","scope":30952,"src":"3960:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":30944,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3960:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":30947,"indexed":false,"mutability":"mutable","name":"_communityName","nameLocation":"3987:14:64","nodeType":"VariableDeclaration","scope":30952,"src":"3980:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":30946,"name":"string","nodeType":"ElementaryTypeName","src":"3980:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":30950,"indexed":false,"mutability":"mutable","name":"_metadata","nameLocation":"4012:9:64","nodeType":"VariableDeclaration","scope":30952,"src":"4003:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":30949,"nodeType":"UserDefinedTypeName","pathNode":{"id":30948,"name":"Metadata","nameLocations":["4003:8:64"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"4003:8:64"},"referencedDeclaration":802,"src":"4003:8:64","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"3959:63:64"}},{"id":30956,"nodeType":"EventDefinition","src":"4028:39:64","nodes":[],"anonymous":false,"eventSelector":"3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f1","name":"StrategyAdded","nameLocation":"4034:13:64","parameters":{"id":30955,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30954,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4056:9:64","nodeType":"VariableDeclaration","scope":30956,"src":"4048:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30953,"name":"address","nodeType":"ElementaryTypeName","src":"4048:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4047:19:64"}},{"id":30960,"nodeType":"EventDefinition","src":"4072:41:64","nodes":[],"anonymous":false,"eventSelector":"09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4","name":"StrategyRemoved","nameLocation":"4078:15:64","parameters":{"id":30959,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30958,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4102:9:64","nodeType":"VariableDeclaration","scope":30960,"src":"4094:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30957,"name":"address","nodeType":"ElementaryTypeName","src":"4094:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4093:19:64"}},{"id":30968,"nodeType":"EventDefinition","src":"4118:93:64","nodes":[],"anonymous":false,"eventSelector":"f56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec","name":"MemberActivatedStrategy","nameLocation":"4124:23:64","parameters":{"id":30967,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30962,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4156:7:64","nodeType":"VariableDeclaration","scope":30968,"src":"4148:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30961,"name":"address","nodeType":"ElementaryTypeName","src":"4148:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30964,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4173:9:64","nodeType":"VariableDeclaration","scope":30968,"src":"4165:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30963,"name":"address","nodeType":"ElementaryTypeName","src":"4165:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30966,"indexed":false,"mutability":"mutable","name":"_pointsToIncrease","nameLocation":"4192:17:64","nodeType":"VariableDeclaration","scope":30968,"src":"4184:25:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30965,"name":"uint256","nodeType":"ElementaryTypeName","src":"4184:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4147:63:64"}},{"id":30974,"nodeType":"EventDefinition","src":"4216:68:64","nodes":[],"anonymous":false,"eventSelector":"00de109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b","name":"MemberDeactivatedStrategy","nameLocation":"4222:25:64","parameters":{"id":30973,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30970,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4256:7:64","nodeType":"VariableDeclaration","scope":30974,"src":"4248:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30969,"name":"address","nodeType":"ElementaryTypeName","src":"4248:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30972,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4273:9:64","nodeType":"VariableDeclaration","scope":30974,"src":"4265:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30971,"name":"address","nodeType":"ElementaryTypeName","src":"4265:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4247:36:64"}},{"id":30978,"nodeType":"EventDefinition","src":"4289:51:64","nodes":[],"anonymous":false,"eventSelector":"5e2d447f427e49fd08832fd025a56589500352417199aa65728feaf05123e856","name":"BasisStakedAmountUpdated","nameLocation":"4295:24:64","parameters":{"id":30977,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30976,"indexed":false,"mutability":"mutable","name":"_newAmount","nameLocation":"4328:10:64","nodeType":"VariableDeclaration","scope":30978,"src":"4320:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30975,"name":"uint256","nodeType":"ElementaryTypeName","src":"4320:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4319:20:64"}},{"id":30984,"nodeType":"EventDefinition","src":"4345:67:64","nodes":[],"anonymous":false,"eventSelector":"576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f","name":"MemberPowerIncreased","nameLocation":"4351:20:64","parameters":{"id":30983,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30980,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4380:7:64","nodeType":"VariableDeclaration","scope":30984,"src":"4372:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30979,"name":"address","nodeType":"ElementaryTypeName","src":"4372:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30982,"indexed":false,"mutability":"mutable","name":"_stakedAmount","nameLocation":"4397:13:64","nodeType":"VariableDeclaration","scope":30984,"src":"4389:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30981,"name":"uint256","nodeType":"ElementaryTypeName","src":"4389:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4371:40:64"}},{"id":30990,"nodeType":"EventDefinition","src":"4417:69:64","nodes":[],"anonymous":false,"eventSelector":"6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8","name":"MemberPowerDecreased","nameLocation":"4423:20:64","parameters":{"id":30989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30986,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4452:7:64","nodeType":"VariableDeclaration","scope":30990,"src":"4444:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":30985,"name":"address","nodeType":"ElementaryTypeName","src":"4444:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":30988,"indexed":false,"mutability":"mutable","name":"_unstakedAmount","nameLocation":"4469:15:64","nodeType":"VariableDeclaration","scope":30990,"src":"4461:23:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":30987,"name":"uint256","nodeType":"ElementaryTypeName","src":"4461:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4443:42:64"}},{"id":30994,"nodeType":"EventDefinition","src":"4491:50:64","nodes":[],"anonymous":false,"eventSelector":"f67fb6c95f41f58a276869ca2608214f0a6aab1c9ffe445affaa58680fddd497","name":"CommunityNameUpdated","nameLocation":"4497:20:64","parameters":{"id":30993,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30992,"indexed":false,"mutability":"mutable","name":"_communityName","nameLocation":"4525:14:64","nodeType":"VariableDeclaration","scope":30994,"src":"4518:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":30991,"name":"string","nodeType":"ElementaryTypeName","src":"4518:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"4517:23:64"}},{"id":30998,"nodeType":"EventDefinition","src":"4546:56:64","nodes":[],"anonymous":false,"eventSelector":"8fd46764d9fde733a671bd3aa6710da0668b1c4eb78d33f42e104553ea4bc76e","name":"CovenantIpfsHashUpdated","nameLocation":"4552:23:64","parameters":{"id":30997,"nodeType":"ParameterList","parameters":[{"constant":false,"id":30996,"indexed":false,"mutability":"mutable","name":"_covenantIpfsHash","nameLocation":"4583:17:64","nodeType":"VariableDeclaration","scope":30998,"src":"4576:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":30995,"name":"string","nodeType":"ElementaryTypeName","src":"4576:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"4575:26:64"}},{"id":31002,"nodeType":"EventDefinition","src":"4607:46:64","nodes":[],"anonymous":false,"eventSelector":"4ca826489011b9a44719ccfa206813b072bb58604af41f245a6a1a6d91358875","name":"KickEnabledUpdated","nameLocation":"4613:18:64","parameters":{"id":31001,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31000,"indexed":false,"mutability":"mutable","name":"_isKickEnabled","nameLocation":"4637:14:64","nodeType":"VariableDeclaration","scope":31002,"src":"4632:19:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":30999,"name":"bool","nodeType":"ElementaryTypeName","src":"4632:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4631:21:64"}},{"id":31006,"nodeType":"EventDefinition","src":"4658:47:64","nodes":[],"anonymous":false,"eventSelector":"647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059","name":"FeeReceiverChanged","nameLocation":"4664:18:64","parameters":{"id":31005,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31004,"indexed":false,"mutability":"mutable","name":"_feeReceiver","nameLocation":"4691:12:64","nodeType":"VariableDeclaration","scope":31006,"src":"4683:20:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31003,"name":"address","nodeType":"ElementaryTypeName","src":"4683:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4682:22:64"}},{"id":31019,"nodeType":"EventDefinition","src":"4710:110:64","nodes":[],"anonymous":false,"eventSelector":"778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d283","name":"PoolCreated","nameLocation":"4716:11:64","parameters":{"id":31018,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31008,"indexed":false,"mutability":"mutable","name":"_poolId","nameLocation":"4736:7:64","nodeType":"VariableDeclaration","scope":31019,"src":"4728:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31007,"name":"uint256","nodeType":"ElementaryTypeName","src":"4728:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":31010,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4753:9:64","nodeType":"VariableDeclaration","scope":31019,"src":"4745:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31009,"name":"address","nodeType":"ElementaryTypeName","src":"4745:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":31012,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"4772:10:64","nodeType":"VariableDeclaration","scope":31019,"src":"4764:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31011,"name":"address","nodeType":"ElementaryTypeName","src":"4764:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":31014,"indexed":false,"mutability":"mutable","name":"_token","nameLocation":"4792:6:64","nodeType":"VariableDeclaration","scope":31019,"src":"4784:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31013,"name":"address","nodeType":"ElementaryTypeName","src":"4784:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":31017,"indexed":false,"mutability":"mutable","name":"_metadata","nameLocation":"4809:9:64","nodeType":"VariableDeclaration","scope":31019,"src":"4800:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":31016,"nodeType":"UserDefinedTypeName","pathNode":{"id":31015,"name":"Metadata","nameLocations":["4800:8:64"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"4800:8:64"},"referencedDeclaration":802,"src":"4800:8:64","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"4727:92:64"}},{"id":31023,"nodeType":"EventDefinition","src":"4839:38:64","nodes":[],"anonymous":false,"eventSelector":"6723d9f32d040ca8ddd4dabf6f03ad485e63fc3fd625ac1fa1c557de6719314f","name":"PoolRejected","nameLocation":"4845:12:64","parameters":{"id":31022,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31021,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4866:9:64","nodeType":"VariableDeclaration","scope":31023,"src":"4858:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31020,"name":"address","nodeType":"ElementaryTypeName","src":"4858:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4857:19:64"}},{"id":31027,"nodeType":"ErrorDefinition","src":"5049:36:64","nodes":[],"errorSelector":"83d888a8","name":"AllowlistTooBig","nameLocation":"5055:15:64","parameters":{"id":31026,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31025,"mutability":"mutable","name":"size","nameLocation":"5079:4:64","nodeType":"VariableDeclaration","scope":31027,"src":"5071:12:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31024,"name":"uint256","nodeType":"ElementaryTypeName","src":"5071:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5070:14:64"}},{"id":31031,"nodeType":"ErrorDefinition","src":"5126:47:64","nodes":[],"errorSelector":"fb2aa73e","name":"OnlyEmptyCommunity","nameLocation":"5132:18:64","parameters":{"id":31030,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31029,"mutability":"mutable","name":"totalMembers","nameLocation":"5159:12:64","nodeType":"VariableDeclaration","scope":31031,"src":"5151:20:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31028,"name":"uint256","nodeType":"ElementaryTypeName","src":"5151:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5150:22:64"}},{"id":31035,"nodeType":"ErrorDefinition","src":"5178:38:64","nodes":[],"errorSelector":"fc4be72f","name":"UserNotInCouncil","nameLocation":"5184:16:64","parameters":{"id":31034,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31033,"mutability":"mutable","name":"_user","nameLocation":"5209:5:64","nodeType":"VariableDeclaration","scope":31035,"src":"5201:13:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31032,"name":"address","nodeType":"ElementaryTypeName","src":"5201:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5200:15:64"}},{"id":31037,"nodeType":"ErrorDefinition","src":"5221:26:64","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"5227:17:64","parameters":{"id":31036,"nodeType":"ParameterList","parameters":[],"src":"5244:2:64"}},{"id":31039,"nodeType":"ErrorDefinition","src":"5252:29:64","nodes":[],"errorSelector":"d5b9bc96","name":"UserAlreadyActivated","nameLocation":"5258:20:64","parameters":{"id":31038,"nodeType":"ParameterList","parameters":[],"src":"5278:2:64"}},{"id":31041,"nodeType":"ErrorDefinition","src":"5286:31:64","nodes":[],"errorSelector":"c12369dc","name":"UserAlreadyDeactivated","nameLocation":"5292:22:64","parameters":{"id":31040,"nodeType":"ParameterList","parameters":[],"src":"5314:2:64"}},{"id":31043,"nodeType":"ErrorDefinition","src":"5322:23:64","nodes":[],"errorSelector":"968a4d2c","name":"StrategyExists","nameLocation":"5328:14:64","parameters":{"id":31042,"nodeType":"ParameterList","parameters":[],"src":"5342:2:64"}},{"id":31045,"nodeType":"ErrorDefinition","src":"5350:25:64","nodes":[],"errorSelector":"46c26e4b","name":"StrategyDisabled","nameLocation":"5356:16:64","parameters":{"id":31044,"nodeType":"ParameterList","parameters":[],"src":"5372:2:64"}},{"id":31047,"nodeType":"ErrorDefinition","src":"5380:26:64","nodes":[],"errorSelector":"ebcd0d6e","name":"SenderNotNewOwner","nameLocation":"5386:17:64","parameters":{"id":31046,"nodeType":"ParameterList","parameters":[],"src":"5403:2:64"}},{"id":31049,"nodeType":"ErrorDefinition","src":"5411:26:64","nodes":[],"errorSelector":"bbe79611","name":"SenderNotStrategy","nameLocation":"5417:17:64","parameters":{"id":31048,"nodeType":"ParameterList","parameters":[],"src":"5434:2:64"}},{"id":31051,"nodeType":"ErrorDefinition","src":"5442:26:64","nodes":[],"errorSelector":"c70d18aa","name":"ValueCannotBeZero","nameLocation":"5448:17:64","parameters":{"id":31050,"nodeType":"ParameterList","parameters":[],"src":"5465:2:64"}},{"id":31053,"nodeType":"ErrorDefinition","src":"5473:29:64","nodes":[],"errorSelector":"fe925f7d","name":"NewFeeGreaterThanMax","nameLocation":"5479:20:64","parameters":{"id":31052,"nodeType":"ParameterList","parameters":[],"src":"5499:2:64"}},{"id":31055,"nodeType":"ErrorDefinition","src":"5507:23:64","nodes":[],"errorSelector":"cb63dc72","name":"KickNotEnabled","nameLocation":"5513:14:64","parameters":{"id":31054,"nodeType":"ParameterList","parameters":[],"src":"5527:2:64"}},{"id":31057,"nodeType":"ErrorDefinition","src":"5535:26:64","nodes":[],"errorSelector":"d4d3290e","name":"PointsDeactivated","nameLocation":"5541:17:64","parameters":{"id":31056,"nodeType":"ParameterList","parameters":[],"src":"5558:2:64"}},{"id":31059,"nodeType":"ErrorDefinition","src":"5566:29:64","nodes":[],"errorSelector":"9c47d02e","name":"DecreaseUnderMinimum","nameLocation":"5572:20:64","parameters":{"id":31058,"nodeType":"ParameterList","parameters":[],"src":"5592:2:64"}},{"id":31065,"nodeType":"ErrorDefinition","src":"5600:80:64","nodes":[],"errorSelector":"8a11f318","name":"CantDecreaseMoreThanPower","nameLocation":"5606:25:64","parameters":{"id":31064,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31061,"mutability":"mutable","name":"_decreaseAmount","nameLocation":"5640:15:64","nodeType":"VariableDeclaration","scope":31065,"src":"5632:23:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31060,"name":"uint256","nodeType":"ElementaryTypeName","src":"5632:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":31063,"mutability":"mutable","name":"_currentPower","nameLocation":"5665:13:64","nodeType":"VariableDeclaration","scope":31065,"src":"5657:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31062,"name":"uint256","nodeType":"ElementaryTypeName","src":"5657:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5631:48:64"}},{"id":31068,"nodeType":"UsingForDirective","src":"5686:32:64","nodes":[],"global":false,"libraryName":{"id":31066,"name":"ERC165Checker","nameLocations":["5692:13:64"],"nodeType":"IdentifierPath","referencedDeclaration":18744,"src":"5692:13:64"},"typeName":{"id":31067,"name":"address","nodeType":"ElementaryTypeName","src":"5710:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":31072,"nodeType":"UsingForDirective","src":"5723:27:64","nodes":[],"global":false,"libraryName":{"id":31069,"name":"SafeERC20","nameLocations":["5729:9:64"],"nodeType":"IdentifierPath","referencedDeclaration":17835,"src":"5729:9:64"},"typeName":{"id":31071,"nodeType":"UserDefinedTypeName","pathNode":{"id":31070,"name":"IERC20","nameLocations":["5743:6:64"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"5743:6:64"},"referencedDeclaration":17398,"src":"5743:6:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}}},{"id":31075,"nodeType":"UsingForDirective","src":"5755:24:64","nodes":[],"global":false,"libraryName":{"id":31073,"name":"Clone","nameLocations":["5761:5:64"],"nodeType":"IdentifierPath","referencedDeclaration":706,"src":"5761:5:64"},"typeName":{"id":31074,"name":"address","nodeType":"ElementaryTypeName","src":"5771:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":31078,"nodeType":"VariableDeclaration","src":"5785:38:64","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"5808:7:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":31076,"name":"string","nodeType":"ElementaryTypeName","src":"5785:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":31077,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5818:5:64","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":31082,"nodeType":"VariableDeclaration","src":"5909:75:64","nodes":[],"constant":true,"documentation":{"id":31079,"nodeType":"StructuredDocumentation","src":"5829:75:64","text":"@notice The native address to represent native token eg: ETH in mainnet"},"functionSelector":"a0cf0aea","mutability":"constant","name":"NATIVE","nameLocation":"5933:6:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31080,"name":"address","nodeType":"ElementaryTypeName","src":"5909:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":{"hexValue":"307845656565654565656545654565654565456545656545454565656565456565656565656545456545","id":31081,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5942:42:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"value":"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE"},"visibility":"public"},{"id":31088,"nodeType":"VariableDeclaration","src":"6074:49:64","nodes":[],"constant":true,"documentation":{"id":31083,"nodeType":"StructuredDocumentation","src":"5990:79:64","text":"@notice The precision scale used in the contract to avoid loss of precision"},"functionSelector":"d7050f07","mutability":"constant","name":"PRECISION_SCALE","nameLocation":"6098:15:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31084,"name":"uint256","nodeType":"ElementaryTypeName","src":"6074:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":31087,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":31085,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6116:2:64","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":31086,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6122:1:64","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"6116:7:64","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"visibility":"public"},{"id":31094,"nodeType":"VariableDeclaration","src":"6198:54:64","nodes":[],"constant":true,"documentation":{"id":31089,"nodeType":"StructuredDocumentation","src":"6129:64:64","text":"@notice The maximum fee that can be charged to the community"},"functionSelector":"bc063e1a","mutability":"constant","name":"MAX_FEE","nameLocation":"6222:7:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31090,"name":"uint256","nodeType":"ElementaryTypeName","src":"6198:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":31093,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":31091,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6232:2:64","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":31092,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31088,"src":"6237:15:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6232:20:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":31097,"nodeType":"VariableDeclaration","src":"6325:34:64","nodes":[],"constant":false,"documentation":{"id":31095,"nodeType":"StructuredDocumentation","src":"6258:62:64","text":"@notice The amount of tokens required to register a member"},"functionSelector":"78a0b8a9","mutability":"mutable","name":"registerStakeAmount","nameLocation":"6340:19:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31096,"name":"uint256","nodeType":"ElementaryTypeName","src":"6325:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":31100,"nodeType":"VariableDeclaration","src":"6436:27:64","nodes":[],"constant":false,"documentation":{"id":31098,"nodeType":"StructuredDocumentation","src":"6365:66:64","text":"@notice The fee charged to the community for each registration"},"functionSelector":"8961be6b","mutability":"mutable","name":"communityFee","nameLocation":"6451:12:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31099,"name":"uint256","nodeType":"ElementaryTypeName","src":"6436:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":31103,"nodeType":"VariableDeclaration","src":"6530:25:64","nodes":[],"constant":false,"documentation":{"id":31101,"nodeType":"StructuredDocumentation","src":"6469:56:64","text":"@notice The nonce used to create new strategy clones"},"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"6545:10:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31102,"name":"uint256","nodeType":"ElementaryTypeName","src":"6530:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":31106,"nodeType":"VariableDeclaration","src":"6629:24:64","nodes":[],"constant":false,"documentation":{"id":31104,"nodeType":"StructuredDocumentation","src":"6561:63:64","text":"@notice The profileId of the community in the Allo Registry"},"functionSelector":"08386eba","mutability":"mutable","name":"profileId","nameLocation":"6644:9:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":31105,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6629:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":31109,"nodeType":"VariableDeclaration","src":"6710:25:64","nodes":[],"constant":false,"documentation":{"id":31107,"nodeType":"StructuredDocumentation","src":"6659:46:64","text":"@notice Enable or disable the kick feature"},"functionSelector":"1f787d28","mutability":"mutable","name":"isKickEnabled","nameLocation":"6722:13:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":31108,"name":"bool","nodeType":"ElementaryTypeName","src":"6710:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"public"},{"id":31112,"nodeType":"VariableDeclaration","src":"6802:26:64","nodes":[],"constant":false,"documentation":{"id":31110,"nodeType":"StructuredDocumentation","src":"6742:55:64","text":"@notice The address that receives the community fee"},"functionSelector":"b3f00674","mutability":"mutable","name":"feeReceiver","nameLocation":"6817:11:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31111,"name":"address","nodeType":"ElementaryTypeName","src":"6802:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":31115,"nodeType":"VariableDeclaration","src":"6886:30:64","nodes":[],"constant":false,"documentation":{"id":31113,"nodeType":"StructuredDocumentation","src":"6834:47:64","text":"@notice The address of the registry factory"},"functionSelector":"f86c5f89","mutability":"mutable","name":"registryFactory","nameLocation":"6901:15:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31114,"name":"address","nodeType":"ElementaryTypeName","src":"6886:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":31118,"nodeType":"VariableDeclaration","src":"6983:38:64","nodes":[],"constant":false,"documentation":{"id":31116,"nodeType":"StructuredDocumentation","src":"6922:56:64","text":"@notice The address of the collateral vault template"},"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"6998:23:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31117,"name":"address","nodeType":"ElementaryTypeName","src":"6983:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":31121,"nodeType":"VariableDeclaration","src":"7080:31:64","nodes":[],"constant":false,"documentation":{"id":31119,"nodeType":"StructuredDocumentation","src":"7027:48:64","text":"@notice The address of the strategy template"},"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"7095:16:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31120,"name":"address","nodeType":"ElementaryTypeName","src":"7080:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":31124,"nodeType":"VariableDeclaration","src":"7179:41:64","nodes":[],"constant":false,"documentation":{"id":31122,"nodeType":"StructuredDocumentation","src":"7117:57:64","text":"@notice The address of the pending council safe owner"},"functionSelector":"68decabb","mutability":"mutable","name":"pendingCouncilSafe","nameLocation":"7202:18:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":31123,"name":"address","nodeType":"ElementaryTypeName","src":"7179:15:64","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"public"},{"id":31128,"nodeType":"VariableDeclaration","src":"7270:25:64","nodes":[],"constant":false,"documentation":{"id":31125,"nodeType":"StructuredDocumentation","src":"7227:38:64","text":"@notice The Registry Allo contract"},"functionSelector":"7b103999","mutability":"mutable","name":"registry","nameLocation":"7287:8:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$506","typeString":"contract IRegistry"},"typeName":{"id":31127,"nodeType":"UserDefinedTypeName","pathNode":{"id":31126,"name":"IRegistry","nameLocations":["7270:9:64"],"nodeType":"IdentifierPath","referencedDeclaration":506,"src":"7270:9:64"},"referencedDeclaration":506,"src":"7270:9:64","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$506","typeString":"contract IRegistry"}},"visibility":"public"},{"id":31132,"nodeType":"VariableDeclaration","src":"7358:25:64","nodes":[],"constant":false,"documentation":{"id":31129,"nodeType":"StructuredDocumentation","src":"7301:52:64","text":"@notice The token used to stake in the community"},"functionSelector":"db61d65c","mutability":"mutable","name":"gardenToken","nameLocation":"7372:11:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},"typeName":{"id":31131,"nodeType":"UserDefinedTypeName","pathNode":{"id":31130,"name":"IERC20","nameLocations":["7358:6:64"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"7358:6:64"},"referencedDeclaration":17398,"src":"7358:6:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"visibility":"public"},{"id":31136,"nodeType":"VariableDeclaration","src":"7439:24:64","nodes":[],"constant":false,"documentation":{"id":31133,"nodeType":"StructuredDocumentation","src":"7389:45:64","text":"@notice The council safe contract address"},"functionSelector":"6c53db9a","mutability":"mutable","name":"councilSafe","nameLocation":"7452:11:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"},"typeName":{"id":31135,"nodeType":"UserDefinedTypeName","pathNode":{"id":31134,"name":"ISafe","nameLocations":["7439:5:64"],"nodeType":"IdentifierPath","referencedDeclaration":33380,"src":"7439:5:64"},"referencedDeclaration":33380,"src":"7439:5:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}},"visibility":"public"},{"id":31140,"nodeType":"VariableDeclaration","src":"7511:17:64","nodes":[],"constant":false,"documentation":{"id":31137,"nodeType":"StructuredDocumentation","src":"7469:37:64","text":"@notice The Allo contract address"},"functionSelector":"d6d8428d","mutability":"mutable","name":"allo","nameLocation":"7524:4:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$33113","typeString":"contract FAllo"},"typeName":{"id":31139,"nodeType":"UserDefinedTypeName","pathNode":{"id":31138,"name":"FAllo","nameLocations":["7511:5:64"],"nodeType":"IdentifierPath","referencedDeclaration":33113,"src":"7511:5:64"},"referencedDeclaration":33113,"src":"7511:5:64","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$33113","typeString":"contract FAllo"}},"visibility":"public"},{"id":31143,"nodeType":"VariableDeclaration","src":"7570:27:64","nodes":[],"constant":false,"documentation":{"id":31141,"nodeType":"StructuredDocumentation","src":"7535:30:64","text":"@notice The community name"},"functionSelector":"c6d572ae","mutability":"mutable","name":"communityName","nameLocation":"7584:13:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":31142,"name":"string","nodeType":"ElementaryTypeName","src":"7570:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"public"},{"id":31146,"nodeType":"VariableDeclaration","src":"7655:30:64","nodes":[],"constant":false,"documentation":{"id":31144,"nodeType":"StructuredDocumentation","src":"7603:47:64","text":"@notice The covenant IPFS hash of community"},"functionSelector":"b64e39af","mutability":"mutable","name":"covenantIpfsHash","nameLocation":"7669:16:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":31145,"name":"string","nodeType":"ElementaryTypeName","src":"7655:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"public"},{"id":31151,"nodeType":"VariableDeclaration","src":"7801:68:64","nodes":[],"constant":false,"documentation":{"id":31147,"nodeType":"StructuredDocumentation","src":"7749:47:64","text":"@notice List of enabled/disabled strategies"},"functionSelector":"3a871fe1","mutability":"mutable","name":"enabledStrategies","nameLocation":"7852:17:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"typeName":{"id":31150,"keyName":"strategy","keyNameLocation":"7817:8:64","keyType":{"id":31148,"name":"address","nodeType":"ElementaryTypeName","src":"7809:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7801:43:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"isEnabled","valueNameLocation":"7834:9:64","valueType":{"id":31149,"name":"bool","nodeType":"ElementaryTypeName","src":"7829:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}},"visibility":"public"},{"id":31158,"nodeType":"VariableDeclaration","src":"7937:98:64","nodes":[],"constant":false,"documentation":{"id":31152,"nodeType":"StructuredDocumentation","src":"7875:57:64","text":"@notice Power points for each member in each strategy"},"functionSelector":"65e3864c","mutability":"mutable","name":"memberPowerInStrategy","nameLocation":"8014:21:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"},"typeName":{"id":31157,"keyName":"strategy","keyNameLocation":"7953:8:64","keyType":{"id":31153,"name":"address","nodeType":"ElementaryTypeName","src":"7945:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7937:69:64","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":31156,"keyName":"member","keyNameLocation":"7981:6:64","keyType":{"id":31154,"name":"address","nodeType":"ElementaryTypeName","src":"7973:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7965:40:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"power","valueNameLocation":"7999:5:64","valueType":{"id":31155,"name":"uint256","nodeType":"ElementaryTypeName","src":"7991:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}}},"visibility":"public"},{"id":31164,"nodeType":"VariableDeclaration","src":"8135:60:64","nodes":[],"constant":false,"documentation":{"id":31159,"nodeType":"StructuredDocumentation","src":"8041:89:64","text":"@notice Member information as the staked amount and if is registered in the community"},"functionSelector":"88cfe684","mutability":"mutable","name":"addressToMemberInfo","nameLocation":"8176:19:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member)"},"typeName":{"id":31163,"keyName":"member","keyNameLocation":"8151:6:64","keyType":{"id":31160,"name":"address","nodeType":"ElementaryTypeName","src":"8143:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"8135:33:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":31162,"nodeType":"UserDefinedTypeName","pathNode":{"id":31161,"name":"Member","nameLocations":["8161:6:64"],"nodeType":"IdentifierPath","referencedDeclaration":30875,"src":"8161:6:64"},"referencedDeclaration":30875,"src":"8161:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage_ptr","typeString":"struct Member"}}},"visibility":"public"},{"id":31170,"nodeType":"VariableDeclaration","src":"8266:82:64","nodes":[],"constant":false,"documentation":{"id":31165,"nodeType":"StructuredDocumentation","src":"8201:60:64","text":"@notice List of strategies for each member are activated"},"functionSelector":"2b38c69c","mutability":"mutable","name":"strategiesByMember","nameLocation":"8330:18:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[])"},"typeName":{"id":31169,"keyName":"member","keyNameLocation":"8282:6:64","keyType":{"id":31166,"name":"address","nodeType":"ElementaryTypeName","src":"8274:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"8266:56:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[])"},"valueName":"strategiesAddresses","valueNameLocation":"8302:19:64","valueType":{"baseType":{"id":31167,"name":"address","nodeType":"ElementaryTypeName","src":"8292:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31168,"nodeType":"ArrayTypeName","src":"8292:9:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"visibility":"public"},{"id":31177,"nodeType":"VariableDeclaration","src":"8426:107:64","nodes":[],"constant":false,"documentation":{"id":31171,"nodeType":"StructuredDocumentation","src":"8354:67:64","text":"@notice Mapping to check if a member is activated in a strategy"},"functionSelector":"477a5cc0","mutability":"mutable","name":"memberActivatedInStrategies","nameLocation":"8506:27:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"},"typeName":{"id":31176,"keyName":"member","keyNameLocation":"8442:6:64","keyType":{"id":31172,"name":"address","nodeType":"ElementaryTypeName","src":"8434:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"8426:72:64","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":31175,"keyName":"strategy","keyNameLocation":"8468:8:64","keyType":{"id":31173,"name":"address","nodeType":"ElementaryTypeName","src":"8460:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"8452:45:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"isActivated","valueNameLocation":"8485:11:64","valueType":{"id":31174,"name":"bool","nodeType":"ElementaryTypeName","src":"8480:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}}},"visibility":"public"},{"id":31181,"nodeType":"VariableDeclaration","src":"8626:24:64","nodes":[],"constant":false,"documentation":{"id":31178,"nodeType":"StructuredDocumentation","src":"8540:81:64","text":"@notice List of initial members to be added as pool managers in the Allo Pool"},"mutability":"mutable","name":"initialMembers","nameLocation":"8636:14:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[]"},"typeName":{"baseType":{"id":31179,"name":"address","nodeType":"ElementaryTypeName","src":"8626:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31180,"nodeType":"ArrayTypeName","src":"8626:9:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"id":31184,"nodeType":"VariableDeclaration","src":"8718:27:64","nodes":[],"constant":false,"documentation":{"id":31182,"nodeType":"StructuredDocumentation","src":"8657:56:64","text":"@notice The total number of members in the community"},"functionSelector":"76e92559","mutability":"mutable","name":"totalMembers","nameLocation":"8733:12:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31183,"name":"uint256","nodeType":"ElementaryTypeName","src":"8718:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":31190,"nodeType":"VariableDeclaration","src":"8962:68:64","nodes":[],"constant":true,"documentation":{"id":31185,"nodeType":"StructuredDocumentation","src":"8917:40:64","text":"@notice Role to council safe members"},"functionSelector":"733a2d1f","mutability":"constant","name":"COUNCIL_MEMBER","nameLocation":"8986:14:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":31186,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8962:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"arguments":[{"hexValue":"434f554e43494c5f4d454d424552","id":31188,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9013:16:64","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":31187,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"9003:9:64","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":31189,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9003:27:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":31207,"nodeType":"FunctionDefinition","src":"9203:167:64","nodes":[],"body":{"id":31206,"nodeType":"Block","src":"9252:118:64","nodes":[],"statements":[{"condition":{"id":31198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9266:36:64","subExpression":{"arguments":[{"id":31194,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31190,"src":"9275:14:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":31195,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9291:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":31196,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9295:6:64","memberName":"sender","nodeType":"MemberAccess","src":"9291:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":31193,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13595,"src":"9267:7:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":31197,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9267:35:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31205,"nodeType":"IfStatement","src":"9262:102:64","trueBody":{"id":31204,"nodeType":"Block","src":"9304:60:64","statements":[{"errorCall":{"arguments":[{"expression":{"id":31200,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9342:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":31201,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9346:6:64","memberName":"sender","nodeType":"MemberAccess","src":"9342:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31199,"name":"UserNotInCouncil","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31035,"src":"9325:16:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":31202,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9325:28:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31203,"nodeType":"RevertStatement","src":"9318:35:64"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"9212:15:64","parameters":{"id":31191,"nodeType":"ParameterList","parameters":[],"src":"9227:2:64"},"returnParameters":{"id":31192,"nodeType":"ParameterList","parameters":[],"src":"9252:0:64"},"scope":33072,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":31221,"nodeType":"FunctionDefinition","src":"9376:152:64","nodes":[],"body":{"id":31220,"nodeType":"Block","src":"9434:94:64","nodes":[],"statements":[{"condition":{"id":31214,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9448:21:64","subExpression":{"arguments":[{"expression":{"id":31211,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9458:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":31212,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9462:6:64","memberName":"sender","nodeType":"MemberAccess","src":"9458:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31210,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32515,"src":"9449:8:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":31213,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9449:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31219,"nodeType":"IfStatement","src":"9444:78:64","trueBody":{"id":31218,"nodeType":"Block","src":"9471:51:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":31215,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31037,"src":"9492:17:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":31216,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9492:19:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31217,"nodeType":"RevertStatement","src":"9485:26:64"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryMemberSender","nameLocation":"9385:24:64","parameters":{"id":31208,"nodeType":"ParameterList","parameters":[],"src":"9409:2:64"},"returnParameters":{"id":31209,"nodeType":"ParameterList","parameters":[],"src":"9434:0:64"},"scope":33072,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":31236,"nodeType":"FunctionDefinition","src":"9534:157:64","nodes":[],"body":{"id":31235,"nodeType":"Block","src":"9600:91:64","nodes":[],"statements":[{"condition":{"id":31229,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9614:18:64","subExpression":{"arguments":[{"id":31227,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31223,"src":"9624:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31226,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32515,"src":"9615:8:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":31228,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9615:17:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31234,"nodeType":"IfStatement","src":"9610:75:64","trueBody":{"id":31233,"nodeType":"Block","src":"9634:51:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":31230,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31037,"src":"9655:17:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":31231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9655:19:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31232,"nodeType":"RevertStatement","src":"9648:26:64"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryMemberAddress","nameLocation":"9543:25:64","parameters":{"id":31224,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31223,"mutability":"mutable","name":"_sender","nameLocation":"9577:7:64","nodeType":"VariableDeclaration","scope":31236,"src":"9569:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31222,"name":"address","nodeType":"ElementaryTypeName","src":"9569:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9568:17:64"},"returnParameters":{"id":31225,"nodeType":"ParameterList","parameters":[],"src":"9600:0:64"},"scope":33072,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":31251,"nodeType":"FunctionDefinition","src":"9697:161:64","nodes":[],"body":{"id":31250,"nodeType":"Block","src":"9757:101:64","nodes":[],"statements":[{"condition":{"id":31244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9771:29:64","subExpression":{"baseExpression":{"id":31241,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31151,"src":"9772:17:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":31243,"indexExpression":{"id":31242,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31238,"src":"9790:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9772:28:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31249,"nodeType":"IfStatement","src":"9767:85:64","trueBody":{"id":31248,"nodeType":"Block","src":"9802:50:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":31245,"name":"StrategyDisabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31045,"src":"9823:16:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":31246,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9823:18:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31247,"nodeType":"RevertStatement","src":"9816:25:64"}]}}]},"functionSelector":"411481e6","implemented":true,"kind":"function","modifiers":[],"name":"onlyStrategyEnabled","nameLocation":"9706:19:64","parameters":{"id":31239,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31238,"mutability":"mutable","name":"_strategy","nameLocation":"9734:9:64","nodeType":"VariableDeclaration","scope":31251,"src":"9726:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31237,"name":"address","nodeType":"ElementaryTypeName","src":"9726:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9725:19:64"},"returnParameters":{"id":31240,"nodeType":"ParameterList","parameters":[],"src":"9757:0:64"},"scope":33072,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":31264,"nodeType":"FunctionDefinition","src":"9864:146:64","nodes":[],"body":{"id":31263,"nodeType":"Block","src":"9908:102:64","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":31256,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":31254,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31184,"src":"9922:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":31255,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9937:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"9922:16:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31262,"nodeType":"IfStatement","src":"9918:86:64","trueBody":{"id":31261,"nodeType":"Block","src":"9940:64:64","statements":[{"errorCall":{"arguments":[{"id":31258,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31184,"src":"9980:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":31257,"name":"OnlyEmptyCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31031,"src":"9961:18:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":31259,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9961:32:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31260,"nodeType":"RevertStatement","src":"9954:39:64"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyEmptyCommunity","nameLocation":"9873:18:64","parameters":{"id":31252,"nodeType":"ParameterList","parameters":[],"src":"9891:2:64"},"returnParameters":{"id":31253,"nodeType":"ParameterList","parameters":[],"src":"9908:0:64"},"scope":33072,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":31280,"nodeType":"FunctionDefinition","src":"10016:172:64","nodes":[],"body":{"id":31279,"nodeType":"Block","src":"10095:93:64","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":31273,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":31271,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31266,"src":"10109:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":31272,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31268,"src":"10120:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10109:20:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31278,"nodeType":"IfStatement","src":"10105:77:64","trueBody":{"id":31277,"nodeType":"Block","src":"10131:51:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":31274,"name":"SenderNotStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31049,"src":"10152:17:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":31275,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10152:19:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31276,"nodeType":"RevertStatement","src":"10145:26:64"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyStrategyAddress","nameLocation":"10025:19:64","parameters":{"id":31269,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31266,"mutability":"mutable","name":"_sender","nameLocation":"10053:7:64","nodeType":"VariableDeclaration","scope":31280,"src":"10045:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31265,"name":"address","nodeType":"ElementaryTypeName","src":"10045:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":31268,"mutability":"mutable","name":"_strategy","nameLocation":"10070:9:64","nodeType":"VariableDeclaration","scope":31280,"src":"10062:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31267,"name":"address","nodeType":"ElementaryTypeName","src":"10062:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10044:36:64"},"returnParameters":{"id":31270,"nodeType":"ParameterList","parameters":[],"src":"10095:0:64"},"scope":33072,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":31298,"nodeType":"FunctionDefinition","src":"10194:190:64","nodes":[],"body":{"id":31297,"nodeType":"Block","src":"10260:124:64","nodes":[],"statements":[{"condition":{"id":31291,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"10274:51:64","subExpression":{"baseExpression":{"baseExpression":{"id":31285,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31177,"src":"10275:27:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":31288,"indexExpression":{"expression":{"id":31286,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"10303:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":31287,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10307:6:64","memberName":"sender","nodeType":"MemberAccess","src":"10303:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10275:39:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":31290,"indexExpression":{"id":31289,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31282,"src":"10315:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10275:50:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31296,"nodeType":"IfStatement","src":"10270:108:64","trueBody":{"id":31295,"nodeType":"Block","src":"10327:51:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":31292,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31057,"src":"10348:17:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":31293,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10348:19:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31294,"nodeType":"RevertStatement","src":"10341:26:64"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyActivatedInStrategy","nameLocation":"10203:23:64","parameters":{"id":31283,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31282,"mutability":"mutable","name":"_strategy","nameLocation":"10235:9:64","nodeType":"VariableDeclaration","scope":31298,"src":"10227:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31281,"name":"address","nodeType":"ElementaryTypeName","src":"10227:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10226:19:64"},"returnParameters":{"id":31284,"nodeType":"ParameterList","parameters":[],"src":"10260:0:64"},"scope":33072,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":31310,"nodeType":"FunctionDefinition","src":"10538:110:64","nodes":[],"body":{"id":31309,"nodeType":"Block","src":"10604:44:64","nodes":[],"statements":[{"expression":{"id":31307,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31305,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31121,"src":"10614:16:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":31306,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31300,"src":"10633:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10614:27:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31308,"nodeType":"ExpressionStatement","src":"10614:27:64"}]},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":31303,"kind":"modifierInvocation","modifierName":{"id":31302,"name":"onlyOwner","nameLocations":["10594:9:64"],"nodeType":"IdentifierPath","referencedDeclaration":13956,"src":"10594:9:64"},"nodeType":"ModifierInvocation","src":"10594:9:64"}],"name":"setStrategyTemplate","nameLocation":"10547:19:64","parameters":{"id":31301,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31300,"mutability":"mutable","name":"template","nameLocation":"10575:8:64","nodeType":"VariableDeclaration","scope":31310,"src":"10567:16:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31299,"name":"address","nodeType":"ElementaryTypeName","src":"10567:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10566:18:64"},"returnParameters":{"id":31304,"nodeType":"ParameterList","parameters":[],"src":"10604:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":31322,"nodeType":"FunctionDefinition","src":"10654:124:64","nodes":[],"body":{"id":31321,"nodeType":"Block","src":"10727:51:64","nodes":[],"statements":[{"expression":{"id":31319,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31317,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31118,"src":"10737:23:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":31318,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31312,"src":"10763:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10737:34:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31320,"nodeType":"ExpressionStatement","src":"10737:34:64"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":31315,"kind":"modifierInvocation","modifierName":{"id":31314,"name":"onlyOwner","nameLocations":["10717:9:64"],"nodeType":"IdentifierPath","referencedDeclaration":13956,"src":"10717:9:64"},"nodeType":"ModifierInvocation","src":"10717:9:64"}],"name":"setCollateralVaultTemplate","nameLocation":"10663:26:64","parameters":{"id":31313,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31312,"mutability":"mutable","name":"template","nameLocation":"10698:8:64","nodeType":"VariableDeclaration","scope":31322,"src":"10690:16:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31311,"name":"address","nodeType":"ElementaryTypeName","src":"10690:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10689:18:64"},"returnParameters":{"id":31316,"nodeType":"ParameterList","parameters":[],"src":"10727:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":31567,"nodeType":"FunctionDefinition","src":"10928:2544:64","nodes":[],"body":{"id":31566,"nodeType":"Block","src":"11135:2337:64","nodes":[],"statements":[{"expression":{"arguments":[{"id":31339,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31331,"src":"11162:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":31336,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"11145:5:64","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryCommunityV0_0_$33072_$","typeString":"type(contract super RegistryCommunityV0_0)"}},"id":31338,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11151:10:64","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":30728,"src":"11145:16:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":31340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11145:24:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31341,"nodeType":"ExpressionStatement","src":"11145:24:64"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":31342,"name":"__ReentrancyGuard_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":14315,"src":"11179:22:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":31343,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11179:24:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31344,"nodeType":"ExpressionStatement","src":"11179:24:64"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":31345,"name":"__AccessControl_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13548,"src":"11213:20:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":31346,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11213:22:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31347,"nodeType":"ExpressionStatement","src":"11213:22:64"},{"expression":{"arguments":[{"id":31349,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31190,"src":"11260:14:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":31350,"name":"DEFAULT_ADMIN_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13531,"src":"11276:18:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":31348,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13767,"src":"11246:13:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":31351,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11246:49:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31352,"nodeType":"ExpressionStatement","src":"11246:49:64"},{"expression":{"id":31358,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31353,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31140,"src":"11634:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$33113","typeString":"contract FAllo"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":31355,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"11647:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31356,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11654:5:64","memberName":"_allo","nodeType":"MemberAccess","referencedDeclaration":30843,"src":"11647:12:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31354,"name":"FAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33113,"src":"11641:5:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_FAllo_$33113_$","typeString":"type(contract FAllo)"}},"id":31357,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11641:19:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$33113","typeString":"contract FAllo"}},"src":"11634:26:64","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$33113","typeString":"contract FAllo"}},"id":31359,"nodeType":"ExpressionStatement","src":"11634:26:64"},{"expression":{"id":31363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31360,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31132,"src":"11670:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":31361,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"11684:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31362,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11691:12:64","memberName":"_gardenToken","nodeType":"MemberAccess","referencedDeclaration":30846,"src":"11684:19:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"src":"11670:33:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":31364,"nodeType":"ExpressionStatement","src":"11670:33:64"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":31368,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":31365,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"11717:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31366,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11724:20:64","memberName":"_registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":30848,"src":"11717:27:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":31367,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11748:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"11717:32:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31373,"nodeType":"IfStatement","src":"11713:89:64","trueBody":{"id":31372,"nodeType":"Block","src":"11751:51:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":31369,"name":"ValueCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31051,"src":"11772:17:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":31370,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11772:19:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31371,"nodeType":"RevertStatement","src":"11765:26:64"}]}},{"expression":{"id":31377,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31374,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"11811:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":31375,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"11833:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31376,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11840:20:64","memberName":"_registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":30848,"src":"11833:27:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11811:49:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":31378,"nodeType":"ExpressionStatement","src":"11811:49:64"},{"expression":{"id":31382,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31379,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31100,"src":"11870:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":31380,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"11885:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31381,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11892:13:64","memberName":"_communityFee","nodeType":"MemberAccess","referencedDeclaration":30850,"src":"11885:20:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11870:35:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":31383,"nodeType":"ExpressionStatement","src":"11870:35:64"},{"expression":{"id":31387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31384,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31109,"src":"11915:13:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":31385,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"11931:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31386,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11938:14:64","memberName":"_isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":30865,"src":"11931:21:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11915:37:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31388,"nodeType":"ExpressionStatement","src":"11915:37:64"},{"expression":{"id":31392,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31389,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31143,"src":"11962:13:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":31390,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"11978:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31391,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11985:14:64","memberName":"_communityName","nodeType":"MemberAccess","referencedDeclaration":30863,"src":"11978:21:64","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"11962:37:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":31393,"nodeType":"ExpressionStatement","src":"11962:37:64"},{"expression":{"id":31397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31394,"name":"covenantIpfsHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31146,"src":"12009:16:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":31395,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"12028:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31396,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12035:16:64","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":30867,"src":"12028:23:64","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"12009:42:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":31398,"nodeType":"ExpressionStatement","src":"12009:42:64"},{"expression":{"id":31402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31399,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31115,"src":"12062:15:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":31400,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"12080:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31401,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12087:16:64","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":30854,"src":"12080:23:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12062:41:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31403,"nodeType":"ExpressionStatement","src":"12062:41:64"},{"expression":{"id":31407,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31404,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31112,"src":"12113:11:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":31405,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"12127:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31406,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12134:12:64","memberName":"_feeReceiver","nodeType":"MemberAccess","referencedDeclaration":30856,"src":"12127:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12113:33:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31408,"nodeType":"ExpressionStatement","src":"12113:33:64"},{"expression":{"id":31414,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31409,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31136,"src":"12156:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":31411,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"12176:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31412,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12183:12:64","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":30861,"src":"12176:19:64","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":31410,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33380,"src":"12170:5:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISafe_$33380_$","typeString":"type(contract ISafe)"}},"id":31413,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12170:26:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}},"src":"12156:40:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}},"id":31415,"nodeType":"ExpressionStatement","src":"12156:40:64"},{"expression":{"id":31418,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31416,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31184,"src":"12206:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":31417,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12221:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"12206:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":31419,"nodeType":"ExpressionStatement","src":"12206:16:64"},{"expression":{"arguments":[{"id":31421,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31190,"src":"12244:14:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":31422,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"12260:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31423,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12267:12:64","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":30861,"src":"12260:19:64","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":31420,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13799,"src":"12233:10:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":31424,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12233:47:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31425,"nodeType":"ExpressionStatement","src":"12233:47:64"},{"expression":{"id":31432,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31426,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31128,"src":"12291:8:64","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$506","typeString":"contract IRegistry"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":31428,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31140,"src":"12312:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$33113","typeString":"contract FAllo"}},"id":31429,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12317:11:64","memberName":"getRegistry","nodeType":"MemberAccess","referencedDeclaration":33104,"src":"12312:16:64","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_address_$","typeString":"function () view external returns (address)"}},"id":31430,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12312:18:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31427,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":506,"src":"12302:9:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistry_$506_$","typeString":"type(contract IRegistry)"}},"id":31431,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12302:29:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$506","typeString":"contract IRegistry"}},"src":"12291:40:64","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$506","typeString":"contract IRegistry"}},"id":31433,"nodeType":"ExpressionStatement","src":"12291:40:64"},{"assignments":[31438],"declarations":[{"constant":false,"id":31438,"mutability":"mutable","name":"pool_initialMembers","nameLocation":"12359:19:64","nodeType":"VariableDeclaration","scope":31566,"src":"12342:36:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":31436,"name":"address","nodeType":"ElementaryTypeName","src":"12342:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31437,"nodeType":"ArrayTypeName","src":"12342:9:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":31439,"nodeType":"VariableDeclarationStatement","src":"12342:36:64"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":31447,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"arguments":[{"id":31442,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31136,"src":"12438:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":31441,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12430:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":31440,"name":"address","nodeType":"ElementaryTypeName","src":"12430:7:64","typeDescriptions":{}}},"id":31443,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12430:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31444,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12451:4:64","memberName":"code","nodeType":"MemberAccess","src":"12430:25:64","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":31445,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12456:6:64","memberName":"length","nodeType":"MemberAccess","src":"12430:32:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":31446,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12466:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"12430:37:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":31505,"nodeType":"Block","src":"12587:266:64","statements":[{"assignments":[31468],"declarations":[{"constant":false,"id":31468,"mutability":"mutable","name":"owners","nameLocation":"12618:6:64","nodeType":"VariableDeclaration","scope":31505,"src":"12601:23:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":31466,"name":"address","nodeType":"ElementaryTypeName","src":"12601:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31467,"nodeType":"ArrayTypeName","src":"12601:9:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":31472,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":31469,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31136,"src":"12627:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}},"id":31470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12639:9:64","memberName":"getOwners","nodeType":"MemberAccess","referencedDeclaration":33295,"src":"12627:21:64","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () view external returns (address[] memory)"}},"id":31471,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12627:23:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"12601:49:64"},{"expression":{"id":31482,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31473,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31438,"src":"12664:19:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":31480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":31477,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31468,"src":"12700:6:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31478,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12707:6:64","memberName":"length","nodeType":"MemberAccess","src":"12700:13:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"32","id":31479,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12716:1:64","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"12700:17:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":31476,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12686:13:64","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":31474,"name":"address","nodeType":"ElementaryTypeName","src":"12690:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31475,"nodeType":"ArrayTypeName","src":"12690:9:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":31481,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12686:32:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"12664:54:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31483,"nodeType":"ExpressionStatement","src":"12664:54:64"},{"body":{"id":31503,"nodeType":"Block","src":"12776:67:64","statements":[{"expression":{"id":31501,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":31495,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31438,"src":"12794:19:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31497,"indexExpression":{"id":31496,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31485,"src":"12814:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12794:22:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":31498,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31468,"src":"12819:6:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31500,"indexExpression":{"id":31499,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31485,"src":"12826:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"12819:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12794:34:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31502,"nodeType":"ExpressionStatement","src":"12794:34:64"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":31491,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":31488,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31485,"src":"12752:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":31489,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31468,"src":"12756:6:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31490,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12763:6:64","memberName":"length","nodeType":"MemberAccess","src":"12756:13:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"12752:17:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31504,"initializationExpression":{"assignments":[31485],"declarations":[{"constant":false,"id":31485,"mutability":"mutable","name":"i","nameLocation":"12745:1:64","nodeType":"VariableDeclaration","scope":31504,"src":"12737:9:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31484,"name":"uint256","nodeType":"ElementaryTypeName","src":"12737:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":31487,"initialValue":{"hexValue":"30","id":31486,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12749:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"12737:13:64"},"loopExpression":{"expression":{"id":31493,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"12771:3:64","subExpression":{"id":31492,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31485,"src":"12771:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":31494,"nodeType":"ExpressionStatement","src":"12771:3:64"},"nodeType":"ForStatement","src":"12732:111:64"}]},"id":31506,"nodeType":"IfStatement","src":"12426:427:64","trueBody":{"id":31463,"nodeType":"Block","src":"12469:112:64","statements":[{"expression":{"id":31454,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31448,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31438,"src":"12483:19:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"33","id":31452,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12519:1:64","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":31451,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12505:13:64","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":31449,"name":"address","nodeType":"ElementaryTypeName","src":"12509:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31450,"nodeType":"ArrayTypeName","src":"12509:9:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":31453,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12505:16:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"12483:38:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31455,"nodeType":"ExpressionStatement","src":"12483:38:64"},{"expression":{"id":31461,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":31456,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31438,"src":"12535:19:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31458,"indexExpression":{"hexValue":"30","id":31457,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12555:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12535:22:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":31459,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12560:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":31460,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12564:6:64","memberName":"sender","nodeType":"MemberAccess","src":"12560:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12535:35:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31462,"nodeType":"ExpressionStatement","src":"12535:35:64"}]}},{"expression":{"id":31517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":31507,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31438,"src":"12863:19:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31512,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":31511,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":31508,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31438,"src":"12883:19:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12903:6:64","memberName":"length","nodeType":"MemberAccess","src":"12883:26:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":31510,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12912:1:64","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"12883:30:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12863:51:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":31515,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31136,"src":"12925:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":31514,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12917:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":31513,"name":"address","nodeType":"ElementaryTypeName","src":"12917:7:64","typeDescriptions":{}}},"id":31516,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12917:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12863:74:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31518,"nodeType":"ExpressionStatement","src":"12863:74:64"},{"expression":{"id":31529,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":31519,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31438,"src":"12947:19:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31524,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":31523,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":31520,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31438,"src":"12967:19:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31521,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12987:6:64","memberName":"length","nodeType":"MemberAccess","src":"12967:26:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"32","id":31522,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12996:1:64","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"12967:30:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12947:51:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":31527,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13009:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}],"id":31526,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13001:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":31525,"name":"address","nodeType":"ElementaryTypeName","src":"13001:7:64","typeDescriptions":{}}},"id":31528,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13001:13:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12947:67:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31530,"nodeType":"ExpressionStatement","src":"12947:67:64"},{"expression":{"id":31545,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31531,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31106,"src":"13102:9:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":31534,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"13149:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31535,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"13156:6:64","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":30852,"src":"13149:13:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":31536,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31143,"src":"13164:13:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},{"expression":{"id":31537,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"13179:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31538,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"13186:9:64","memberName":"_metadata","nodeType":"MemberAccess","referencedDeclaration":30859,"src":"13179:16:64","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[{"id":31541,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13205:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}],"id":31540,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13197:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":31539,"name":"address","nodeType":"ElementaryTypeName","src":"13197:7:64","typeDescriptions":{}}},"id":31542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13197:13:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31543,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31438,"src":"13212:19:64","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_$802_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}],"expression":{"id":31532,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31128,"src":"13126:8:64","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$506","typeString":"contract IRegistry"}},"id":31533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13135:13:64","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":446,"src":"13126:22:64","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_string_memory_ptr_$_t_struct$_Metadata_$802_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":31544,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13126:106:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"13102:130:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":31546,"nodeType":"ExpressionStatement","src":"13102:130:64"},{"expression":{"id":31549,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31547,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31181,"src":"13243:14:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":31548,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31438,"src":"13260:19:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"13243:36:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":31550,"nodeType":"ExpressionStatement","src":"13243:36:64"},{"expression":{"id":31553,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31551,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31121,"src":"13290:16:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":31552,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31327,"src":"13309:17:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13290:36:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31554,"nodeType":"ExpressionStatement","src":"13290:36:64"},{"expression":{"id":31557,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31555,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31118,"src":"13336:23:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":31556,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31329,"src":"13362:24:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13336:50:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31558,"nodeType":"ExpressionStatement","src":"13336:50:64"},{"eventCall":{"arguments":[{"id":31560,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31106,"src":"13422:9:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":31561,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31143,"src":"13433:13:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},{"expression":{"id":31562,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31325,"src":"13448:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":31563,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"13455:9:64","memberName":"_metadata","nodeType":"MemberAccess","referencedDeclaration":30859,"src":"13448:16:64","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_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_$802_memory_ptr","typeString":"struct Metadata memory"}],"id":31559,"name":"RegistryInitialized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30952,"src":"13402:19:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bytes32_$_t_string_memory_ptr_$_t_struct$_Metadata_$802_memory_ptr_$returns$__$","typeString":"function (bytes32,string memory,struct Metadata memory)"}},"id":31564,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13402:63:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31565,"nodeType":"EmitStatement","src":"13397:68:64"}]},"functionSelector":"34196355","implemented":true,"kind":"function","modifiers":[{"id":31334,"kind":"modifierInvocation","modifierName":{"id":31333,"name":"initializer","nameLocations":["11123:11:64"],"nodeType":"IdentifierPath","referencedDeclaration":14193,"src":"11123:11:64"},"nodeType":"ModifierInvocation","src":"11123:11:64"}],"name":"initialize","nameLocation":"10937:10:64","parameters":{"id":31332,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31325,"mutability":"mutable","name":"params","nameLocation":"11002:6:64","nodeType":"VariableDeclaration","scope":31567,"src":"10957:51:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":31324,"nodeType":"UserDefinedTypeName","pathNode":{"id":31323,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["10957:37:64"],"nodeType":"IdentifierPath","referencedDeclaration":30868,"src":"10957:37:64"},"referencedDeclaration":30868,"src":"10957:37:64","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$30868_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":31327,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"11026:17:64","nodeType":"VariableDeclaration","scope":31567,"src":"11018:25:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31326,"name":"address","nodeType":"ElementaryTypeName","src":"11018:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":31329,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"11061:24:64","nodeType":"VariableDeclaration","scope":31567,"src":"11053:32:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31328,"name":"address","nodeType":"ElementaryTypeName","src":"11053:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":31331,"mutability":"mutable","name":"_owner","nameLocation":"11103:6:64","nodeType":"VariableDeclaration","scope":31567,"src":"11095:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31330,"name":"address","nodeType":"ElementaryTypeName","src":"11095:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10947:168:64"},"returnParameters":{"id":31335,"nodeType":"ParameterList","parameters":[],"src":"11135:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":31706,"nodeType":"FunctionDefinition","src":"13478:1359:64","nodes":[],"body":{"id":31705,"nodeType":"Block","src":"13674:1163:64","nodes":[],"statements":[{"assignments":[31583],"declarations":[{"constant":false,"id":31583,"mutability":"mutable","name":"strategyProxy","nameLocation":"13692:13:64","nodeType":"VariableDeclaration","scope":31705,"src":"13684:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31582,"name":"address","nodeType":"ElementaryTypeName","src":"13684:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":31608,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":31591,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31121,"src":"13771:16:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31590,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13763:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":31589,"name":"address","nodeType":"ElementaryTypeName","src":"13763:7:64","typeDescriptions":{}}},"id":31592,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13763:25:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":31595,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30151,"src":"13850:14:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$30151_$","typeString":"type(contract CVStrategyV0_0)"}},"id":31596,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13865:4:64","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":26588,"src":"13850:19:64","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function CVStrategyV0_0.init(address,address,address)"}},"id":31597,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13870:8:64","memberName":"selector","nodeType":"MemberAccess","src":"13850:28:64","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":31600,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31140,"src":"13888:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$33113","typeString":"contract FAllo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_FAllo_$33113","typeString":"contract FAllo"}],"id":31599,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13880:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":31598,"name":"address","nodeType":"ElementaryTypeName","src":"13880:7:64","typeDescriptions":{}}},"id":31601,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13880:13:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31602,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31118,"src":"13895:23:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":31603,"name":"proxyOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30738,"src":"13920:10:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":31604,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13920:12:64","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":31593,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13806:3:64","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":31594,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13810:18:64","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"13806:22:64","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":31605,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13806:144:64","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":31588,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"13729:16:64","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$16082_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":31587,"nodeType":"UserDefinedTypeName","pathNode":{"id":31586,"name":"ERC1967Proxy","nameLocations":["13733:12:64"],"nodeType":"IdentifierPath","referencedDeclaration":16082,"src":"13733:12:64"},"referencedDeclaration":16082,"src":"13733:12:64","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$16082","typeString":"contract ERC1967Proxy"}}},"id":31606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13729:235:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$16082","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$16082","typeString":"contract ERC1967Proxy"}],"id":31585,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13708:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":31584,"name":"address","nodeType":"ElementaryTypeName","src":"13708:7:64","typeDescriptions":{}}},"id":31607,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13708:266:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"13684:290:64"},{"expression":{"id":31618,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"components":[{"id":31609,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31578,"src":"13985:6:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":31610,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31580,"src":"13993:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":31611,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"TupleExpression","src":"13984:18:64","typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":31613,"name":"strategyProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31583,"src":"14016:13:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31614,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31569,"src":"14031:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31615,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31572,"src":"14039:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},{"id":31616,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31575,"src":"14048:9:64","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"},{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata memory"}],"id":31612,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[31706,31771],"referencedDeclaration":31771,"src":"14005:10:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr_$_t_struct$_Metadata_$802_memory_ptr_$returns$_t_uint256_$_t_address_$","typeString":"function (address,address,struct CVStrategyInitializeParamsV0_1 memory,struct Metadata memory) returns (uint256,address)"}},"id":31617,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14005:53:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"src":"13984:74:64","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31619,"nodeType":"ExpressionStatement","src":"13984:74:64"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":31629,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":31622,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31572,"src":"14081:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":31623,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14089:11:64","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":26274,"src":"14081:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31621,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14073:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":31620,"name":"address","nodeType":"ElementaryTypeName","src":"14073:7:64","typeDescriptions":{}}},"id":31624,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14073:28:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":31627,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14113:1:64","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":31626,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14105:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":31625,"name":"address","nodeType":"ElementaryTypeName","src":"14105:7:64","typeDescriptions":{}}},"id":31628,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14105:10:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14073:42:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31676,"nodeType":"IfStatement","src":"14069:453:64","trueBody":{"id":31675,"nodeType":"Block","src":"14117:405:64","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":31634,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":31630,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31572,"src":"14135:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":31631,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14143:16:64","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":26279,"src":"14135:24:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31632,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14160:6:64","memberName":"length","nodeType":"MemberAccess","src":"14135:31:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"3130303030","id":31633,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14169:5:64","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"value":"10000"},"src":"14135:39:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31642,"nodeType":"IfStatement","src":"14131:133:64","trueBody":{"id":31641,"nodeType":"Block","src":"14176:88:64","statements":[{"errorCall":{"arguments":[{"expression":{"expression":{"id":31636,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31572,"src":"14217:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":31637,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14225:16:64","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":26279,"src":"14217:24:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31638,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14242:6:64","memberName":"length","nodeType":"MemberAccess","src":"14217:31:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":31635,"name":"AllowlistTooBig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31027,"src":"14201:15:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":31639,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14201:48:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31640,"nodeType":"RevertStatement","src":"14194:55:64"}]}},{"assignments":[31644],"declarations":[{"constant":false,"id":31644,"mutability":"mutable","name":"allowlistRole","nameLocation":"14285:13:64","nodeType":"VariableDeclaration","scope":31675,"src":"14277:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":31643,"name":"bytes32","nodeType":"ElementaryTypeName","src":"14277:7:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":31652,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":31648,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14328:11:64","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":31649,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31578,"src":"14341:6:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":31646,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14311:3:64","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":31647,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14315:12:64","memberName":"encodePacked","nodeType":"MemberAccess","src":"14311:16:64","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":31650,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14311:37:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":31645,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14301:9:64","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":31651,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14301:48:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"14277:72:64"},{"body":{"id":31673,"nodeType":"Block","src":"14425:87:64","statements":[{"expression":{"arguments":[{"id":31666,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31644,"src":"14454:13:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"expression":{"id":31667,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31572,"src":"14469:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":31668,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14477:16:64","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":26279,"src":"14469:24:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31670,"indexExpression":{"id":31669,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31654,"src":"14494:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14469:27:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":31665,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13799,"src":"14443:10:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":31671,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14443:54:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31672,"nodeType":"ExpressionStatement","src":"14443:54:64"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":31661,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":31657,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31654,"src":"14383:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"expression":{"id":31658,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31572,"src":"14387:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":31659,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14395:16:64","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":26279,"src":"14387:24:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":31660,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14412:6:64","memberName":"length","nodeType":"MemberAccess","src":"14387:31:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14383:35:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31674,"initializationExpression":{"assignments":[31654],"declarations":[{"constant":false,"id":31654,"mutability":"mutable","name":"i","nameLocation":"14376:1:64","nodeType":"VariableDeclaration","scope":31674,"src":"14368:9:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31653,"name":"uint256","nodeType":"ElementaryTypeName","src":"14368:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":31656,"initialValue":{"hexValue":"30","id":31655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14380:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"14368:13:64"},"loopExpression":{"expression":{"id":31663,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"14420:3:64","subExpression":{"id":31662,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31654,"src":"14420:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":31664,"nodeType":"ExpressionStatement","src":"14420:3:64"},"nodeType":"ForStatement","src":"14363:149:64"}]}},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":31681,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14657:11:64","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":31682,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31578,"src":"14670:6:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":31679,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14640:3:64","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":31680,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14644:12:64","memberName":"encodePacked","nodeType":"MemberAccess","src":"14640:16:64","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":31683,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14640:37:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":31678,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14630:9:64","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":31684,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14630:48:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c4953545f41444d494e","id":31688,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14707:17:64","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},"value":"ALLOWLIST_ADMIN"},{"id":31689,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31578,"src":"14726:6:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":31686,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14690:3:64","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":31687,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14694:12:64","memberName":"encodePacked","nodeType":"MemberAccess","src":"14690:16:64","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":31690,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14690:43:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":31685,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14680:9:64","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":31691,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14680:54:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":31677,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13767,"src":"14603:13:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":31692,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14603:141:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31693,"nodeType":"ExpressionStatement","src":"14603:141:64"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c4953545f41444d494e","id":31698,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14792:17:64","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},"value":"ALLOWLIST_ADMIN"},{"id":31699,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31578,"src":"14811:6:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":31696,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14775:3:64","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":31697,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14779:12:64","memberName":"encodePacked","nodeType":"MemberAccess","src":"14775:16:64","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":31700,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14775:43:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":31695,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14765:9:64","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":31701,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14765:54:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":31702,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31580,"src":"14821:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":31694,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13799,"src":"14754:10:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":31703,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14754:76:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31704,"nodeType":"ExpressionStatement","src":"14754:76:64"}]},"functionSelector":"e0eab988","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"13487:10:64","parameters":{"id":31576,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31569,"mutability":"mutable","name":"_token","nameLocation":"13506:6:64","nodeType":"VariableDeclaration","scope":31706,"src":"13498:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31568,"name":"address","nodeType":"ElementaryTypeName","src":"13498:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":31572,"mutability":"mutable","name":"_params","nameLocation":"13552:7:64","nodeType":"VariableDeclaration","scope":31706,"src":"13514:45:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":31571,"nodeType":"UserDefinedTypeName","pathNode":{"id":31570,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["13514:30:64"],"nodeType":"IdentifierPath","referencedDeclaration":26280,"src":"13514:30:64"},"referencedDeclaration":26280,"src":"13514:30:64","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"},{"constant":false,"id":31575,"mutability":"mutable","name":"_metadata","nameLocation":"13577:9:64","nodeType":"VariableDeclaration","scope":31706,"src":"13561:25:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":31574,"nodeType":"UserDefinedTypeName","pathNode":{"id":31573,"name":"Metadata","nameLocations":["13561:8:64"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"13561:8:64"},"referencedDeclaration":802,"src":"13561:8:64","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"13497:90:64"},"returnParameters":{"id":31581,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31578,"mutability":"mutable","name":"poolId","nameLocation":"13644:6:64","nodeType":"VariableDeclaration","scope":31706,"src":"13636:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31577,"name":"uint256","nodeType":"ElementaryTypeName","src":"13636:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":31580,"mutability":"mutable","name":"strategy","nameLocation":"13660:8:64","nodeType":"VariableDeclaration","scope":31706,"src":"13652:16:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31579,"name":"address","nodeType":"ElementaryTypeName","src":"13652:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13635:34:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":31771,"nodeType":"FunctionDefinition","src":"14843:601:64","nodes":[],"body":{"id":31770,"nodeType":"Block","src":"15068:376:64","nodes":[],"statements":[{"assignments":[31724],"declarations":[{"constant":false,"id":31724,"mutability":"mutable","name":"token","nameLocation":"15086:5:64","nodeType":"VariableDeclaration","scope":31770,"src":"15078:13:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31723,"name":"address","nodeType":"ElementaryTypeName","src":"15078:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":31726,"initialValue":{"id":31725,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31082,"src":"15094:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"15078:22:64"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":31732,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":31727,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31710,"src":"15114:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":31730,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15132:1:64","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":31729,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15124:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":31728,"name":"address","nodeType":"ElementaryTypeName","src":"15124:7:64","typeDescriptions":{}}},"id":31731,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15124:10:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15114:20:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31738,"nodeType":"IfStatement","src":"15110:65:64","trueBody":{"id":31737,"nodeType":"Block","src":"15136:39:64","statements":[{"expression":{"id":31735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31733,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31724,"src":"15150:5:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":31734,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31710,"src":"15158:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15150:14:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31736,"nodeType":"ExpressionStatement","src":"15150:14:64"}]}},{"expression":{"id":31741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31739,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31721,"src":"15184:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":31740,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31708,"src":"15195:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15184:20:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31742,"nodeType":"ExpressionStatement","src":"15184:20:64"},{"expression":{"id":31757,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31743,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31719,"src":"15215:6:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":31746,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31106,"src":"15271:9:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":31747,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31721,"src":"15282:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":31750,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31713,"src":"15303:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"expression":{"id":31748,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"15292:3:64","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":31749,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15296:6:64","memberName":"encode","nodeType":"MemberAccess","src":"15292:10:64","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":31751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15292:19:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":31752,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31724,"src":"15313:5:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":31753,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15320:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":31754,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31716,"src":"15323:9:64","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata memory"}},{"id":31755,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31181,"src":"15334:14:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}}],"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_$802_memory_ptr","typeString":"struct Metadata memory"},{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}],"expression":{"id":31744,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31140,"src":"15224:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$33113","typeString":"contract FAllo"}},"id":31745,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15229:28:64","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":33099,"src":"15224:33:64","typeDescriptions":{"typeIdentifier":"t_function_external_payable$_t_bytes32_$_t_address_$_t_bytes_memory_ptr_$_t_address_$_t_uint256_$_t_struct$_Metadata_$802_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":31756,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15224:134:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15215:143:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":31758,"nodeType":"ExpressionStatement","src":"15215:143:64"},{"eventCall":{"arguments":[{"id":31760,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31719,"src":"15386:6:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":31761,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31721,"src":"15394:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":31764,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"15412:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}],"id":31763,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15404:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":31762,"name":"address","nodeType":"ElementaryTypeName","src":"15404:7:64","typeDescriptions":{}}},"id":31765,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15404:13:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31766,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31710,"src":"15419:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31767,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31716,"src":"15427:9:64","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_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_$802_memory_ptr","typeString":"struct Metadata memory"}],"id":31759,"name":"PoolCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31019,"src":"15374:11:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_address_$_t_address_$_t_address_$_t_struct$_Metadata_$802_memory_ptr_$returns$__$","typeString":"function (uint256,address,address,address,struct Metadata memory)"}},"id":31768,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15374:63:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31769,"nodeType":"EmitStatement","src":"15369:68:64"}]},"functionSelector":"f24b150f","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"14852:10:64","parameters":{"id":31717,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31708,"mutability":"mutable","name":"_strategy","nameLocation":"14880:9:64","nodeType":"VariableDeclaration","scope":31771,"src":"14872:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31707,"name":"address","nodeType":"ElementaryTypeName","src":"14872:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":31710,"mutability":"mutable","name":"_token","nameLocation":"14907:6:64","nodeType":"VariableDeclaration","scope":31771,"src":"14899:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31709,"name":"address","nodeType":"ElementaryTypeName","src":"14899:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":31713,"mutability":"mutable","name":"_params","nameLocation":"14961:7:64","nodeType":"VariableDeclaration","scope":31771,"src":"14923:45:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":31712,"nodeType":"UserDefinedTypeName","pathNode":{"id":31711,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["14923:30:64"],"nodeType":"IdentifierPath","referencedDeclaration":26280,"src":"14923:30:64"},"referencedDeclaration":26280,"src":"14923:30:64","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$26280_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"},{"constant":false,"id":31716,"mutability":"mutable","name":"_metadata","nameLocation":"14994:9:64","nodeType":"VariableDeclaration","scope":31771,"src":"14978:25:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":31715,"nodeType":"UserDefinedTypeName","pathNode":{"id":31714,"name":"Metadata","nameLocations":["14978:8:64"],"nodeType":"IdentifierPath","referencedDeclaration":802,"src":"14978:8:64"},"referencedDeclaration":802,"src":"14978:8:64","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$802_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"14862:147:64"},"returnParameters":{"id":31722,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31719,"mutability":"mutable","name":"poolId","nameLocation":"15042:6:64","nodeType":"VariableDeclaration","scope":31771,"src":"15034:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31718,"name":"uint256","nodeType":"ElementaryTypeName","src":"15034:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":31721,"mutability":"mutable","name":"strategy","nameLocation":"15058:8:64","nodeType":"VariableDeclaration","scope":31771,"src":"15050:16:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31720,"name":"address","nodeType":"ElementaryTypeName","src":"15050:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15033:34:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":31890,"nodeType":"FunctionDefinition","src":"15450:1225:64","nodes":[],"body":{"id":31889,"nodeType":"Block","src":"15548:1127:64","nodes":[],"statements":[{"expression":{"arguments":[{"id":31781,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31773,"src":"15584:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31780,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31236,"src":"15558:25:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":31782,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15558:34:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31783,"nodeType":"ExpressionStatement","src":"15558:34:64"},{"expression":{"arguments":[{"id":31785,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31775,"src":"15622:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31784,"name":"onlyStrategyEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31251,"src":"15602:19:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":31786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15602:30:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31787,"nodeType":"ExpressionStatement","src":"15602:30:64"},{"expression":{"arguments":[{"expression":{"id":31789,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15662:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":31790,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15666:6:64","memberName":"sender","nodeType":"MemberAccess","src":"15662:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31791,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31775,"src":"15674:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":31788,"name":"onlyStrategyAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31280,"src":"15642:19:64","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":31792,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15642:42:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31793,"nodeType":"ExpressionStatement","src":"15642:42:64"},{"condition":{"baseExpression":{"baseExpression":{"id":31794,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31177,"src":"15741:27:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":31796,"indexExpression":{"id":31795,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31773,"src":"15769:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15741:36:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":31798,"indexExpression":{"id":31797,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31775,"src":"15778:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15741:47:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31803,"nodeType":"IfStatement","src":"15737:107:64","trueBody":{"id":31802,"nodeType":"Block","src":"15790:54:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":31799,"name":"UserAlreadyActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31039,"src":"15811:20:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":31800,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15811:22:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31801,"nodeType":"RevertStatement","src":"15804:29:64"}]}},{"assignments":[31806],"declarations":[{"constant":false,"id":31806,"mutability":"mutable","name":"member","nameLocation":"15868:6:64","nodeType":"VariableDeclaration","scope":31889,"src":"15854:20:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_memory_ptr","typeString":"struct Member"},"typeName":{"id":31805,"nodeType":"UserDefinedTypeName","pathNode":{"id":31804,"name":"Member","nameLocations":["15854:6:64"],"nodeType":"IdentifierPath","referencedDeclaration":30875,"src":"15854:6:64"},"referencedDeclaration":30875,"src":"15854:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":31810,"initialValue":{"baseExpression":{"id":31807,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31164,"src":"15877:19:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":31809,"indexExpression":{"id":31808,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31773,"src":"15897:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15877:28:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15854:51:64"},{"assignments":[31812],"declarations":[{"constant":false,"id":31812,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"15924:17:64","nodeType":"VariableDeclaration","scope":31889,"src":"15916:25:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31811,"name":"uint256","nodeType":"ElementaryTypeName","src":"15916:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":31815,"initialValue":{"expression":{"id":31813,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31806,"src":"15944:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_memory_ptr","typeString":"struct Member memory"}},"id":31814,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15951:12:64","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":30872,"src":"15944:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15916:47:64"},{"assignments":[31817],"declarations":[{"constant":false,"id":31817,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"15981:16:64","nodeType":"VariableDeclaration","scope":31889,"src":"15973:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31816,"name":"uint256","nodeType":"ElementaryTypeName","src":"15973:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":31819,"initialValue":{"id":31818,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"16000:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15973:46:64"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"id":31827,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":31821,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31775,"src":"16049:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31820,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26134,"src":"16034:14:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}},"id":31822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16034:25:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$26134","typeString":"contract IPointStrategy"}},"id":31823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16060:14:64","memberName":"getPointSystem","nodeType":"MemberAccess","referencedDeclaration":26133,"src":"16034:40:64","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_enum$_PointSystem_$26143_$","typeString":"function () external returns (enum PointSystem)"}},"id":31824,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16034:42:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":31825,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"16080:11:64","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$26143_$","typeString":"type(enum PointSystem)"}},"id":31826,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"16092:9:64","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":26142,"src":"16080:21:64","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"16034:67:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"},"id":31846,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":31840,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31775,"src":"16223:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31839,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26134,"src":"16208:14:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}},"id":31841,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16208:25:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$26134","typeString":"contract IPointStrategy"}},"id":31842,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16234:14:64","memberName":"getPointSystem","nodeType":"MemberAccess","referencedDeclaration":26133,"src":"16208:40:64","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_enum$_PointSystem_$26143_$","typeString":"function () external returns (enum PointSystem)"}},"id":31843,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16208:42:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":31844,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26143,"src":"16254:11:64","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$26143_$","typeString":"type(enum PointSystem)"}},"id":31845,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"16266:5:64","memberName":"Fixed","nodeType":"MemberAccess","referencedDeclaration":26139,"src":"16254:17:64","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$26143","typeString":"enum PointSystem"}},"src":"16208:63:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31858,"nodeType":"IfStatement","src":"16204:180:64","trueBody":{"id":31857,"nodeType":"Block","src":"16273:111:64","statements":[{"expression":{"id":31855,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31847,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31817,"src":"16287:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":31852,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31773,"src":"16346:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31853,"name":"totalStakedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31812,"src":"16355:17:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":31849,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31775,"src":"16321:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31848,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26134,"src":"16306:14:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}},"id":31850,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16306:25:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$26134","typeString":"contract IPointStrategy"}},"id":31851,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16332:13:64","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":26118,"src":"16306:39:64","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":31854,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16306:67:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16287:86:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":31856,"nodeType":"ExpressionStatement","src":"16287:86:64"}]}},"id":31859,"nodeType":"IfStatement","src":"16030:354:64","trueBody":{"id":31838,"nodeType":"Block","src":"16103:95:64","statements":[{"expression":{"id":31836,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":31828,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31817,"src":"16117:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":31833,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31773,"src":"16176:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":31834,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16185:1:64","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":31830,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31775,"src":"16151:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31829,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26134,"src":"16136:14:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}},"id":31831,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16136:25:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$26134","typeString":"contract IPointStrategy"}},"id":31832,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16162:13:64","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":26118,"src":"16136:39:64","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":31835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16136:51:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16117:70:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":31837,"nodeType":"ExpressionStatement","src":"16117:70:64"}]}},{"expression":{"id":31866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":31860,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31158,"src":"16394:21:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":31863,"indexExpression":{"id":31861,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31773,"src":"16416:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16394:30:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":31864,"indexExpression":{"id":31862,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31775,"src":"16425:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16394:41:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":31865,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31817,"src":"16438:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16394:60:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":31867,"nodeType":"ExpressionStatement","src":"16394:60:64"},{"expression":{"id":31874,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":31868,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31177,"src":"16483:27:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":31871,"indexExpression":{"id":31869,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31773,"src":"16511:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16483:36:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":31872,"indexExpression":{"id":31870,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31775,"src":"16520:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16483:47:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":31873,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"16533:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"16483:54:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31875,"nodeType":"ExpressionStatement","src":"16483:54:64"},{"expression":{"arguments":[{"id":31880,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31775,"src":"16581:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"baseExpression":{"id":31876,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31170,"src":"16548:18:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":31878,"indexExpression":{"id":31877,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31773,"src":"16567:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16548:27:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":31879,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16576:4:64","memberName":"push","nodeType":"MemberAccess","src":"16548:32:64","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":31881,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16548:43:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31882,"nodeType":"ExpressionStatement","src":"16548:43:64"},{"eventCall":{"arguments":[{"id":31884,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31773,"src":"16631:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31885,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31775,"src":"16640:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31886,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31817,"src":"16651:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":31883,"name":"MemberActivatedStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30968,"src":"16607:23:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":31887,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16607:61:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31888,"nodeType":"EmitStatement","src":"16602:66:64"}]},"functionSelector":"0d4a8b49","implemented":true,"kind":"function","modifiers":[{"id":31778,"kind":"modifierInvocation","modifierName":{"id":31777,"name":"nonReentrant","nameLocations":["15535:12:64"],"nodeType":"IdentifierPath","referencedDeclaration":14336,"src":"15535:12:64"},"nodeType":"ModifierInvocation","src":"15535:12:64"}],"name":"activateMemberInStrategy","nameLocation":"15459:24:64","parameters":{"id":31776,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31773,"mutability":"mutable","name":"_member","nameLocation":"15492:7:64","nodeType":"VariableDeclaration","scope":31890,"src":"15484:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31772,"name":"address","nodeType":"ElementaryTypeName","src":"15484:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":31775,"mutability":"mutable","name":"_strategy","nameLocation":"15509:9:64","nodeType":"VariableDeclaration","scope":31890,"src":"15501:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31774,"name":"address","nodeType":"ElementaryTypeName","src":"15501:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15483:36:64"},"returnParameters":{"id":31779,"nodeType":"ParameterList","parameters":[],"src":"15548:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":31945,"nodeType":"FunctionDefinition","src":"16681:702:64","nodes":[],"body":{"id":31944,"nodeType":"Block","src":"16768:615:64","nodes":[],"statements":[{"expression":{"arguments":[{"id":31898,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31892,"src":"16804:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":31897,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31236,"src":"16778:25:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":31899,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16778:34:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31900,"nodeType":"ExpressionStatement","src":"16778:34:64"},{"expression":{"arguments":[{"expression":{"id":31902,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16884:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":31903,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16888:6:64","memberName":"sender","nodeType":"MemberAccess","src":"16884:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31904,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31894,"src":"16896:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":31901,"name":"onlyStrategyAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31280,"src":"16864:19:64","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":31905,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16864:42:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31906,"nodeType":"ExpressionStatement","src":"16864:42:64"},{"condition":{"id":31912,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"16921:48:64","subExpression":{"baseExpression":{"baseExpression":{"id":31907,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31177,"src":"16922:27:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":31909,"indexExpression":{"id":31908,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31892,"src":"16950:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16922:36:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":31911,"indexExpression":{"id":31910,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31894,"src":"16959:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16922:47:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31917,"nodeType":"IfStatement","src":"16917:110:64","trueBody":{"id":31916,"nodeType":"Block","src":"16971:56:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":31913,"name":"UserAlreadyDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31041,"src":"16992:22:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":31914,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16992:24:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31915,"nodeType":"RevertStatement","src":"16985:31:64"}]}},{"expression":{"id":31924,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":31918,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31177,"src":"17037:27:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":31921,"indexExpression":{"id":31919,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31892,"src":"17065:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17037:36:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":31922,"indexExpression":{"id":31920,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31894,"src":"17074:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"17037:47:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":31923,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"17087:5:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"17037:55:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31925,"nodeType":"ExpressionStatement","src":"17037:55:64"},{"expression":{"id":31932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":31926,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31158,"src":"17102:21:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":31929,"indexExpression":{"id":31927,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31892,"src":"17124:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17102:30:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":31930,"indexExpression":{"id":31928,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31894,"src":"17133:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"17102:41:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":31931,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17146:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"17102:45:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":31933,"nodeType":"ExpressionStatement","src":"17102:45:64"},{"expression":{"arguments":[{"id":31935,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31892,"src":"17182:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31936,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31894,"src":"17191:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":31934,"name":"removeStrategyFromMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31998,"src":"17157:24:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":31937,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17157:44:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31938,"nodeType":"ExpressionStatement","src":"17157:44:64"},{"eventCall":{"arguments":[{"id":31940,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31892,"src":"17357:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":31941,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31894,"src":"17366:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":31939,"name":"MemberDeactivatedStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30974,"src":"17331:25:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":31942,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17331:45:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31943,"nodeType":"EmitStatement","src":"17326:50:64"}]},"functionSelector":"22bcf999","implemented":true,"kind":"function","modifiers":[],"name":"deactivateMemberInStrategy","nameLocation":"16690:26:64","parameters":{"id":31895,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31892,"mutability":"mutable","name":"_member","nameLocation":"16725:7:64","nodeType":"VariableDeclaration","scope":31945,"src":"16717:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31891,"name":"address","nodeType":"ElementaryTypeName","src":"16717:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":31894,"mutability":"mutable","name":"_strategy","nameLocation":"16742:9:64","nodeType":"VariableDeclaration","scope":31945,"src":"16734:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31893,"name":"address","nodeType":"ElementaryTypeName","src":"16734:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16716:36:64"},"returnParameters":{"id":31896,"nodeType":"ParameterList","parameters":[],"src":"16768:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":31998,"nodeType":"FunctionDefinition","src":"17389:433:64","nodes":[],"body":{"id":31997,"nodeType":"Block","src":"17476:346:64","nodes":[],"statements":[{"assignments":[31956],"declarations":[{"constant":false,"id":31956,"mutability":"mutable","name":"memberStrategies","nameLocation":"17504:16:64","nodeType":"VariableDeclaration","scope":31997,"src":"17486:34:64","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":31954,"name":"address","nodeType":"ElementaryTypeName","src":"17486:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31955,"nodeType":"ArrayTypeName","src":"17486:9:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":31960,"initialValue":{"baseExpression":{"id":31957,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31170,"src":"17523:18:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":31959,"indexExpression":{"id":31958,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31947,"src":"17542:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17523:27:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"17486:64:64"},{"body":{"id":31995,"nodeType":"Block","src":"17614:202:64","statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":31976,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":31972,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31956,"src":"17632:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":31974,"indexExpression":{"id":31973,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31962,"src":"17649:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17632:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":31975,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31949,"src":"17655:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17632:32:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31994,"nodeType":"IfStatement","src":"17628:178:64","trueBody":{"id":31993,"nodeType":"Block","src":"17666:140:64","statements":[{"expression":{"id":31986,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":31977,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31956,"src":"17684:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":31979,"indexExpression":{"id":31978,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31962,"src":"17701:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"17684:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":31980,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31956,"src":"17706:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":31985,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":31984,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":31981,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31956,"src":"17723:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":31982,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17740:6:64","memberName":"length","nodeType":"MemberAccess","src":"17723:23:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":31983,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17749:1:64","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"17723:27:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17706:45:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17684:67:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":31987,"nodeType":"ExpressionStatement","src":"17684:67:64"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":31988,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31956,"src":"17769:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":31990,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17786:3:64","memberName":"pop","nodeType":"MemberAccess","src":"17769:20:64","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":31991,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17769:22:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":31992,"nodeType":"ExpressionStatement","src":"17769:22:64"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":31968,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":31965,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31962,"src":"17580:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":31966,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31956,"src":"17584:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":31967,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17601:6:64","memberName":"length","nodeType":"MemberAccess","src":"17584:23:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17580:27:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":31996,"initializationExpression":{"assignments":[31962],"declarations":[{"constant":false,"id":31962,"mutability":"mutable","name":"i","nameLocation":"17573:1:64","nodeType":"VariableDeclaration","scope":31996,"src":"17565:9:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31961,"name":"uint256","nodeType":"ElementaryTypeName","src":"17565:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":31964,"initialValue":{"hexValue":"30","id":31963,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17577:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17565:13:64"},"loopExpression":{"expression":{"id":31970,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"17609:3:64","subExpression":{"id":31969,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31962,"src":"17609:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":31971,"nodeType":"ExpressionStatement","src":"17609:3:64"},"nodeType":"ForStatement","src":"17560:256:64"}]},"implemented":true,"kind":"function","modifiers":[],"name":"removeStrategyFromMember","nameLocation":"17398:24:64","parameters":{"id":31950,"nodeType":"ParameterList","parameters":[{"constant":false,"id":31947,"mutability":"mutable","name":"_member","nameLocation":"17431:7:64","nodeType":"VariableDeclaration","scope":31998,"src":"17423:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31946,"name":"address","nodeType":"ElementaryTypeName","src":"17423:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":31949,"mutability":"mutable","name":"_strategy","nameLocation":"17448:9:64","nodeType":"VariableDeclaration","scope":31998,"src":"17440:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":31948,"name":"address","nodeType":"ElementaryTypeName","src":"17440:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"17422:36:64"},"returnParameters":{"id":31951,"nodeType":"ParameterList","parameters":[],"src":"17476:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":32086,"nodeType":"FunctionDefinition","src":"17828:986:64","nodes":[],"body":{"id":32085,"nodeType":"Block","src":"17902:912:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32005,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31221,"src":"17912:24:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32006,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17912:26:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32007,"nodeType":"ExpressionStatement","src":"17912:26:64"},{"assignments":[32009],"declarations":[{"constant":false,"id":32009,"mutability":"mutable","name":"member","nameLocation":"17956:6:64","nodeType":"VariableDeclaration","scope":32085,"src":"17948:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32008,"name":"address","nodeType":"ElementaryTypeName","src":"17948:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":32012,"initialValue":{"expression":{"id":32010,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17965:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":32011,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17969:6:64","memberName":"sender","nodeType":"MemberAccess","src":"17965:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"17948:27:64"},{"assignments":[32014],"declarations":[{"constant":false,"id":32014,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"17993:16:64","nodeType":"VariableDeclaration","scope":32085,"src":"17985:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32013,"name":"uint256","nodeType":"ElementaryTypeName","src":"17985:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":32015,"nodeType":"VariableDeclarationStatement","src":"17985:24:64"},{"body":{"id":32060,"nodeType":"Block","src":"18084:522:64","statements":[{"expression":{"id":32041,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":32029,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32014,"src":"18213:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":32038,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32009,"src":"18292:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":32039,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32000,"src":"18300:13:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"baseExpression":{"baseExpression":{"id":32031,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31170,"src":"18247:18:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":32033,"indexExpression":{"id":32032,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32009,"src":"18266:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18247:26:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":32035,"indexExpression":{"id":32034,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32017,"src":"18274:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18247:29:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32030,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26134,"src":"18232:14:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}},"id":32036,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18232:45:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$26134","typeString":"contract IPointStrategy"}},"id":32037,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18278:13:64","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":26118,"src":"18232:59:64","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":32040,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18232:82:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18213:101:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32042,"nodeType":"ExpressionStatement","src":"18213:101:64"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32045,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32043,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32014,"src":"18332:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":32044,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18352:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"18332:21:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32059,"nodeType":"IfStatement","src":"18328:252:64","trueBody":{"id":32058,"nodeType":"Block","src":"18355:225:64","statements":[{"expression":{"id":32056,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":32046,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31158,"src":"18373:21:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":32053,"indexExpression":{"id":32047,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32009,"src":"18395:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18373:29:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":32054,"indexExpression":{"baseExpression":{"baseExpression":{"id":32048,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31170,"src":"18403:18:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":32050,"indexExpression":{"id":32049,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32009,"src":"18422:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18403:26:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":32052,"indexExpression":{"id":32051,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32017,"src":"18430:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18403:29:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"18373:60:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":32055,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32014,"src":"18437:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18373:80:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32057,"nodeType":"ExpressionStatement","src":"18373:80:64"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32020,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32017,"src":"18040:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":32021,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31170,"src":"18044:18:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":32023,"indexExpression":{"id":32022,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32009,"src":"18063:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18044:26:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":32024,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18071:6:64","memberName":"length","nodeType":"MemberAccess","src":"18044:33:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18040:37:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32061,"initializationExpression":{"assignments":[32017],"declarations":[{"constant":false,"id":32017,"mutability":"mutable","name":"i","nameLocation":"18033:1:64","nodeType":"VariableDeclaration","scope":32061,"src":"18025:9:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32016,"name":"uint256","nodeType":"ElementaryTypeName","src":"18025:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":32019,"initialValue":{"hexValue":"30","id":32018,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18037:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"18025:13:64"},"loopExpression":{"expression":{"id":32027,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"18079:3:64","subExpression":{"id":32026,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32017,"src":"18079:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32028,"nodeType":"ExpressionStatement","src":"18079:3:64"},"nodeType":"ForStatement","src":"18020:586:64"},{"expression":{"arguments":[{"id":32065,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32009,"src":"18645:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":32068,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18661:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}],"id":32067,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18653:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":32066,"name":"address","nodeType":"ElementaryTypeName","src":"18653:7:64","typeDescriptions":{}}},"id":32069,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18653:13:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":32070,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32000,"src":"18668:13:64","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":32062,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31132,"src":"18616:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":32064,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18628:16:64","memberName":"safeTransferFrom","nodeType":"MemberAccess","referencedDeclaration":17519,"src":"18616:28:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_address_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$17398_$","typeString":"function (contract IERC20,address,address,uint256)"}},"id":32071,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18616:66:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32072,"nodeType":"ExpressionStatement","src":"18616:66:64"},{"expression":{"id":32078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":32073,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31164,"src":"18692:19:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":32075,"indexExpression":{"id":32074,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32009,"src":"18712:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18692:27:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage","typeString":"struct Member storage ref"}},"id":32076,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18720:12:64","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":30872,"src":"18692:40:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":32077,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32000,"src":"18736:13:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18692:57:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32079,"nodeType":"ExpressionStatement","src":"18692:57:64"},{"eventCall":{"arguments":[{"id":32081,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32009,"src":"18785:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":32082,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32000,"src":"18793:13:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":32080,"name":"MemberPowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30984,"src":"18764:20:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":32083,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18764:43:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32084,"nodeType":"EmitStatement","src":"18759:48:64"}]},"functionSelector":"559de05d","implemented":true,"kind":"function","modifiers":[{"id":32003,"kind":"modifierInvocation","modifierName":{"id":32002,"name":"nonReentrant","nameLocations":["17889:12:64"],"nodeType":"IdentifierPath","referencedDeclaration":14336,"src":"17889:12:64"},"nodeType":"ModifierInvocation","src":"17889:12:64"}],"name":"increasePower","nameLocation":"17837:13:64","parameters":{"id":32001,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32000,"mutability":"mutable","name":"_amountStaked","nameLocation":"17859:13:64","nodeType":"VariableDeclaration","scope":32086,"src":"17851:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":31999,"name":"uint256","nodeType":"ElementaryTypeName","src":"17851:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17850:23:64"},"returnParameters":{"id":32004,"nodeType":"ParameterList","parameters":[],"src":"17902:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":32236,"nodeType":"FunctionDefinition","src":"18957:1562:64","nodes":[],"body":{"id":32235,"nodeType":"Block","src":"19033:1486:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32093,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31221,"src":"19043:24:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32094,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19043:26:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32095,"nodeType":"ExpressionStatement","src":"19043:26:64"},{"assignments":[32097],"declarations":[{"constant":false,"id":32097,"mutability":"mutable","name":"member","nameLocation":"19087:6:64","nodeType":"VariableDeclaration","scope":32235,"src":"19079:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32096,"name":"address","nodeType":"ElementaryTypeName","src":"19079:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":32100,"initialValue":{"expression":{"id":32098,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"19096:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":32099,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19100:6:64","memberName":"sender","nodeType":"MemberAccess","src":"19096:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"19079:27:64"},{"assignments":[32105],"declarations":[{"constant":false,"id":32105,"mutability":"mutable","name":"memberStrategies","nameLocation":"19134:16:64","nodeType":"VariableDeclaration","scope":32235,"src":"19116:34:64","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":32103,"name":"address","nodeType":"ElementaryTypeName","src":"19116:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":32104,"nodeType":"ArrayTypeName","src":"19116:9:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":32109,"initialValue":{"baseExpression":{"id":32106,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31170,"src":"19153:18:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":32108,"indexExpression":{"id":32107,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32097,"src":"19172:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19153:26:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"19116:63:64"},{"assignments":[32111],"declarations":[{"constant":false,"id":32111,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"19198:16:64","nodeType":"VariableDeclaration","scope":32235,"src":"19190:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32110,"name":"uint256","nodeType":"ElementaryTypeName","src":"19190:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":32112,"nodeType":"VariableDeclarationStatement","src":"19190:24:64"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32118,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":32113,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31164,"src":"19229:19:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":32115,"indexExpression":{"id":32114,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32097,"src":"19249:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19229:27:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage","typeString":"struct Member storage ref"}},"id":32116,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19257:12:64","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":30872,"src":"19229:40:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":32117,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32088,"src":"19272:15:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19229:58:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":32119,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"19290:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19229:80:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32125,"nodeType":"IfStatement","src":"19225:140:64","trueBody":{"id":32124,"nodeType":"Block","src":"19311:54:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":32121,"name":"DecreaseUnderMinimum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31059,"src":"19332:20:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":32122,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19332:22:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32123,"nodeType":"RevertStatement","src":"19325:29:64"}]}},{"expression":{"arguments":[{"id":32129,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32097,"src":"19399:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":32130,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32088,"src":"19407:15:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":32126,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31132,"src":"19374:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":32128,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19386:12:64","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":17492,"src":"19374:24:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$17398_$","typeString":"function (contract IERC20,address,uint256)"}},"id":32131,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19374:49:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32132,"nodeType":"ExpressionStatement","src":"19374:49:64"},{"body":{"id":32221,"nodeType":"Block","src":"19487:897:64","statements":[{"assignments":[32145],"declarations":[{"constant":false,"id":32145,"mutability":"mutable","name":"strategy","nameLocation":"19509:8:64","nodeType":"VariableDeclaration","scope":32221,"src":"19501:16:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32144,"name":"address","nodeType":"ElementaryTypeName","src":"19501:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":32149,"initialValue":{"baseExpression":{"id":32146,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32105,"src":"19520:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":32148,"indexExpression":{"id":32147,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32134,"src":"19537:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19520:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"19501:38:64"},{"condition":{"arguments":[{"expression":{"arguments":[{"id":32153,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26134,"src":"19589:14:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}],"id":32152,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"19584:4:64","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":32154,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19584:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$26134","typeString":"type(contract IPointStrategy)"}},"id":32155,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"19605:11:64","memberName":"interfaceId","nodeType":"MemberAccess","src":"19584:32:64","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":32150,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32145,"src":"19557:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":32151,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19566:17:64","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":18600,"src":"19557:26:64","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":32156,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19557:60:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":32219,"nodeType":"Block","src":"20107:250:64","statements":[{"expression":{"id":32208,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":32199,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32105,"src":"20192:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":32201,"indexExpression":{"id":32200,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32134,"src":"20209:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"20192:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":32202,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32105,"src":"20214:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":32207,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32206,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":32203,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32105,"src":"20231:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":32204,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20248:6:64","memberName":"length","nodeType":"MemberAccess","src":"20231:23:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":32205,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20257:1:64","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"20231:27:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20214:45:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"20192:67:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":32209,"nodeType":"ExpressionStatement","src":"20192:67:64"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":32210,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32105,"src":"20277:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":32212,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20294:3:64","memberName":"pop","nodeType":"MemberAccess","src":"20277:20:64","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":32213,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20277:22:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32214,"nodeType":"ExpressionStatement","src":"20277:22:64"},{"expression":{"arguments":[{"id":32216,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32145,"src":"20333:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32215,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32426,"src":"20317:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":32217,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20317:25:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32218,"nodeType":"ExpressionStatement","src":"20317:25:64"}]},"id":32220,"nodeType":"IfStatement","src":"19553:804:64","trueBody":{"id":32198,"nodeType":"Block","src":"19619:482:64","statements":[{"expression":{"id":32165,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":32157,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32111,"src":"19637:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":32162,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32097,"src":"19695:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":32163,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32088,"src":"19703:15:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":32159,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32145,"src":"19671:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32158,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26134,"src":"19656:14:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}},"id":32160,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19656:24:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$26134","typeString":"contract IPointStrategy"}},"id":32161,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19681:13:64","memberName":"decreasePower","nodeType":"MemberAccess","referencedDeclaration":26127,"src":"19656:38:64","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":32164,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19656:63:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19637:82:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32166,"nodeType":"ExpressionStatement","src":"19637:82:64"},{"assignments":[32168],"declarations":[{"constant":false,"id":32168,"mutability":"mutable","name":"currentPower","nameLocation":"19745:12:64","nodeType":"VariableDeclaration","scope":32198,"src":"19737:20:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32167,"name":"uint256","nodeType":"ElementaryTypeName","src":"19737:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":32176,"initialValue":{"baseExpression":{"baseExpression":{"id":32169,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31158,"src":"19760:21:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":32171,"indexExpression":{"id":32170,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32097,"src":"19782:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19760:29:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":32175,"indexExpression":{"baseExpression":{"id":32172,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32105,"src":"19790:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":32174,"indexExpression":{"id":32173,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32134,"src":"19807:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19790:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19760:50:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19737:73:64"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32179,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32177,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32111,"src":"19832:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":32178,"name":"currentPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32168,"src":"19851:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19832:31:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":32196,"nodeType":"Block","src":"19976:111:64","statements":[{"expression":{"id":32194,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":32186,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31158,"src":"19998:21:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":32191,"indexExpression":{"id":32187,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32097,"src":"20020:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19998:29:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":32192,"indexExpression":{"baseExpression":{"id":32188,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32105,"src":"20028:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":32190,"indexExpression":{"id":32189,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32134,"src":"20045:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20028:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"19998:50:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":32193,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32111,"src":"20052:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19998:70:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32195,"nodeType":"ExpressionStatement","src":"19998:70:64"}]},"id":32197,"nodeType":"IfStatement","src":"19828:259:64","trueBody":{"id":32185,"nodeType":"Block","src":"19865:105:64","statements":[{"errorCall":{"arguments":[{"id":32181,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32111,"src":"19920:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":32182,"name":"currentPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32168,"src":"19938:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":32180,"name":"CantDecreaseMoreThanPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31065,"src":"19894:25:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":32183,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19894:57:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32184,"nodeType":"RevertStatement","src":"19887:64:64"}]}}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32140,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32137,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32134,"src":"19453:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":32138,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32105,"src":"19457:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":32139,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19474:6:64","memberName":"length","nodeType":"MemberAccess","src":"19457:23:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19453:27:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32222,"initializationExpression":{"assignments":[32134],"declarations":[{"constant":false,"id":32134,"mutability":"mutable","name":"i","nameLocation":"19446:1:64","nodeType":"VariableDeclaration","scope":32222,"src":"19438:9:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32133,"name":"uint256","nodeType":"ElementaryTypeName","src":"19438:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":32136,"initialValue":{"hexValue":"30","id":32135,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"19450:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"19438:13:64"},"loopExpression":{"expression":{"id":32142,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"19482:3:64","subExpression":{"id":32141,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32134,"src":"19482:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32143,"nodeType":"ExpressionStatement","src":"19482:3:64"},"nodeType":"ForStatement","src":"19433:951:64"},{"expression":{"id":32228,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":32223,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31164,"src":"20393:19:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":32225,"indexExpression":{"id":32224,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32097,"src":"20413:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20393:27:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage","typeString":"struct Member storage ref"}},"id":32226,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"20421:12:64","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":30872,"src":"20393:40:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":32227,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32088,"src":"20437:15:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20393:59:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32229,"nodeType":"ExpressionStatement","src":"20393:59:64"},{"eventCall":{"arguments":[{"id":32231,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32097,"src":"20488:6:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":32232,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32088,"src":"20496:15:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":32230,"name":"MemberPowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30990,"src":"20467:20:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":32233,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20467:45:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32234,"nodeType":"EmitStatement","src":"20462:50:64"}]},"functionSelector":"5ecf71c5","implemented":true,"kind":"function","modifiers":[{"id":32091,"kind":"modifierInvocation","modifierName":{"id":32090,"name":"nonReentrant","nameLocations":["19020:12:64"],"nodeType":"IdentifierPath","referencedDeclaration":14336,"src":"19020:12:64"},"nodeType":"ModifierInvocation","src":"19020:12:64"}],"name":"decreasePower","nameLocation":"18966:13:64","parameters":{"id":32089,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32088,"mutability":"mutable","name":"_amountUnstaked","nameLocation":"18988:15:64","nodeType":"VariableDeclaration","scope":32236,"src":"18980:23:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32087,"name":"uint256","nodeType":"ElementaryTypeName","src":"18980:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18979:25:64"},"returnParameters":{"id":32092,"nodeType":"ParameterList","parameters":[],"src":"19033:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":32252,"nodeType":"FunctionDefinition","src":"20525:173:64","nodes":[],"body":{"id":32251,"nodeType":"Block","src":"20633:65:64","nodes":[],"statements":[{"expression":{"baseExpression":{"baseExpression":{"id":32245,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31158,"src":"20650:21:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":32247,"indexExpression":{"id":32246,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32238,"src":"20672:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20650:30:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":32249,"indexExpression":{"id":32248,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32240,"src":"20681:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20650:41:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":32244,"id":32250,"nodeType":"Return","src":"20643:48:64"}]},"functionSelector":"7817ee4f","implemented":true,"kind":"function","modifiers":[],"name":"getMemberPowerInStrategy","nameLocation":"20534:24:64","parameters":{"id":32241,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32238,"mutability":"mutable","name":"_member","nameLocation":"20567:7:64","nodeType":"VariableDeclaration","scope":32252,"src":"20559:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32237,"name":"address","nodeType":"ElementaryTypeName","src":"20559:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":32240,"mutability":"mutable","name":"_strategy","nameLocation":"20584:9:64","nodeType":"VariableDeclaration","scope":32252,"src":"20576:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32239,"name":"address","nodeType":"ElementaryTypeName","src":"20576:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20558:36:64"},"returnParameters":{"id":32244,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32243,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":32252,"src":"20624:7:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32242,"name":"uint256","nodeType":"ElementaryTypeName","src":"20624:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20623:9:64"},"scope":33072,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":32265,"nodeType":"FunctionDefinition","src":"20704:151:64","nodes":[],"body":{"id":32264,"nodeType":"Block","src":"20790:65:64","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":32259,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31164,"src":"20807:19:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":32261,"indexExpression":{"id":32260,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32254,"src":"20827:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20807:28:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage","typeString":"struct Member storage ref"}},"id":32262,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"20836:12:64","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":30872,"src":"20807:41:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":32258,"id":32263,"nodeType":"Return","src":"20800:48:64"}]},"functionSelector":"2c611c4a","implemented":true,"kind":"function","modifiers":[],"name":"getMemberStakedAmount","nameLocation":"20713:21:64","parameters":{"id":32255,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32254,"mutability":"mutable","name":"_member","nameLocation":"20743:7:64","nodeType":"VariableDeclaration","scope":32265,"src":"20735:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32253,"name":"address","nodeType":"ElementaryTypeName","src":"20735:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20734:17:64"},"returnParameters":{"id":32258,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32257,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":32265,"src":"20781:7:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32256,"name":"uint256","nodeType":"ElementaryTypeName","src":"20781:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20780:9:64"},"scope":33072,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":32298,"nodeType":"FunctionDefinition","src":"20861:324:64","nodes":[],"body":{"id":32297,"nodeType":"Block","src":"20921:264:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32270,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31207,"src":"20931:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32271,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20931:17:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32272,"nodeType":"ExpressionStatement","src":"20931:17:64"},{"assignments":[32274],"declarations":[{"constant":false,"id":32274,"mutability":"mutable","name":"strategy","nameLocation":"20966:8:64","nodeType":"VariableDeclaration","scope":32297,"src":"20958:16:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32273,"name":"address","nodeType":"ElementaryTypeName","src":"20958:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":32283,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":32279,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32267,"src":"20998:6:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":32277,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31140,"src":"20985:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$33113","typeString":"contract FAllo"}},"id":32278,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20990:7:64","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":33112,"src":"20985:12:64","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$23_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":32280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20985:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$23_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":32281,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21006:8:64","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":13,"src":"20985:29:64","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$673","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$673","typeString":"contract IStrategy"}],"id":32276,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20977:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":32275,"name":"address","nodeType":"ElementaryTypeName","src":"20977:7:64","typeDescriptions":{}}},"id":32282,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20977:38:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"20958:57:64"},{"condition":{"arguments":[{"expression":{"arguments":[{"id":32287,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26134,"src":"21102:14:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}],"id":32286,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"21097:4:64","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":32288,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21097:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$26134","typeString":"type(contract IPointStrategy)"}},"id":32289,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"21118:11:64","memberName":"interfaceId","nodeType":"MemberAccess","src":"21097:32:64","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":32284,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32274,"src":"21070:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":32285,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21079:17:64","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":18600,"src":"21070:26:64","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":32290,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21070:60:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32296,"nodeType":"IfStatement","src":"21066:113:64","trueBody":{"id":32295,"nodeType":"Block","src":"21132:47:64","statements":[{"expression":{"arguments":[{"id":32292,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32274,"src":"21159:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32291,"name":"_addStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32364,"src":"21146:12:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":32293,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21146:22:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32294,"nodeType":"ExpressionStatement","src":"21146:22:64"}]}}]},"functionSelector":"82d6a1e7","implemented":true,"kind":"function","modifiers":[],"name":"addStrategyByPoolId","nameLocation":"20870:19:64","parameters":{"id":32268,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32267,"mutability":"mutable","name":"poolId","nameLocation":"20898:6:64","nodeType":"VariableDeclaration","scope":32298,"src":"20890:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32266,"name":"uint256","nodeType":"ElementaryTypeName","src":"20890:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20889:16:64"},"returnParameters":{"id":32269,"nodeType":"ParameterList","parameters":[],"src":"20921:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":32311,"nodeType":"FunctionDefinition","src":"21191:128:64","nodes":[],"body":{"id":32310,"nodeType":"Block","src":"21249:70:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32303,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31207,"src":"21259:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32304,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21259:17:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32305,"nodeType":"ExpressionStatement","src":"21259:17:64"},{"expression":{"arguments":[{"id":32307,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32300,"src":"21299:12:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32306,"name":"_addStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32364,"src":"21286:12:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":32308,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21286:26:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32309,"nodeType":"ExpressionStatement","src":"21286:26:64"}]},"functionSelector":"223e5479","implemented":true,"kind":"function","modifiers":[],"name":"addStrategy","nameLocation":"21200:11:64","parameters":{"id":32301,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32300,"mutability":"mutable","name":"_newStrategy","nameLocation":"21220:12:64","nodeType":"VariableDeclaration","scope":32311,"src":"21212:20:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32299,"name":"address","nodeType":"ElementaryTypeName","src":"21212:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"21211:22:64"},"returnParameters":{"id":32302,"nodeType":"ParameterList","parameters":[],"src":"21249:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":32364,"nodeType":"FunctionDefinition","src":"21325:456:64","nodes":[],"body":{"id":32363,"nodeType":"Block","src":"21386:395:64","nodes":[],"statements":[{"condition":{"baseExpression":{"id":32316,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31151,"src":"21400:17:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":32318,"indexExpression":{"id":32317,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32313,"src":"21418:12:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21400:31:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32323,"nodeType":"IfStatement","src":"21396:85:64","trueBody":{"id":32322,"nodeType":"Block","src":"21433:48:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":32319,"name":"StrategyExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31043,"src":"21454:14:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":32320,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21454:16:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32321,"nodeType":"RevertStatement","src":"21447:23:64"}]}},{"expression":{"id":32328,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":32324,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31151,"src":"21490:17:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":32326,"indexExpression":{"id":32325,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32313,"src":"21508:12:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"21490:31:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":32327,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"21524:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"21490:38:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32329,"nodeType":"ExpressionStatement","src":"21490:38:64"},{"assignments":[32332],"declarations":[{"constant":false,"id":32332,"mutability":"mutable","name":"sybilScorer","nameLocation":"21551:11:64","nodeType":"VariableDeclaration","scope":32363,"src":"21538:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"},"typeName":{"id":32331,"nodeType":"UserDefinedTypeName","pathNode":{"id":32330,"name":"ISybilScorer","nameLocations":["21538:12:64"],"nodeType":"IdentifierPath","referencedDeclaration":30228,"src":"21538:12:64"},"referencedDeclaration":30228,"src":"21538:12:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"visibility":"internal"}],"id":32341,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"id":32336,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32313,"src":"21588:12:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32335,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21580:8:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":32334,"name":"address","nodeType":"ElementaryTypeName","src":"21580:8:64","stateMutability":"payable","typeDescriptions":{}}},"id":32337,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21580:21:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":32333,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30151,"src":"21565:14:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$30151_$","typeString":"type(contract CVStrategyV0_0)"}},"id":32338,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21565:37:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$30151","typeString":"contract CVStrategyV0_0"}},"id":32339,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21603:11:64","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":26541,"src":"21565:49:64","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISybilScorer_$30228_$","typeString":"function () view external returns (contract ISybilScorer)"}},"id":32340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21565:51:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"nodeType":"VariableDeclarationStatement","src":"21538:78:64"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":32350,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":32344,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32332,"src":"21638:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}],"id":32343,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21630:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":32342,"name":"address","nodeType":"ElementaryTypeName","src":"21630:7:64","typeDescriptions":{}}},"id":32345,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21630:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":32348,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21662:1:64","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":32347,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21654:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":32346,"name":"address","nodeType":"ElementaryTypeName","src":"21654:7:64","typeDescriptions":{}}},"id":32349,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21654:10:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"21630:34:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32358,"nodeType":"IfStatement","src":"21626:107:64","trueBody":{"id":32357,"nodeType":"Block","src":"21666:67:64","statements":[{"expression":{"arguments":[{"id":32354,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32313,"src":"21709:12:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":32351,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32332,"src":"21680:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$30228","typeString":"contract ISybilScorer"}},"id":32353,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21692:16:64","memberName":"activateStrategy","nodeType":"MemberAccess","referencedDeclaration":30227,"src":"21680:28:64","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":32355,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21680:42:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32356,"nodeType":"ExpressionStatement","src":"21680:42:64"}]}},{"eventCall":{"arguments":[{"id":32360,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32313,"src":"21761:12:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32359,"name":"StrategyAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30956,"src":"21747:13:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":32361,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21747:27:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32362,"nodeType":"EmitStatement","src":"21742:32:64"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addStrategy","nameLocation":"21334:12:64","parameters":{"id":32314,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32313,"mutability":"mutable","name":"_newStrategy","nameLocation":"21355:12:64","nodeType":"VariableDeclaration","scope":32364,"src":"21347:20:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32312,"name":"address","nodeType":"ElementaryTypeName","src":"21347:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"21346:22:64"},"returnParameters":{"id":32315,"nodeType":"ParameterList","parameters":[],"src":"21386:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":32386,"nodeType":"FunctionDefinition","src":"21787:220:64","nodes":[],"body":{"id":32385,"nodeType":"Block","src":"21841:166:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32369,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31207,"src":"21851:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32370,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21851:17:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32371,"nodeType":"ExpressionStatement","src":"21851:17:64"},{"condition":{"baseExpression":{"id":32372,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31151,"src":"21882:17:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":32374,"indexExpression":{"id":32373,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32366,"src":"21900:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21882:28:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32380,"nodeType":"IfStatement","src":"21878:85:64","trueBody":{"id":32379,"nodeType":"Block","src":"21912:51:64","statements":[{"expression":{"arguments":[{"id":32376,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32366,"src":"21942:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32375,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32426,"src":"21926:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":32377,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21926:26:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32378,"nodeType":"ExpressionStatement","src":"21926:26:64"}]}},{"eventCall":{"arguments":[{"id":32382,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32366,"src":"21990:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32381,"name":"PoolRejected","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31023,"src":"21977:12:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":32383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21977:23:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32384,"nodeType":"EmitStatement","src":"21972:28:64"}]},"functionSelector":"fb1f6917","implemented":true,"kind":"function","modifiers":[],"name":"rejectPool","nameLocation":"21796:10:64","parameters":{"id":32367,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32366,"mutability":"mutable","name":"_strategy","nameLocation":"21815:9:64","nodeType":"VariableDeclaration","scope":32386,"src":"21807:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32365,"name":"address","nodeType":"ElementaryTypeName","src":"21807:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"21806:19:64"},"returnParameters":{"id":32368,"nodeType":"ParameterList","parameters":[],"src":"21841:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":32410,"nodeType":"FunctionDefinition","src":"22013:240:64","nodes":[],"body":{"id":32409,"nodeType":"Block","src":"22076:177:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32391,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31207,"src":"22086:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32392,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22086:17:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32393,"nodeType":"ExpressionStatement","src":"22086:17:64"},{"assignments":[32395],"declarations":[{"constant":false,"id":32395,"mutability":"mutable","name":"strategy","nameLocation":"22121:8:64","nodeType":"VariableDeclaration","scope":32409,"src":"22113:16:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32394,"name":"address","nodeType":"ElementaryTypeName","src":"22113:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":32404,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":32400,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32388,"src":"22153:6:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":32398,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31140,"src":"22140:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$33113","typeString":"contract FAllo"}},"id":32399,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22145:7:64","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":33112,"src":"22140:12:64","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_uint256_$returns$_t_struct$_Pool_$23_memory_ptr_$","typeString":"function (uint256) view external returns (struct IAllo.Pool memory)"}},"id":32401,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22140:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$23_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":32402,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"22161:8:64","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":13,"src":"22140:29:64","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$673","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$673","typeString":"contract IStrategy"}],"id":32397,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22132:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":32396,"name":"address","nodeType":"ElementaryTypeName","src":"22132:7:64","typeDescriptions":{}}},"id":32403,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22132:38:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"22113:57:64"},{"expression":{"arguments":[{"id":32406,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32395,"src":"22237:8:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32405,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32426,"src":"22221:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":32407,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22221:25:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32408,"nodeType":"ExpressionStatement","src":"22221:25:64"}]},"functionSelector":"73265c37","implemented":true,"kind":"function","modifiers":[],"name":"removeStrategyByPoolId","nameLocation":"22022:22:64","parameters":{"id":32389,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32388,"mutability":"mutable","name":"poolId","nameLocation":"22053:6:64","nodeType":"VariableDeclaration","scope":32410,"src":"22045:14:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32387,"name":"uint256","nodeType":"ElementaryTypeName","src":"22045:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22044:16:64"},"returnParameters":{"id":32390,"nodeType":"ParameterList","parameters":[],"src":"22076:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":32426,"nodeType":"FunctionDefinition","src":"22259:197:64","nodes":[],"body":{"id":32425,"nodeType":"Block","src":"22320:136:64","nodes":[],"statements":[{"expression":{"id":32419,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":32415,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31151,"src":"22372:17:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":32417,"indexExpression":{"id":32416,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32412,"src":"22390:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"22372:28:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":32418,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"22403:5:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"22372:36:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32420,"nodeType":"ExpressionStatement","src":"22372:36:64"},{"eventCall":{"arguments":[{"id":32422,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32412,"src":"22439:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32421,"name":"StrategyRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30960,"src":"22423:15:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":32423,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22423:26:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32424,"nodeType":"EmitStatement","src":"22418:31:64"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeStrategy","nameLocation":"22268:15:64","parameters":{"id":32413,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32412,"mutability":"mutable","name":"_strategy","nameLocation":"22292:9:64","nodeType":"VariableDeclaration","scope":32426,"src":"22284:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32411,"name":"address","nodeType":"ElementaryTypeName","src":"22284:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"22283:19:64"},"returnParameters":{"id":32414,"nodeType":"ParameterList","parameters":[],"src":"22320:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":32439,"nodeType":"FunctionDefinition","src":"22462:128:64","nodes":[],"body":{"id":32438,"nodeType":"Block","src":"22520:70:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32431,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31207,"src":"22530:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32432,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22530:17:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32433,"nodeType":"ExpressionStatement","src":"22530:17:64"},{"expression":{"arguments":[{"id":32435,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32428,"src":"22573:9:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32434,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32426,"src":"22557:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":32436,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22557:26:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32437,"nodeType":"ExpressionStatement","src":"22557:26:64"}]},"functionSelector":"175188e8","implemented":true,"kind":"function","modifiers":[],"name":"removeStrategy","nameLocation":"22471:14:64","parameters":{"id":32429,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32428,"mutability":"mutable","name":"_strategy","nameLocation":"22494:9:64","nodeType":"VariableDeclaration","scope":32439,"src":"22486:17:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32427,"name":"address","nodeType":"ElementaryTypeName","src":"22486:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"22485:19:64"},"returnParameters":{"id":32430,"nodeType":"ParameterList","parameters":[],"src":"22520:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":32460,"nodeType":"FunctionDefinition","src":"22596:251:64","nodes":[],"body":{"id":32459,"nodeType":"Block","src":"22658:189:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32444,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31207,"src":"22668:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32445,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22668:17:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32446,"nodeType":"ExpressionStatement","src":"22668:17:64"},{"expression":{"id":32449,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":32447,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31124,"src":"22733:18:64","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":32448,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32441,"src":"22754:5:64","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"22733:26:64","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":32450,"nodeType":"ExpressionStatement","src":"22733:26:64"},{"eventCall":{"arguments":[{"arguments":[{"id":32454,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31136,"src":"22807:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":32453,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22799:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":32452,"name":"address","nodeType":"ElementaryTypeName","src":"22799:7:64","typeDescriptions":{}}},"id":32455,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22799:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":32456,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31124,"src":"22821:18:64","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":32451,"name":"CouncilSafeChangeStarted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30911,"src":"22774:24:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":32457,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22774:66:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32458,"nodeType":"EmitStatement","src":"22769:71:64"}]},"functionSelector":"397e2543","implemented":true,"kind":"function","modifiers":[],"name":"setCouncilSafe","nameLocation":"22605:14:64","parameters":{"id":32442,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32441,"mutability":"mutable","name":"_safe","nameLocation":"22636:5:64","nodeType":"VariableDeclaration","scope":32460,"src":"22620:21:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":32440,"name":"address","nodeType":"ElementaryTypeName","src":"22620:15:64","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"22619:23:64"},"returnParameters":{"id":32443,"nodeType":"ParameterList","parameters":[],"src":"22658:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":32502,"nodeType":"FunctionDefinition","src":"22853:403:64","nodes":[],"body":{"id":32501,"nodeType":"Block","src":"22897:359:64","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":32466,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":32463,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"22911:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":32464,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22915:6:64","memberName":"sender","nodeType":"MemberAccess","src":"22911:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":32465,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31124,"src":"22925:18:64","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"22911:32:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32471,"nodeType":"IfStatement","src":"22907:89:64","trueBody":{"id":32470,"nodeType":"Block","src":"22945:51:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":32467,"name":"SenderNotNewOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31047,"src":"22966:17:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":32468,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22966:19:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32469,"nodeType":"RevertStatement","src":"22959:26:64"}]}},{"expression":{"arguments":[{"id":32473,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31190,"src":"23016:14:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":32474,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31124,"src":"23032:18:64","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":32472,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13799,"src":"23005:10:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":32475,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23005:46:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32476,"nodeType":"ExpressionStatement","src":"23005:46:64"},{"expression":{"arguments":[{"id":32478,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31190,"src":"23073:14:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":32481,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31136,"src":"23097:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":32480,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23089:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":32479,"name":"address","nodeType":"ElementaryTypeName","src":"23089:7:64","typeDescriptions":{}}},"id":32482,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23089:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":32477,"name":"_revokeRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13830,"src":"23061:11:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":32483,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23061:49:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32484,"nodeType":"ExpressionStatement","src":"23061:49:64"},{"expression":{"id":32489,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":32485,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31136,"src":"23120:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":32487,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31124,"src":"23140:18:64","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":32486,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33380,"src":"23134:5:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISafe_$33380_$","typeString":"type(contract ISafe)"}},"id":32488,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23134:25:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}},"src":"23120:39:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}},"id":32490,"nodeType":"ExpressionStatement","src":"23120:39:64"},{"expression":{"id":32492,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"23169:25:64","subExpression":{"id":32491,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31124,"src":"23176:18:64","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32493,"nodeType":"ExpressionStatement","src":"23169:25:64"},{"eventCall":{"arguments":[{"arguments":[{"id":32497,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31136,"src":"23236:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$33380","typeString":"contract ISafe"}],"id":32496,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23228:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":32495,"name":"address","nodeType":"ElementaryTypeName","src":"23228:7:64","typeDescriptions":{}}},"id":32498,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23228:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32494,"name":"CouncilSafeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30905,"src":"23209:18:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":32499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23209:40:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32500,"nodeType":"EmitStatement","src":"23204:45:64"}]},"functionSelector":"b5058c50","implemented":true,"kind":"function","modifiers":[],"name":"acceptCouncilSafe","nameLocation":"22862:17:64","parameters":{"id":32461,"nodeType":"ParameterList","parameters":[],"src":"22879:2:64"},"returnParameters":{"id":32462,"nodeType":"ParameterList","parameters":[],"src":"22897:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":32515,"nodeType":"FunctionDefinition","src":"23262:135:64","nodes":[],"body":{"id":32514,"nodeType":"Block","src":"23332:65:64","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":32509,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31164,"src":"23349:19:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":32511,"indexExpression":{"id":32510,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32504,"src":"23369:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23349:28:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage","typeString":"struct Member storage ref"}},"id":32512,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23378:12:64","memberName":"isRegistered","nodeType":"MemberAccess","referencedDeclaration":30874,"src":"23349:41:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":32508,"id":32513,"nodeType":"Return","src":"23342:48:64"}]},"functionSelector":"a230c524","implemented":true,"kind":"function","modifiers":[],"name":"isMember","nameLocation":"23271:8:64","parameters":{"id":32505,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32504,"mutability":"mutable","name":"_member","nameLocation":"23288:7:64","nodeType":"VariableDeclaration","scope":32515,"src":"23280:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32503,"name":"address","nodeType":"ElementaryTypeName","src":"23280:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"23279:17:64"},"returnParameters":{"id":32508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32507,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":32515,"src":"23326:4:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":32506,"name":"bool","nodeType":"ElementaryTypeName","src":"23326:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"23325:6:64"},"scope":33072,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":32636,"nodeType":"FunctionDefinition","src":"23403:1963:64","nodes":[],"body":{"id":32635,"nodeType":"Block","src":"23490:1876:64","nodes":[],"statements":[{"assignments":[32524],"declarations":[{"constant":false,"id":32524,"mutability":"mutable","name":"gardensFactory","nameLocation":"23517:14:64","nodeType":"VariableDeclaration","scope":32635,"src":"23500:31:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$30166","typeString":"contract IRegistryFactory"},"typeName":{"id":32523,"nodeType":"UserDefinedTypeName","pathNode":{"id":32522,"name":"IRegistryFactory","nameLocations":["23500:16:64"],"nodeType":"IdentifierPath","referencedDeclaration":30166,"src":"23500:16:64"},"referencedDeclaration":30166,"src":"23500:16:64","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$30166","typeString":"contract IRegistryFactory"}},"visibility":"internal"}],"id":32528,"initialValue":{"arguments":[{"id":32526,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31115,"src":"23551:15:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32525,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30166,"src":"23534:16:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistryFactory_$30166_$","typeString":"type(contract IRegistryFactory)"}},"id":32527,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23534:33:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$30166","typeString":"contract IRegistryFactory"}},"nodeType":"VariableDeclarationStatement","src":"23500:67:64"},{"assignments":[32530],"declarations":[{"constant":false,"id":32530,"mutability":"mutable","name":"communityFeeAmount","nameLocation":"23585:18:64","nodeType":"VariableDeclaration","scope":32635,"src":"23577:26:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32529,"name":"uint256","nodeType":"ElementaryTypeName","src":"23577:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":32540,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32539,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32531,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"23607:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":32532,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31100,"src":"23629:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23607:34:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":32534,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"23606:36:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32537,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":32535,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23646:3:64","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":32536,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31088,"src":"23652:15:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23646:21:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":32538,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23645:23:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23606:62:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23577:91:64"},{"assignments":[32542],"declarations":[{"constant":false,"id":32542,"mutability":"mutable","name":"gardensFeeAmount","nameLocation":"23686:16:64","nodeType":"VariableDeclaration","scope":32635,"src":"23678:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32541,"name":"uint256","nodeType":"ElementaryTypeName","src":"23678:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":32558,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32557,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32551,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32543,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"23718:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[{"id":32548,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"23778:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}],"id":32547,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23770:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":32546,"name":"address","nodeType":"ElementaryTypeName","src":"23770:7:64","typeDescriptions":{}}},"id":32549,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23770:13:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":32544,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32524,"src":"23740:14:64","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$30166","typeString":"contract IRegistryFactory"}},"id":32545,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23755:14:64","memberName":"getProtocolFee","nodeType":"MemberAccess","referencedDeclaration":30165,"src":"23740:29:64","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":32550,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23740:44:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23718:66:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":32552,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"23717:68:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32555,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":32553,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23789:3:64","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":32554,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31088,"src":"23795:15:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23789:21:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":32556,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23788:23:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23717:94:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23678:133:64"},{"condition":{"id":32563,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"23825:21:64","subExpression":{"arguments":[{"expression":{"id":32560,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"23835:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":32561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23839:6:64","memberName":"sender","nodeType":"MemberAccess","src":"23835:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32559,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32515,"src":"23826:8:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":32562,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23826:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32634,"nodeType":"IfStatement","src":"23821:1539:64","trueBody":{"id":32633,"nodeType":"Block","src":"23848:1512:64","statements":[{"expression":{"id":32570,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":32564,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31164,"src":"23862:19:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":32567,"indexExpression":{"expression":{"id":32565,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"23882:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":32566,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23886:6:64","memberName":"sender","nodeType":"MemberAccess","src":"23882:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23862:31:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage","typeString":"struct Member storage ref"}},"id":32568,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"23894:12:64","memberName":"isRegistered","nodeType":"MemberAccess","referencedDeclaration":30874,"src":"23862:44:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":32569,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"23909:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"23862:51:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32571,"nodeType":"ExpressionStatement","src":"23862:51:64"},{"expression":{"id":32578,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":32572,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31164,"src":"23928:19:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":32575,"indexExpression":{"expression":{"id":32573,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"23948:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":32574,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23952:6:64","memberName":"sender","nodeType":"MemberAccess","src":"23948:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23928:31:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage","typeString":"struct Member storage ref"}},"id":32576,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"23960:12:64","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":30872,"src":"23928:44:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":32577,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"23975:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23928:66:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32579,"nodeType":"ExpressionStatement","src":"23928:66:64"},{"expression":{"arguments":[{"expression":{"id":32583,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"24192:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":32584,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24196:6:64","memberName":"sender","nodeType":"MemberAccess","src":"24192:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":32587,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"24212:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}],"id":32586,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"24204:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":32585,"name":"address","nodeType":"ElementaryTypeName","src":"24204:7:64","typeDescriptions":{}}},"id":32588,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24204:13:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32593,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32591,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32589,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"24219:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":32590,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32530,"src":"24241:18:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24219:40:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":32592,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32542,"src":"24262:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24219:59:64","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":32580,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31132,"src":"24146:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":32582,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24158:16:64","memberName":"safeTransferFrom","nodeType":"MemberAccess","referencedDeclaration":17519,"src":"24146:28:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_address_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$17398_$","typeString":"function (contract IERC20,address,address,uint256)"}},"id":32594,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24146:146:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32595,"nodeType":"ExpressionStatement","src":"24146:146:64"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32598,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32596,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32530,"src":"24717:18:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":32597,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24738:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"24717:22:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32607,"nodeType":"IfStatement","src":"24713:178:64","trueBody":{"id":32606,"nodeType":"Block","src":"24741:150:64","statements":[{"expression":{"arguments":[{"id":32602,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31112,"src":"24844:11:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":32603,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32530,"src":"24857:18:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":32599,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31132,"src":"24819:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":32601,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24831:12:64","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":17492,"src":"24819:24:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$17398_$","typeString":"function (contract IERC20,address,uint256)"}},"id":32604,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24819:57:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32605,"nodeType":"ExpressionStatement","src":"24819:57:64"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32610,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32608,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32542,"src":"24974:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":32609,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24993:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"24974:20:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32621,"nodeType":"IfStatement","src":"24970:255:64","trueBody":{"id":32620,"nodeType":"Block","src":"24996:229:64","statements":[{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":32614,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32524,"src":"25153:14:64","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$30166","typeString":"contract IRegistryFactory"}},"id":32615,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25168:21:64","memberName":"getGardensFeeReceiver","nodeType":"MemberAccess","referencedDeclaration":30158,"src":"25153:36:64","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_address_$","typeString":"function () view external returns (address)"}},"id":32616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25153:38:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":32617,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32542,"src":"25193:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":32611,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31132,"src":"25128:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":32613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25140:12:64","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":17492,"src":"25128:24:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$17398_$","typeString":"function (contract IERC20,address,uint256)"}},"id":32618,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25128:82:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32619,"nodeType":"ExpressionStatement","src":"25128:82:64"}]}},{"expression":{"id":32624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":32622,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31184,"src":"25238:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"31","id":32623,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25254:1:64","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"25238:17:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32625,"nodeType":"ExpressionStatement","src":"25238:17:64"},{"eventCall":{"arguments":[{"expression":{"id":32627,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"25304:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":32628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25308:6:64","memberName":"sender","nodeType":"MemberAccess","src":"25304:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":32629,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"25316:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":32630,"name":"covenantSig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32517,"src":"25337:11:64","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":32626,"name":"MemberRegisteredWithCovenant","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30925,"src":"25275:28:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_string_memory_ptr_$returns$__$","typeString":"function (address,uint256,string memory)"}},"id":32631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25275:74:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32632,"nodeType":"EmitStatement","src":"25270:79:64"}]}}]},"functionSelector":"9a1f46e2","implemented":true,"kind":"function","modifiers":[{"id":32520,"kind":"modifierInvocation","modifierName":{"id":32519,"name":"nonReentrant","nameLocations":["23477:12:64"],"nodeType":"IdentifierPath","referencedDeclaration":14336,"src":"23477:12:64"},"nodeType":"ModifierInvocation","src":"23477:12:64"}],"name":"stakeAndRegisterMember","nameLocation":"23412:22:64","parameters":{"id":32518,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32517,"mutability":"mutable","name":"covenantSig","nameLocation":"23449:11:64","nodeType":"VariableDeclaration","scope":32636,"src":"23435:25:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":32516,"name":"string","nodeType":"ElementaryTypeName","src":"23435:6:64","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"23434:27:64"},"returnParameters":{"id":32521,"nodeType":"ParameterList","parameters":[],"src":"23490:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":32680,"nodeType":"FunctionDefinition","src":"25372:429:64","nodes":[],"body":{"id":32679,"nodeType":"Block","src":"25444:357:64","nodes":[],"statements":[{"assignments":[32642],"declarations":[{"constant":false,"id":32642,"mutability":"mutable","name":"communityFeeAmount","nameLocation":"25462:18:64","nodeType":"VariableDeclaration","scope":32679,"src":"25454:26:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32641,"name":"uint256","nodeType":"ElementaryTypeName","src":"25454:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":32652,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32651,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32645,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32643,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"25484:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":32644,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31100,"src":"25506:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25484:34:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":32646,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"25483:36:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32649,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":32647,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25523:3:64","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":32648,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31088,"src":"25529:15:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25523:21:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":32650,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"25522:23:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25483:62:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"25454:91:64"},{"assignments":[32654],"declarations":[{"constant":false,"id":32654,"mutability":"mutable","name":"gardensFeeAmount","nameLocation":"25563:16:64","nodeType":"VariableDeclaration","scope":32679,"src":"25555:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32653,"name":"uint256","nodeType":"ElementaryTypeName","src":"25555:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":32672,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32671,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32665,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32655,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"25596:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[{"id":32662,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"25675:4:64","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$33072","typeString":"contract RegistryCommunityV0_0"}],"id":32661,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"25667:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":32660,"name":"address","nodeType":"ElementaryTypeName","src":"25667:7:64","typeDescriptions":{}}},"id":32663,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25667:13:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"id":32657,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31115,"src":"25635:15:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32656,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30166,"src":"25618:16:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistryFactory_$30166_$","typeString":"type(contract IRegistryFactory)"}},"id":32658,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25618:33:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$30166","typeString":"contract IRegistryFactory"}},"id":32659,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25652:14:64","memberName":"getProtocolFee","nodeType":"MemberAccess","referencedDeclaration":30165,"src":"25618:48:64","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":32664,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25618:63:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25596:85:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":32666,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"25582:109:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32669,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":32667,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25695:3:64","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":32668,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31088,"src":"25701:15:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25695:21:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":32670,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"25694:23:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25582:135:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"25555:162:64"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32675,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32673,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"25735:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":32674,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32642,"src":"25757:18:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25735:40:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":32676,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32654,"src":"25778:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25735:59:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":32640,"id":32678,"nodeType":"Return","src":"25728:66:64"}]},"functionSelector":"28c309e9","implemented":true,"kind":"function","modifiers":[],"name":"getStakeAmountWithFees","nameLocation":"25381:22:64","parameters":{"id":32637,"nodeType":"ParameterList","parameters":[],"src":"25403:2:64"},"returnParameters":{"id":32640,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32639,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":32680,"src":"25435:7:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32638,"name":"uint256","nodeType":"ElementaryTypeName","src":"25435:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25434:9:64"},"scope":33072,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":32688,"nodeType":"FunctionDefinition","src":"25807:115:64","nodes":[],"body":{"id":32687,"nodeType":"Block","src":"25879:43:64","nodes":[],"statements":[{"expression":{"id":32685,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"25896:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":32684,"id":32686,"nodeType":"Return","src":"25889:26:64"}]},"functionSelector":"0331383c","implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"25816:20:64","parameters":{"id":32681,"nodeType":"ParameterList","parameters":[],"src":"25836:2:64"},"returnParameters":{"id":32684,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32683,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":32688,"src":"25870:7:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32682,"name":"uint256","nodeType":"ElementaryTypeName","src":"25870:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25869:9:64"},"scope":33072,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":32708,"nodeType":"FunctionDefinition","src":"25928:222:64","nodes":[],"body":{"id":32707,"nodeType":"Block","src":"25993:157:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32693,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31207,"src":"26003:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32694,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26003:17:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32695,"nodeType":"ExpressionStatement","src":"26003:17:64"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32696,"name":"onlyEmptyCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31264,"src":"26030:18:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32697,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26030:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32698,"nodeType":"ExpressionStatement","src":"26030:20:64"},{"expression":{"id":32701,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":32699,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"26060:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":32700,"name":"_newAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32690,"src":"26082:10:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26060:32:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32702,"nodeType":"ExpressionStatement","src":"26060:32:64"},{"eventCall":{"arguments":[{"id":32704,"name":"_newAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32690,"src":"26132:10:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":32703,"name":"BasisStakedAmountUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30978,"src":"26107:24:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":32705,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26107:36:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32706,"nodeType":"EmitStatement","src":"26102:41:64"}]},"functionSelector":"31f61bca","implemented":true,"kind":"function","modifiers":[],"name":"setBasisStakedAmount","nameLocation":"25937:20:64","parameters":{"id":32691,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32690,"mutability":"mutable","name":"_newAmount","nameLocation":"25966:10:64","nodeType":"VariableDeclaration","scope":32708,"src":"25958:18:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32689,"name":"uint256","nodeType":"ElementaryTypeName","src":"25958:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25957:20:64"},"returnParameters":{"id":32692,"nodeType":"ParameterList","parameters":[],"src":"25993:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":32870,"nodeType":"FunctionDefinition","src":"26156:1574:64","nodes":[],"body":{"id":32869,"nodeType":"Block","src":"26225:1505:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32714,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31207,"src":"26235:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32715,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26235:17:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32716,"nodeType":"ExpressionStatement","src":"26235:17:64"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":32740,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":32725,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32720,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":32717,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"26279:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32718,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26287:19:64","memberName":"registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":30885,"src":"26279:27:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":32719,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"26310:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26279:50:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":32724,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":32721,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"26333:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32722,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26341:13:64","memberName":"isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":30887,"src":"26333:21:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":32723,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31109,"src":"26358:13:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"26333:38:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"26279:92:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":32739,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"expression":{"id":32729,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"26407:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32730,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26415:16:64","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":30889,"src":"26407:24:64","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":32728,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"26401:5:64","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":32727,"name":"bytes","nodeType":"ElementaryTypeName","src":"26401:5:64","typeDescriptions":{}}},"id":32731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26401:31:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":32726,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"26391:9:64","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":32732,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26391:42:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[{"id":32736,"name":"covenantIpfsHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31146,"src":"26453:16:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}],"id":32735,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"26447:5:64","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":32734,"name":"bytes","nodeType":"ElementaryTypeName","src":"26447:5:64","typeDescriptions":{}}},"id":32737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26447:23:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes storage pointer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes storage pointer"}],"id":32733,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"26437:9:64","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":32738,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26437:34:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"26391:80:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"26279:192:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32798,"nodeType":"IfStatement","src":"26262:854:64","trueBody":{"id":32797,"nodeType":"Block","src":"26482:634:64","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32741,"name":"onlyEmptyCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31264,"src":"26496:18:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32742,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26496:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32743,"nodeType":"ExpressionStatement","src":"26496:20:64"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32747,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":32744,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"26534:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32745,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26542:19:64","memberName":"registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":30885,"src":"26534:27:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":32746,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31097,"src":"26565:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26534:50:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32754,"nodeType":"IfStatement","src":"26530:138:64","trueBody":{"id":32753,"nodeType":"Block","src":"26586:82:64","statements":[{"expression":{"arguments":[{"expression":{"id":32749,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"26625:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32750,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26633:19:64","memberName":"registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":30885,"src":"26625:27:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":32748,"name":"setBasisStakedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32708,"src":"26604:20:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":32751,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26604:49:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32752,"nodeType":"ExpressionStatement","src":"26604:49:64"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":32758,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":32755,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"26685:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32756,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26693:13:64","memberName":"isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":30887,"src":"26685:21:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":32757,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31109,"src":"26710:13:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"26685:38:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32770,"nodeType":"IfStatement","src":"26681:178:64","trueBody":{"id":32769,"nodeType":"Block","src":"26725:134:64","statements":[{"expression":{"id":32762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":32759,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31109,"src":"26743:13:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":32760,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"26759:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32761,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26767:13:64","memberName":"isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":30887,"src":"26759:21:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"26743:37:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32763,"nodeType":"ExpressionStatement","src":"26743:37:64"},{"eventCall":{"arguments":[{"expression":{"id":32765,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"26822:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32766,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26830:13:64","memberName":"isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":30887,"src":"26822:21:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":32764,"name":"KickEnabledUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31002,"src":"26803:18:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":32767,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26803:41:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32768,"nodeType":"EmitStatement","src":"26798:46:64"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":32784,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"expression":{"id":32774,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"26892:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32775,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26900:16:64","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":30889,"src":"26892:24:64","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":32773,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"26886:5:64","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":32772,"name":"bytes","nodeType":"ElementaryTypeName","src":"26886:5:64","typeDescriptions":{}}},"id":32776,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26886:31:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":32771,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"26876:9:64","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":32777,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26876:42:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[{"id":32781,"name":"covenantIpfsHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31146,"src":"26938:16:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}],"id":32780,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"26932:5:64","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":32779,"name":"bytes","nodeType":"ElementaryTypeName","src":"26932:5:64","typeDescriptions":{}}},"id":32782,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26932:23:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes storage pointer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes storage pointer"}],"id":32778,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"26922:9:64","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":32783,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26922:34:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"26876:80:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32796,"nodeType":"IfStatement","src":"26872:234:64","trueBody":{"id":32795,"nodeType":"Block","src":"26958:148:64","statements":[{"expression":{"id":32788,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":32785,"name":"covenantIpfsHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31146,"src":"26976:16:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":32786,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"26995:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32787,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27003:16:64","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":30889,"src":"26995:24:64","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"26976:43:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":32789,"nodeType":"ExpressionStatement","src":"26976:43:64"},{"eventCall":{"arguments":[{"expression":{"id":32791,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"27066:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32792,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27074:16:64","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":30889,"src":"27066:24:64","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":32790,"name":"CovenantIpfsHashUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30998,"src":"27042:23:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":32793,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27042:49:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32794,"nodeType":"EmitStatement","src":"27037:54:64"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":32812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"expression":{"id":32802,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"27145:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32803,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27153:13:64","memberName":"communityName","nodeType":"MemberAccess","referencedDeclaration":30883,"src":"27145:21:64","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":32801,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"27139:5:64","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":32800,"name":"bytes","nodeType":"ElementaryTypeName","src":"27139:5:64","typeDescriptions":{}}},"id":32804,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27139:28:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":32799,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"27129:9:64","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":32805,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27129:39:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[{"id":32809,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31143,"src":"27188:13:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}],"id":32808,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"27182:5:64","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":32807,"name":"bytes","nodeType":"ElementaryTypeName","src":"27182:5:64","typeDescriptions":{}}},"id":32810,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27182:20:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes storage pointer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes storage pointer"}],"id":32806,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"27172:9:64","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":32811,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27172:31:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"27129:74:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32824,"nodeType":"IfStatement","src":"27125:204:64","trueBody":{"id":32823,"nodeType":"Block","src":"27205:124:64","statements":[{"expression":{"id":32816,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":32813,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31143,"src":"27219:13:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":32814,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"27235:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32815,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27243:13:64","memberName":"communityName","nodeType":"MemberAccess","referencedDeclaration":30883,"src":"27235:21:64","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"27219:37:64","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":32817,"nodeType":"ExpressionStatement","src":"27219:37:64"},{"eventCall":{"arguments":[{"expression":{"id":32819,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"27296:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32820,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27304:13:64","memberName":"communityName","nodeType":"MemberAccess","referencedDeclaration":30883,"src":"27296:21:64","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":32818,"name":"CommunityNameUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30994,"src":"27275:20:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":32821,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27275:43:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32822,"nodeType":"EmitStatement","src":"27270:48:64"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32828,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":32825,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"27342:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32826,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27350:12:64","memberName":"communityFee","nodeType":"MemberAccess","referencedDeclaration":30881,"src":"27342:20:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":32827,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31100,"src":"27366:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27342:36:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32835,"nodeType":"IfStatement","src":"27338:104:64","trueBody":{"id":32834,"nodeType":"Block","src":"27380:62:64","statements":[{"expression":{"arguments":[{"expression":{"id":32830,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"27410:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32831,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27418:12:64","memberName":"communityFee","nodeType":"MemberAccess","referencedDeclaration":30881,"src":"27410:20:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":32829,"name":"setCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32895,"src":"27394:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":32832,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27394:37:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32833,"nodeType":"ExpressionStatement","src":"27394:37:64"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":32839,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":32836,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"27455:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32837,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27463:11:64","memberName":"feeReceiver","nodeType":"MemberAccess","referencedDeclaration":30879,"src":"27455:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":32838,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31112,"src":"27478:11:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"27455:34:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32851,"nodeType":"IfStatement","src":"27451:156:64","trueBody":{"id":32850,"nodeType":"Block","src":"27491:116:64","statements":[{"expression":{"id":32843,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":32840,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31112,"src":"27505:11:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":32841,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"27519:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32842,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27527:11:64","memberName":"feeReceiver","nodeType":"MemberAccess","referencedDeclaration":30879,"src":"27519:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"27505:33:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":32844,"nodeType":"ExpressionStatement","src":"27505:33:64"},{"eventCall":{"arguments":[{"expression":{"id":32846,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"27576:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32847,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27584:11:64","memberName":"feeReceiver","nodeType":"MemberAccess","referencedDeclaration":30879,"src":"27576:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32845,"name":"FeeReceiverChanged","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31006,"src":"27557:18:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":32848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27557:39:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32849,"nodeType":"EmitStatement","src":"27552:44:64"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":32858,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":32852,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"27620:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32853,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27628:11:64","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":30877,"src":"27620:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":32856,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27651:1:64","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":32855,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"27643:7:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":32854,"name":"address","nodeType":"ElementaryTypeName","src":"27643:7:64","typeDescriptions":{}}},"id":32857,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27643:10:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"27620:33:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32868,"nodeType":"IfStatement","src":"27616:108:64","trueBody":{"id":32867,"nodeType":"Block","src":"27655:69:64","statements":[{"expression":{"arguments":[{"arguments":[{"expression":{"id":32862,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32711,"src":"27692:7:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams memory"}},"id":32863,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27700:11:64","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":30877,"src":"27692:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32861,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"27684:8:64","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":32860,"name":"address","nodeType":"ElementaryTypeName","src":"27684:8:64","stateMutability":"payable","typeDescriptions":{}}},"id":32864,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27684:28:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":32859,"name":"setCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32460,"src":"27669:14:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_payable_$returns$__$","typeString":"function (address payable)"}},"id":32865,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27669:44:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32866,"nodeType":"ExpressionStatement","src":"27669:44:64"}]}}]},"functionSelector":"f2d774e7","implemented":true,"kind":"function","modifiers":[],"name":"setCommunityParams","nameLocation":"26165:18:64","parameters":{"id":32712,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32711,"mutability":"mutable","name":"_params","nameLocation":"26207:7:64","nodeType":"VariableDeclaration","scope":32870,"src":"26184:30:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_memory_ptr","typeString":"struct CommunityParams"},"typeName":{"id":32710,"nodeType":"UserDefinedTypeName","pathNode":{"id":32709,"name":"CommunityParams","nameLocations":["26184:15:64"],"nodeType":"IdentifierPath","referencedDeclaration":30890,"src":"26184:15:64"},"referencedDeclaration":30890,"src":"26184:15:64","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$30890_storage_ptr","typeString":"struct CommunityParams"}},"visibility":"internal"}],"src":"26183:32:64"},"returnParameters":{"id":32713,"nodeType":"ParameterList","parameters":[],"src":"26225:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":32895,"nodeType":"FunctionDefinition","src":"27736:288:64","nodes":[],"body":{"id":32894,"nodeType":"Block","src":"27802:222:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32875,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31207,"src":"27812:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27812:17:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32877,"nodeType":"ExpressionStatement","src":"27812:17:64"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32880,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32878,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32872,"src":"27843:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":32879,"name":"MAX_FEE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31094,"src":"27862:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27843:26:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32885,"nodeType":"IfStatement","src":"27839:86:64","trueBody":{"id":32884,"nodeType":"Block","src":"27871:54:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":32881,"name":"NewFeeGreaterThanMax","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31053,"src":"27892:20:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":32882,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27892:22:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32883,"nodeType":"RevertStatement","src":"27885:29:64"}]}},{"expression":{"id":32888,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":32886,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31100,"src":"27934:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":32887,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32872,"src":"27949:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27934:31:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32889,"nodeType":"ExpressionStatement","src":"27934:31:64"},{"eventCall":{"arguments":[{"id":32891,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32872,"src":"28000:16:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":32890,"name":"CommunityFeeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30943,"src":"27980:19:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":32892,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27980:37:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32893,"nodeType":"EmitStatement","src":"27975:42:64"}]},"functionSelector":"0d12bbdb","implemented":true,"kind":"function","modifiers":[],"name":"setCommunityFee","nameLocation":"27745:15:64","parameters":{"id":32873,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32872,"mutability":"mutable","name":"_newCommunityFee","nameLocation":"27769:16:64","nodeType":"VariableDeclaration","scope":32895,"src":"27761:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32871,"name":"uint256","nodeType":"ElementaryTypeName","src":"27761:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"27760:26:64"},"returnParameters":{"id":32874,"nodeType":"ParameterList","parameters":[],"src":"27802:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":32908,"nodeType":"FunctionDefinition","src":"28030:133:64","nodes":[],"body":{"id":32907,"nodeType":"Block","src":"28107:56:64","nodes":[],"statements":[{"expression":{"arguments":[{"id":32903,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31190,"src":"28132:14:64","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":32904,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32897,"src":"28148:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":32902,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":13595,"src":"28124:7:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":32905,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28124:32:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":32901,"id":32906,"nodeType":"Return","src":"28117:39:64"}]},"functionSelector":"ebd7dc52","implemented":true,"kind":"function","modifiers":[],"name":"isCouncilMember","nameLocation":"28039:15:64","parameters":{"id":32898,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32897,"mutability":"mutable","name":"_member","nameLocation":"28063:7:64","nodeType":"VariableDeclaration","scope":32908,"src":"28055:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32896,"name":"address","nodeType":"ElementaryTypeName","src":"28055:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"28054:17:64"},"returnParameters":{"id":32901,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32900,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":32908,"src":"28101:4:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":32899,"name":"bool","nodeType":"ElementaryTypeName","src":"28101:4:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"28100:6:64"},"scope":33072,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":32966,"nodeType":"FunctionDefinition","src":"28169:643:64","nodes":[],"body":{"id":32965,"nodeType":"Block","src":"28225:587:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":32913,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31221,"src":"28235:24:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":32914,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28235:26:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32915,"nodeType":"ExpressionStatement","src":"28235:26:64"},{"assignments":[32917],"declarations":[{"constant":false,"id":32917,"mutability":"mutable","name":"_member","nameLocation":"28279:7:64","nodeType":"VariableDeclaration","scope":32965,"src":"28271:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32916,"name":"address","nodeType":"ElementaryTypeName","src":"28271:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":32920,"initialValue":{"expression":{"id":32918,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"28289:3:64","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":32919,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"28293:6:64","memberName":"sender","nodeType":"MemberAccess","src":"28289:10:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"28271:28:64"},{"expression":{"arguments":[{"id":32922,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32917,"src":"28333:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32921,"name":"deactivateAllStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33003,"src":"28309:23:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":32923,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28309:32:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32924,"nodeType":"ExpressionStatement","src":"28309:32:64"},{"assignments":[32927],"declarations":[{"constant":false,"id":32927,"mutability":"mutable","name":"member","nameLocation":"28365:6:64","nodeType":"VariableDeclaration","scope":32965,"src":"28351:20:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_memory_ptr","typeString":"struct Member"},"typeName":{"id":32926,"nodeType":"UserDefinedTypeName","pathNode":{"id":32925,"name":"Member","nameLocations":["28351:6:64"],"nodeType":"IdentifierPath","referencedDeclaration":30875,"src":"28351:6:64"},"referencedDeclaration":30875,"src":"28351:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":32931,"initialValue":{"baseExpression":{"id":32928,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31164,"src":"28374:19:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":32930,"indexExpression":{"id":32929,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32917,"src":"28394:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"28374:28:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"28351:51:64"},{"expression":{"id":32935,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"28412:35:64","subExpression":{"baseExpression":{"id":32932,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31164,"src":"28419:19:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":32934,"indexExpression":{"id":32933,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32917,"src":"28439:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"28419:28:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage","typeString":"struct Member storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32936,"nodeType":"ExpressionStatement","src":"28412:35:64"},{"expression":{"id":32940,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"28457:34:64","subExpression":{"baseExpression":{"id":32937,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31170,"src":"28464:18:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":32939,"indexExpression":{"id":32938,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32917,"src":"28483:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"28464:27:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32941,"nodeType":"ExpressionStatement","src":"28457:34:64"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32942,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31184,"src":"28619:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":32943,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28634:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"28619:16:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":32950,"nodeType":"IfStatement","src":"28615:64:64","trueBody":{"id":32949,"nodeType":"Block","src":"28637:42:64","statements":[{"expression":{"id":32947,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":32945,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31184,"src":"28651:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":32946,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28667:1:64","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"28651:17:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32948,"nodeType":"ExpressionStatement","src":"28651:17:64"}]}},{"expression":{"arguments":[{"id":32954,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32917,"src":"28713:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":32955,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32927,"src":"28722:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_memory_ptr","typeString":"struct Member memory"}},"id":32956,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28729:12:64","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":30872,"src":"28722:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":32951,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31132,"src":"28688:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":32953,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"28700:12:64","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":17492,"src":"28688:24:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$17398_$","typeString":"function (contract IERC20,address,uint256)"}},"id":32957,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28688:54:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32958,"nodeType":"ExpressionStatement","src":"28688:54:64"},{"eventCall":{"arguments":[{"id":32960,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32917,"src":"28776:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":32961,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32927,"src":"28785:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_memory_ptr","typeString":"struct Member memory"}},"id":32962,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28792:12:64","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":30872,"src":"28785:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":32959,"name":"MemberUnregistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30931,"src":"28757:18:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":32963,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28757:48:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32964,"nodeType":"EmitStatement","src":"28752:53:64"}]},"functionSelector":"b99b4370","implemented":true,"kind":"function","modifiers":[{"id":32911,"kind":"modifierInvocation","modifierName":{"id":32910,"name":"nonReentrant","nameLocations":["28212:12:64"],"nodeType":"IdentifierPath","referencedDeclaration":14336,"src":"28212:12:64"},"nodeType":"ModifierInvocation","src":"28212:12:64"}],"name":"unregisterMember","nameLocation":"28178:16:64","parameters":{"id":32909,"nodeType":"ParameterList","parameters":[],"src":"28194:2:64"},"returnParameters":{"id":32912,"nodeType":"ParameterList","parameters":[],"src":"28225:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":33003,"nodeType":"FunctionDefinition","src":"28818:474:64","nodes":[],"body":{"id":33002,"nodeType":"Block","src":"28885:407:64","nodes":[],"statements":[{"assignments":[32975],"declarations":[{"constant":false,"id":32975,"mutability":"mutable","name":"memberStrategies","nameLocation":"28912:16:64","nodeType":"VariableDeclaration","scope":33002,"src":"28895:33:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":32973,"name":"address","nodeType":"ElementaryTypeName","src":"28895:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":32974,"nodeType":"ArrayTypeName","src":"28895:9:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":32979,"initialValue":{"baseExpression":{"id":32976,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31170,"src":"28931:18:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":32978,"indexExpression":{"id":32977,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32968,"src":"28950:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"28931:27:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"28895:63:64"},{"body":{"id":33000,"nodeType":"Block","src":"29088:198:64","statements":[{"expression":{"arguments":[{"id":32997,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32968,"src":"29267:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"baseExpression":{"id":32992,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32975,"src":"29229:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":32994,"indexExpression":{"id":32993,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32981,"src":"29246:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29229:19:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":32991,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26134,"src":"29214:14:64","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$26134_$","typeString":"type(contract IPointStrategy)"}},"id":32995,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29214:35:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$26134","typeString":"contract IPointStrategy"}},"id":32996,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"29250:16:64","memberName":"deactivatePoints","nodeType":"MemberAccess","referencedDeclaration":26109,"src":"29214:52:64","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":32998,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29214:61:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":32999,"nodeType":"ExpressionStatement","src":"29214:61:64"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":32987,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":32984,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32981,"src":"29054:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":32985,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32975,"src":"29058:16:64","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":32986,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"29075:6:64","memberName":"length","nodeType":"MemberAccess","src":"29058:23:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"29054:27:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":33001,"initializationExpression":{"assignments":[32981],"declarations":[{"constant":false,"id":32981,"mutability":"mutable","name":"i","nameLocation":"29047:1:64","nodeType":"VariableDeclaration","scope":33001,"src":"29039:9:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":32980,"name":"uint256","nodeType":"ElementaryTypeName","src":"29039:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":32983,"initialValue":{"hexValue":"30","id":32982,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29051:1:64","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"29039:13:64"},"loopExpression":{"expression":{"id":32989,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"29083:3:64","subExpression":{"id":32988,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32981,"src":"29083:1:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":32990,"nodeType":"ExpressionStatement","src":"29083:3:64"},"nodeType":"ForStatement","src":"29034:252:64"}]},"implemented":true,"kind":"function","modifiers":[],"name":"deactivateAllStrategies","nameLocation":"28827:23:64","parameters":{"id":32969,"nodeType":"ParameterList","parameters":[{"constant":false,"id":32968,"mutability":"mutable","name":"_member","nameLocation":"28859:7:64","nodeType":"VariableDeclaration","scope":33003,"src":"28851:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":32967,"name":"address","nodeType":"ElementaryTypeName","src":"28851:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"28850:17:64"},"returnParameters":{"id":32970,"nodeType":"ParameterList","parameters":[],"src":"28885:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":33067,"nodeType":"FunctionDefinition","src":"29298:610:64","nodes":[],"body":{"id":33066,"nodeType":"Block","src":"29389:519:64","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":33012,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31207,"src":"29399:15:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":33013,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29399:17:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":33014,"nodeType":"ExpressionStatement","src":"29399:17:64"},{"condition":{"id":33016,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"29430:14:64","subExpression":{"id":33015,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31109,"src":"29431:13:64","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":33021,"nodeType":"IfStatement","src":"29426:68:64","trueBody":{"id":33020,"nodeType":"Block","src":"29446:48:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":33017,"name":"KickNotEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31055,"src":"29467:14:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":33018,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29467:16:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":33019,"nodeType":"RevertStatement","src":"29460:23:64"}]}},{"condition":{"id":33025,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"29507:18:64","subExpression":{"arguments":[{"id":33023,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33005,"src":"29517:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":33022,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":32515,"src":"29508:8:64","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":33024,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29508:17:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":33030,"nodeType":"IfStatement","src":"29503:75:64","trueBody":{"id":33029,"nodeType":"Block","src":"29527:51:64","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":33026,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31037,"src":"29548:17:64","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":33027,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29548:19:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":33028,"nodeType":"RevertStatement","src":"29541:26:64"}]}},{"assignments":[33033],"declarations":[{"constant":false,"id":33033,"mutability":"mutable","name":"member","nameLocation":"29601:6:64","nodeType":"VariableDeclaration","scope":33066,"src":"29587:20:64","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_memory_ptr","typeString":"struct Member"},"typeName":{"id":33032,"nodeType":"UserDefinedTypeName","pathNode":{"id":33031,"name":"Member","nameLocations":["29587:6:64"],"nodeType":"IdentifierPath","referencedDeclaration":30875,"src":"29587:6:64"},"referencedDeclaration":30875,"src":"29587:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":33037,"initialValue":{"baseExpression":{"id":33034,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31164,"src":"29610:19:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":33036,"indexExpression":{"id":33035,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33005,"src":"29630:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29610:28:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"29587:51:64"},{"expression":{"arguments":[{"id":33039,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33005,"src":"29672:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":33038,"name":"deactivateAllStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33003,"src":"29648:23:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":33040,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29648:32:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":33041,"nodeType":"ExpressionStatement","src":"29648:32:64"},{"expression":{"id":33045,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"29690:35:64","subExpression":{"baseExpression":{"id":33042,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31164,"src":"29697:19:64","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$30875_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":33044,"indexExpression":{"id":33043,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33005,"src":"29717:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"29697:28:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_storage","typeString":"struct Member storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":33046,"nodeType":"ExpressionStatement","src":"29690:35:64"},{"expression":{"id":33049,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":33047,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31184,"src":"29735:12:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":33048,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29751:1:64","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"29735:17:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":33050,"nodeType":"ExpressionStatement","src":"29735:17:64"},{"expression":{"arguments":[{"id":33054,"name":"_transferAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33007,"src":"29788:16:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":33055,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33033,"src":"29806:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_memory_ptr","typeString":"struct Member memory"}},"id":33056,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29813:12:64","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":30872,"src":"29806:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":33051,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":31132,"src":"29763:11:64","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":33053,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"29775:12:64","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":17492,"src":"29763:24:64","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$17398_$","typeString":"function (contract IERC20,address,uint256)"}},"id":33057,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29763:63:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":33058,"nodeType":"ExpressionStatement","src":"29763:63:64"},{"eventCall":{"arguments":[{"id":33060,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33005,"src":"29854:7:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":33061,"name":"_transferAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33007,"src":"29863:16:64","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":33062,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":33033,"src":"29881:6:64","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$30875_memory_ptr","typeString":"struct Member memory"}},"id":33063,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29888:12:64","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":30872,"src":"29881:19:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":33059,"name":"MemberKicked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":30939,"src":"29841:12:64","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":33064,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29841:60:64","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":33065,"nodeType":"EmitStatement","src":"29836:65:64"}]},"functionSelector":"6871eb4d","implemented":true,"kind":"function","modifiers":[{"id":33010,"kind":"modifierInvocation","modifierName":{"id":33009,"name":"nonReentrant","nameLocations":["29376:12:64"],"nodeType":"IdentifierPath","referencedDeclaration":14336,"src":"29376:12:64"},"nodeType":"ModifierInvocation","src":"29376:12:64"}],"name":"kickMember","nameLocation":"29307:10:64","parameters":{"id":33008,"nodeType":"ParameterList","parameters":[{"constant":false,"id":33005,"mutability":"mutable","name":"_member","nameLocation":"29326:7:64","nodeType":"VariableDeclaration","scope":33067,"src":"29318:15:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33004,"name":"address","nodeType":"ElementaryTypeName","src":"29318:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":33007,"mutability":"mutable","name":"_transferAddress","nameLocation":"29343:16:64","nodeType":"VariableDeclaration","scope":33067,"src":"29335:24:64","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":33006,"name":"address","nodeType":"ElementaryTypeName","src":"29335:7:64","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"29317:43:64"},"returnParameters":{"id":33011,"nodeType":"ParameterList","parameters":[],"src":"29389:0:64"},"scope":33072,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":33071,"nodeType":"VariableDeclaration","src":"29914:25:64","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"29934:5:64","scope":33072,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage","typeString":"uint256[49]"},"typeName":{"baseType":{"id":33068,"name":"uint256","nodeType":"ElementaryTypeName","src":"29914:7:64","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":33070,"length":{"hexValue":"3439","id":33069,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29922:2:64","typeDescriptions":{"typeIdentifier":"t_rational_49_by_1","typeString":"int_const 49"},"value":"49"},"nodeType":"ArrayTypeName","src":"29914:11:64","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage_ptr","typeString":"uint256[49]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":30896,"name":"ProxyOwnableUpgrader","nameLocations":["3182:20:64"],"nodeType":"IdentifierPath","referencedDeclaration":30801,"src":"3182:20:64"},"id":30897,"nodeType":"InheritanceSpecifier","src":"3182:20:64"},{"baseName":{"id":30898,"name":"ReentrancyGuardUpgradeable","nameLocations":["3204:26:64"],"nodeType":"IdentifierPath","referencedDeclaration":14376,"src":"3204:26:64"},"id":30899,"nodeType":"InheritanceSpecifier","src":"3204:26:64"},{"baseName":{"id":30900,"name":"AccessControlUpgradeable","nameLocations":["3232:24:64"],"nodeType":"IdentifierPath","referencedDeclaration":13836,"src":"3232:24:64"},"id":30901,"nodeType":"InheritanceSpecifier","src":"3232:24:64"}],"canonicalName":"RegistryCommunityV0_0","contractDependencies":[16082],"contractKind":"contract","documentation":{"id":30895,"nodeType":"StructuredDocumentation","src":"3097:51:64","text":"@custom:oz-upgrades-from RegistryCommunityV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[33072,13836,15031,15043,13909,14376,30801,16733,16386,16035,16045,14042,14757,14291],"name":"RegistryCommunityV0_0","nameLocation":"3157:21:64","scope":33073,"usedErrors":[30716,31027,31031,31035,31037,31039,31041,31043,31045,31047,31049,31051,31053,31055,31057,31059,31065]}],"license":"AGPL-3.0-only"},"id":64} \ 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":"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_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":"sybilScorerThreshold","type":"uint256","internalType":"uint256"},{"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":"sybilScorerThreshold","type":"uint256","internalType":"uint256"},{"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":"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":"","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":"onlyStrategyEnabled","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"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":"proxyOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"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":"rejectPool","inputs":[{"name":"_strategy","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"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":"setCommunityParams","inputs":[{"name":"_params","type":"tuple","internalType":"struct CommunityParams","components":[{"name":"councilSafe","type":"address","internalType":"address"},{"name":"feeReceiver","type":"address","internalType":"address"},{"name":"communityFee","type":"uint256","internalType":"uint256"},{"name":"communityName","type":"string","internalType":"string"},{"name":"registerStakeAmount","type":"uint256","internalType":"uint256"},{"name":"isKickEnabled","type":"bool","internalType":"bool"},{"name":"covenantIpfsHash","type":"string","internalType":"string"}]}],"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":[{"name":"covenantSig","type":"string","internalType":"string"}],"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":"totalMembers","inputs":[],"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":"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":"BasisStakedAmountUpdated","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":"CommunityNameUpdated","inputs":[{"name":"_communityName","type":"string","indexed":false,"internalType":"string"}],"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":"CouncilSafeUpdated","inputs":[{"name":"_safe","type":"address","indexed":false,"internalType":"address"}],"anonymous":false},{"type":"event","name":"CovenantIpfsHashUpdated","inputs":[{"name":"_covenantIpfsHash","type":"string","indexed":false,"internalType":"string"}],"anonymous":false},{"type":"event","name":"FeeReceiverChanged","inputs":[{"name":"_feeReceiver","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":"KickEnabledUpdated","inputs":[{"name":"_isKickEnabled","type":"bool","indexed":false,"internalType":"bool"}],"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":"MemberRegisteredWithCovenant","inputs":[{"name":"_member","type":"address","indexed":false,"internalType":"address"},{"name":"_amountStaked","type":"uint256","indexed":false,"internalType":"uint256"},{"name":"_covenantSig","type":"string","indexed":false,"internalType":"string"}],"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":"PoolRejected","inputs":[{"name":"_strategy","type":"address","indexed":false,"internalType":"address"}],"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":"AllowlistTooBig","inputs":[{"name":"size","type":"uint256","internalType":"uint256"}]},{"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":"OnlyEmptyCommunity","inputs":[{"name":"totalMembers","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"PointsDeactivated","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":"UserNotInCouncil","inputs":[{"name":"_user","type":"address","internalType":"address"}]},{"type":"error","name":"UserNotInRegistry","inputs":[]},{"type":"error","name":"ValueCannotBeZero","inputs":[]}],"bytecode":{"object":"0x60a080604052346100325730608052615f6790816200003882396080518181816113380152818161151501526115770152f35b600080fdfe608060405260043610156200001357600080fd5b60003560e01c806301ffc9a71462000509578063025313a214620005035780630331383c146200042557806308386eba14620004fd5780630d12bbdb14620004f75780630d4a8b4914620004f1578063175188e814620004eb5780631b71f0e414620004e55780631f787d2814620004df578063223e547914620004d957806322bcf99914620004d3578063248a9ca314620004cd57806328c309e914620004c75780632b38c69c14620004c15780632c611c4a14620004bb5780632f2ff15d14620004b557806331f61bca14620004af5780633396045914620004a95780633419635514620004a357806336568abe146200049d5780633659cfe61462000497578063397e254314620004915780633a871fe1146200048b578063411481e61462000485578063477a5cc0146200047f5780634f1ef286146200047957806352d1902d1462000473578063559de05d146200046d5780635c94e4d214620004675780635ecf71c5146200046157806365e3864c146200042b5780636871eb4d146200045b57806368decabb14620004555780636c53db9a146200044f578063715018a6146200044957806373265c371462000443578063733a2d1f146200043d57806376e92559146200043757806377122d5614620004315780637817ee4f146200042b57806378a0b8a914620004255780637b103999146200041f57806382d6a1e7146200041957806388cfe68414620004135780638961be6b146200040d5780638da5cb5b146200040757806391d1485414620004015780639a1f46e214620003fb578063a0cf0aea14620003f5578063a217fddf14620003ef578063a230c52414620003e9578063b0d3713a14620003e3578063b3f0067414620003dd578063b5058c5014620003d7578063b64e39af14620003d1578063b99b437014620003cb578063bc063e1a14620003c5578063c4d66de814620003bf578063c6d572ae14620003b9578063d547741f14620003b3578063d6d8428d14620003ad578063d7050f0714620003a7578063db61d65c14620003a1578063e0eab988146200039b578063ebd7dc521462000395578063f24b150f146200038f578063f2d774e71462000389578063f2fde38b1462000383578063f86c5f89146200037d578063fb1f691714620003775763ffa1ad74146200037157600080fd5b62003025565b62002f96565b62002f6a565b62002ed0565b62002df3565b62002d66565b62002d1b565b62002a97565b620027e9565b620027ca565b6200279e565b62002754565b620026be565b62002680565b62002660565b62002527565b62002455565b620022e4565b620022b5565b62002268565b6200221e565b62002200565b620021cf565b62001f4f565b62001f11565b62001ee0565b62001ec0565b62001e5e565b62001db3565b62001d87565b620005bf565b62001a5f565b62001d5b565b62001d3a565b62001d0e565b62001c77565b62001c23565b62001bf7565b62001bcb565b62001a9e565b620017fc565b620017d0565b62001626565b62001562565b620014b8565b62001474565b62001449565b62001402565b620013d7565b62001309565b6200126c565b620010ff565b62000ef9565b62000ed9565b62000e8f565b62000e4a565b62000de5565b62000c29565b62000bf8565b62000a80565b62000a4b565b62000a27565b620009da565b620009a5565b6200069c565b620005ff565b620005df565b62000594565b3462000564576020366003190112620005645760043563ffffffff60e01b81168091036200056457602090637965db0b60e01b811490811562000552575b506040519015158152f35b6301ffc9a760e01b1490503862000547565b600080fd5b60009103126200056457565b6001600160a01b031690565b6001600160a01b03909116815260200190565b346200056457600036600319011262000564576033546040516001600160a01b039091168152602090f35b34620005645760003660031901126200056457602060fb54604051908152f35b34620005645760003660031901126200056457602060fe54604051908152f35b346200056457602036600319011262000564576200061f60043562005854565b005b6001600160a01b038116036200056457565b60243590620006428262000621565b565b60443590620006428262000621565b60643590620006428262000621565b3590620006428262000621565b604090600319011262000564576004356200068a8162000621565b90602435620006998162000621565b90565b346200056457620006ad366200066f565b620006b762004d30565b620006c28262004d87565b620006cd8162003c02565b620006d9813362004dae565b620006fa620006f382620006ed8562000d12565b62000d99565b5460ff1690565b62000993576020908162000718620007128562000d2d565b62004c4a565b015160fb5460405163c329217160e01b8082526000966001600160a01b03861696909490939284816004818c8c5af1801562000862576003918a9162000971575b50620007658162004941565b036200086857505060405163782aadff60e01b81526001600160a01b038416600482015260006024820152948291508590604490829089905af18015620008625760008051602062005e32833981519152946200081d9287926200082e575b50505b80620007d885620006ed8662000d48565b55620007fa620007ed85620006ed8662000d12565b805460ff19166001179055565b62000810846200080a8562000d63565b62004cd4565b6040519384938462004d0e565b0390a16200082b6001606555565b80f35b620008529250803d106200085a575b62000849818362000f9d565b81019062003633565b3880620007c4565b503d6200083d565b62003643565b604096919392965193845282846004818b865af180156200086257889485916200093d575b50620008998162004941565b620008be575b505050506200081d60008051602062005e3283398151915293620007c7565b8293965090620008e69160405197888094819363782aadff60e01b8352896004840162004c9a565b03925af18015620008625760008051602062005e32833981519152946200081d9287926200091b575b5050938591386200089f565b620009359250803d106200085a5762000849818362000f9d565b38806200090f565b620009629150843d861162000969575b62000959818362000f9d565b81019062004c82565b386200088d565b503d6200094d565b6200098c9150863d8811620009695762000959818362000f9d565b3862000759565b604051636adcde4b60e11b8152600490fd5b346200056457602036600319011262000564576200061f600435620009ca8162000621565b620009d462005207565b6200538f565b34620005645760203660031901126200056457600435620009fb8162000621565b62000a056200333b565b61010280546001600160a01b0319166001600160a01b03909216919091179055005b34620005645760003660031901126200056457602060ff8054166040519015158152f35b346200056457602036600319011262000564576200061f60043562000a708162000621565b62000a7a62005207565b6200525e565b34620005645762000a91366200066f565b9062000a9d8162004d87565b62000aa9823362004dae565b60018060a01b03908181169160009280845261010e60205260ff62000ad2866040872062000d99565b54161562000be65762000aea85620006ed8562000d12565b805460ff191690558362000b0386620006ed8662000d48565b55835261010d6020526040832090835b8254908181101562000bac5762000b2b818562000dc6565b905460039391841b1c84168885161462000b53575b5062000b4d9150620040fd565b62000b13565b600019810190811162000ba65762000b4d9262000b7285928762000dc6565b9054911b1c1662000b9262000b88838762000dc6565b81939154620042c6565b905562000b9f8462004dd5565b3862000b40565b62002636565b857ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b888762000be06040519283928362003be8565b0390a180f35b604051633048da7760e21b8152600490fd5b3462000564576020366003190112620005645760043560005260c96020526020600160406000200154604051908152f35b3462000564576000366003190112620005645760fb5462000c5a62000c5160fc54836200264c565b620f4240900490565b9062000c7762000c7162000c716101005462000575565b62000575565b90602060405180936302a64b8360e21b8252818062000c9a306004830162000581565b03915afa918215620008625762000ceb9362000cce62000c5162000cdb9562000cd59460009162000cef575b50856200264c565b9262003415565b62003415565b6040519081529081906020820190565b0390f35b62000d0b915060203d81116200085a5762000849818362000f9d565b3862000cc6565b6001600160a01b0316600090815261010e6020526040902090565b6001600160a01b0316600090815261010c6020526040902090565b6001600160a01b0316600090815261010b6020526040902090565b6001600160a01b0316600090815261010d6020526040902090565b6001600160a01b0316600090815261010a6020526040902090565b9060018060a01b0316600052602052604060002090565b634e487b7160e01b600052603260045260246000fd5b805482101562000ddf5760005260206000200190600090565b62000db0565b3462000564576040366003190112620005645760043562000e068162000621565b6024359060018060a01b0380911660005261010d60205260406000208054831015620005645760209262000e3a9162000dc6565b9190546040519260031b1c168152f35b3462000564576020366003190112620005645760043562000e6b8162000621565b60018060a01b031660005261010c6020526020600160406000200154604051908152f35b346200056457604036600319011262000564576200061f60243560043562000eb78262000621565b8060005260c960205262000ed36001604060002001546200306f565b6200326e565b346200056457602036600319011262000564576200061f60043562005463565b34620005645760003660031901126200056457602060fd54604051908152f35b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b0382111762000f4b57604052565b62000f19565b606081019081106001600160401b0382111762000f4b57604052565b60c081019081106001600160401b0382111762000f4b57604052565b6001600160401b03811162000f4b57604052565b601f909101601f19168101906001600160401b0382119082101762000f4b57604052565b6040519061018082016001600160401b0381118382101762000f4b57604052565b6040519061012082016001600160401b0381118382101762000f4b57604052565b6040519060e082016001600160401b0381118382101762000f4b57604052565b6001600160401b03811162000f4b57601f01601f191660200190565b9291926200104d8262001023565b916200105d604051938462000f9d565b82948184528183011162000564578281602093846000960137010152565b9080601f83011215620005645781602062000699933591016200103f565b9190604083820312620005645760405190620010b58262000f2f565b8335825290928391602082013591906001600160401b0383116200056457602092620010e292016200107b565b910152565b801515036200056457565b35906200064282620010e7565b3462000564576003196080368201126200056457600435906001600160401b0390818311620005645761018090833603011262000564576200114062000fc1565b906200114f8360040162000662565b82526200115f6024840162000662565b60208301526044830135604083015260648301356060830152608483013560808301526200119060a4840162000662565b60a0830152620011a360c4840162000662565b60c083015260e48301358181116200056457620011c7906004369186010162001099565b60e0830152620011db610104840162000662565b61010083015261012483013581811162000564576200120190600436918601016200107b565b610120830152620012166101448401620010f2565b61014083015261016483013590811162000564576200061f9260046200124092369201016200107b565b6101608201526200125062000633565b6200125a62000644565b906200126562000653565b9262003c38565b346200056457604036600319011262000564576024356200128d8162000621565b336001600160a01b03821603620012ac576200061f906004356200331f565b60405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608490fd5b346200056457602036600319011262000564576004356200132a8162000621565b6001600160a01b03620013817f00000000000000000000000000000000000000000000000000000000000000008216620013673082141562003591565b8260008051602062005e92833981519152541614620035e2565b6200138b62003b7e565b33911603620013aa576200061f90620013a362003423565b90620036fd565b620013d3620013b862003b7e565b60405163163678e960e01b8152918291336004840162003be8565b0390fd5b346200056457602036600319011262000564576200061f600435620013fc8162000621565b620053dd565b34620005645760203660031901126200056457600435620014238162000621565b60018060a01b031660005261010a602052602060ff604060002054166040519015158152f35b346200056457602036600319011262000564576200061f6004356200146e8162000621565b62003c02565b346200056457602060ff620014ac6200148d366200066f565b6001600160a01b03909116600090815261010e85526040902062000d99565b54166040519015158152f35b60403660031901126200056457600435620014d38162000621565b6024356001600160401b0381116200056457366023820112156200056457620015079036906024816004013591016200103f565b6001600160a01b03620015447f00000000000000000000000000000000000000000000000000000000000000008216620013673082141562003591565b6200154e62003b7e565b33911603620013aa576200061f91620037c1565b346200056457600036600319011262000564577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003620015c05760405160008051602062005e928339815191528152602090f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b3462000564576020806003193601126200056457600480356200164862004d30565b6200165262004f49565b60005b620016603362000d63565b548110156200175457620016a062000c7162000c716200168b84620016853362000d63565b62000dc6565b905460039190911b1c6001600160a01b031690565b9084604051809363782aadff60e01b825281600081620016c489338c840162004c9a565b03925af180156200086257620016ec9260009162001732575b5080620016f2575b50620040fd565b62001655565b6200172962001720620017053362000d48565b620017196200168b86620016853362000d63565b9062000d99565b91825462003415565b905538620016e5565b6200174d9150863d88116200085a5762000849818362000f9d565b38620016dd565b7f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f620017c28362001797816200178d6101055462000575565b3090339062004e1b565b6001620017a43362000d2d565b01620017b282825462003415565b9055604051918291338362004c9a565b0390a16200061f6001606555565b34620005645760003660031901126200056457610102546040516001600160a01b039091168152602090f35b34620005645760208060031936011262000564576004908135906200182062004d30565b6200182a62004f49565b620018353362000d63565b906001936200185284866200184a3362000d2d565b015462004142565b60fb541162001a5057908492620018788533620018726101055462000575565b62004f67565b6000935b620018c2575b7f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8620017c28688620018b43362000d2d565b01620017b282825462004142565b909192948154948587101562001a4757620018e26200168b888562000dc6565b95620018ee8762004f92565b15620019f657506040928484518098632ed04b2b60e01b8252816000816200191b888d3390840162004c9a565b03926001600160a01b03165af19687156200086257600097620019d2575b5062001959620019493362000d48565b620017196200168b8b8562000dc6565b549485881115620019865784516311423e6360e31b81528088018981526020810188905281906040010390fd5b9450949250948196620019c791620019bf620019b6620019a63362000d48565b620017196200168b868c62000dc6565b91825462004142565b9055620040fd565b93909291926200187c565b620019ee919750853d87116200085a5762000849818362000f9d565b953862001939565b9662001a41620019c7929762001a3662001a236200168b62001a1c889d9b999b62004122565b8b62000dc6565b62001a2f858b62000dc6565b9062004cb5565b620009d48862004dd5565b620040fd565b94509462001882565b604051634e23e81760e11b8152fd5b346200056457602062001a9562001a76366200066f565b6001600160a01b03909116600090815261010b84526040902062000d99565b54604051908152f35b34620005645762001aaf366200066f565b62001ab962004d30565b62001ac362005207565b62001ad862001ad460ff5460ff1690565b1590565b62001bb95762001afa62001ad4600262001af28562000d2d565b015460ff1690565b62001ba75781620017c262001b34620007127fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a39562000d2d565b62001b3f8362005908565b62001b6062001b4e8462000d2d565b60026000918281558260018201550155565b62001b7862001b726101105462004122565b61011055565b62001b99602062001b8c6101055462000575565b9201918583519162004f67565b516040519384938462004d0e565b604051636a5cfb6d60e01b8152600490fd5b6040516365b1ee3960e11b8152600490fd5b34620005645760003660031901126200056457610103546040516001600160a01b039091168152602090f35b34620005645760003660031901126200056457610106546040516001600160a01b039091168152602090f35b34620005645760008060031936011262001c745762001c416200333b565b603380546001600160a01b0319811690915581906001600160a01b031660008051602062005eb28339815191528280a380f35b80fd5b3462000564576020366003190112620005645762001c9462005207565b6101075460405163068bcd8d60e01b81526004803590820152906001600160a01b03906000908390602490829085165afa91821562000862576200061f9260209160009162001ce8575b500151166200538f565b62001d07913d8091833e62001cfe818362000f9d565b8101906200516b565b3862001cde565b34620005645760003660031901126200056457602060405160008051602062005dd28339815191528152f35b34620005645760003660031901126200056457602061011054604051908152f35b34620005645760003660031901126200056457610101546040516001600160a01b039091168152602090f35b34620005645760003660031901126200056457610104546040516001600160a01b039091168152602090f35b3462000564576020366003190112620005645762001dd062005207565b6101075460405163068bcd8d60e01b8152600480359082015290600090829060249082906001600160a01b03165afa80156200086257602062000c719162001e249360009162001e41575b50015162000575565b62001e2f8162004f92565b62001e3657005b6200061f906200525e565b62001e57913d8091833e62001cfe818362000f9d565b3862001e1b565b34620005645760203660031901126200056457606060043562001e818162000621565b60018060a01b0380911660005261010c6020526040600020908154169060ff600260018301549201541690604051928352602083015215156040820152f35b34620005645760003660031901126200056457602060fc54604051908152f35b34620005645760003660031901126200056457602062001eff62003b7e565b6040516001600160a01b039091168152f35b34620005645760403660031901126200056457602060ff620014ac60243562001f3a8162000621565b60043560005260c98452604060002062000d99565b34620005645760208060031936011262000564576004356001600160401b038111620005645762001f859036906004016200107b565b62001f8f62004d30565b62001fa162000c716101005462000575565b9160fb5462001fb762000c5160fc54836200264c565b6040516302a64b8360e21b815290946001600160a01b0316919083818062001fe3306004830162000581565b0381865afa80156200086257620020099262000c5192600092620021ab575b506200264c565b906200201f62001ad4600262001af23362000d2d565b62002030575b6200061f6001606555565b6200204f6002620020413362000d2d565b01805460ff19166001179055565b60fb5494856001620020613362000d2d565b01556200209361010596620020888562000cd585620020818c5462000575565b9462003415565b903090339062004e1b565b806200217d575b5081620020ec575b50505060008051602062005f128339815191529150620020c962001b7261011054620033f7565b60fb54620020de60405192839233846200543d565b0390a1388080808062002025565b82620020fb6004965462000575565b9160405196878092634c3a1adf60e11b82525afa908115620008625760008051602062005f12833981519152956200213e9460009362002147575b505062004f67565b388080620020a2565b6200216c929350803d1062002175575b62002163818362000f9d565b81019062003b66565b90388062002136565b503d62002157565b620021a4906200218e875462000575565b60ff5460081c6001600160a01b03169062004f67565b386200209a565b620021c7919250863d88116200085a5762000849818362000f9d565b903862002002565b34620005645760003660031901126200056457602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b34620005645760003660031901126200056457602060405160008152f35b346200056457602036600319011262000564576004356200223f8162000621565b60018060a01b031660005261010c602052602060ff600260406000200154166040519015158152f35b34620005645760203660031901126200056457600435620022898162000621565b620022936200333b565b61010180546001600160a01b0319166001600160a01b03909216919091179055005b3462000564576000366003190112620005645760ff5460405160089190911c6001600160a01b03168152602090f35b3462000564576000366003190112620005645761010380546001600160a01b031633819003620023a7576200239562000c717ffea29da7321ca6d0ee0a7359009bb9d4a57035aea0ef6cb4d062341f4a9615199362002347620023a294620031d5565b6200237e6200237862000c7161010693620023716200236b62000c71875462000575565b6200328a565b5462000575565b6200339d565b61010380546001600160a01b031916905562002371565b6040519182918262000581565b0390a1005b6040516375e686b760e11b8152600490fd5b90600182811c92168015620023eb575b6020831014620023d557565b634e487b7160e01b600052602260045260246000fd5b91607f1691620023c9565b60005b8381106200240a5750506000910152565b8181015183820152602001620023f9565b906020916200243681518092818552858086019101620023f6565b601f01601f1916010190565b906020620006999281815201906200241b565b34620005645760008060031936011262001c74576040518161010980546200247d81620023b9565b80855291600191808316908115620024f95750600114620024b9575b62000ceb85620024ac8189038262000f9d565b6040519182918262002442565b835260208084209095505b828410620024e5575050508162000ceb93620024ac92820101933862002499565b8054858501870152928501928101620024c4565b905062000ceb9650620024ac9450602092508593915060ff191682840152151560051b820101933862002499565b34620005645760008060031936011262001c74576200254562004d30565b6200254f62004f49565b6200255a3362005908565b33815261010c6020527fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f46200081d604083206040516200259a8162000f51565b81546001600160a01b0316815260018201546020820190815260029092015460ff161515604090910152620025d362001b4e3362000d2d565b620025e8620025e23362000d63565b6200429f565b610110548062002620575b5062002611620026066101055462000575565b825190339062004f67565b51604051918291338362004c9a565b62001b726200262f9162004122565b38620025f3565b634e487b7160e01b600052601160045260246000fd5b8181029291811591840414171562000ba657565b346200056457600036600319011262000564576020604051620186a08152f35b346200056457602036600319011262000564576200061f600435620026a58162000621565b620026b860ff60005460081c1662003ae0565b620033bf565b34620005645760008060031936011262001c7457604051816101088054620026e681620023b9565b80855291600191808316908115620024f95750600114620027145762000ceb85620024ac8189038262000f9d565b835260208084209095505b82841062002740575050508162000ceb93620024ac92820101933862002499565b80548585018701529285019281016200271f565b346200056457604036600319011262000564576200061f6024356004356200277c8262000621565b8060005260c9602052620027986001604060002001546200306f565b6200331f565b34620005645760003660031901126200056457610107546040516001600160a01b039091168152602090f35b3462000564576000366003190112620005645760206040516127108152f35b34620005645760003660031901126200056457610105546040516001600160a01b039091168152602090f35b91908260809103126200056457604051608081016001600160401b0381118282101762000f4b5760405260608082948035845260208101356020850152604081013560408501520135910152565b359060038210156200056457565b600411156200056457565b3590620006428262002871565b91908260209103126200056457604051602081016001600160401b0381118282101762000f4b5760405291358252565b91908260c09103126200056457604051620028d48162000f6d565b60a08082948035620028e68162000621565b84526020810135620028f88162000621565b60208501526040810135604085015260608101356060850152608081013560808501520135910152565b6001600160401b03811162000f4b5760051b60200190565b81601f820112156200056457803591620029548362002922565b9262002964604051948562000f9d565b808452602092838086019260051b82010192831162000564578301905b82821062002990575050505090565b8380918335620029a08162000621565b81520191019062002981565b919091610220818403126200056457620029c562000fe2565b92620029d2818362002815565b8452620029e26080830162002863565b6020850152620029f560a083016200287c565b604085015262002a098160c0840162002889565b606085015262002a1d8160e08401620028b9565b608085015262002a316101a0830162000662565b60a085015262002a456101c0830162000662565b60c08501526101e082013560e08501526102008201356001600160401b038111620005645762002a7692016200293a565b610100830152565b9081526001600160a01b03909116602082015260400190565b3462000564576060366003190112620005645760043562002ab88162000621565b6001600160401b03602435818111620005645762002adb903690600401620029ac565b91604435828111620005645762002af790369060040162001099565b9062002b066101025462000575565b9062002b1962000c716101075462000575565b9262002b286101015462000575565b6033546040805163184b955960e01b60208201526001600160a01b039788166024820152928716604484015290861660648084019190915282529495601f199462002b7560848462000f9d565b86519261041091828501938585109085111762000f4b57849362002b9f93620059c28639620048b7565b03906000f08015620008625762002bba928688921662004b38565b948592919462002bce60c083015162000575565b161562002c76575b50829162002c6b9162002c3d62000ceb9551602081019062002c0b8162002bfe8b85620048db565b0385810183528262000f9d565b5190208551602081019062002c338162002c268c85620048f6565b0386810183528262000f9d565b5190209062004865565b835162002c6260208201928262002c558a86620048f6565b0390810183528262000f9d565b5190206200326e565b519283928362002a7e565b6101009192500192835151612710811162002d0257508251602081019062002ca48162002bfe8585620048db565b5190209260005b855187815183101562002cec57509062001a4162002cdf62002cd28362002ce6956200410d565b516001600160a01b031690565b876200326e565b62002cab565b9396509194509192915062000ceb905062002bd6565b835163107b111560e31b81526004810191909152602490fd5b34620005645760203660031901126200056457602060ff620014ac60043562002d448162000621565b60008051602062005dd283398151915260005260c98452604060002062000d99565b3462000564576080366003190112620005645760043562002d878162000621565b6024359062002d968262000621565b6001600160401b0391604435838111620005645762002dba903690600401620029ac565b90606435938411620005645762002dda62002de194369060040162001099565b9262004b38565b9062000ceb6040519283928362002a7e565b3462000564576003196020368201126200056457600435906001600160401b0390818311620005645760e0908336030112620005645762002e3362001003565b9062002e428360040162000662565b825262002e526024840162000662565b6020830152604483013560408301526064830135818111620005645762002e8090600436918601016200107b565b60608301526084830135608083015262002e9d60a48401620010f2565b60a083015260c483013590811162000564576200061f92600462002ec592369201016200107b565b60c08201526200559c565b3462000564576020366003190112620005645760043562002ef18162000621565b62002efb6200333b565b6001600160a01b0381161562002f16576200061f90620033bf565b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34620005645760003660031901126200056457610100546040516001600160a01b039091168152602090f35b346200056457602036600319011262000564577f6723d9f32d040ca8ddd4dabf6f03ad485e63fc3fd625ac1fa1c557de6719314f602060043562002fda8162000621565b62002fe462005207565b6001600160a01b038116600081815261010a8452604090205490919060ff1662003013575b50604051908152a1005b6200301e906200538f565b3862003009565b3462000564576000366003190112620005645762000ceb6040516200304a8162000f2f565b60038152620302e360ec1b60208201526040519182916020835260208301906200241b565b8060005260c960205260ff6200308a33604060002062000d99565b541615620030955750565b3390620030a16200344c565b916030620030af8462003469565b536078620030bd8462003477565b5360295b600181116200317457620013d36200312f6200315b866200314c620030f288620030ec8915620034a8565b620034f4565b62003128604051958694620031286020870160179076020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81520190565b90620031bc565b7001034b99036b4b9b9b4b733903937b6329607d1b815260110190565b03601f19810183528262000f9d565b60405162461bcd60e51b81529182916004830162002442565b90600f811690601082101562000ddf57620031b6916f181899199a1a9b1b9c1cb0b131b232b360811b901a620031ab848762003488565b5360041c916200349a565b620030c1565b90620031d160209282815194859201620023f6565b0190565b60008051602062005dd2833981519152600081815260c96020529060ff6200320d8460008051602062005ef283398151915262000d99565b5416156200321a57505050565b80825260c960205262003231836040842062000d99565b805460ff1916600117905533926001600160a01b0316917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4565b60009080825260c960205260ff6200320d846040852062000d99565b60008051602062005dd2833981519152600081815260c96020529060ff620032c28460008051602062005ef283398151915262000d99565b5416620032ce57505050565b80825260c9602052620032e5836040842062000d99565b805460ff1916905533926001600160a01b0316917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4565b60009080825260c960205260ff620032c2846040852062000d99565b6200334562003b7e565b336001600160a01b03909116036200335957565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b61010680546001600160a01b0319166001600160a01b03909216919091179055565b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062005eb2833981519152600080a3565b906001820180921162000ba657565b906002820180921162000ba657565b9190820180921162000ba657565b604051602081016001600160401b0381118282101762000f4b5760405260008152906000368137565b604051906200345b8262000f51565b602a82526040366020840137565b80511562000ddf5760200190565b80516001101562000ddf5760210190565b90815181101562000ddf570160200190565b801562000ba6576000190190565b15620034b057565b606460405162461bcd60e51b815260206004820152602060248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b60405190608082016001600160401b0381118382101762000f4b5760405260428252606036602084013760306200352b8362003469565b536078620035398362003477565b536041905b60018211620035545762000699915015620034a8565b600f811690601082101562000ddf576200358a916f181899199a1a9b1b9c1cb0b131b232b360811b901a620031ab848662003488565b906200353e565b156200359957565b60405162461bcd60e51b815260206004820152602c602482015260008051602062005e5283398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b15620035ea57565b60405162461bcd60e51b815260206004820152602c602482015260008051602062005e5283398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b9081602091031262000564575190565b6040513d6000823e3d90fd5b156200365757565b60405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608490fd5b60809060208152602e60208201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960408201526d6f6e206973206e6f74205555505360901b60608201520190565b906200371960008051602062005e128339815191525460ff1690565b156200372b5750620006429062003885565b6040516352d1902d60e01b8152916020836004816001600160a01b0385165afa600093816200379c575b50620037765760405162461bcd60e51b815280620013d360048201620036ae565b6200379660008051602062005e928339815191526200064294146200364f565b62003917565b620037b991945060203d81116200085a5762000849818362000f9d565b923862003755565b90620037dd60008051602062005e128339815191525460ff1690565b15620037ef5750620006429062003885565b6040516352d1902d60e01b8152916020836004816001600160a01b0385165afa6000938162003860575b506200383a5760405162461bcd60e51b815280620013d360048201620036ae565b6200385a60008051602062005e928339815191526200064294146200364f565b620039cd565b6200387d91945060203d81116200085a5762000849818362000f9d565b923862003819565b803b15620038bc5760008051602062005e9283398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b90620039238262003885565b6001600160a01b03821660008051602062005ed2833981519152600080a2805115801590620039c4575b62003956575050565b620039c191600080604051936200396d8562000f51565b602785527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c6020860152660819985a5b195960ca1b6040860152602081519101845af4620039ba62003a14565b9162003a49565b50565b5060006200394d565b90620039d98262003885565b6001600160a01b03821660008051602062005ed2833981519152600080a280511580159062003a0b5762003956575050565b5060016200394d565b3d1562003a44573d9062003a288262001023565b9162003a38604051938462000f9d565b82523d6000602084013e565b606090565b9192901562003aae575081511562003a5f575090565b3b1562003a695790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b82519091501562003ac25750805190602001fd5b60405162461bcd60e51b8152908190620013d3906004830162002442565b1562003ae857565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b6200064290620026b860ff60005460081c1662003ae0565b5190620006428262000621565b90816020910312620005645751620006998162000621565b6033546001600160a01b0316803b62003b945790565b604051638da5cb5b60e01b8152602081600481855afa6000918162003bc3575b5062003bbe575090565b905090565b62003be091925060203d8111620021755762002163818362000f9d565b903862003bb4565b6001600160a01b0391821681529116602082015260400190565b6001600160a01b0316600090815261010a602052604090205460ff161562003c2657565b6040516346c26e4b60e01b8152600490fd5b919290926000549360ff8560081c16158095819662003d6b575b811562003d48575b501562003cec5762003c85938562003c7a600160ff196000541617600055565b62003cd1576200439a565b62003c8c57565b62003c9d61ff001960005416600055565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989080602081015b0390a1565b62003ce661010061ff00196000541617600055565b6200439a565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b303b1591508162003d5c575b503862003c5a565b6001915060ff16143862003d54565b600160ff821610915062003c52565b81811062003d86575050565b6000815560010162003d7a565b90601f821162003da1575050565b62000642916101086000526020600020906020601f840160051c8301931062003dd3575b601f0160051c019062003d7a565b909150819062003dc5565b90601f821162003dec575050565b62000642916101096000526020600020906020601f840160051c8301931062003dd357601f0160051c019062003d7a565b80519091906001600160401b03811162000f4b576101089062003e4c8162003e468454620023b9565b62003d93565b602080601f831160011462003e8b57508192939460009262003e7f575b50508160011b916000199060031b1c1916179055565b01519050388062003e69565b610108600052601f198316959091907f8543e9adbfbe1f62b7411fdf032fcfea758a7d6b332f64d971a1334c2ff364dd926000905b88821062003efb5750508360019596971062003ee1575b505050811b019055565b015160001960f88460031b161c1916905538808062003ed7565b8060018596829496860151815501950193019062003ec0565b80519091906001600160401b03811162000f4b576101099062003f438162003f3d8454620023b9565b62003dde565b602080601f831160011462003f7557508192939460009262003e7f5750508160011b916000199060031b1c1916179055565b610109600052601f198316959091907fd7f48d1c2d4fdcceabee32a4fd1437f382c65f0f9af09a878c95c20147dc06a8926000905b88821062003fca5750508360019596971062003ee157505050811b019055565b8060018596829496860151815501950193019062003faa565b60ff8054610100600160a81b03191660089290921b610100600160a81b0316919091179055565b602090818184031262000564578051906001600160401b0382116200056457019180601f8401121562000564578251620040448162002922565b9362004054604051958662000f9d565b818552838086019260051b82010192831162000564578301905b8282106200407d575050505090565b83809183516200408d8162000621565b8152019101906200406e565b60405190608082016001600160401b0381118382101762000f4b57604052600382526060366020840137565b90620040d18262002922565b620040e0604051918262000f9d565b8281528092620040f3601f199162002922565b0190602036910137565b600019811462000ba65760010190565b805182101562000ddf5760209160051b010190565b60001981019190821162000ba657565b60011981019190821162000ba657565b9190820391821162000ba657565b906000916101088054916200416583620023b9565b918282526001938481169081600014620041cc575060011462004189575b50505050565b90919394506000526020928360002092846000945b838610620041b757505050500101903880808062004183565b8054858701830152940193859082016200419e565b9294505050602093945060ff191683830152151560051b0101903880808062004183565b906040602062000699938051845201519181602082015201906200241b565b90815180825260208080930193019160005b82811062004230575050505090565b83516001600160a01b03168552938101939281019260010162004221565b906200069994926200428091835260a060208401526200427160a0840162004150565b908382036040850152620041f0565b6001600160a01b0390931660608201528083036080909101526200420f565b80546000825580620042af575050565b620006429160005260206000209081019062003d7a565b9060031b9160018060a01b03809116831b921b19161790565b8051906001600160401b03821162000f4b57600160401b821162000f4b5761010f9081548383558084106200434c575b50602080910191600052806000209060005b84811062004330575050505050565b83516001600160a01b0316838201559281019260010162004321565b620043669083600052846020600020918201910162003d7a565b386200430f565b909162000699928252606060208301526200438b6060830162004150565b916040818403910152620041f0565b9092620043a79062003b41565b620043b162004892565b620043bb620047fa565b620043c56200480d565b620043fb620043d962000c71835162000575565b61010780546001600160a01b0319166001600160a01b03909216919091179055565b6020620044316200440f8284015162000575565b61010580546001600160a01b0319166001600160a01b03909216919091179055565b604092838301805115620047e9575160fb5562004451606084015160fc55565b6200447562004464610140850151151590565b60ff8019815416911515161760ff55565b6200448561012084015162003e1d565b6200449561016084015162003f14565b620044ca620044a860a085015162000575565b61010080546001600160a01b0319166001600160a01b03909216919091179055565b620044e3620044dd60c085015162000575565b62003fe3565b62004518620044fb62000c7161010086015162000575565b62004506816200339d565b62004512600061011055565b620031d5565b6004826200452d62000c716101075462000575565b8651635ab1bd5360e01b815292839182905afa801562000862576200457991600091620047c7575b5061010480546001600160a01b0319166001600160a01b0392909216919091179055565b6000946200458e62000c716101065462000575565b95863b6200470957506200463790620045e1620045aa62004099565b97620045ca33620045bb8b62003469565b6001600160a01b039091169052565b620045bb620045da8a5162004122565b8a6200410d565b620045f630620045bb620045da8a5162004132565b83876200460a62000c716101045462000575565b60e06080890151980197600089518b5197889586948593633a92f65f60e01b85523091600486016200424e565b03925af191821562000862577f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059762004688620046b0946200468e93620046d298600092620046e7575b505060fe55565b620042df565b61010280546001600160a01b0319166001600160a01b03909216919091179055565b61010180546001600160a01b0319166001600160a01b03909216919091179055565b62003ccc60fe5491519251928392836200436d565b620047019250803d106200085a5762000849818362000f9d565b388062004681565b94929095969391835163a0e67e2b60e01b815286816004818c5afa968715620008625780976200479d575b50506200474c62004746875162003406565b620040c5565b9660005b875181101562004785578062001a416200477362002cd26200477f948c6200410d565b620045bb838d6200410d565b62004750565b50909294976200463792949650620045e190620045ca565b620047be9297503d8091833e620047b5818362000f9d565b8101906200400a565b94388062004734565b620047e29150843d8611620021755762002163818362000f9d565b3862004555565b84516363868c5560e11b8152600490fd5b6200064260ff60005460081c1662003ae0565b60008051602062005dd2833981519152600081815260c96020527fa867e09674d469ee17077111ff66261f5d2fc5820cc6914676cb47231da58819805490829055909160008051602062005df28339815191528380a4565b8060005260c9602052600160406000200190828254925560008051602062005df2833981519152600080a4565b620048b060ff60005460081c16620048aa8162003ae0565b62003ae0565b6001606555565b6001600160a01b03909116815260406020820181905262000699929101906200241b565b6029916810531313d5d31254d560ba1b825260098201520190565b602f916e20a62627aba624a9aa2fa0a226a4a760891b8252600f8201520190565b634e487b7160e01b600052602160045260246000fd5b9060038210156200493b5752565b62004917565b600411156200493b57565b9060048210156200493b5752565b61024062000699926020835262004993602084018251606080918051845260208101516020850152604081015160408501520151910152565b620049a7602082015160a08501906200492d565b620049bb604082015160c08501906200494c565b60608101515160e084015260808181015180516001600160a01b03908116610100878101919091526020830151909116610120870152604082015161014087015260608201516101608701529181015161018086015260a001516101a08501529060a08101516001600160a01b03166101c085015260c08101516001600160a01b03166101e085015260e08101516102008501520151916102208082015201906200420f565b929462004a969562004ab2939592855260018060a01b0396879182602098168888015260e0604088015260e08701906200241b565b921660608501526000608085015283820360a0850152620041f0565b9060c081830391015261010f9282845492838152019360005282600020926000915b83831062004ae457505050505090565b845481168652948101946001948501949092019162004ad4565b9081526001600160a01b0391821660208201529181166040830152909116606082015260a0608082018190526200069992910190620041f0565b9093919273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee916001600160a01b03861662004c41575b602062004b97829683600062004b7f62000c716101075462000575565b9262004ba660fe54916040519687918983016200495a565b03601f19810187528662000f9d565b62004bc9886040519a8b97889687956370803ea560e11b87526004870162004a61565b03925af191821562000862577f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2839360009362004c17575b5062003ccc90839760405194859430918662004afe565b62003ccc91935062004c399060203d81116200085a5762000849818362000f9d565b929062004c00565b85925062004b62565b9060405162004c598162000f51565b82546001600160a01b031681526001830154602082015260029092015460ff1615156040830152565b90816020910312620005645751620006998162002871565b6001600160a01b039091168152602081019190915260400190565b8054909262004cd0926001600160a01b0390911691620042c6565b9055565b805490600160401b82101562000f4b578162004cfa91600162004cd09401815562000dc6565b815491936001600160a01b031691620042c6565b6001600160a01b03918216815291166020820152604081019190915260600190565b60026065541462004d42576002606555565b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b6001600160a01b0316600090815261010c602052604090206002015460ff161562001ba757565b6001600160a01b0391821691160362004dc357565b60405163bbe7961160e01b8152600490fd5b8054801562004e0557600019019062004def828262000dc6565b81549060018060a01b039060031b1b1916905555565b634e487b7160e01b600052603160045260246000fd5b9062004e569062004e4762000642956040519586936323b872dd60e01b60208601526024850162004d0e565b03601f19810184528362000f9d565b60405162004eb3916001600160a01b031662004e728262000f2f565b6000806020958685527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656487860152868151910182855af1620039ba62003a14565b805182811591821562004f25575b505090501562004ece5750565b6084906040519062461bcd60e51b82526004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152fd5b8380929350010312620005645781015162004f4081620010e7565b80823862004ec1565b3360005261010c60205260ff600260406000200154161562001ba757565b62004e5662000642939262004e4760405194859263a9059cbb60e01b60208501526024840162004c9a565b6040519060208083018160006301ffc9a760e01b958684528660248201526024815262004fbf8162000f51565b51617530938685fa933d600051908662005072575b508562005067575b508462004ffd575b5050508162004ff1575090565b6200069991506200507e565b83945090600091839460405185810192835263ffffffff60e01b6024820152602481526200502b8162000f51565b5192fa60005190913d836200505b575b50508162005050575b50159038808062004fe4565b905015153862005044565b1015915038806200503b565b151594503862004fdc565b84111595503862004fd4565b6000602091604051838101906301ffc9a760e01b825263f1801e6160e01b602482015260248152620050b08162000f51565b5191617530fa6000513d82620050d3575b5081620050cc575090565b9050151590565b60201115915038620050c1565b91906040838203126200056457604051620050fb8162000f2f565b83518152602084015190938491906001600160401b0382116200056457019082601f830112156200056457815191620051348362001023565b9362005144604051958662000f9d565b8385526020848301011162000564576020926200516791848087019101620023f6565b0152565b90602082820312620005645781516001600160401b039283821162000564570160c081830312620005645760405192620051a58462000f6d565b815184526020820151620051b98162000621565b6020850152620051cc6040830162003b59565b60408501526060820151908111620005645760a092620051ee918301620050e0565b606084015260808101516080840152015160a082015290565b60008051602062005dd283398151915260005260c960205260ff6200523c3360008051602062005ef283398151915262000d99565b5416156200524657565b60405163fc4be72f60e01b8152336004820152602490fd5b6200526d620006f38262000d7e565b6200537d5762005281620007ed8262000d7e565b60405163b6c61f3160e01b81526001600160a01b03906020816004818686165afa90811562000862576000916200535a575b501680620052df575b5062003ccc60008051602062005e72833981519152916040519182918262000581565b90813b156200056457600060405180936306c0752d60e51b82528183816200530b876004830162000581565b03925af1908115620008625760008051602062005e728339815191529262003ccc926200533c575b509150620052bc565b806200534c620053539262000f89565b8062000569565b3862005333565b62005376915060203d8111620021755762002163818362000f9d565b38620052b3565b6040516325a2934b60e21b8152600490fd5b6001600160a01b0316600081815261010a6020908152604091829020805460ff1916905590519182527f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea491a1565b60407f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf8916200540b62005207565b61010380546001600160a01b0319166001600160a01b03928316908117909155610106548351921682526020820152a1565b62000699939260609260018060a01b03168252602082015281604082015201906200241b565b60207f5e2d447f427e49fd08832fd025a56589500352417199aa65728feaf05123e856916200549162005207565b6200549b620054a8565b8060fb55604051908152a1565b6101105480620054b55750565b60249060405190637d95539f60e11b82526004820152fd5b6040519060008261010991825492620054e684620023b9565b9081845260019485811690816000146200555b575060011462005514575b5050620006429250038362000f9d565b9093915060005260209081600020936000915b81831062005542575050620006429350820101388062005504565b8554888401850152948501948794509183019162005527565b9150506200064294506020925060ff191682840152151560051b820101388062005504565b604051906200064282620055948162004150565b038362000f9d565b620055a662005207565b6080810180519060fb5480921480159062005830575b80156200580a575b620056fb575b505060608101805160208151910120620055e362005580565b6020815191012003620056b1575b50604081015160fc5481036200569f575b506200564f62005616602083015162000575565b60ff54909290620056339060081c6001600160a01b031662000575565b6001600160a01b0393908482160362005664575b505162000575565b1680620056595750565b6200064290620053dd565b6200569581620023957f647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f7860599362003fe3565b0390a13862005647565b620056aa9062005854565b3862005602565b620056f181620056e37ff67fb6c95f41f58a276869ca2608214f0a6aab1c9ffe445affaa58680fddd497935162003e1d565b516040519182918262002442565b0390a138620055f1565b62005705620054a8565b51908103620057f8575b5060a081015115156200572d6200572860ff5460ff1690565b151590565b81151503620057a0575b5060c081018051602081519101206200574f620054cd565b602081519101200362005764575b80620055ca565b6200579681620056e37f8fd46764d9fde733a671bd3aa6710da0668b1c4eb78d33f42e104553ea4bc76e935162003f14565b0390a1386200575d565b620057ee81620057dc7f4ca826489011b9a44719ccfa206813b072bb58604af41f245a6a1a6d913588759360ff8019815416911515161760ff55565b60405190151581529081906020820190565b0390a13862005737565b620058039062005463565b386200570f565b5060c08301516020815191012062005821620054cd565b602081519101201415620055c4565b5060a08301511515620058496200572860ff5460ff1690565b9015151415620055bc565b6200585e62005207565b620186a081116200589a576020817f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d69260fc55604051908152a1565b60405163fe925f7d60e01b8152600490fd5b9060405191828154918282526020928383019160005283600020936000905b828210620058e457505050620006429250038362000f9d565b85546001600160a01b031684526001958601958895509381019390910190620058cb565b9060009160018060a01b038116835261010d6020526040906200592d828520620058ac565b845b8151811015620059b9576200595162000c7162000c7162002cd284866200410d565b90813b15620059b5578685518093631914f67160e21b82528183816200597b8a6004830162000581565b03925af1918215620008625762005998926200599e5750620040fd565b6200592f565b806200534c620059ae9262000f89565b38620016e5565b8680fd5b50505050905056fe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c6343000813003303be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fabd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143f56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec46756e6374696f6e206d7573742062652063616c6c6564207468726f756768203f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f1360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3ba867e09674d469ee17077111ff66261f5d2fc5820cc6914676cb47231da588180bd09b1e448ffe881e884ac37014bf3e0274007308056b6469b50fa485542abfa264697066735822122038d7337b9e2c950b91a6a6111090d414436b199c9a1a345fa6d2997ec798a45064736f6c63430008130033","sourceMap":"3148:26794:104:-:0;;;;;;;1088:4:61;1080:13;;3148:26794:104;;;;;;1080:13:61;3148:26794:104;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610156200001357600080fd5b60003560e01c806301ffc9a71462000509578063025313a214620005035780630331383c146200042557806308386eba14620004fd5780630d12bbdb14620004f75780630d4a8b4914620004f1578063175188e814620004eb5780631b71f0e414620004e55780631f787d2814620004df578063223e547914620004d957806322bcf99914620004d3578063248a9ca314620004cd57806328c309e914620004c75780632b38c69c14620004c15780632c611c4a14620004bb5780632f2ff15d14620004b557806331f61bca14620004af5780633396045914620004a95780633419635514620004a357806336568abe146200049d5780633659cfe61462000497578063397e254314620004915780633a871fe1146200048b578063411481e61462000485578063477a5cc0146200047f5780634f1ef286146200047957806352d1902d1462000473578063559de05d146200046d5780635c94e4d214620004675780635ecf71c5146200046157806365e3864c146200042b5780636871eb4d146200045b57806368decabb14620004555780636c53db9a146200044f578063715018a6146200044957806373265c371462000443578063733a2d1f146200043d57806376e92559146200043757806377122d5614620004315780637817ee4f146200042b57806378a0b8a914620004255780637b103999146200041f57806382d6a1e7146200041957806388cfe68414620004135780638961be6b146200040d5780638da5cb5b146200040757806391d1485414620004015780639a1f46e214620003fb578063a0cf0aea14620003f5578063a217fddf14620003ef578063a230c52414620003e9578063b0d3713a14620003e3578063b3f0067414620003dd578063b5058c5014620003d7578063b64e39af14620003d1578063b99b437014620003cb578063bc063e1a14620003c5578063c4d66de814620003bf578063c6d572ae14620003b9578063d547741f14620003b3578063d6d8428d14620003ad578063d7050f0714620003a7578063db61d65c14620003a1578063e0eab988146200039b578063ebd7dc521462000395578063f24b150f146200038f578063f2d774e71462000389578063f2fde38b1462000383578063f86c5f89146200037d578063fb1f691714620003775763ffa1ad74146200037157600080fd5b62003025565b62002f96565b62002f6a565b62002ed0565b62002df3565b62002d66565b62002d1b565b62002a97565b620027e9565b620027ca565b6200279e565b62002754565b620026be565b62002680565b62002660565b62002527565b62002455565b620022e4565b620022b5565b62002268565b6200221e565b62002200565b620021cf565b62001f4f565b62001f11565b62001ee0565b62001ec0565b62001e5e565b62001db3565b62001d87565b620005bf565b62001a5f565b62001d5b565b62001d3a565b62001d0e565b62001c77565b62001c23565b62001bf7565b62001bcb565b62001a9e565b620017fc565b620017d0565b62001626565b62001562565b620014b8565b62001474565b62001449565b62001402565b620013d7565b62001309565b6200126c565b620010ff565b62000ef9565b62000ed9565b62000e8f565b62000e4a565b62000de5565b62000c29565b62000bf8565b62000a80565b62000a4b565b62000a27565b620009da565b620009a5565b6200069c565b620005ff565b620005df565b62000594565b3462000564576020366003190112620005645760043563ffffffff60e01b81168091036200056457602090637965db0b60e01b811490811562000552575b506040519015158152f35b6301ffc9a760e01b1490503862000547565b600080fd5b60009103126200056457565b6001600160a01b031690565b6001600160a01b03909116815260200190565b346200056457600036600319011262000564576033546040516001600160a01b039091168152602090f35b34620005645760003660031901126200056457602060fb54604051908152f35b34620005645760003660031901126200056457602060fe54604051908152f35b346200056457602036600319011262000564576200061f60043562005854565b005b6001600160a01b038116036200056457565b60243590620006428262000621565b565b60443590620006428262000621565b60643590620006428262000621565b3590620006428262000621565b604090600319011262000564576004356200068a8162000621565b90602435620006998162000621565b90565b346200056457620006ad366200066f565b620006b762004d30565b620006c28262004d87565b620006cd8162003c02565b620006d9813362004dae565b620006fa620006f382620006ed8562000d12565b62000d99565b5460ff1690565b62000993576020908162000718620007128562000d2d565b62004c4a565b015160fb5460405163c329217160e01b8082526000966001600160a01b03861696909490939284816004818c8c5af1801562000862576003918a9162000971575b50620007658162004941565b036200086857505060405163782aadff60e01b81526001600160a01b038416600482015260006024820152948291508590604490829089905af18015620008625760008051602062005e32833981519152946200081d9287926200082e575b50505b80620007d885620006ed8662000d48565b55620007fa620007ed85620006ed8662000d12565b805460ff19166001179055565b62000810846200080a8562000d63565b62004cd4565b6040519384938462004d0e565b0390a16200082b6001606555565b80f35b620008529250803d106200085a575b62000849818362000f9d565b81019062003633565b3880620007c4565b503d6200083d565b62003643565b604096919392965193845282846004818b865af180156200086257889485916200093d575b50620008998162004941565b620008be575b505050506200081d60008051602062005e3283398151915293620007c7565b8293965090620008e69160405197888094819363782aadff60e01b8352896004840162004c9a565b03925af18015620008625760008051602062005e32833981519152946200081d9287926200091b575b5050938591386200089f565b620009359250803d106200085a5762000849818362000f9d565b38806200090f565b620009629150843d861162000969575b62000959818362000f9d565b81019062004c82565b386200088d565b503d6200094d565b6200098c9150863d8811620009695762000959818362000f9d565b3862000759565b604051636adcde4b60e11b8152600490fd5b346200056457602036600319011262000564576200061f600435620009ca8162000621565b620009d462005207565b6200538f565b34620005645760203660031901126200056457600435620009fb8162000621565b62000a056200333b565b61010280546001600160a01b0319166001600160a01b03909216919091179055005b34620005645760003660031901126200056457602060ff8054166040519015158152f35b346200056457602036600319011262000564576200061f60043562000a708162000621565b62000a7a62005207565b6200525e565b34620005645762000a91366200066f565b9062000a9d8162004d87565b62000aa9823362004dae565b60018060a01b03908181169160009280845261010e60205260ff62000ad2866040872062000d99565b54161562000be65762000aea85620006ed8562000d12565b805460ff191690558362000b0386620006ed8662000d48565b55835261010d6020526040832090835b8254908181101562000bac5762000b2b818562000dc6565b905460039391841b1c84168885161462000b53575b5062000b4d9150620040fd565b62000b13565b600019810190811162000ba65762000b4d9262000b7285928762000dc6565b9054911b1c1662000b9262000b88838762000dc6565b81939154620042c6565b905562000b9f8462004dd5565b3862000b40565b62002636565b857ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b888762000be06040519283928362003be8565b0390a180f35b604051633048da7760e21b8152600490fd5b3462000564576020366003190112620005645760043560005260c96020526020600160406000200154604051908152f35b3462000564576000366003190112620005645760fb5462000c5a62000c5160fc54836200264c565b620f4240900490565b9062000c7762000c7162000c716101005462000575565b62000575565b90602060405180936302a64b8360e21b8252818062000c9a306004830162000581565b03915afa918215620008625762000ceb9362000cce62000c5162000cdb9562000cd59460009162000cef575b50856200264c565b9262003415565b62003415565b6040519081529081906020820190565b0390f35b62000d0b915060203d81116200085a5762000849818362000f9d565b3862000cc6565b6001600160a01b0316600090815261010e6020526040902090565b6001600160a01b0316600090815261010c6020526040902090565b6001600160a01b0316600090815261010b6020526040902090565b6001600160a01b0316600090815261010d6020526040902090565b6001600160a01b0316600090815261010a6020526040902090565b9060018060a01b0316600052602052604060002090565b634e487b7160e01b600052603260045260246000fd5b805482101562000ddf5760005260206000200190600090565b62000db0565b3462000564576040366003190112620005645760043562000e068162000621565b6024359060018060a01b0380911660005261010d60205260406000208054831015620005645760209262000e3a9162000dc6565b9190546040519260031b1c168152f35b3462000564576020366003190112620005645760043562000e6b8162000621565b60018060a01b031660005261010c6020526020600160406000200154604051908152f35b346200056457604036600319011262000564576200061f60243560043562000eb78262000621565b8060005260c960205262000ed36001604060002001546200306f565b6200326e565b346200056457602036600319011262000564576200061f60043562005463565b34620005645760003660031901126200056457602060fd54604051908152f35b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b0382111762000f4b57604052565b62000f19565b606081019081106001600160401b0382111762000f4b57604052565b60c081019081106001600160401b0382111762000f4b57604052565b6001600160401b03811162000f4b57604052565b601f909101601f19168101906001600160401b0382119082101762000f4b57604052565b6040519061018082016001600160401b0381118382101762000f4b57604052565b6040519061012082016001600160401b0381118382101762000f4b57604052565b6040519060e082016001600160401b0381118382101762000f4b57604052565b6001600160401b03811162000f4b57601f01601f191660200190565b9291926200104d8262001023565b916200105d604051938462000f9d565b82948184528183011162000564578281602093846000960137010152565b9080601f83011215620005645781602062000699933591016200103f565b9190604083820312620005645760405190620010b58262000f2f565b8335825290928391602082013591906001600160401b0383116200056457602092620010e292016200107b565b910152565b801515036200056457565b35906200064282620010e7565b3462000564576003196080368201126200056457600435906001600160401b0390818311620005645761018090833603011262000564576200114062000fc1565b906200114f8360040162000662565b82526200115f6024840162000662565b60208301526044830135604083015260648301356060830152608483013560808301526200119060a4840162000662565b60a0830152620011a360c4840162000662565b60c083015260e48301358181116200056457620011c7906004369186010162001099565b60e0830152620011db610104840162000662565b61010083015261012483013581811162000564576200120190600436918601016200107b565b610120830152620012166101448401620010f2565b61014083015261016483013590811162000564576200061f9260046200124092369201016200107b565b6101608201526200125062000633565b6200125a62000644565b906200126562000653565b9262003c38565b346200056457604036600319011262000564576024356200128d8162000621565b336001600160a01b03821603620012ac576200061f906004356200331f565b60405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608490fd5b346200056457602036600319011262000564576004356200132a8162000621565b6001600160a01b03620013817f00000000000000000000000000000000000000000000000000000000000000008216620013673082141562003591565b8260008051602062005e92833981519152541614620035e2565b6200138b62003b7e565b33911603620013aa576200061f90620013a362003423565b90620036fd565b620013d3620013b862003b7e565b60405163163678e960e01b8152918291336004840162003be8565b0390fd5b346200056457602036600319011262000564576200061f600435620013fc8162000621565b620053dd565b34620005645760203660031901126200056457600435620014238162000621565b60018060a01b031660005261010a602052602060ff604060002054166040519015158152f35b346200056457602036600319011262000564576200061f6004356200146e8162000621565b62003c02565b346200056457602060ff620014ac6200148d366200066f565b6001600160a01b03909116600090815261010e85526040902062000d99565b54166040519015158152f35b60403660031901126200056457600435620014d38162000621565b6024356001600160401b0381116200056457366023820112156200056457620015079036906024816004013591016200103f565b6001600160a01b03620015447f00000000000000000000000000000000000000000000000000000000000000008216620013673082141562003591565b6200154e62003b7e565b33911603620013aa576200061f91620037c1565b346200056457600036600319011262000564577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003620015c05760405160008051602062005e928339815191528152602090f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b3462000564576020806003193601126200056457600480356200164862004d30565b6200165262004f49565b60005b620016603362000d63565b548110156200175457620016a062000c7162000c716200168b84620016853362000d63565b62000dc6565b905460039190911b1c6001600160a01b031690565b9084604051809363782aadff60e01b825281600081620016c489338c840162004c9a565b03925af180156200086257620016ec9260009162001732575b5080620016f2575b50620040fd565b62001655565b6200172962001720620017053362000d48565b620017196200168b86620016853362000d63565b9062000d99565b91825462003415565b905538620016e5565b6200174d9150863d88116200085a5762000849818362000f9d565b38620016dd565b7f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f620017c28362001797816200178d6101055462000575565b3090339062004e1b565b6001620017a43362000d2d565b01620017b282825462003415565b9055604051918291338362004c9a565b0390a16200061f6001606555565b34620005645760003660031901126200056457610102546040516001600160a01b039091168152602090f35b34620005645760208060031936011262000564576004908135906200182062004d30565b6200182a62004f49565b620018353362000d63565b906001936200185284866200184a3362000d2d565b015462004142565b60fb541162001a5057908492620018788533620018726101055462000575565b62004f67565b6000935b620018c2575b7f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8620017c28688620018b43362000d2d565b01620017b282825462004142565b909192948154948587101562001a4757620018e26200168b888562000dc6565b95620018ee8762004f92565b15620019f657506040928484518098632ed04b2b60e01b8252816000816200191b888d3390840162004c9a565b03926001600160a01b03165af19687156200086257600097620019d2575b5062001959620019493362000d48565b620017196200168b8b8562000dc6565b549485881115620019865784516311423e6360e31b81528088018981526020810188905281906040010390fd5b9450949250948196620019c791620019bf620019b6620019a63362000d48565b620017196200168b868c62000dc6565b91825462004142565b9055620040fd565b93909291926200187c565b620019ee919750853d87116200085a5762000849818362000f9d565b953862001939565b9662001a41620019c7929762001a3662001a236200168b62001a1c889d9b999b62004122565b8b62000dc6565b62001a2f858b62000dc6565b9062004cb5565b620009d48862004dd5565b620040fd565b94509462001882565b604051634e23e81760e11b8152fd5b346200056457602062001a9562001a76366200066f565b6001600160a01b03909116600090815261010b84526040902062000d99565b54604051908152f35b34620005645762001aaf366200066f565b62001ab962004d30565b62001ac362005207565b62001ad862001ad460ff5460ff1690565b1590565b62001bb95762001afa62001ad4600262001af28562000d2d565b015460ff1690565b62001ba75781620017c262001b34620007127fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a39562000d2d565b62001b3f8362005908565b62001b6062001b4e8462000d2d565b60026000918281558260018201550155565b62001b7862001b726101105462004122565b61011055565b62001b99602062001b8c6101055462000575565b9201918583519162004f67565b516040519384938462004d0e565b604051636a5cfb6d60e01b8152600490fd5b6040516365b1ee3960e11b8152600490fd5b34620005645760003660031901126200056457610103546040516001600160a01b039091168152602090f35b34620005645760003660031901126200056457610106546040516001600160a01b039091168152602090f35b34620005645760008060031936011262001c745762001c416200333b565b603380546001600160a01b0319811690915581906001600160a01b031660008051602062005eb28339815191528280a380f35b80fd5b3462000564576020366003190112620005645762001c9462005207565b6101075460405163068bcd8d60e01b81526004803590820152906001600160a01b03906000908390602490829085165afa91821562000862576200061f9260209160009162001ce8575b500151166200538f565b62001d07913d8091833e62001cfe818362000f9d565b8101906200516b565b3862001cde565b34620005645760003660031901126200056457602060405160008051602062005dd28339815191528152f35b34620005645760003660031901126200056457602061011054604051908152f35b34620005645760003660031901126200056457610101546040516001600160a01b039091168152602090f35b34620005645760003660031901126200056457610104546040516001600160a01b039091168152602090f35b3462000564576020366003190112620005645762001dd062005207565b6101075460405163068bcd8d60e01b8152600480359082015290600090829060249082906001600160a01b03165afa80156200086257602062000c719162001e249360009162001e41575b50015162000575565b62001e2f8162004f92565b62001e3657005b6200061f906200525e565b62001e57913d8091833e62001cfe818362000f9d565b3862001e1b565b34620005645760203660031901126200056457606060043562001e818162000621565b60018060a01b0380911660005261010c6020526040600020908154169060ff600260018301549201541690604051928352602083015215156040820152f35b34620005645760003660031901126200056457602060fc54604051908152f35b34620005645760003660031901126200056457602062001eff62003b7e565b6040516001600160a01b039091168152f35b34620005645760403660031901126200056457602060ff620014ac60243562001f3a8162000621565b60043560005260c98452604060002062000d99565b34620005645760208060031936011262000564576004356001600160401b038111620005645762001f859036906004016200107b565b62001f8f62004d30565b62001fa162000c716101005462000575565b9160fb5462001fb762000c5160fc54836200264c565b6040516302a64b8360e21b815290946001600160a01b0316919083818062001fe3306004830162000581565b0381865afa80156200086257620020099262000c5192600092620021ab575b506200264c565b906200201f62001ad4600262001af23362000d2d565b62002030575b6200061f6001606555565b6200204f6002620020413362000d2d565b01805460ff19166001179055565b60fb5494856001620020613362000d2d565b01556200209361010596620020888562000cd585620020818c5462000575565b9462003415565b903090339062004e1b565b806200217d575b5081620020ec575b50505060008051602062005f128339815191529150620020c962001b7261011054620033f7565b60fb54620020de60405192839233846200543d565b0390a1388080808062002025565b82620020fb6004965462000575565b9160405196878092634c3a1adf60e11b82525afa908115620008625760008051602062005f12833981519152956200213e9460009362002147575b505062004f67565b388080620020a2565b6200216c929350803d1062002175575b62002163818362000f9d565b81019062003b66565b90388062002136565b503d62002157565b620021a4906200218e875462000575565b60ff5460081c6001600160a01b03169062004f67565b386200209a565b620021c7919250863d88116200085a5762000849818362000f9d565b903862002002565b34620005645760003660031901126200056457602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b34620005645760003660031901126200056457602060405160008152f35b346200056457602036600319011262000564576004356200223f8162000621565b60018060a01b031660005261010c602052602060ff600260406000200154166040519015158152f35b34620005645760203660031901126200056457600435620022898162000621565b620022936200333b565b61010180546001600160a01b0319166001600160a01b03909216919091179055005b3462000564576000366003190112620005645760ff5460405160089190911c6001600160a01b03168152602090f35b3462000564576000366003190112620005645761010380546001600160a01b031633819003620023a7576200239562000c717ffea29da7321ca6d0ee0a7359009bb9d4a57035aea0ef6cb4d062341f4a9615199362002347620023a294620031d5565b6200237e6200237862000c7161010693620023716200236b62000c71875462000575565b6200328a565b5462000575565b6200339d565b61010380546001600160a01b031916905562002371565b6040519182918262000581565b0390a1005b6040516375e686b760e11b8152600490fd5b90600182811c92168015620023eb575b6020831014620023d557565b634e487b7160e01b600052602260045260246000fd5b91607f1691620023c9565b60005b8381106200240a5750506000910152565b8181015183820152602001620023f9565b906020916200243681518092818552858086019101620023f6565b601f01601f1916010190565b906020620006999281815201906200241b565b34620005645760008060031936011262001c74576040518161010980546200247d81620023b9565b80855291600191808316908115620024f95750600114620024b9575b62000ceb85620024ac8189038262000f9d565b6040519182918262002442565b835260208084209095505b828410620024e5575050508162000ceb93620024ac92820101933862002499565b8054858501870152928501928101620024c4565b905062000ceb9650620024ac9450602092508593915060ff191682840152151560051b820101933862002499565b34620005645760008060031936011262001c74576200254562004d30565b6200254f62004f49565b6200255a3362005908565b33815261010c6020527fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f46200081d604083206040516200259a8162000f51565b81546001600160a01b0316815260018201546020820190815260029092015460ff161515604090910152620025d362001b4e3362000d2d565b620025e8620025e23362000d63565b6200429f565b610110548062002620575b5062002611620026066101055462000575565b825190339062004f67565b51604051918291338362004c9a565b62001b726200262f9162004122565b38620025f3565b634e487b7160e01b600052601160045260246000fd5b8181029291811591840414171562000ba657565b346200056457600036600319011262000564576020604051620186a08152f35b346200056457602036600319011262000564576200061f600435620026a58162000621565b620026b860ff60005460081c1662003ae0565b620033bf565b34620005645760008060031936011262001c7457604051816101088054620026e681620023b9565b80855291600191808316908115620024f95750600114620027145762000ceb85620024ac8189038262000f9d565b835260208084209095505b82841062002740575050508162000ceb93620024ac92820101933862002499565b80548585018701529285019281016200271f565b346200056457604036600319011262000564576200061f6024356004356200277c8262000621565b8060005260c9602052620027986001604060002001546200306f565b6200331f565b34620005645760003660031901126200056457610107546040516001600160a01b039091168152602090f35b3462000564576000366003190112620005645760206040516127108152f35b34620005645760003660031901126200056457610105546040516001600160a01b039091168152602090f35b91908260809103126200056457604051608081016001600160401b0381118282101762000f4b5760405260608082948035845260208101356020850152604081013560408501520135910152565b359060038210156200056457565b600411156200056457565b3590620006428262002871565b91908260209103126200056457604051602081016001600160401b0381118282101762000f4b5760405291358252565b91908260c09103126200056457604051620028d48162000f6d565b60a08082948035620028e68162000621565b84526020810135620028f88162000621565b60208501526040810135604085015260608101356060850152608081013560808501520135910152565b6001600160401b03811162000f4b5760051b60200190565b81601f820112156200056457803591620029548362002922565b9262002964604051948562000f9d565b808452602092838086019260051b82010192831162000564578301905b82821062002990575050505090565b8380918335620029a08162000621565b81520191019062002981565b919091610220818403126200056457620029c562000fe2565b92620029d2818362002815565b8452620029e26080830162002863565b6020850152620029f560a083016200287c565b604085015262002a098160c0840162002889565b606085015262002a1d8160e08401620028b9565b608085015262002a316101a0830162000662565b60a085015262002a456101c0830162000662565b60c08501526101e082013560e08501526102008201356001600160401b038111620005645762002a7692016200293a565b610100830152565b9081526001600160a01b03909116602082015260400190565b3462000564576060366003190112620005645760043562002ab88162000621565b6001600160401b03602435818111620005645762002adb903690600401620029ac565b91604435828111620005645762002af790369060040162001099565b9062002b066101025462000575565b9062002b1962000c716101075462000575565b9262002b286101015462000575565b6033546040805163184b955960e01b60208201526001600160a01b039788166024820152928716604484015290861660648084019190915282529495601f199462002b7560848462000f9d565b86519261041091828501938585109085111762000f4b57849362002b9f93620059c28639620048b7565b03906000f08015620008625762002bba928688921662004b38565b948592919462002bce60c083015162000575565b161562002c76575b50829162002c6b9162002c3d62000ceb9551602081019062002c0b8162002bfe8b85620048db565b0385810183528262000f9d565b5190208551602081019062002c338162002c268c85620048f6565b0386810183528262000f9d565b5190209062004865565b835162002c6260208201928262002c558a86620048f6565b0390810183528262000f9d565b5190206200326e565b519283928362002a7e565b6101009192500192835151612710811162002d0257508251602081019062002ca48162002bfe8585620048db565b5190209260005b855187815183101562002cec57509062001a4162002cdf62002cd28362002ce6956200410d565b516001600160a01b031690565b876200326e565b62002cab565b9396509194509192915062000ceb905062002bd6565b835163107b111560e31b81526004810191909152602490fd5b34620005645760203660031901126200056457602060ff620014ac60043562002d448162000621565b60008051602062005dd283398151915260005260c98452604060002062000d99565b3462000564576080366003190112620005645760043562002d878162000621565b6024359062002d968262000621565b6001600160401b0391604435838111620005645762002dba903690600401620029ac565b90606435938411620005645762002dda62002de194369060040162001099565b9262004b38565b9062000ceb6040519283928362002a7e565b3462000564576003196020368201126200056457600435906001600160401b0390818311620005645760e0908336030112620005645762002e3362001003565b9062002e428360040162000662565b825262002e526024840162000662565b6020830152604483013560408301526064830135818111620005645762002e8090600436918601016200107b565b60608301526084830135608083015262002e9d60a48401620010f2565b60a083015260c483013590811162000564576200061f92600462002ec592369201016200107b565b60c08201526200559c565b3462000564576020366003190112620005645760043562002ef18162000621565b62002efb6200333b565b6001600160a01b0381161562002f16576200061f90620033bf565b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34620005645760003660031901126200056457610100546040516001600160a01b039091168152602090f35b346200056457602036600319011262000564577f6723d9f32d040ca8ddd4dabf6f03ad485e63fc3fd625ac1fa1c557de6719314f602060043562002fda8162000621565b62002fe462005207565b6001600160a01b038116600081815261010a8452604090205490919060ff1662003013575b50604051908152a1005b6200301e906200538f565b3862003009565b3462000564576000366003190112620005645762000ceb6040516200304a8162000f2f565b60038152620302e360ec1b60208201526040519182916020835260208301906200241b565b8060005260c960205260ff6200308a33604060002062000d99565b541615620030955750565b3390620030a16200344c565b916030620030af8462003469565b536078620030bd8462003477565b5360295b600181116200317457620013d36200312f6200315b866200314c620030f288620030ec8915620034a8565b620034f4565b62003128604051958694620031286020870160179076020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81520190565b90620031bc565b7001034b99036b4b9b9b4b733903937b6329607d1b815260110190565b03601f19810183528262000f9d565b60405162461bcd60e51b81529182916004830162002442565b90600f811690601082101562000ddf57620031b6916f181899199a1a9b1b9c1cb0b131b232b360811b901a620031ab848762003488565b5360041c916200349a565b620030c1565b90620031d160209282815194859201620023f6565b0190565b60008051602062005dd2833981519152600081815260c96020529060ff6200320d8460008051602062005ef283398151915262000d99565b5416156200321a57505050565b80825260c960205262003231836040842062000d99565b805460ff1916600117905533926001600160a01b0316917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4565b60009080825260c960205260ff6200320d846040852062000d99565b60008051602062005dd2833981519152600081815260c96020529060ff620032c28460008051602062005ef283398151915262000d99565b5416620032ce57505050565b80825260c9602052620032e5836040842062000d99565b805460ff1916905533926001600160a01b0316917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4565b60009080825260c960205260ff620032c2846040852062000d99565b6200334562003b7e565b336001600160a01b03909116036200335957565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b61010680546001600160a01b0319166001600160a01b03909216919091179055565b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062005eb2833981519152600080a3565b906001820180921162000ba657565b906002820180921162000ba657565b9190820180921162000ba657565b604051602081016001600160401b0381118282101762000f4b5760405260008152906000368137565b604051906200345b8262000f51565b602a82526040366020840137565b80511562000ddf5760200190565b80516001101562000ddf5760210190565b90815181101562000ddf570160200190565b801562000ba6576000190190565b15620034b057565b606460405162461bcd60e51b815260206004820152602060248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b60405190608082016001600160401b0381118382101762000f4b5760405260428252606036602084013760306200352b8362003469565b536078620035398362003477565b536041905b60018211620035545762000699915015620034a8565b600f811690601082101562000ddf576200358a916f181899199a1a9b1b9c1cb0b131b232b360811b901a620031ab848662003488565b906200353e565b156200359957565b60405162461bcd60e51b815260206004820152602c602482015260008051602062005e5283398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b15620035ea57565b60405162461bcd60e51b815260206004820152602c602482015260008051602062005e5283398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b9081602091031262000564575190565b6040513d6000823e3d90fd5b156200365757565b60405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608490fd5b60809060208152602e60208201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960408201526d6f6e206973206e6f74205555505360901b60608201520190565b906200371960008051602062005e128339815191525460ff1690565b156200372b5750620006429062003885565b6040516352d1902d60e01b8152916020836004816001600160a01b0385165afa600093816200379c575b50620037765760405162461bcd60e51b815280620013d360048201620036ae565b6200379660008051602062005e928339815191526200064294146200364f565b62003917565b620037b991945060203d81116200085a5762000849818362000f9d565b923862003755565b90620037dd60008051602062005e128339815191525460ff1690565b15620037ef5750620006429062003885565b6040516352d1902d60e01b8152916020836004816001600160a01b0385165afa6000938162003860575b506200383a5760405162461bcd60e51b815280620013d360048201620036ae565b6200385a60008051602062005e928339815191526200064294146200364f565b620039cd565b6200387d91945060203d81116200085a5762000849818362000f9d565b923862003819565b803b15620038bc5760008051602062005e9283398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b90620039238262003885565b6001600160a01b03821660008051602062005ed2833981519152600080a2805115801590620039c4575b62003956575050565b620039c191600080604051936200396d8562000f51565b602785527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c6020860152660819985a5b195960ca1b6040860152602081519101845af4620039ba62003a14565b9162003a49565b50565b5060006200394d565b90620039d98262003885565b6001600160a01b03821660008051602062005ed2833981519152600080a280511580159062003a0b5762003956575050565b5060016200394d565b3d1562003a44573d9062003a288262001023565b9162003a38604051938462000f9d565b82523d6000602084013e565b606090565b9192901562003aae575081511562003a5f575090565b3b1562003a695790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b82519091501562003ac25750805190602001fd5b60405162461bcd60e51b8152908190620013d3906004830162002442565b1562003ae857565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b6200064290620026b860ff60005460081c1662003ae0565b5190620006428262000621565b90816020910312620005645751620006998162000621565b6033546001600160a01b0316803b62003b945790565b604051638da5cb5b60e01b8152602081600481855afa6000918162003bc3575b5062003bbe575090565b905090565b62003be091925060203d8111620021755762002163818362000f9d565b903862003bb4565b6001600160a01b0391821681529116602082015260400190565b6001600160a01b0316600090815261010a602052604090205460ff161562003c2657565b6040516346c26e4b60e01b8152600490fd5b919290926000549360ff8560081c16158095819662003d6b575b811562003d48575b501562003cec5762003c85938562003c7a600160ff196000541617600055565b62003cd1576200439a565b62003c8c57565b62003c9d61ff001960005416600055565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989080602081015b0390a1565b62003ce661010061ff00196000541617600055565b6200439a565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b303b1591508162003d5c575b503862003c5a565b6001915060ff16143862003d54565b600160ff821610915062003c52565b81811062003d86575050565b6000815560010162003d7a565b90601f821162003da1575050565b62000642916101086000526020600020906020601f840160051c8301931062003dd3575b601f0160051c019062003d7a565b909150819062003dc5565b90601f821162003dec575050565b62000642916101096000526020600020906020601f840160051c8301931062003dd357601f0160051c019062003d7a565b80519091906001600160401b03811162000f4b576101089062003e4c8162003e468454620023b9565b62003d93565b602080601f831160011462003e8b57508192939460009262003e7f575b50508160011b916000199060031b1c1916179055565b01519050388062003e69565b610108600052601f198316959091907f8543e9adbfbe1f62b7411fdf032fcfea758a7d6b332f64d971a1334c2ff364dd926000905b88821062003efb5750508360019596971062003ee1575b505050811b019055565b015160001960f88460031b161c1916905538808062003ed7565b8060018596829496860151815501950193019062003ec0565b80519091906001600160401b03811162000f4b576101099062003f438162003f3d8454620023b9565b62003dde565b602080601f831160011462003f7557508192939460009262003e7f5750508160011b916000199060031b1c1916179055565b610109600052601f198316959091907fd7f48d1c2d4fdcceabee32a4fd1437f382c65f0f9af09a878c95c20147dc06a8926000905b88821062003fca5750508360019596971062003ee157505050811b019055565b8060018596829496860151815501950193019062003faa565b60ff8054610100600160a81b03191660089290921b610100600160a81b0316919091179055565b602090818184031262000564578051906001600160401b0382116200056457019180601f8401121562000564578251620040448162002922565b9362004054604051958662000f9d565b818552838086019260051b82010192831162000564578301905b8282106200407d575050505090565b83809183516200408d8162000621565b8152019101906200406e565b60405190608082016001600160401b0381118382101762000f4b57604052600382526060366020840137565b90620040d18262002922565b620040e0604051918262000f9d565b8281528092620040f3601f199162002922565b0190602036910137565b600019811462000ba65760010190565b805182101562000ddf5760209160051b010190565b60001981019190821162000ba657565b60011981019190821162000ba657565b9190820391821162000ba657565b906000916101088054916200416583620023b9565b918282526001938481169081600014620041cc575060011462004189575b50505050565b90919394506000526020928360002092846000945b838610620041b757505050500101903880808062004183565b8054858701830152940193859082016200419e565b9294505050602093945060ff191683830152151560051b0101903880808062004183565b906040602062000699938051845201519181602082015201906200241b565b90815180825260208080930193019160005b82811062004230575050505090565b83516001600160a01b03168552938101939281019260010162004221565b906200069994926200428091835260a060208401526200427160a0840162004150565b908382036040850152620041f0565b6001600160a01b0390931660608201528083036080909101526200420f565b80546000825580620042af575050565b620006429160005260206000209081019062003d7a565b9060031b9160018060a01b03809116831b921b19161790565b8051906001600160401b03821162000f4b57600160401b821162000f4b5761010f9081548383558084106200434c575b50602080910191600052806000209060005b84811062004330575050505050565b83516001600160a01b0316838201559281019260010162004321565b620043669083600052846020600020918201910162003d7a565b386200430f565b909162000699928252606060208301526200438b6060830162004150565b916040818403910152620041f0565b9092620043a79062003b41565b620043b162004892565b620043bb620047fa565b620043c56200480d565b620043fb620043d962000c71835162000575565b61010780546001600160a01b0319166001600160a01b03909216919091179055565b6020620044316200440f8284015162000575565b61010580546001600160a01b0319166001600160a01b03909216919091179055565b604092838301805115620047e9575160fb5562004451606084015160fc55565b6200447562004464610140850151151590565b60ff8019815416911515161760ff55565b6200448561012084015162003e1d565b6200449561016084015162003f14565b620044ca620044a860a085015162000575565b61010080546001600160a01b0319166001600160a01b03909216919091179055565b620044e3620044dd60c085015162000575565b62003fe3565b62004518620044fb62000c7161010086015162000575565b62004506816200339d565b62004512600061011055565b620031d5565b6004826200452d62000c716101075462000575565b8651635ab1bd5360e01b815292839182905afa801562000862576200457991600091620047c7575b5061010480546001600160a01b0319166001600160a01b0392909216919091179055565b6000946200458e62000c716101065462000575565b95863b6200470957506200463790620045e1620045aa62004099565b97620045ca33620045bb8b62003469565b6001600160a01b039091169052565b620045bb620045da8a5162004122565b8a6200410d565b620045f630620045bb620045da8a5162004132565b83876200460a62000c716101045462000575565b60e06080890151980197600089518b5197889586948593633a92f65f60e01b85523091600486016200424e565b03925af191821562000862577f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059762004688620046b0946200468e93620046d298600092620046e7575b505060fe55565b620042df565b61010280546001600160a01b0319166001600160a01b03909216919091179055565b61010180546001600160a01b0319166001600160a01b03909216919091179055565b62003ccc60fe5491519251928392836200436d565b620047019250803d106200085a5762000849818362000f9d565b388062004681565b94929095969391835163a0e67e2b60e01b815286816004818c5afa968715620008625780976200479d575b50506200474c62004746875162003406565b620040c5565b9660005b875181101562004785578062001a416200477362002cd26200477f948c6200410d565b620045bb838d6200410d565b62004750565b50909294976200463792949650620045e190620045ca565b620047be9297503d8091833e620047b5818362000f9d565b8101906200400a565b94388062004734565b620047e29150843d8611620021755762002163818362000f9d565b3862004555565b84516363868c5560e11b8152600490fd5b6200064260ff60005460081c1662003ae0565b60008051602062005dd2833981519152600081815260c96020527fa867e09674d469ee17077111ff66261f5d2fc5820cc6914676cb47231da58819805490829055909160008051602062005df28339815191528380a4565b8060005260c9602052600160406000200190828254925560008051602062005df2833981519152600080a4565b620048b060ff60005460081c16620048aa8162003ae0565b62003ae0565b6001606555565b6001600160a01b03909116815260406020820181905262000699929101906200241b565b6029916810531313d5d31254d560ba1b825260098201520190565b602f916e20a62627aba624a9aa2fa0a226a4a760891b8252600f8201520190565b634e487b7160e01b600052602160045260246000fd5b9060038210156200493b5752565b62004917565b600411156200493b57565b9060048210156200493b5752565b61024062000699926020835262004993602084018251606080918051845260208101516020850152604081015160408501520151910152565b620049a7602082015160a08501906200492d565b620049bb604082015160c08501906200494c565b60608101515160e084015260808181015180516001600160a01b03908116610100878101919091526020830151909116610120870152604082015161014087015260608201516101608701529181015161018086015260a001516101a08501529060a08101516001600160a01b03166101c085015260c08101516001600160a01b03166101e085015260e08101516102008501520151916102208082015201906200420f565b929462004a969562004ab2939592855260018060a01b0396879182602098168888015260e0604088015260e08701906200241b565b921660608501526000608085015283820360a0850152620041f0565b9060c081830391015261010f9282845492838152019360005282600020926000915b83831062004ae457505050505090565b845481168652948101946001948501949092019162004ad4565b9081526001600160a01b0391821660208201529181166040830152909116606082015260a0608082018190526200069992910190620041f0565b9093919273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee916001600160a01b03861662004c41575b602062004b97829683600062004b7f62000c716101075462000575565b9262004ba660fe54916040519687918983016200495a565b03601f19810187528662000f9d565b62004bc9886040519a8b97889687956370803ea560e11b87526004870162004a61565b03925af191821562000862577f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2839360009362004c17575b5062003ccc90839760405194859430918662004afe565b62003ccc91935062004c399060203d81116200085a5762000849818362000f9d565b929062004c00565b85925062004b62565b9060405162004c598162000f51565b82546001600160a01b031681526001830154602082015260029092015460ff1615156040830152565b90816020910312620005645751620006998162002871565b6001600160a01b039091168152602081019190915260400190565b8054909262004cd0926001600160a01b0390911691620042c6565b9055565b805490600160401b82101562000f4b578162004cfa91600162004cd09401815562000dc6565b815491936001600160a01b031691620042c6565b6001600160a01b03918216815291166020820152604081019190915260600190565b60026065541462004d42576002606555565b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b6001600160a01b0316600090815261010c602052604090206002015460ff161562001ba757565b6001600160a01b0391821691160362004dc357565b60405163bbe7961160e01b8152600490fd5b8054801562004e0557600019019062004def828262000dc6565b81549060018060a01b039060031b1b1916905555565b634e487b7160e01b600052603160045260246000fd5b9062004e569062004e4762000642956040519586936323b872dd60e01b60208601526024850162004d0e565b03601f19810184528362000f9d565b60405162004eb3916001600160a01b031662004e728262000f2f565b6000806020958685527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656487860152868151910182855af1620039ba62003a14565b805182811591821562004f25575b505090501562004ece5750565b6084906040519062461bcd60e51b82526004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152fd5b8380929350010312620005645781015162004f4081620010e7565b80823862004ec1565b3360005261010c60205260ff600260406000200154161562001ba757565b62004e5662000642939262004e4760405194859263a9059cbb60e01b60208501526024840162004c9a565b6040519060208083018160006301ffc9a760e01b958684528660248201526024815262004fbf8162000f51565b51617530938685fa933d600051908662005072575b508562005067575b508462004ffd575b5050508162004ff1575090565b6200069991506200507e565b83945090600091839460405185810192835263ffffffff60e01b6024820152602481526200502b8162000f51565b5192fa60005190913d836200505b575b50508162005050575b50159038808062004fe4565b905015153862005044565b1015915038806200503b565b151594503862004fdc565b84111595503862004fd4565b6000602091604051838101906301ffc9a760e01b825263f1801e6160e01b602482015260248152620050b08162000f51565b5191617530fa6000513d82620050d3575b5081620050cc575090565b9050151590565b60201115915038620050c1565b91906040838203126200056457604051620050fb8162000f2f565b83518152602084015190938491906001600160401b0382116200056457019082601f830112156200056457815191620051348362001023565b9362005144604051958662000f9d565b8385526020848301011162000564576020926200516791848087019101620023f6565b0152565b90602082820312620005645781516001600160401b039283821162000564570160c081830312620005645760405192620051a58462000f6d565b815184526020820151620051b98162000621565b6020850152620051cc6040830162003b59565b60408501526060820151908111620005645760a092620051ee918301620050e0565b606084015260808101516080840152015160a082015290565b60008051602062005dd283398151915260005260c960205260ff6200523c3360008051602062005ef283398151915262000d99565b5416156200524657565b60405163fc4be72f60e01b8152336004820152602490fd5b6200526d620006f38262000d7e565b6200537d5762005281620007ed8262000d7e565b60405163b6c61f3160e01b81526001600160a01b03906020816004818686165afa90811562000862576000916200535a575b501680620052df575b5062003ccc60008051602062005e72833981519152916040519182918262000581565b90813b156200056457600060405180936306c0752d60e51b82528183816200530b876004830162000581565b03925af1908115620008625760008051602062005e728339815191529262003ccc926200533c575b509150620052bc565b806200534c620053539262000f89565b8062000569565b3862005333565b62005376915060203d8111620021755762002163818362000f9d565b38620052b3565b6040516325a2934b60e21b8152600490fd5b6001600160a01b0316600081815261010a6020908152604091829020805460ff1916905590519182527f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea491a1565b60407f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf8916200540b62005207565b61010380546001600160a01b0319166001600160a01b03928316908117909155610106548351921682526020820152a1565b62000699939260609260018060a01b03168252602082015281604082015201906200241b565b60207f5e2d447f427e49fd08832fd025a56589500352417199aa65728feaf05123e856916200549162005207565b6200549b620054a8565b8060fb55604051908152a1565b6101105480620054b55750565b60249060405190637d95539f60e11b82526004820152fd5b6040519060008261010991825492620054e684620023b9565b9081845260019485811690816000146200555b575060011462005514575b5050620006429250038362000f9d565b9093915060005260209081600020936000915b81831062005542575050620006429350820101388062005504565b8554888401850152948501948794509183019162005527565b9150506200064294506020925060ff191682840152151560051b820101388062005504565b604051906200064282620055948162004150565b038362000f9d565b620055a662005207565b6080810180519060fb5480921480159062005830575b80156200580a575b620056fb575b505060608101805160208151910120620055e362005580565b6020815191012003620056b1575b50604081015160fc5481036200569f575b506200564f62005616602083015162000575565b60ff54909290620056339060081c6001600160a01b031662000575565b6001600160a01b0393908482160362005664575b505162000575565b1680620056595750565b6200064290620053dd565b6200569581620023957f647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f7860599362003fe3565b0390a13862005647565b620056aa9062005854565b3862005602565b620056f181620056e37ff67fb6c95f41f58a276869ca2608214f0a6aab1c9ffe445affaa58680fddd497935162003e1d565b516040519182918262002442565b0390a138620055f1565b62005705620054a8565b51908103620057f8575b5060a081015115156200572d6200572860ff5460ff1690565b151590565b81151503620057a0575b5060c081018051602081519101206200574f620054cd565b602081519101200362005764575b80620055ca565b6200579681620056e37f8fd46764d9fde733a671bd3aa6710da0668b1c4eb78d33f42e104553ea4bc76e935162003f14565b0390a1386200575d565b620057ee81620057dc7f4ca826489011b9a44719ccfa206813b072bb58604af41f245a6a1a6d913588759360ff8019815416911515161760ff55565b60405190151581529081906020820190565b0390a13862005737565b620058039062005463565b386200570f565b5060c08301516020815191012062005821620054cd565b602081519101201415620055c4565b5060a08301511515620058496200572860ff5460ff1690565b9015151415620055bc565b6200585e62005207565b620186a081116200589a576020817f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d69260fc55604051908152a1565b60405163fe925f7d60e01b8152600490fd5b9060405191828154918282526020928383019160005283600020936000905b828210620058e457505050620006429250038362000f9d565b85546001600160a01b031684526001958601958895509381019390910190620058cb565b9060009160018060a01b038116835261010d6020526040906200592d828520620058ac565b845b8151811015620059b9576200595162000c7162000c7162002cd284866200410d565b90813b15620059b5578685518093631914f67160e21b82528183816200597b8a6004830162000581565b03925af1918215620008625762005998926200599e5750620040fd565b6200592f565b806200534c620059ae9262000f89565b38620016e5565b8680fd5b50505050905056fe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c6343000813003303be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fabd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143f56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec46756e6374696f6e206d7573742062652063616c6c6564207468726f756768203f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f1360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3ba867e09674d469ee17077111ff66261f5d2fc5820cc6914676cb47231da588180bd09b1e448ffe881e884ac37014bf3e0274007308056b6469b50fa485542abfa264697066735822122038d7337b9e2c950b91a6a6111090d414436b199c9a1a345fa6d2997ec798a45064736f6c63430008130033","sourceMap":"3148:26794:104:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3158:58:40;;;:98;;;;3148:26794:104;;;;;;;;;;3158:98:40;-1:-1:-1;;;1189:51:50;;-1:-1:-1;3158:98:40;;;3148:26794:104;-1:-1:-1;3148:26794:104;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;3148:26794:104;;:::o;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;;3148:26794:104;;;;1534:6:42;3148:26794:104;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;25896:19;3148:26794;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;6629:24;3148:26794;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;3148:26794:104;;;;;:::o;:::-;;;;;;;:::i;:::-;:::o;:::-;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;:::i;:::-;2492:103:45;;:::i;:::-;15584:7:104;;;:::i;:::-;15622:9;;;:::i;:::-;15674;15662:10;;15674:9;:::i;:::-;15741:47;;:36;;;;:::i;:::-;:47;:::i;:::-;3148:26794;;;;;15741:47;15737:107;;15944:19;15877:28;;3148:26794;15877:28;;;:::i;:::-;3148:26794;:::i;:::-;15944:19;3148:26794;16000:19;3148:26794;;;-1:-1:-1;;;16034:42:104;;;-1:-1:-1;;;;;;;3148:26794:104;;;;;;;;;;;;-1:-1:-1;3148:26794:104;16034:42;;;;;;16080:21;16034:42;;;;;3148:26794;;;;;:::i;:::-;16034:67;16080:21;;-1:-1:-1;;3148:26794:104;;-1:-1:-1;;;16136:51:104;;-1:-1:-1;;;;;3148:26794:104;;;16136:51;;3148:26794;-1:-1:-1;3148:26794:104;;;;;;;-1:-1:-1;3148:26794:104;;;;;;16136:51;;;;;;;;-1:-1:-1;;;;;;;;;;;16136:51:104;16607:61;16136:51;;;;;16030:354;16117:70;;16030:354;16394:30;:41;:30;;;;:::i;:41::-;3148:26794;16483:54;:47;:36;;;;:::i;:47::-;3148:26794;;-1:-1:-1;;3148:26794:104;16533:4;3148:26794;;;;16483:54;16548:43;:27;;;;:::i;:::-;:43;:::i;:::-;3148:26794;;16607:61;;;;;:::i;:::-;;;;2557:1:45;1808;2086:22;3148:26794:104;2006:109:45;2557:1;3148:26794:104;;16136:51;;;;;;-1:-1:-1;16136:51:104;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;;;:::i;16030:354::-;3148:26794;;;;;;;16208:42;;;;;3148:26794;16208:42;;;;;;;;;;;;;;;16030:354;3148:26794;;;;:::i;:::-;16204:180;;16030:354;;;;;16607:61;-1:-1:-1;;;;;;;;;;;16030:354:104;;;16204:180;3148:26794;;;;;16306:67;3148:26794;;;689:66:57;;;;;;;;;16306:67:104;;;3148:26794;16306:67;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;;;;;;;16306:67:104;16607:61;16306:67;;;;;16204:180;16287:86;;16204:180;;;;;;16306:67;;;;;;-1:-1:-1;16306:67:104;;;;;;:::i;:::-;;;;;16208:42;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;16034;;;;;;;;;;;;;;:::i;:::-;;;;15737:107;3148:26794;;-1:-1:-1;;;15811:22:104;;3148:26794;;15811:22;3148:26794;;;;;;-1:-1:-1;;3148:26794:104;;;;22573:9;3148:26794;;;;;:::i;:::-;22462:128;;:::i;:::-;22573:9;:::i;3148:26794::-;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;10614:27:104;3148:26794;;-1:-1:-1;;;;;;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;6710:25;3148:26794;;;;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;21299:12;3148:26794;;;;;:::i;:::-;21191:128;;:::i;:::-;21299:12;:::i;3148:26794::-;;;;;;;:::i;:::-;16804:7;;;;:::i;:::-;16896:9;16884:10;;16896:9;:::i;:::-;3148:26794;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;16922:27;3148:26794;;;16922:47;3148:26794;;;;16922:47;:::i;:::-;3148:26794;;16921:48;16917:110;;17037:47;:36;;;;:::i;:47::-;3148:26794;;-1:-1:-1;;3148:26794:104;;;17102:30;:41;:30;;;;:::i;:41::-;3148:26794;;;17523:18;3148:26794;;;;;17565:13;;17609:3;3148:26794;;17580:27;;;;;;;17632:19;;;;:::i;:::-;3148:26794;;;;;;;;;;;;;17632:32;17628:178;;17609:3;;;;;;:::i;:::-;17565:13;;17628:178;-1:-1:-1;;3148:26794:104;;;;;;;17609:3;17706:45;;;;;;:::i;:::-;3148:26794;;;;;;;17684:19;;;;:::i;:::-;3148:26794;;;;;:::i;:::-;;;17769:20;;;:::i;:::-;17628:178;;;3148:26794;;:::i;17580:27::-;;17331:45;17580:27;;17331:45;3148:26794;;17331:45;;;;;:::i;:::-;;;;3148:26794;;16917:110;3148:26794;;-1:-1:-1;;;16992:24:104;;3148:26794;;16992:24;3148:26794;;;;;;-1:-1:-1;;3148:26794:104;;;;;;-1:-1:-1;3148:26794:104;4955:6:40;3148:26794:104;;;4955:22:40;3148:26794:104;-1:-1:-1;3148:26794:104;4955:22:40;3148:26794:104;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;25484:19;3148:26794;25483:62;25484:34;25506:12;3148:26794;25484:34;;:::i;:::-;6116:7;3148:26794;;;;25483:62;3148:26794;25618:48;:33;3148:26794;25635:15;3148:26794;;:::i;:::-;25618:33;:::i;:48::-;3148:26794;25618:63;3148:26794;;689:66:57;;;;;25618:63:104;;25675:4;;25618:63;25675:4;3148:26794;25618:63;;;:::i;:::-;;;;;;;;;;3148:26794;25618:63;25582:135;25596:85;25735:59;25618:63;25735:40;25618:63;3148:26794;25618:63;;;3148:26794;25596:85;;;:::i;25582:135::-;25735:40;;:::i;:::-;:59;:::i;:::-;3148:26794;;;;;;;;;;;;;;;;;25618:63;;;;;;;;;;;;;;:::i;:::-;;;;3148:26794;-1:-1:-1;;;;;3148:26794:104;;;;;15741:27;3148:26794;;;;;;:::o;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;15877:19;3148:26794;;;;;;:::o;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;16394:21;3148:26794;;;;;;:::o;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;16548:18;3148:26794;;;;;;:::o;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;21400:17;3148:26794;;;;;;:::o;:::-;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3148:26794:104;;-1:-1:-1;3148:26794:104;;;-1:-1:-1;3148:26794:104;:::o;:::-;;:::i;:::-;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;3148:26794:104;8266:82;3148:26794;;;-1:-1:-1;3148:26794:104;;;8266:82;;;;;3148:26794;8266:82;;;;:::i;:::-;3148:26794;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;3148:26794:104;20807:19;3148:26794;;;;;-1:-1:-1;3148:26794:104;20807:41;3148:26794;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;5410:7:40;3148:26794:104;;;;;;;:::i;:::-;;-1:-1:-1;3148:26794:104;4955:6:40;3148:26794:104;;2809:4:40;4955:22;3148:26794:104;-1:-1:-1;3148:26794:104;4955:22:40;3148:26794:104;2809:4:40;:::i;:::-;5410:7;:::i;3148:26794:104:-;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;3148:26794:104;;;;;6530:25;3148:26794;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;:::o;:::-;;:::i;:::-;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;:::o;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;;:::o;:::-;;;;;-1:-1:-1;;3148:26794:104;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;;-1:-1:-1;;3148:26794:104;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;3148:26794:104;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;:::o;:::-;;;;;;:::i;:::-;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;10928:2544;3148:26794;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;:::i;:::-;;;;:::i;:::-;10928:2544;;:::i;3148:26794::-;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;:::i;:::-;965:10:48;-1:-1:-1;;;;;3148:26794:104;;6484:23:40;3148:26794:104;;6588:7:40;3148:26794:104;;;6588:7:40;:::i;3148:26794:104:-;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;;;;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1719:87:61;1654:6;3148:26794:104;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;3148:26794:104;-1:-1:-1;;;;;;;;;;;3148:26794:104;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;3148:26794:104;;1256:21:102;1252:94;;3325:5:61;3311:12;;;:::i;:::-;3325:5;;:::i;1252:94:102:-;1300:35;1327:7;;:::i;:::-;3148:26794:104;;-1:-1:-1;;;1300:35:102;;3148:26794:104;;;1267:10:102;3148:26794:104;1300:35:102;;;:::i;:::-;;;;3148:26794:104;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;3148:26794:104;7801:68;3148:26794;;;;;-1:-1:-1;3148:26794:104;;;;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;8426:107;3148:26794;;;:::i;:::-;-1:-1:-1;;;;;3148:26794:104;;;8426:107;3148:26794;;;8426:107;3148:26794;;;;;8426:107;:::i;:::-;3148:26794;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1719:87:61;1654:6;3148:26794:104;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;1719:87::-;1256:7:102;;:::i;:::-;1267:10;3148:26794:104;;1256:21:102;1252:94;;3865:4:61;;;:::i;3148:26794:104:-;;;;;;-1:-1:-1;;3148:26794:104;;;;2089:6:61;-1:-1:-1;;;;;3148:26794:104;2080:4:61;2072:23;3148:26794:104;;;;-1:-1:-1;;;;;;;;;;;3148:26794:104;;;;;;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;;;;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;2492:103:45;;:::i;:::-;17828:986:104;;:::i;:::-;-1:-1:-1;18079:3:104;18044:26;17965:10;18044:26;:::i;:::-;3148:26794;18040:37;;;;;18232:59;:45;3148:26794;18247:29;17965:10;18247:26;17965:10;18247:26;:::i;:::-;:29;:::i;:::-;3148:26794;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;18232:59;3148:26794;;;;689:66:57;;;;;18232:82:104;;17965:10;-1:-1:-1;17965:10:104;18232:82;17965:10;;18232:82;;;;:::i;:::-;;;;;;;;;18079:3;18232:82;-1:-1:-1;18232:82:104;;;18079:3;18332:21;;18328:252;;18079:3;;;:::i;:::-;18025:13;;18328:252;18373:80;:60;:29;17965:10;18373:29;:::i;:::-;3148:26794;18403:29;17965:10;18403:26;17965:10;18403:26;:::i;3148:26794::-;18373:60;;:::i;:::-;3148:26794;;;18373:80;:::i;:::-;3148:26794;;18328:252;;;18232:82;;;;;;;;;;;;;;:::i;:::-;;;;18040:37;18764:43;;18040:37;18668:13;3148:26794;;18616:11;3148:26794;;:::i;:::-;18661:4;17965:10;;18668:13;;:::i;:::-;18692:40;:27;17965:10;18692:27;:::i;:::-;:40;:57;3148:26794;;;18692:57;:::i;:::-;3148:26794;;;;17965:10;;;;18764:43;;:::i;:::-;;;;2557:1:45;1808;2086:22;3148:26794:104;2006:109:45;3148:26794:104;;;;;;-1:-1:-1;;3148:26794:104;;;;7080:31;3148:26794;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;2492:103:45;;;:::i;:::-;18957:1562:104;;:::i;:::-;19153:26;19096:10;19153:26;:::i;:::-;19229:40;;19096:10;19229:58;19096:10;;19229:27;19096:10;19229:27;:::i;:::-;:40;3148:26794;19229:58;:::i;:::-;19290:19;3148:26794;-1:-1:-1;19225:140:104;;19096:10;;;19407:15;19096:10;;3148:26794;19374:11;3148:26794;;:::i;:::-;19407:15;:::i;:::-;-1:-1:-1;19433:951:104;19229:40;;;19433:951;20467:45;;19096:10;;20393:27;19096:10;20393:27;:::i;:::-;:40;:59;3148:26794;;;20393:59;:::i;19482:3::-;3148:26794;;;;;;19453:27;;;;;;;3148:26794;19520:19;;;;:::i;3148:26794::-;19557:60;;;;:::i;:::-;;;;3148:26794;;;;;;689:66:57;;;;;19656:63:104;;19096:10;-1:-1:-1;19096:10:104;19656:63;19096:10;;;19656:63;;;;:::i;:::-;;;-1:-1:-1;;;;;3148:26794:104;19656:63;;;;;;;-1:-1:-1;19656:63:104;;;19553:804;19096:10;19760:50;:29;19096:10;19760:29;:::i;:::-;3148:26794;19790:19;;;;:::i;19760:50::-;3148:26794;;19832:31;;;;;;3148:26794;;-1:-1:-1;;;19894:57:104;;;;;3148:26794;;;;;;;;;;;;;1300:35:102;;;19828:259:104;19096:10;;;;;;;;19482:3;19096:10;19998:70;:50;:29;19096:10;19998:29;:::i;:::-;3148:26794;20028:19;;;;:::i;19998:50::-;3148:26794;;;19998:70;:::i;:::-;3148:26794;;19482:3;:::i;:::-;19438:13;;;;;;;19656:63;;;;;;;;;;;;;;;:::i;:::-;;;;;19553:804;20231:27;20333:8;19482:3;20231:27;;20192:67;3148:26794;20214:45;20231:27;;;;;;;:::i;:::-;20214:45;;:::i;3148:26794::-;20192:19;;;;:::i;:::-;:67;;:::i;:::-;20277:20;;;:::i;20333:8::-;19482:3;:::i;19453:27::-;;;;;;19225:140;3148:26794;;-1:-1:-1;;;19332:22:104;;;3148:26794;;;;;7937:98;3148:26794;;;:::i;:::-;-1:-1:-1;;;;;3148:26794:104;;;7937:98;3148:26794;;;7937:98;3148:26794;;;;;7937:98;:::i;:::-;3148:26794;;;;;;;;;;;;;;:::i;:::-;2492:103:45;;:::i;:::-;29298:610:104;;:::i;:::-;29430:14;3148:26794;29431:13;3148:26794;;;;;;29430:14;;3148:26794;29430:14;29426:68;;29507:18;23349:41;;:28;;;:::i;:::-;:41;3148:26794;;;;;29507:18;29503:75;;29610:28;29841:60;3148:26794;29610:28;29841:60;29610:28;;:::i;3148:26794::-;29672:7;;;:::i;:::-;29690:35;29697:28;;;:::i;:::-;3148:26794;29690:35;3148:26794;;;;;;;;;;;;29690:35;29735:17;;;3148:26794;29735:17;:::i;:::-;;3148:26794;;29735:17;29806:19;;3148:26794;29763:11;3148:26794;;:::i;:::-;29806:19;;3148:26794;;;;29806:19;;:::i;:::-;3148:26794;;;29841:60;;;;;:::i;29503:75::-;3148:26794;;-1:-1:-1;;;29548:19:104;;3148:26794;;29548:19;29426:68;3148:26794;;-1:-1:-1;;;29467:16:104;;3148:26794;;29467:16;3148:26794;;;;;;-1:-1:-1;;3148:26794:104;;;;7179:41;3148:26794;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;7439:24;3148:26794;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;1324:62:42;;:::i;:::-;2779:6;3148:26794:104;;-1:-1:-1;;;;;;3148:26794:104;;;;;;;-1:-1:-1;;;;;3148:26794:104;-1:-1:-1;;;;;;;;;;;3148:26794:104;;2827:40:42;3148:26794:104;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;22013:240;;:::i;:::-;22140:4;3148:26794;;;-1:-1:-1;;;22140:20:104;;3148:26794;;;22140:20;;;3148:26794;;-1:-1:-1;;;;;3148:26794:104;-1:-1:-1;;3148:26794:104;;;;;;;;22140:20;;;;;;;22237:8;22140:20;3148:26794;22140:20;-1:-1:-1;22140:20:104;;;3148:26794;22140:29;;3148:26794;;22237:8;:::i;22140:20::-;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;3148:26794;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;-1:-1:-1;;;;;;;;;;;3148:26794:104;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;8718:27;3148:26794;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;6983:38;3148:26794;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;7270:25;3148:26794;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;20861:324;;:::i;:::-;20985:4;3148:26794;;;-1:-1:-1;;;20985:20:104;;3148:26794;;;20985:20;;;3148:26794;;-1:-1:-1;;3148:26794:104;;;;;;-1:-1:-1;;;;;3148:26794:104;20985:20;;;;;;3148:26794;;20985:20;20977:38;20985:20;-1:-1:-1;20985:20:104;;;3148:26794;20985:29;;3148:26794;;:::i;20977:38::-;21070:60;;;:::i;:::-;21066:113;;3148:26794;21066:113;21159:8;;;:::i;20985:20::-;;;;;;;;;;;;:::i;:::-;;;;3148:26794;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;3148:26794:104;8135:60;3148:26794;;;-1:-1:-1;3148:26794:104;;;;;8135:60;3148:26794;8135:60;3148:26794;8135:60;;3148:26794;8135:60;;3148:26794;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;6436:27;3148:26794;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;3459:29:40;3148:26794:104;;;;;:::i;:::-;;;-1:-1:-1;3148:26794:104;3459:6:40;3148:26794:104;;;-1:-1:-1;3148:26794:104;3459:29:40;:::i;3148:26794:104:-;;;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;:::i;:::-;2492:103:45;;:::i;:::-;23534:33:104;3148:26794;23551:15;3148:26794;;:::i;23534:33::-;3148:26794;23607:19;3148:26794;23606:62;23607:34;23629:12;3148:26794;23607:34;;:::i;23606:62::-;3148:26794;;-1:-1:-1;;;23740:44:104;;3148:26794;;-1:-1:-1;;;;;3148:26794:104;;;23778:4;3148:26794;;23740:44;23778:4;3148:26794;23740:44;;;:::i;:::-;;;;;;;;;;23717:94;23740:44;23718:66;23740:44;-1:-1:-1;23740:44:104;;;3148:26794;23718:66;;:::i;23717:94::-;23835:10;23825:21;23349:41;;:28;23835:10;23349:28;:::i;23825:21::-;23821:1539;;3148:26794;2557:1:45;1808;2086:22;3148:26794:104;2006:109:45;23821:1539:104;23862:51;23349:41;23862:31;23835:10;23862:31;:::i;:::-;:44;3148:26794;;-1:-1:-1;;3148:26794:104;16533:4;3148:26794;;;;23862:51;23607:19;3148:26794;23835:10;;3148:26794;23928:31;23835:10;23928:31;:::i;:::-;:44;3148:26794;24219:59;24146:11;3148:26794;24219:59;3148:26794;24219:40;3148:26794;;;;;:::i;:::-;24219:40;;:::i;:59::-;23778:4;;23835:10;;24219:59;;:::i;:::-;24717:22;24713:178;;23821:1539;24974:20;;24970:255;;23821:1539;3148:26794;;;-1:-1:-1;;;;;;;;;;;3148:26794:104;;25238:17;;;3148:26794;25238:17;:::i;:::-;23607:19;3148:26794;25275:74;3148:26794;;23835:10;;;;25275:74;;:::i;:::-;;;;23821:1539;;;;;;;24970:255;3148:26794;;;;;;:::i;:::-;;;;689:66:57;;;;;;;25153:38:104;;;;;;;;;-1:-1:-1;;;;;;;;;;;25153:38:104;25193:16;25153:38;-1:-1:-1;25153:38:104;;;24970:255;25193:16;;;:::i;:::-;24970:255;;;;;25153:38;;;;;;;-1:-1:-1;25153:38:104;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;;24713:178;24857:18;3148:26794;;;;;:::i;:::-;24844:11;3148:26794;;;-1:-1:-1;;;;;3148:26794:104;24857:18;;:::i;:::-;24713:178;;;23740:44;;;;;;;;;;;;;;;:::i;:::-;;;;;3148:26794;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;5942:42;3148:26794;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;3148:26794:104;23349:19;3148:26794;;;;23349:41;3148:26794;-1:-1:-1;3148:26794:104;23349:41;3148:26794;;;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;10737:34:104;3148:26794;;-1:-1:-1;;;;;;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;6802:26;3148:26794;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;22925:18;3148:26794;;-1:-1:-1;;;;;3148:26794:104;22911:10;:32;;;22907:89;;23228:20;3148:26794;23209:40;23005:46;;23209:40;23005:46;;:::i;:::-;23120:39;23134:25;3148:26794;23097:11;3148:26794;23089:20;;3148:26794;;;;:::i;23089:20::-;;:::i;:::-;3148:26794;;:::i;23134:25::-;23120:39;:::i;:::-;22925:18;3148:26794;;-1:-1:-1;;;;;;3148:26794:104;;;;;23228:20;3148:26794;;23209:40;;;;;:::i;:::-;;;;3148:26794;22907:89;3148:26794;;-1:-1:-1;;;22966:19:104;;3148:26794;;22966:19;3148:26794;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;3148:26794:104;;;;:::o;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;7655:30;3148:26794;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2492:103:45;;:::i;:::-;28169:643:104;;:::i;:::-;28333:7;28289:10;28333:7;:::i;:::-;28289:10;3148:26794;;28374:19;3148:26794;;28757:48;;3148:26794;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;;;28412:35;28419:28;28289:10;28419:28;:::i;28412:35::-;3148:26794;28464:27;28289:10;28464:27;:::i;:::-;3148:26794;:::i;:::-;28619:12;3148:26794;28619:16;28615:64;;3148:26794;;28722:19;3148:26794;28688:11;3148:26794;;:::i;:::-;;;28289:10;;28722:19;;:::i;:::-;3148:26794;;;28289:10;;;;28757:48;;:::i;28615:64::-;28651:17;;;;:::i;:::-;28615:64;;;6116:7;3148:26794;;;6116:7;;;;;;;;;;;;;;;;;;;;;;;;:::o;3148:26794::-;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;6116:7;3148:26794;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;499:12:102;3148:26794:104;;;;;:::i;:::-;5366:69:44;3148:26794:104;-1:-1:-1;3148:26794:104;;;;5366:69:44;:::i;:::-;499:12:102;:::i;3148:26794:104:-;;;;;;;;;;;;;;;;7570:27;3148:26794;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;5837:7:40;3148:26794:104;;;;;;;:::i;:::-;;-1:-1:-1;3148:26794:104;4955:6:40;3148:26794:104;;2809:4:40;4955:22;3148:26794:104;-1:-1:-1;3148:26794:104;4955:22:40;3148:26794:104;2809:4:40;:::i;:::-;5837:7;:::i;3148:26794:104:-;;;;;;-1:-1:-1;;3148:26794:104;;;;7511:17;3148:26794;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;6116:7;3148:26794;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;7358:25;3148:26794;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;:::o;:::-;;-1:-1:-1;3148:26794:104;;;:::o;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;13771:16;3148:26794;;:::i;:::-;;13880:13;3148:26794;13888:4;3148:26794;;:::i;13880:13::-;3148:26794;;13895:23;3148:26794;;:::i;:::-;1534:6:42;3148:26794:104;;;;-1:-1:-1;;;3148:26794:104;13806:144;;;-1:-1:-1;;;;;3148:26794:104;;;;13806:144;;3148:26794;;;;;;;;;;;;;;;;;;;13806:144;;3148:26794;;-1:-1:-1;;;13806:144:104;3148:26794;;13806:144;:::i;:::-;3148:26794;;13729:235;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;13729:235:104;;;;;14005:53;3148:26794;;;;;14005:53;:::i;:::-;14081:19;;;;;3148:26794;14081:19;;;3148:26794;;:::i;:::-;;14073:42;14069:453;;3148:26794;;;;14821:8;3148:26794;14680:54;3148:26794;;;;14640:37;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;3148:26794;14630:48;;3148:26794;;;14690:43;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;3148:26794;14680:54;;;;:::i;:::-;3148:26794;;14775:43;3148:26794;14775:43;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;3148:26794;14765:54;;14821:8;:::i;:::-;3148:26794;;;;;;:::i;14069:453::-;14135:24;;;;;;;;3148:26794;14169:5;14135:39;;14131:133;;3148:26794;;;;14311:37;;;;;;;;;:::i;:::-;3148:26794;14301:48;;14368:13;-1:-1:-1;14420:3:104;14387:24;;3148:26794;;;14383:35;;;;;14469:27;;;;;;14420:3;14469:27;;:::i;:::-;3148:26794;-1:-1:-1;;;;;3148:26794:104;;;14469:27;;;:::i;14420:3::-;14368:13;;14383:35;;;-1:-1:-1;14383:35:104;;-1:-1:-1;14383:35:104;;;-1:-1:-1;3148:26794:104;;-1:-1:-1;14069:453:104;;14131:133;3148:26794;;-1:-1:-1;;;14201:48:104;;3148:26794;14201:48;;3148:26794;;;;;;1300:35:102;3148:26794:104;;;;;;-1:-1:-1;;3148:26794:104;;;;;;3459:29:40;3148:26794:104;;;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;;3148:26794:104;3459:6:40;3148:26794:104;;;-1:-1:-1;3148:26794:104;3459:29:40;:::i;3148:26794:104:-;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;3148:26794:104;;2423:22:42;3148:26794:104;;2517:8:42;;;:::i;3148:26794:104:-;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;;;;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;6886:30;3148:26794;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;21977:23;3148:26794;;;;;;:::i;:::-;21787:220;;:::i;:::-;-1:-1:-1;;;;;3148:26794:104;;-1:-1:-1;3148:26794:104;;;21882:17;3148:26794;;;;;;;;;;;21878:85;;3148:26794;;;;;;;21977:23;3148:26794;21878:85;21942:9;;;:::i;:::-;21878:85;;;3148:26794;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;;;;;;:::i;3789:103:40:-;3148:26794:104;-1:-1:-1;3148:26794:104;3459:6:40;3148:26794:104;;;3459:29:40;965:10:48;3148:26794:104;-1:-1:-1;3148:26794:104;3459:29:40;:::i;:::-;3148:26794:104;;4260:23:40;4256:412;;3789:103;:::o;4256:412::-;965:10:48;2006:25:49;;;:::i;:::-;2041:15;;;;;:::i;:::-;;2066;;;;:::i;:::-;;3148:26794:104;2124:5:49;6116:7:104;2124:5:49;;;;4299:358:40;3148:26794:104;4351:274:40;2236:10:49;3148:26794:104;4554:49:40;2236:10:49;2228:55;2236:10;;2228:55;:::i;:::-;4554:49:40;:::i;:::-;3148:26794:104;;;4351:274:40;;;3148:26794:104;;4351:274:40;;3148:26794:104;;-1:-1:-1;;;3148:26794:104;;;;;;;;:::i;:::-;-1:-1:-1;;;3148:26794:104;;;;;;;4351:274:40;3148:26794:104;;4351:274:40;;;;;;:::i;:::-;3148:26794:104;;-1:-1:-1;;;4299:358:40;;3148:26794:104;;;;4299:358:40;;;:::i;2131:3:49:-;2171:11;2179:3;2171:11;;2162:21;;;;;;;2131:3;;-1:-1:-1;;;2162:21:49;;2150:33;;;;:::i;:::-;;3148:26794:104;;2131:3:49;;:::i;:::-;2096:26;;3148:26794:104;;;;;;;;;;;;;:::i;:::-;;;:::o;7938:233:40:-;-1:-1:-1;;;;;;;;;;;;3148:26794:104;;;3459:6:40;3148:26794:104;;-1:-1:-1;3148:26794:104;3459:29:40;3148:26794:104;-1:-1:-1;;;;;;;;;;;3459:29:40;:::i;:::-;3148:26794:104;;8020:23:40;8016:149;;7938:233;;;:::o;8016:149::-;3148:26794:104;;;3459:6:40;3148:26794:104;;8059:29:40;3148:26794:104;;;;8059:29:40;:::i;:::-;3148:26794:104;;-1:-1:-1;;3148:26794:104;8091:4:40;3148:26794:104;;;965:10:48;;-1:-1:-1;;;;;3148:26794:104;;8114:40:40;;;;7938:233::o;:::-;-1:-1:-1;3148:26794:104;;;;3459:6:40;3148:26794:104;;;3459:29:40;3148:26794:104;;;;3459:29:40;:::i;8342:234::-;-1:-1:-1;;;;;;;;;;;;3148:26794:104;;;3459:6:40;3148:26794:104;;-1:-1:-1;3148:26794:104;3459:29:40;3148:26794:104;-1:-1:-1;;;;;;;;;;;3459:29:40;:::i;:::-;3148:26794:104;;8421:149:40;;8342:234;;;:::o;8421:149::-;3148:26794:104;;;3459:6:40;3148:26794:104;;8463:29:40;3148:26794:104;;;;8463:29:40;:::i;:::-;3148:26794:104;;-1:-1:-1;;3148:26794:104;;;965:10:48;;-1:-1:-1;;;;;3148:26794:104;;8519:40:40;;;;8342:234::o;:::-;-1:-1:-1;3148:26794:104;;;;3459:6:40;3148:26794:104;;;3459:29:40;3148:26794:104;;;;3459:29:40;:::i;1620:130:42:-;1683:7;;:::i;:::-;965:10:48;-1:-1:-1;;;;;3148:26794:104;;;1683:23:42;3148:26794:104;;1620:130:42:o;3148:26794:104:-;;;;;;;;;;;;;;;;;;;;;;;;;;23097:11;3148:26794;;-1:-1:-1;;;;;;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;:::o;2687:187:42:-;2779:6;3148:26794:104;;-1:-1:-1;;;;;3148:26794:104;;;-1:-1:-1;;;;;;3148:26794:104;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;2827:40:42;2687:187::o;3148:26794:104:-;;23909:4;3148:26794;;;;;;;:::o;:::-;;2016:1:49;3148:26794:104;;;;;;;:::o;:::-;;;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;3321:1:61;3148:26794:104;;;3321:1:61;3148:26794:104;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;:::o;:::-;;;;;;;;;:::o;:::-;;;2073:1:49;3148:26794:104;;;;;;;:::o;:::-;;;;;;;;;;;;;:::o;:::-;;;;;-1:-1:-1;;3148:26794:104;;:::o;311:18:49:-;;;;:::o;:::-;;3148:26794:104;;;;;311:18:49;;;;;;;;;;;3148:26794:104;311:18:49;3148:26794:104;;;311:18:49;;1884:437;3148:26794:104;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;2041:15:49;;;;:::i;:::-;;2066;;;;:::i;:::-;;3148:26794:104;2091:128:49;2124:5;3148:26794:104;2124:5:49;;;;2228:55;2236:10;;;2228:55;:::i;2131:3::-;2179;2171:11;;2162:21;;;;;;;2131:3;;-1:-1:-1;;;2162:21:49;;2150:33;;;;:::i;2131:3::-;2096:26;;;3148:26794:104;;;;:::o;:::-;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;3148:26794:104;;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;3148:26794:104;;;;-1:-1:-1;;;3148:26794:104;;;;;;;689:66:57;;;;;;;;;;;:::o;:::-;3148:26794:104;;689:66:57;;;;;;;;;;;:::o;:::-;3148:26794:104;;-1:-1:-1;;;689:66:57;;;;;;;;;;;3148:26794:104;689:66:57;3148:26794:104;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;;;;;;;;;;;3148:26794:104;689:66:57;3148:26794:104;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;:::o;2494:922::-;;3148:26794:104;-1:-1:-1;;;;;;;;;;;3148:26794:104;;;;;;689:66:57;;;2993:17;;;;:::i;2906:504::-;3148:26794:104;;-1:-1:-1;;;3046:52:57;;3148:26794:104;3046:52:57;3148:26794:104;3046:52:57;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;3046:52:57;;3321:1:61;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;3148:26794:104;;-1:-1:-1;;;3262:56:57;;3148:26794:104;3262:56:57;3046:52;3262:56;;;:::i;3042:291::-;3140:82;-1:-1:-1;;;;;;;;;;;3389:9:57;3148:28;;3140:82;:::i;:::-;3389:9;:::i;3046:52::-;;;;;;;;;;;;;;;:::i;:::-;;;;;2494:922;;3148:26794:104;-1:-1:-1;;;;;;;;;;;3148:26794:104;;;;;;689:66:57;;;2993:17;;;;:::i;2906:504::-;3148:26794:104;;-1:-1:-1;;;3046:52:57;;3148:26794:104;3046:52:57;3148:26794:104;3046:52:57;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;3046:52:57;;;;;;;2906:504;-1:-1:-1;3042:291:57;;3148:26794:104;;-1:-1:-1;;;3262:56:57;;3148:26794:104;3262:56:57;3046:52;3262:56;;;:::i;3042:291::-;3140:82;-1:-1:-1;;;;;;;;;;;3389:9:57;3148:28;;3140:82;:::i;:::-;3389:9;:::i;3046:52::-;;;;;;;;;;;;;;;:::i;:::-;;;;;1406:259;1702:19:73;;:23;3148:26794:104;;-1:-1:-1;;;;;;;;;;;3148:26794:104;;-1:-1:-1;;;;;;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;1406:259:57:o;3148:26794:104:-;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;;;;;;-1:-1:-1;;;3148:26794:104;;;;;;;2057:265:57;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;3148:26794:104;;-1:-1:-1;;;;;;;;;;;3321:1:61;;1889:27:57;3148:26794:104;;2208:15:57;;;:28;;;2057:265;2204:112;;2057:265;;:::o;2204:112::-;7307:69:73;3148:26794:104;3321:1:61;3148:26794:104;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;3148:26794:104;;;;;7265:25:73;;;;;;;;;:::i;:::-;7307:69;;:::i;:::-;;2057:265:57:o;2208:28::-;;3321:1:61;2208:28:57;;2057:265;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;3148:26794:104;;-1:-1:-1;;;;;;;;;;;1889:27:57;;;3148:26794:104;;2208:15:57;;;:28;;;2204:112;;2057:265;;:::o;2208:28::-;;3148:26794:104;2208:28:57;;3148:26794:104;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;-1:-1:-1;3148:26794:104;;;;:::o;:::-;;;:::o;7671:628:73:-;;;;7875:418;;;3148:26794:104;;;7906:22:73;7902:286;;8201:17;;:::o;7902:286::-;1702:19;:23;3148:26794:104;;8201:17:73;:::o;3148:26794:104:-;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;7875:418:73;3148:26794:104;;;;-1:-1:-1;8980:21:73;:17;;9152:142;;;;;;;8976:379;3148:26794:104;;-1:-1:-1;;;9324:20:73;;3148:26794:104;;;9324:20:73;;;;;;:::i;3148:26794:104:-;;;;:::o;:::-;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;;;;;;-1:-1:-1;;;3148:26794:104;;;;;;;5328:125:44;499:12:102;5328:125:44;5366:69;3148:26794:104;5374:13:44;3148:26794:104;;;;5366:69:44;:::i;3148:26794:104:-;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;633:544:102:-;1534:6:42;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;755:33:102;;3148:26794:104;;870:19:102;:::o;751:420::-;3148:26794:104;;-1:-1:-1;;;924:40:102;;;3148:26794:104;924:40:102;3148:26794:104;924:40:102;;;792:1;;924:40;;;751:420;-1:-1:-1;920:241:102;;1127:19;;:::o;920:241::-;1008:13;;;:::o;924:40::-;;;;;;;;;;;;;;;:::i;:::-;;;;;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;:::o;9697:161::-;-1:-1:-1;;;;;3148:26794:104;-1:-1:-1;3148:26794:104;;;9772:17;3148:26794;;;;;;;;9771:29;9767:85;;9697:161::o;9767:85::-;3148:26794;;-1:-1:-1;;;9823:18:104;;;;;3246:506:44;;;;;3302:13;3148:26794:104;;;;;;;3301:14:44;3347:34;;;;;;3246:506;3346:108;;;;3246:506;3148:26794:104;;;;3636:1:44;3536:16;;;3148:26794:104;;;3302:13:44;3148:26794:104;;;3302:13:44;3148:26794:104;;3536:16:44;3562:65;;3636:1;:::i;:::-;3647:99;;3246:506::o;3647:99::-;3681:21;3148:26794:104;;3302:13:44;3148:26794:104;;3302:13:44;3148:26794:104;;3681:21:44;3148:26794:104;;3551:1:44;3148:26794:104;;3721:14:44;;3148:26794:104;;;;3721:14:44;;;;3246:506::o;3562:65::-;3596:20;3148:26794:104;;;3302:13:44;3148:26794:104;;;3302:13:44;3148:26794:104;;3596:20:44;3636:1;:::i;3148:26794:104:-;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;;;;;;-1:-1:-1;;;3148:26794:104;;;;;;;3346:108:44;3426:4;1702:19:73;:23;;-1:-1:-1;1702:23:73;3387:66:44;;3346:108;;;;;3387:66;3452:1;3148:26794:104;;;;3436:17:44;3387:66;;;3347:34;3380:1;3148:26794:104;;;3365:16:44;;-1:-1:-1;3347:34:44;;3148:26794:104;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;:::o;:::-;;;11962:37;-1:-1:-1;3148:26794:104;;-1:-1:-1;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;3148:26794:104;;;;;;;;;;;;;:::o;:::-;;;12009:42;-1:-1:-1;3148:26794:104;;-1:-1:-1;3148:26794:104;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;11962:37;3148:26794;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;-1:-1:-1;3148:26794:104;;;;;11962:37;3148:26794;;-1:-1:-1;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;12009:42;3148:26794;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;12009:42;3148:26794;;-1:-1:-1;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;11915:37;3148:26794;;-1:-1:-1;;;;;;3148:26794:104;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;12519:1;3148:26794;;;;;;;;:::o;:::-;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;:::o;:::-;-1:-1:-1;;3148:26794:104;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::o;:::-;-1:-1:-1;;3148:26794:104;;;;;;;;:::o;:::-;-1:-1:-1;;3148:26794:104;;;;;;;;:::o;:::-;;;;;;;;;;:::o;:::-;;;;11962:37;3148:26794;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;3148:26794:104;;;;-1:-1:-1;3148:26794:104;;;-1:-1:-1;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;3148:26794:104;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;3148:26794:104;;;;-1:-1:-1;;;3148:26794:104;;;;13243:36;3148:26794;;;;;;;;;;;;;;;;;;-1:-1:-1;3148:26794:104;;-1:-1:-1;3148:26794:104;;-1:-1:-1;3148:26794:104;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;-1:-1:-1;3148:26794:104;;;-1:-1:-1;3148:26794:104;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;10928:2544::-;;;404:115:102;10928:2544:104;404:115:102;:::i;:::-;1889:111:45;;:::i;:::-;2838:65:40;;:::i;:::-;11276:18:104;;:::i;:::-;11634:26;11641:19;3148:26794;;;;:::i;11641:19::-;11634:26;3148:26794;;-1:-1:-1;;;;;;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;11634:26;11684:19;11670:33;3148:26794;11684:19;;;3148:26794;;:::i;:::-;11670:33;3148:26794;;-1:-1:-1;;;;;;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;11670:33;11717:27;;;;;3148:26794;;11717:32;11713:89;;3148:26794;11811:49;3148:26794;11870:35;11885:20;;;3148:26794;11870:35;3148:26794;;11870:35;11915:37;3148:26794;11931:21;;;3148:26794;;;;;;;;;;;;;;;;;;;;11915:37;3148:26794;11978:21;;;;3148:26794;:::i;:::-;;12028:23;;;;3148:26794;:::i;:::-;12062:41;3148:26794;12080:23;;;3148:26794;;:::i;:::-;12062:41;3148:26794;;-1:-1:-1;;;;;;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;12062:41;12113:33;3148:26794;12127:19;;;3148:26794;;:::i;:::-;12113:33;:::i;:::-;12233:47;12170:26;3148:26794;12062:41;12176:19;;3148:26794;;:::i;12170:26::-;12156:40;;;:::i;:::-;12206:16;2365:4:40;12206:16:104;3148:26794;;12206:16;12233:47;:::i;:::-;12312:18;3148:26794;12312:16;3148:26794;11634:26;3148:26794;;:::i;12312:16::-;3148:26794;;-1:-1:-1;;;12312:18:104;;3148:26794;;;;;12312:18;;;;;;12291:40;12312:18;2365:4:40;12312:18:104;;;10928:2544;-1:-1:-1;12291:40:104;3148:26794;;-1:-1:-1;;;;;;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;12291:40;2365:4:40;3148:26794:104;12430:20;3148:26794;12156:40;3148:26794;;:::i;12430:20::-;:32;;;:20;;12505:16;13126:106;12505:16;12863:74;12505:16;;:::i;:::-;12560:10;12535:35;12560:10;12535:35;;;:::i;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;;12535:35;12863:74;12883:30;3148:26794;;12883:30;:::i;:::-;12863:74;;:::i;:::-;12947:67;13009:4;12947:67;12967:30;3148:26794;;12967:30;:::i;12947:67::-;3148:26794;;13126:22;3148:26794;12291:40;3148:26794;;:::i;13126:22::-;689:66:57;13149:13:104;;;3148:26794;13179:16;;;2365:4:40;13179:16:104;;3148:26794;;689:66:57;;;;;;;;;;13126:106:104;;13009:4;13126:106;12312:18;13126:106;;;:::i;:::-;;;;;;;;;;13402:63;13126:106;13102:130;13290:36;13126:106;3148:26794;13126:106;13336:50;13126:106;2365:4:40;13126:106:104;;;12426:427;13102:130;;;3148:26794;;13102:130;3148:26794;:::i;:::-;13290:36;3148:26794;;-1:-1:-1;;;;;;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;13290:36;13336:50;3148:26794;;-1:-1:-1;;;;;;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;13336:50;13402:63;13102:130;3148:26794;13448:16;;3148:26794;;13402:63;;;;;:::i;13126:106::-;;;;;;-1:-1:-1;13126:106:104;;;;;;:::i;:::-;;;;;12426:427;3148:26794;;;;;;;;;689:66:57;;;12627:23:104;;;;12312:18;12627:23;;;;;;;;;;;;;12426:427;3148:26794;;12686:32;12700:17;3148:26794;;12700:17;:::i;:::-;12686:32;:::i;:::-;12737:13;2365:4:40;12771:3:104;3148:26794;;12752:17;;;;;12819:9;12794:34;12819:9;;12771:3;12819:9;;;:::i;:::-;12794:34;;;;:::i;12771:3::-;12737:13;;12752:17;;;;;;13126:106;12752:17;;;;12863:74;12752:17;12426:427;;12627:23;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;12312:18;;;;;;;;;;;;;;:::i;:::-;;;;11713:89;3148:26794;;-1:-1:-1;;;11772:19:104;;;;;5328:125:44;5366:69;3148:26794:104;5374:13:44;3148:26794:104;;;;5366:69:44;:::i;7523:247:40:-;-1:-1:-1;;;;;;;;;;;2365:4:40;3148:26794:104;;;4955:6:40;3148:26794:104;;4955:22:40;3148:26794:104;;;;;;2365:4:40;;-1:-1:-1;;;;;;;;;;;2365:4:40;;7711:52;7523:247::o;:::-;3148:26794:104;-1:-1:-1;3148:26794:104;4955:6:40;3148:26794:104;;4955:22:40;3148:26794:104;-1:-1:-1;3148:26794:104;4955:22:40;3148:26794:104;;;;;;-1:-1:-1;;;;;;;;;;;;7711:52:40;;7523:247::o;5328:125:44:-;5366:69;3148:26794:104;5374:13:44;3148:26794:104;;;;5366:69:44;;;:::i;:::-;;:::i;:::-;1808:1:45;2086:22;3148:26794:104;5328:125:44:o;3148:26794:104:-;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;3148:26794:104;;;;;;;;:::o;:::-;;;-1:-1:-1;;;3148:26794:104;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;:::i;:::-;;-1:-1:-1;3148:26794:104;;;:::o;:::-;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;15132:1;3148:26794;;;;;;;;;;;;:::i;:::-;;;;;;;;;15334:14;3148:26794;;;;;;;;;;15132:1;3148:26794;;15132:1;3148:26794;;15132:1;3148:26794;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;14843:601::-;;;;;5942:42;;-1:-1:-1;;;;;3148:26794:104;;15110:65;;14843:601;15292:19;;15184:20;3148:26794;;15132:1;15224:33;3148:26794;15224:4;3148:26794;;:::i;15224:33::-;3148:26794;15292:19;15271:9;3148:26794;;;;15292:19;;;;;;;:::i;:::-;;3148:26794;;15292:19;;;;;;:::i;:::-;15224:134;3148:26794;;;689:66:57;;;;;;;;;;15224:134:104;;;;;;:::i;:::-;;;;;;;;;;15374:63;15224:134;15132:1;15224:134;;;14843:601;15215:143;15374:63;15215:143;;3148:26794;;;15412:4;;;;15374:63;;;:::i;15224:134::-;15374:63;15224:134;;;;;15292:19;15224:134;;;;;;;;;:::i;:::-;;;;;15110:65;15150:14;;-1:-1:-1;15110:65:104;;3148:26794;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;:::i;:::-;;;:::o;:::-;;;;-1:-1:-1;;;3148:26794:104;;;;;;;;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;3148:26794:104;;;:::i;:::-;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;;:::o;2601:287:45:-;1851:1;2733:7;3148:26794:104;2733:19:45;1851:1;;;2733:7;3148:26794:104;2601:287:45:o;1851:1::-;3148:26794:104;;-1:-1:-1;;;1851:1:45;;;;;;;;;;;3148:26794:104;1851:1:45;3148:26794:104;;;1851:1:45;;;;9534:157:104;-1:-1:-1;;;;;3148:26794:104;-1:-1:-1;3148:26794:104;;;23349:19;3148:26794;;;;;23349:41;;3148:26794;;;9614:18;9610:75;;9534:157::o;10016:172::-;-1:-1:-1;;;;;3148:26794:104;;;;;10109:20;10105:77;;10016:172::o;10105:77::-;3148:26794;;-1:-1:-1;;;10152:19:104;;;;;3148:26794;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;1355:203:70;;1482:68;1355:203;1482:68;;1355:203;3148:26794:104;;689:66:57;;;;;;1482:68:70;;;;;;;;:::i;:::-;;3148:26794:104;;1482:68:70;;;;;;:::i;:::-;3148:26794:104;;5535:69:73;;-1:-1:-1;;;;;3148:26794:104;;;;:::i;:::-;-1:-1:-1;3148:26794:104;;;;;;;;;;;5487:31:73;;;;;;;;;;;:::i;5535:69::-;3148:26794:104;;5705:22:70;;;:56;;;;;5173:642;3148:26794:104;;;;;;;5173:642:70;:::o;3148:26794:104:-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3148:26794:104;;;;;5705:56:70;5731:30;;;;;;3148:26794:104;;;;5731:30:70;;3148:26794:104;;;;:::i;:::-;5705:56:70;;;;;9376:152:104;9458:10;-1:-1:-1;3148:26794:104;23349:19;3148:26794;;;23349:41;3148:26794;-1:-1:-1;3148:26794:104;23349:41;3148:26794;;9448:21;9444:78;;9376:152::o;941:175:70:-;1050:58;;941:175;;1050:58;3148:26794:104;;689:66:57;;;;;;1050:58:70;;;;;;;;:::i;1349:282:78:-;3148:26794:104;;4592:71:78;;;;;1204:36:50;-1:-1:-1;1204:36:50;;;4592:71:78;;;;;;;;3148:26794:104;4592:71:78;;;;;;:::i;:::-;4784:212;;;;;;;;-1:-1:-1;4784:212:78;5013:29;;;;1349:282;5013:48;;;;1349:282;975:149;;;;1349:282;1543:81;;;;;;1536:88;1349:282;:::o;1543:81::-;1570:54;;;;:::i;975:149::-;3148:26794:104;;;;-1:-1:-1;3148:26794:104;;;;;4592:71:78;;;;;;3148:26794:104;;;4592:71:78;;;3148:26794:104;4592:71:78;;;;;;:::i;:::-;4784:212;;;-1:-1:-1;4784:212:78;;;;;5013:29;;975:149;5013:48;;;;;975:149;1059:65;;975:149;;;;;;5013:48;5046:15;;;;5013:48;;;:29;5024:18;;;-1:-1:-1;5013:29:78;;;;:48;5046:15;;;-1:-1:-1;5013:48:78;;;:29;5024:18;-1:-1:-1;5024:18:78;;-1:-1:-1;5013:29:78;;;4421:647;-1:-1:-1;4592:71:78;4421:647;3148:26794:104;;4592:71:78;;;1204:36:50;;;;4592:71:78;;19584:32:104;;;4592:71:78;;;3148:26794:104;4592:71:78;;;;;;:::i;:::-;4784:212;;;;-1:-1:-1;4784:212:78;;5013:29;;;4421:647;5013:48;;;;5006:55;4421:647;:::o;5013:48::-;5046:15;;;;4421:647;:::o;5013:29::-;4592:71;-1:-1:-1;5024:18:78;;-1:-1:-1;5013:29:78;;;3148:26794:104;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;;;;;;;;;;;:::i;:::-;689:66:57;;3148:26794:104;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;689:66:57;3148:26794:104;;;;;689:66:57;3148:26794:104;;;;;:::o;9203:167::-;-1:-1:-1;;;;;;;;;;;;3148:26794:104;3459:6:40;3148:26794:104;;;3459:29:40;9291:10:104;-1:-1:-1;;;;;;;;;;;3459:29:40;:::i;:::-;3148:26794:104;;9266:36;9262:102;;9203:167::o;9262:102::-;3148:26794;;-1:-1:-1;;;9325:28:104;;9291:10;9325:28;;;3148:26794;;;9325:28;21325:456;21400:31;;;;:::i;:::-;21396:85;;21490:38;:31;;;:::i;:38::-;3148:26794;;-1:-1:-1;;;21565:51:104;;-1:-1:-1;;;;;3148:26794:104;21565:51;3148:26794;21565:51;3148:26794;;;;21565:51;;;;;;;;;;;21325:456;3148:26794;;21630:34;21626:107;;21325:456;3148:26794;21747:27;-1:-1:-1;;;;;;;;;;;3148:26794:104;;;21747:27;;;;;:::i;21626:107::-;21680:42;;;;;;21565:51;3148:26794;;689:66:57;;;;;21680:42:104;;;;;;;21565:51;21680:42;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;;;;;;;;;;21680:42:104;21747:27;21680:42;;;21626:107;;;;;;21680:42;;;;;;:::i;:::-;;;:::i;:::-;;;;21565:51;;;;;;;;;;;;;;:::i;:::-;;;;21396:85;3148:26794;;-1:-1:-1;;;21454:16:104;;;;;22259:197;-1:-1:-1;;;;;3148:26794:104;22403:5;3148:26794;;;22372:17;3148:26794;;;;;;;;;;;-1:-1:-1;;3148:26794:104;;;;;;;;22423:26;;;22259:197::o;22596:251::-;3148:26794;22774:66;22596:251;;;:::i;:::-;22733:26;3148:26794;;-1:-1:-1;;;;;;3148:26794:104;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;22807:11;3148:26794;;;;;;;;;;;22774:66;22596:251::o;3148:26794::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;25928:222::-;3148:26794;26107:36;25928:222;;;:::i;:::-;;;:::i;:::-;3148:26794;26060:32;3148:26794;;;;;;26107:36;25928:222::o;9864:146::-;9922:12;3148:26794;9922:16;9918:86;;9864:146;:::o;9918:86::-;3148:26794;;;;9961:32;;;;;;;;;3148:26794;9961:32;3148:26794;;;;-1:-1:-1;26453:16:104;;3148:26794;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;-1:-1:-1;3148:26794:104;;;;-1:-1:-1;3148:26794:104;;-1:-1:-1;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3148:26794:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::i;26156:1574::-;;;:::i;:::-;26279:27;;;3148:26794;;;26310:19;3148:26794;26279:50;;;;;:92;;;26156:1574;26279:192;;;;26156:1574;26262:854;;26156:1574;27145:21;;;;;;;3148:26794;;;;;27129:39;3148:26794;;:::i;:::-;;;;;;27172:31;27129:74;27125:204;;26156:1574;27342:20;;;;3148:26794;27366:12;3148:26794;27342:36;;27338:104;;26156:1574;27455:19;3148:26794;;;27455:19;;3148:26794;;:::i;:::-;27478:11;3148:26794;;;;27455:34;;3148:26794;;-1:-1:-1;;;;;3148:26794:104;25618:33;:::i;27455:34::-;-1:-1:-1;;;;;3148:26794:104;;;;;27455:34;27451:156;;26156:1574;3148:26794;;;:::i;:::-;;27620:33;27616:108;;26156:1574;:::o;27616:108::-;27684:28;;;:::i;27451:156::-;27557:39;27505:33;;27557:39;27505:33;;:::i;27557:39::-;;;;27451:156;;;27338:104;27410:20;;;:::i;:::-;27338:104;;;27125:204;27275:43;27235:21;3148:26794;27275:43;27235:21;;3148:26794;:::i;:::-;27296:21;3148:26794;;27275:43;;;;;:::i;:::-;;;;27125:204;;;26262:854;;;:::i;:::-;3148:26794;26534:50;;;26530:138;;26262:854;-1:-1:-1;26685:21:104;;;3148:26794;;;26685:38;3148:26794;26710:13;3148:26794;;;;;;;;;;26685:38;3148:26794;;;26685:38;26681:178;;26262:854;26892:24;;;;;;3148:26794;;;;;26876:42;3148:26794;;:::i;:::-;;;;;;26922:34;26876:80;26872:234;;26262:854;;;;26872:234;27042:49;26995:24;3148:26794;27042:49;26995:24;;3148:26794;:::i;27042:49::-;;;;26872:234;;;26681:178;26803:41;26743:37;;26803:41;26743:37;3148:26794;;;;;;;;;;;;;;26743:37;3148:26794;;;;;;;;;;;;;;;26803:41;;;;26681:178;;;26530:138;26625:27;;;:::i;:::-;26530:138;;;26279:192;26407:24;;;;;3148:26794;;;;;26391:42;3148:26794;;:::i;:::-;;;;;;26437:34;26391:80;;26279:192;;:92;-1:-1:-1;26333:21:104;;;3148:26794;;;26333:38;3148:26794;26358:13;3148:26794;;;;;26333:38;3148:26794;;;26333:38;;26279:92;;27736:288;;;:::i;:::-;6116:7;27843:26;;27839:86;;3148:26794;;27980:37;3148:26794;27934:31;3148:26794;;;;;;27980:37;27736:288::o;27839:86::-;3148:26794;;-1:-1:-1;;;27892:22:104;;;;;3148:26794;;;;;;;;;;;;;;;;;;-1:-1:-1;3148:26794:104;;-1:-1:-1;3148:26794:104;;-1:-1:-1;3148:26794:104;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;3148:26794:104;;;;;;;;;;-1:-1:-1;3148:26794:104;;;;;;;;;;28818:474;;-1:-1:-1;3148:26794:104;;;;;;;;;;28931:18;3148:26794;;;;;;;;;:::i;:::-;29039:13;29083:3;3148:26794;;29054:27;;;;;29214:52;:35;29229:19;;;;;:::i;29214:52::-;:61;;;;;;3148:26794;;;689:66:57;;;;;29214:61:104;;;;;;;;;;;:::i;:::-;;;;;;;;;;29083:3;29214:61;;;29083:3;;:::i;:::-;29039:13;;29214:61;;;;;;:::i;:::-;;;;;3148:26794;;;29054:27;;;;;;;28818:474::o","linkReferences":{},"immutableReferences":{"54869":[{"start":4920,"length":32},{"start":5397,"length":32},{"start":5495,"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,address[]),(uint256,string))":"e0eab988","createPool(address,address,((uint256,uint256,uint256,uint256),uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address,address,uint256,address[]),(uint256,string))":"f24b150f","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","onlyStrategyEnabled(address)":"411481e6","owner()":"8da5cb5b","pendingCouncilSafe()":"68decabb","profileId()":"08386eba","proxiableUUID()":"52d1902d","proxyOwner()":"025313a2","registerStakeAmount()":"78a0b8a9","registry()":"7b103999","registryFactory()":"f86c5f89","rejectPool(address)":"fb1f6917","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","setCommunityParams((address,address,uint256,string,uint256,bool,string))":"f2d774e7","setCouncilSafe(address)":"397e2543","setStrategyTemplate(address)":"1b71f0e4","stakeAndRegisterMember(string)":"9a1f46e2","strategiesByMember(address,uint256)":"2b38c69c","strategyTemplate()":"5c94e4d2","supportsInterface(bytes4)":"01ffc9a7","totalMembers()":"76e92559","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\":[{\"internalType\":\"uint256\",\"name\":\"size\",\"type\":\"uint256\"}],\"name\":\"AllowlistTooBig\",\"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\":[{\"internalType\":\"uint256\",\"name\":\"totalMembers\",\"type\":\"uint256\"}],\"name\":\"OnlyEmptyCommunity\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"PointsDeactivated\",\"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\":[{\"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\":\"uint256\",\"name\":\"_newAmount\",\"type\":\"uint256\"}],\"name\":\"BasisStakedAmountUpdated\",\"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\":\"string\",\"name\":\"_communityName\",\"type\":\"string\"}],\"name\":\"CommunityNameUpdated\",\"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\":\"CouncilSafeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_covenantIpfsHash\",\"type\":\"string\"}],\"name\":\"CovenantIpfsHashUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_feeReceiver\",\"type\":\"address\"}],\"name\":\"FeeReceiverChanged\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"bool\",\"name\":\"_isKickEnabled\",\"type\":\"bool\"}],\"name\":\"KickEnabledUpdated\",\"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\":\"_amountStaked\",\"type\":\"uint256\"},{\"indexed\":false,\"internalType\":\"string\",\"name\":\"_covenantSig\",\"type\":\"string\"}],\"name\":\"MemberRegisteredWithCovenant\",\"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\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"PoolRejected\",\"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\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"},{\"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\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"},{\"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\":\"_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\":\"\",\"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\":[{\"internalType\":\"address\",\"name\":\"_strategy\",\"type\":\"address\"}],\"name\":\"onlyStrategyEnabled\",\"outputs\":[],\"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\":\"proxyOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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\":\"rejectPool\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"councilSafe\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"feeReceiver\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"communityFee\",\"type\":\"uint256\"},{\"internalType\":\"string\",\"name\":\"communityName\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"registerStakeAmount\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"isKickEnabled\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"covenantIpfsHash\",\"type\":\"string\"}],\"internalType\":\"struct CommunityParams\",\"name\":\"_params\",\"type\":\"tuple\"}],\"name\":\"setCommunityParams\",\"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\":[{\"internalType\":\"string\",\"name\":\"covenantSig\",\"type\":\"string\"}],\"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\":[],\"name\":\"totalMembers\",\"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\":[],\"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\"},\"totalMembers()\":{\"notice\":\"The total number of members in the community\"}},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a\",\"dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"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":"uint256","name":"size","type":"uint256"}],"type":"error","name":"AllowlistTooBig"},{"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":[{"internalType":"uint256","name":"totalMembers","type":"uint256"}],"type":"error","name":"OnlyEmptyCommunity"},{"inputs":[],"type":"error","name":"PointsDeactivated"},{"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":[{"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":"uint256","name":"_newAmount","type":"uint256","indexed":false}],"type":"event","name":"BasisStakedAmountUpdated","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":"string","name":"_communityName","type":"string","indexed":false}],"type":"event","name":"CommunityNameUpdated","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":"CouncilSafeUpdated","anonymous":false},{"inputs":[{"internalType":"string","name":"_covenantIpfsHash","type":"string","indexed":false}],"type":"event","name":"CovenantIpfsHashUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"_feeReceiver","type":"address","indexed":false}],"type":"event","name":"FeeReceiverChanged","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"bool","name":"_isKickEnabled","type":"bool","indexed":false}],"type":"event","name":"KickEnabledUpdated","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":"_amountStaked","type":"uint256","indexed":false},{"internalType":"string","name":"_covenantSig","type":"string","indexed":false}],"type":"event","name":"MemberRegisteredWithCovenant","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":"address","name":"_strategy","type":"address","indexed":false}],"type":"event","name":"PoolRejected","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_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":"uint256","name":"sybilScorerThreshold","type":"uint256"},{"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":"uint256","name":"sybilScorerThreshold","type":"uint256"},{"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":"_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":"","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":[{"internalType":"address","name":"_strategy","type":"address"}],"stateMutability":"view","type":"function","name":"onlyStrategyEnabled"},{"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":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"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":"rejectPool"},{"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":"struct CommunityParams","name":"_params","type":"tuple","components":[{"internalType":"address","name":"councilSafe","type":"address"},{"internalType":"address","name":"feeReceiver","type":"address"},{"internalType":"uint256","name":"communityFee","type":"uint256"},{"internalType":"string","name":"communityName","type":"string"},{"internalType":"uint256","name":"registerStakeAmount","type":"uint256"},{"internalType":"bool","name":"isKickEnabled","type":"bool"},{"internalType":"string","name":"covenantIpfsHash","type":"string"}]}],"stateMutability":"nonpayable","type":"function","name":"setCommunityParams"},{"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":[{"internalType":"string","name":"covenantSig","type":"string"}],"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":[],"stateMutability":"view","type":"function","name":"totalMembers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"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"},"totalMembers()":{"notice":"The total number of members in the community"}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{},"viaIR":true},"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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4","urls":["bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a","dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"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":52287,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52290,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":52992,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52079,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52199,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":52464,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":52533,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":53266,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"151","type":"t_array(t_uint256)50_storage"},{"astId":51686,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"_roles","offset":0,"slot":"201","type":"t_mapping(t_bytes32,t_struct(RoleData)51681_storage)"},{"astId":51993,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"202","type":"t_array(t_uint256)49_storage"},{"astId":71581,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registerStakeAmount","offset":0,"slot":"251","type":"t_uint256"},{"astId":71584,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"communityFee","offset":0,"slot":"252","type":"t_uint256"},{"astId":71587,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"cloneNonce","offset":0,"slot":"253","type":"t_uint256"},{"astId":71590,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"profileId","offset":0,"slot":"254","type":"t_bytes32"},{"astId":71593,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"isKickEnabled","offset":0,"slot":"255","type":"t_bool"},{"astId":71596,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"feeReceiver","offset":1,"slot":"255","type":"t_address"},{"astId":71599,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registryFactory","offset":0,"slot":"256","type":"t_address"},{"astId":71602,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"collateralVaultTemplate","offset":0,"slot":"257","type":"t_address"},{"astId":71605,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"strategyTemplate","offset":0,"slot":"258","type":"t_address"},{"astId":71608,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"pendingCouncilSafe","offset":0,"slot":"259","type":"t_address_payable"},{"astId":71612,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"registry","offset":0,"slot":"260","type":"t_contract(IRegistry)2802"},{"astId":71616,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"gardenToken","offset":0,"slot":"261","type":"t_contract(IERC20)55825"},{"astId":71620,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"councilSafe","offset":0,"slot":"262","type":"t_contract(ISafe)77075"},{"astId":71624,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"allo","offset":0,"slot":"263","type":"t_contract(FAllo)76808"},{"astId":71627,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"communityName","offset":0,"slot":"264","type":"t_string_storage"},{"astId":71630,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"covenantIpfsHash","offset":0,"slot":"265","type":"t_string_storage"},{"astId":71635,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"enabledStrategies","offset":0,"slot":"266","type":"t_mapping(t_address,t_bool)"},{"astId":71642,"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":71648,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"addressToMemberInfo","offset":0,"slot":"268","type":"t_mapping(t_address,t_struct(Member)71359_storage)"},{"astId":71654,"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":71661,"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":71665,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"initialMembers","offset":0,"slot":"271","type":"t_array(t_address)dyn_storage"},{"astId":71668,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"totalMembers","offset":0,"slot":"272","type":"t_uint256"},{"astId":73555,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"__gap","offset":0,"slot":"273","type":"t_array(t_uint256)49_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)76808":{"encoding":"inplace","label":"contract FAllo","numberOfBytes":"20"},"t_contract(IERC20)55825":{"encoding":"inplace","label":"contract IERC20","numberOfBytes":"20"},"t_contract(IRegistry)2802":{"encoding":"inplace","label":"contract IRegistry","numberOfBytes":"20"},"t_contract(ISafe)77075":{"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)71359_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct Member)","numberOfBytes":"32","value":"t_struct(Member)71359_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)51681_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct AccessControlUpgradeable.RoleData)","numberOfBytes":"32","value":"t_struct(RoleData)51681_storage"},"t_string_storage":{"encoding":"bytes","label":"string","numberOfBytes":"32"},"t_struct(Member)71359_storage":{"encoding":"inplace","label":"struct Member","numberOfBytes":"96","members":[{"astId":71354,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"member","offset":0,"slot":"0","type":"t_address"},{"astId":71356,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"stakedAmount","offset":0,"slot":"1","type":"t_uint256"},{"astId":71358,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"isRegistered","offset":0,"slot":"2","type":"t_bool"}]},"t_struct(RoleData)51681_storage":{"encoding":"inplace","label":"struct AccessControlUpgradeable.RoleData","numberOfBytes":"64","members":[{"astId":51678,"contract":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol:RegistryCommunityV0_0","label":"members","offset":0,"slot":"0","type":"t_mapping(t_address,t_bool)"},{"astId":51680,"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":73557,"exportedSymbols":{"AccessControlUpgradeable":[51994],"CVStrategyInitializeParamsV0_1":[66370],"CVStrategyV0_0":[70249],"Clone":[3002],"CommunityParams":[71374],"ERC165Checker":[57216],"ERC1967Proxy":[54318],"FAllo":[76808],"IAllo":[2610],"IERC20":[55825],"IPointStrategy":[66224],"IRegistry":[2802],"IRegistryFactory":[70530],"ISafe":[77075],"ISybilScorer":[70608],"Member":[71359],"Metadata":[3098],"PointSystem":[66233],"ProxyOwnableUpgrader":[71181],"ReentrancyGuardUpgradeable":[52534],"RegistryCommunityInitializeParamsV0_0":[71352],"RegistryCommunityV0_0":[73556],"SafeERC20":[56262],"Strategies":[71378],"UUPSUpgradeable":[54969],"Upgrades":[60473]},"nodeType":"SourceUnit","src":"42:29901:104","nodes":[{"id":71287,"nodeType":"PragmaDirective","src":"42:24:104","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":71289,"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":73557,"sourceUnit":55826,"symbolAliases":[{"foreign":{"id":71288,"name":"IERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55825,"src":"76:6:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71291,"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":73557,"sourceUnit":56263,"symbolAliases":[{"foreign":{"id":71290,"name":"SafeERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56262,"src":"147:9:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71293,"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":73557,"sourceUnit":57217,"symbolAliases":[{"foreign":{"id":71292,"name":"ERC165Checker","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":57216,"src":"230:13:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71295,"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":73557,"sourceUnit":54970,"symbolAliases":[{"foreign":{"id":71294,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54969,"src":"323:15:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71297,"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":73557,"sourceUnit":52535,"symbolAliases":[{"foreign":{"id":71296,"name":"ReentrancyGuardUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52534,"src":"413:26:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71299,"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":73557,"sourceUnit":51995,"symbolAliases":[{"foreign":{"id":71298,"name":"AccessControlUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51994,"src":"546:24:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71301,"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":73557,"sourceUnit":2611,"symbolAliases":[{"foreign":{"id":71300,"name":"IAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2610,"src":"674:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71303,"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":73557,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":71302,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"741:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71306,"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":73557,"sourceUnit":2803,"symbolAliases":[{"foreign":{"id":71304,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"807:9:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":71305,"name":"Metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3098,"src":"818:8:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71308,"nodeType":"ImportDirective","src":"884:46:104","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/FAllo.sol","file":"../interfaces/FAllo.sol","nameLocation":"-1:-1:-1","scope":73557,"sourceUnit":76809,"symbolAliases":[{"foreign":{"id":71307,"name":"FAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76808,"src":"892:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71310,"nodeType":"ImportDirective","src":"931:46:104","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/ISafe.sol","file":"../interfaces/ISafe.sol","nameLocation":"-1:-1:-1","scope":73557,"sourceUnit":77092,"symbolAliases":[{"foreign":{"id":71309,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77075,"src":"939:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71312,"nodeType":"ImportDirective","src":"978:57:104","nodes":[],"absolutePath":"pkg/contracts/src/IRegistryFactory.sol","file":"../IRegistryFactory.sol","nameLocation":"-1:-1:-1","scope":73557,"sourceUnit":70531,"symbolAliases":[{"foreign":{"id":71311,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70530,"src":"986:16:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71317,"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":73557,"sourceUnit":70250,"symbolAliases":[{"foreign":{"id":71313,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70249,"src":"1049:14:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":71314,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66224,"src":"1069:14:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":71315,"name":"CVStrategyInitializeParamsV0_1","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66370,"src":"1089:30:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":71316,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"1125:11:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71319,"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":73557,"sourceUnit":60594,"symbolAliases":[{"foreign":{"id":71318,"name":"Upgrades","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":60473,"src":"1188:8:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71321,"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":73557,"sourceUnit":54319,"symbolAliases":[{"foreign":{"id":71320,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54318,"src":"1255:12:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71323,"nodeType":"ImportDirective","src":"1332:65:104","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"../ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":73557,"sourceUnit":71182,"symbolAliases":[{"foreign":{"id":71322,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71181,"src":"1340:20:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71325,"nodeType":"ImportDirective","src":"1398:49:104","nodes":[],"absolutePath":"pkg/contracts/src/ISybilScorer.sol","file":"../ISybilScorer.sol","nameLocation":"-1:-1:-1","scope":73557,"sourceUnit":70609,"symbolAliases":[{"foreign":{"id":71324,"name":"ISybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70608,"src":"1406:12:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":71352,"nodeType":"StructDefinition","src":"2339:368:104","nodes":[],"canonicalName":"RegistryCommunityInitializeParamsV0_0","members":[{"constant":false,"id":71327,"mutability":"mutable","name":"_allo","nameLocation":"2398:5:104","nodeType":"VariableDeclaration","scope":71352,"src":"2390:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71326,"name":"address","nodeType":"ElementaryTypeName","src":"2390:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71330,"mutability":"mutable","name":"_gardenToken","nameLocation":"2416:12:104","nodeType":"VariableDeclaration","scope":71352,"src":"2409:19:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":71329,"nodeType":"UserDefinedTypeName","pathNode":{"id":71328,"name":"IERC20","nameLocations":["2409:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"2409:6:104"},"referencedDeclaration":55825,"src":"2409:6:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":71332,"mutability":"mutable","name":"_registerStakeAmount","nameLocation":"2442:20:104","nodeType":"VariableDeclaration","scope":71352,"src":"2434:28:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71331,"name":"uint256","nodeType":"ElementaryTypeName","src":"2434:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71334,"mutability":"mutable","name":"_communityFee","nameLocation":"2476:13:104","nodeType":"VariableDeclaration","scope":71352,"src":"2468:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71333,"name":"uint256","nodeType":"ElementaryTypeName","src":"2468:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71336,"mutability":"mutable","name":"_nonce","nameLocation":"2503:6:104","nodeType":"VariableDeclaration","scope":71352,"src":"2495:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71335,"name":"uint256","nodeType":"ElementaryTypeName","src":"2495:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71338,"mutability":"mutable","name":"_registryFactory","nameLocation":"2523:16:104","nodeType":"VariableDeclaration","scope":71352,"src":"2515:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71337,"name":"address","nodeType":"ElementaryTypeName","src":"2515:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71340,"mutability":"mutable","name":"_feeReceiver","nameLocation":"2553:12:104","nodeType":"VariableDeclaration","scope":71352,"src":"2545:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71339,"name":"address","nodeType":"ElementaryTypeName","src":"2545:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71343,"mutability":"mutable","name":"_metadata","nameLocation":"2580:9:104","nodeType":"VariableDeclaration","scope":71352,"src":"2571:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"},"typeName":{"id":71342,"nodeType":"UserDefinedTypeName","pathNode":{"id":71341,"name":"Metadata","nameLocations":["2571:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"2571:8:104"},"referencedDeclaration":3098,"src":"2571:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"},{"constant":false,"id":71345,"mutability":"mutable","name":"_councilSafe","nameLocation":"2611:12:104","nodeType":"VariableDeclaration","scope":71352,"src":"2595:28:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":71344,"name":"address","nodeType":"ElementaryTypeName","src":"2595:15:104","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"},{"constant":false,"id":71347,"mutability":"mutable","name":"_communityName","nameLocation":"2636:14:104","nodeType":"VariableDeclaration","scope":71352,"src":"2629:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":71346,"name":"string","nodeType":"ElementaryTypeName","src":"2629:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":71349,"mutability":"mutable","name":"_isKickEnabled","nameLocation":"2661:14:104","nodeType":"VariableDeclaration","scope":71352,"src":"2656:19:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":71348,"name":"bool","nodeType":"ElementaryTypeName","src":"2656:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":71351,"mutability":"mutable","name":"covenantIpfsHash","nameLocation":"2688:16:104","nodeType":"VariableDeclaration","scope":71352,"src":"2681:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":71350,"name":"string","nodeType":"ElementaryTypeName","src":"2681:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"name":"RegistryCommunityInitializeParamsV0_0","nameLocation":"2346:37:104","scope":73557,"visibility":"public"},{"id":71359,"nodeType":"StructDefinition","src":"2709:86:104","nodes":[],"canonicalName":"Member","members":[{"constant":false,"id":71354,"mutability":"mutable","name":"member","nameLocation":"2737:6:104","nodeType":"VariableDeclaration","scope":71359,"src":"2729:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71353,"name":"address","nodeType":"ElementaryTypeName","src":"2729:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71356,"mutability":"mutable","name":"stakedAmount","nameLocation":"2757:12:104","nodeType":"VariableDeclaration","scope":71359,"src":"2749:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71355,"name":"uint256","nodeType":"ElementaryTypeName","src":"2749:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71358,"mutability":"mutable","name":"isRegistered","nameLocation":"2780:12:104","nodeType":"VariableDeclaration","scope":71359,"src":"2775:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":71357,"name":"bool","nodeType":"ElementaryTypeName","src":"2775:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"Member","nameLocation":"2716:6:104","scope":73557,"visibility":"public"},{"id":71374,"nodeType":"StructDefinition","src":"2797:249:104","nodes":[],"canonicalName":"CommunityParams","members":[{"constant":false,"id":71361,"mutability":"mutable","name":"councilSafe","nameLocation":"2834:11:104","nodeType":"VariableDeclaration","scope":71374,"src":"2826:19:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71360,"name":"address","nodeType":"ElementaryTypeName","src":"2826:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71363,"mutability":"mutable","name":"feeReceiver","nameLocation":"2859:11:104","nodeType":"VariableDeclaration","scope":71374,"src":"2851:19:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71362,"name":"address","nodeType":"ElementaryTypeName","src":"2851:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71365,"mutability":"mutable","name":"communityFee","nameLocation":"2884:12:104","nodeType":"VariableDeclaration","scope":71374,"src":"2876:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71364,"name":"uint256","nodeType":"ElementaryTypeName","src":"2876:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71367,"mutability":"mutable","name":"communityName","nameLocation":"2909:13:104","nodeType":"VariableDeclaration","scope":71374,"src":"2902:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":71366,"name":"string","nodeType":"ElementaryTypeName","src":"2902:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":71369,"mutability":"mutable","name":"registerStakeAmount","nameLocation":"2971:19:104","nodeType":"VariableDeclaration","scope":71374,"src":"2963:27:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71368,"name":"uint256","nodeType":"ElementaryTypeName","src":"2963:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71371,"mutability":"mutable","name":"isKickEnabled","nameLocation":"3001:13:104","nodeType":"VariableDeclaration","scope":71374,"src":"2996:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":71370,"name":"bool","nodeType":"ElementaryTypeName","src":"2996:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":71373,"mutability":"mutable","name":"covenantIpfsHash","nameLocation":"3027:16:104","nodeType":"VariableDeclaration","scope":71374,"src":"3020:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"},"typeName":{"id":71372,"name":"string","nodeType":"ElementaryTypeName","src":"3020:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"name":"CommunityParams","nameLocation":"2804:15:104","scope":73557,"visibility":"public"},{"id":71378,"nodeType":"StructDefinition","src":"3048:47:104","nodes":[],"canonicalName":"Strategies","members":[{"constant":false,"id":71377,"mutability":"mutable","name":"strategies","nameLocation":"3082:10:104","nodeType":"VariableDeclaration","scope":71378,"src":"3072:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71375,"name":"address","nodeType":"ElementaryTypeName","src":"3072:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71376,"nodeType":"ArrayTypeName","src":"3072:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"name":"Strategies","nameLocation":"3055:10:104","scope":73557,"visibility":"public"},{"id":73556,"nodeType":"ContractDefinition","src":"3148:26794:104","nodes":[{"id":71389,"nodeType":"EventDefinition","src":"3429:40:104","nodes":[],"anonymous":false,"eventSelector":"fea29da7321ca6d0ee0a7359009bb9d4a57035aea0ef6cb4d062341f4a961519","name":"CouncilSafeUpdated","nameLocation":"3435:18:104","parameters":{"id":71388,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71387,"indexed":false,"mutability":"mutable","name":"_safe","nameLocation":"3462:5:104","nodeType":"VariableDeclaration","scope":71389,"src":"3454:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71386,"name":"address","nodeType":"ElementaryTypeName","src":"3454:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3453:15:104"}},{"id":71395,"nodeType":"EventDefinition","src":"3474:74:104","nodes":[],"anonymous":false,"eventSelector":"83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf8","name":"CouncilSafeChangeStarted","nameLocation":"3480:24:104","parameters":{"id":71394,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71391,"indexed":false,"mutability":"mutable","name":"_safeOwner","nameLocation":"3513:10:104","nodeType":"VariableDeclaration","scope":71395,"src":"3505:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71390,"name":"address","nodeType":"ElementaryTypeName","src":"3505:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71393,"indexed":false,"mutability":"mutable","name":"_newSafeOwner","nameLocation":"3533:13:104","nodeType":"VariableDeclaration","scope":71395,"src":"3525:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71392,"name":"address","nodeType":"ElementaryTypeName","src":"3525:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3504:43:104"}},{"id":71401,"nodeType":"EventDefinition","src":"3553:63:104","nodes":[],"anonymous":false,"eventSelector":"67e0244e28040fec15240cd4b6c04c776a2a0278caef23b59e8ada1df31f7689","name":"MemberRegistered","nameLocation":"3559:16:104","parameters":{"id":71400,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71397,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3584:7:104","nodeType":"VariableDeclaration","scope":71401,"src":"3576:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71396,"name":"address","nodeType":"ElementaryTypeName","src":"3576:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71399,"indexed":false,"mutability":"mutable","name":"_amountStaked","nameLocation":"3601:13:104","nodeType":"VariableDeclaration","scope":71401,"src":"3593:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71398,"name":"uint256","nodeType":"ElementaryTypeName","src":"3593:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3575:40:104"}},{"id":71409,"nodeType":"EventDefinition","src":"3621:96:104","nodes":[],"anonymous":false,"eventSelector":"0bd09b1e448ffe881e884ac37014bf3e0274007308056b6469b50fa485542abf","name":"MemberRegisteredWithCovenant","nameLocation":"3627:28:104","parameters":{"id":71408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71403,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3664:7:104","nodeType":"VariableDeclaration","scope":71409,"src":"3656:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71402,"name":"address","nodeType":"ElementaryTypeName","src":"3656:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71405,"indexed":false,"mutability":"mutable","name":"_amountStaked","nameLocation":"3681:13:104","nodeType":"VariableDeclaration","scope":71409,"src":"3673:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71404,"name":"uint256","nodeType":"ElementaryTypeName","src":"3673:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71407,"indexed":false,"mutability":"mutable","name":"_covenantSig","nameLocation":"3703:12:104","nodeType":"VariableDeclaration","scope":71409,"src":"3696:19:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":71406,"name":"string","nodeType":"ElementaryTypeName","src":"3696:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"3655:61:104"}},{"id":71415,"nodeType":"EventDefinition","src":"3722:67:104","nodes":[],"anonymous":false,"eventSelector":"a13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f4","name":"MemberUnregistered","nameLocation":"3728:18:104","parameters":{"id":71414,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71411,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3755:7:104","nodeType":"VariableDeclaration","scope":71415,"src":"3747:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71410,"name":"address","nodeType":"ElementaryTypeName","src":"3747:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71413,"indexed":false,"mutability":"mutable","name":"_amountReturned","nameLocation":"3772:15:104","nodeType":"VariableDeclaration","scope":71415,"src":"3764:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71412,"name":"uint256","nodeType":"ElementaryTypeName","src":"3764:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3746:42:104"}},{"id":71423,"nodeType":"EventDefinition","src":"3794:87:104","nodes":[],"anonymous":false,"eventSelector":"b5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a3","name":"MemberKicked","nameLocation":"3800:12:104","parameters":{"id":71422,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71417,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"3821:7:104","nodeType":"VariableDeclaration","scope":71423,"src":"3813:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71416,"name":"address","nodeType":"ElementaryTypeName","src":"3813:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71419,"indexed":false,"mutability":"mutable","name":"_transferAddress","nameLocation":"3838:16:104","nodeType":"VariableDeclaration","scope":71423,"src":"3830:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71418,"name":"address","nodeType":"ElementaryTypeName","src":"3830:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71421,"indexed":false,"mutability":"mutable","name":"_amountReturned","nameLocation":"3864:15:104","nodeType":"VariableDeclaration","scope":71423,"src":"3856:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71420,"name":"uint256","nodeType":"ElementaryTypeName","src":"3856:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3812:68:104"}},{"id":71427,"nodeType":"EventDefinition","src":"3886:43:104","nodes":[],"anonymous":false,"eventSelector":"611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d6","name":"CommunityFeeUpdated","nameLocation":"3892:19:104","parameters":{"id":71426,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71425,"indexed":false,"mutability":"mutable","name":"_newFee","nameLocation":"3920:7:104","nodeType":"VariableDeclaration","scope":71427,"src":"3912:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71424,"name":"uint256","nodeType":"ElementaryTypeName","src":"3912:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3911:17:104"}},{"id":71436,"nodeType":"EventDefinition","src":"3934:89:104","nodes":[],"anonymous":false,"eventSelector":"2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed03205","name":"RegistryInitialized","nameLocation":"3940:19:104","parameters":{"id":71435,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71429,"indexed":false,"mutability":"mutable","name":"_profileId","nameLocation":"3968:10:104","nodeType":"VariableDeclaration","scope":71436,"src":"3960:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":71428,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3960:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":71431,"indexed":false,"mutability":"mutable","name":"_communityName","nameLocation":"3987:14:104","nodeType":"VariableDeclaration","scope":71436,"src":"3980:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":71430,"name":"string","nodeType":"ElementaryTypeName","src":"3980:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"},{"constant":false,"id":71434,"indexed":false,"mutability":"mutable","name":"_metadata","nameLocation":"4012:9:104","nodeType":"VariableDeclaration","scope":71436,"src":"4003:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":71433,"nodeType":"UserDefinedTypeName","pathNode":{"id":71432,"name":"Metadata","nameLocations":["4003:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"4003:8:104"},"referencedDeclaration":3098,"src":"4003:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"3959:63:104"}},{"id":71440,"nodeType":"EventDefinition","src":"4028:39:104","nodes":[],"anonymous":false,"eventSelector":"3f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f1","name":"StrategyAdded","nameLocation":"4034:13:104","parameters":{"id":71439,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71438,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4056:9:104","nodeType":"VariableDeclaration","scope":71440,"src":"4048:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71437,"name":"address","nodeType":"ElementaryTypeName","src":"4048:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4047:19:104"}},{"id":71444,"nodeType":"EventDefinition","src":"4072:41:104","nodes":[],"anonymous":false,"eventSelector":"09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea4","name":"StrategyRemoved","nameLocation":"4078:15:104","parameters":{"id":71443,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71442,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4102:9:104","nodeType":"VariableDeclaration","scope":71444,"src":"4094:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71441,"name":"address","nodeType":"ElementaryTypeName","src":"4094:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4093:19:104"}},{"id":71452,"nodeType":"EventDefinition","src":"4118:93:104","nodes":[],"anonymous":false,"eventSelector":"f56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec","name":"MemberActivatedStrategy","nameLocation":"4124:23:104","parameters":{"id":71451,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71446,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4156:7:104","nodeType":"VariableDeclaration","scope":71452,"src":"4148:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71445,"name":"address","nodeType":"ElementaryTypeName","src":"4148:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71448,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4173:9:104","nodeType":"VariableDeclaration","scope":71452,"src":"4165:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71447,"name":"address","nodeType":"ElementaryTypeName","src":"4165:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71450,"indexed":false,"mutability":"mutable","name":"_pointsToIncrease","nameLocation":"4192:17:104","nodeType":"VariableDeclaration","scope":71452,"src":"4184:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71449,"name":"uint256","nodeType":"ElementaryTypeName","src":"4184:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4147:63:104"}},{"id":71458,"nodeType":"EventDefinition","src":"4216:68:104","nodes":[],"anonymous":false,"eventSelector":"00de109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b","name":"MemberDeactivatedStrategy","nameLocation":"4222:25:104","parameters":{"id":71457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71454,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4256:7:104","nodeType":"VariableDeclaration","scope":71458,"src":"4248:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71453,"name":"address","nodeType":"ElementaryTypeName","src":"4248:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71456,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4273:9:104","nodeType":"VariableDeclaration","scope":71458,"src":"4265:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71455,"name":"address","nodeType":"ElementaryTypeName","src":"4265:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4247:36:104"}},{"id":71462,"nodeType":"EventDefinition","src":"4289:51:104","nodes":[],"anonymous":false,"eventSelector":"5e2d447f427e49fd08832fd025a56589500352417199aa65728feaf05123e856","name":"BasisStakedAmountUpdated","nameLocation":"4295:24:104","parameters":{"id":71461,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71460,"indexed":false,"mutability":"mutable","name":"_newAmount","nameLocation":"4328:10:104","nodeType":"VariableDeclaration","scope":71462,"src":"4320:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71459,"name":"uint256","nodeType":"ElementaryTypeName","src":"4320:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4319:20:104"}},{"id":71468,"nodeType":"EventDefinition","src":"4345:67:104","nodes":[],"anonymous":false,"eventSelector":"576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f","name":"MemberPowerIncreased","nameLocation":"4351:20:104","parameters":{"id":71467,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71464,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4380:7:104","nodeType":"VariableDeclaration","scope":71468,"src":"4372:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71463,"name":"address","nodeType":"ElementaryTypeName","src":"4372:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71466,"indexed":false,"mutability":"mutable","name":"_stakedAmount","nameLocation":"4397:13:104","nodeType":"VariableDeclaration","scope":71468,"src":"4389:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71465,"name":"uint256","nodeType":"ElementaryTypeName","src":"4389:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4371:40:104"}},{"id":71474,"nodeType":"EventDefinition","src":"4417:69:104","nodes":[],"anonymous":false,"eventSelector":"6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8","name":"MemberPowerDecreased","nameLocation":"4423:20:104","parameters":{"id":71473,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71470,"indexed":false,"mutability":"mutable","name":"_member","nameLocation":"4452:7:104","nodeType":"VariableDeclaration","scope":71474,"src":"4444:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71469,"name":"address","nodeType":"ElementaryTypeName","src":"4444:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71472,"indexed":false,"mutability":"mutable","name":"_unstakedAmount","nameLocation":"4469:15:104","nodeType":"VariableDeclaration","scope":71474,"src":"4461:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71471,"name":"uint256","nodeType":"ElementaryTypeName","src":"4461:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4443:42:104"}},{"id":71478,"nodeType":"EventDefinition","src":"4491:50:104","nodes":[],"anonymous":false,"eventSelector":"f67fb6c95f41f58a276869ca2608214f0a6aab1c9ffe445affaa58680fddd497","name":"CommunityNameUpdated","nameLocation":"4497:20:104","parameters":{"id":71477,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71476,"indexed":false,"mutability":"mutable","name":"_communityName","nameLocation":"4525:14:104","nodeType":"VariableDeclaration","scope":71478,"src":"4518:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":71475,"name":"string","nodeType":"ElementaryTypeName","src":"4518:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"4517:23:104"}},{"id":71482,"nodeType":"EventDefinition","src":"4546:56:104","nodes":[],"anonymous":false,"eventSelector":"8fd46764d9fde733a671bd3aa6710da0668b1c4eb78d33f42e104553ea4bc76e","name":"CovenantIpfsHashUpdated","nameLocation":"4552:23:104","parameters":{"id":71481,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71480,"indexed":false,"mutability":"mutable","name":"_covenantIpfsHash","nameLocation":"4583:17:104","nodeType":"VariableDeclaration","scope":71482,"src":"4576:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":71479,"name":"string","nodeType":"ElementaryTypeName","src":"4576:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"4575:26:104"}},{"id":71486,"nodeType":"EventDefinition","src":"4607:46:104","nodes":[],"anonymous":false,"eventSelector":"4ca826489011b9a44719ccfa206813b072bb58604af41f245a6a1a6d91358875","name":"KickEnabledUpdated","nameLocation":"4613:18:104","parameters":{"id":71485,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71484,"indexed":false,"mutability":"mutable","name":"_isKickEnabled","nameLocation":"4637:14:104","nodeType":"VariableDeclaration","scope":71486,"src":"4632:19:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":71483,"name":"bool","nodeType":"ElementaryTypeName","src":"4632:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4631:21:104"}},{"id":71490,"nodeType":"EventDefinition","src":"4658:47:104","nodes":[],"anonymous":false,"eventSelector":"647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f786059","name":"FeeReceiverChanged","nameLocation":"4664:18:104","parameters":{"id":71489,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71488,"indexed":false,"mutability":"mutable","name":"_feeReceiver","nameLocation":"4691:12:104","nodeType":"VariableDeclaration","scope":71490,"src":"4683:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71487,"name":"address","nodeType":"ElementaryTypeName","src":"4683:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4682:22:104"}},{"id":71503,"nodeType":"EventDefinition","src":"4710:110:104","nodes":[],"anonymous":false,"eventSelector":"778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d283","name":"PoolCreated","nameLocation":"4716:11:104","parameters":{"id":71502,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71492,"indexed":false,"mutability":"mutable","name":"_poolId","nameLocation":"4736:7:104","nodeType":"VariableDeclaration","scope":71503,"src":"4728:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71491,"name":"uint256","nodeType":"ElementaryTypeName","src":"4728:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71494,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4753:9:104","nodeType":"VariableDeclaration","scope":71503,"src":"4745:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71493,"name":"address","nodeType":"ElementaryTypeName","src":"4745:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71496,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"4772:10:104","nodeType":"VariableDeclaration","scope":71503,"src":"4764:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71495,"name":"address","nodeType":"ElementaryTypeName","src":"4764:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71498,"indexed":false,"mutability":"mutable","name":"_token","nameLocation":"4792:6:104","nodeType":"VariableDeclaration","scope":71503,"src":"4784:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71497,"name":"address","nodeType":"ElementaryTypeName","src":"4784:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71501,"indexed":false,"mutability":"mutable","name":"_metadata","nameLocation":"4809:9:104","nodeType":"VariableDeclaration","scope":71503,"src":"4800:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":71500,"nodeType":"UserDefinedTypeName","pathNode":{"id":71499,"name":"Metadata","nameLocations":["4800:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"4800:8:104"},"referencedDeclaration":3098,"src":"4800:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"4727:92:104"}},{"id":71507,"nodeType":"EventDefinition","src":"4839:38:104","nodes":[],"anonymous":false,"eventSelector":"6723d9f32d040ca8ddd4dabf6f03ad485e63fc3fd625ac1fa1c557de6719314f","name":"PoolRejected","nameLocation":"4845:12:104","parameters":{"id":71506,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71505,"indexed":false,"mutability":"mutable","name":"_strategy","nameLocation":"4866:9:104","nodeType":"VariableDeclaration","scope":71507,"src":"4858:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71504,"name":"address","nodeType":"ElementaryTypeName","src":"4858:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4857:19:104"}},{"id":71511,"nodeType":"ErrorDefinition","src":"5049:36:104","nodes":[],"errorSelector":"83d888a8","name":"AllowlistTooBig","nameLocation":"5055:15:104","parameters":{"id":71510,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71509,"mutability":"mutable","name":"size","nameLocation":"5079:4:104","nodeType":"VariableDeclaration","scope":71511,"src":"5071:12:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71508,"name":"uint256","nodeType":"ElementaryTypeName","src":"5071:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5070:14:104"}},{"id":71515,"nodeType":"ErrorDefinition","src":"5126:47:104","nodes":[],"errorSelector":"fb2aa73e","name":"OnlyEmptyCommunity","nameLocation":"5132:18:104","parameters":{"id":71514,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71513,"mutability":"mutable","name":"totalMembers","nameLocation":"5159:12:104","nodeType":"VariableDeclaration","scope":71515,"src":"5151:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71512,"name":"uint256","nodeType":"ElementaryTypeName","src":"5151:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5150:22:104"}},{"id":71519,"nodeType":"ErrorDefinition","src":"5178:38:104","nodes":[],"errorSelector":"fc4be72f","name":"UserNotInCouncil","nameLocation":"5184:16:104","parameters":{"id":71518,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71517,"mutability":"mutable","name":"_user","nameLocation":"5209:5:104","nodeType":"VariableDeclaration","scope":71519,"src":"5201:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71516,"name":"address","nodeType":"ElementaryTypeName","src":"5201:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5200:15:104"}},{"id":71521,"nodeType":"ErrorDefinition","src":"5221:26:104","nodes":[],"errorSelector":"6a5cfb6d","name":"UserNotInRegistry","nameLocation":"5227:17:104","parameters":{"id":71520,"nodeType":"ParameterList","parameters":[],"src":"5244:2:104"}},{"id":71523,"nodeType":"ErrorDefinition","src":"5252:29:104","nodes":[],"errorSelector":"d5b9bc96","name":"UserAlreadyActivated","nameLocation":"5258:20:104","parameters":{"id":71522,"nodeType":"ParameterList","parameters":[],"src":"5278:2:104"}},{"id":71525,"nodeType":"ErrorDefinition","src":"5286:31:104","nodes":[],"errorSelector":"c12369dc","name":"UserAlreadyDeactivated","nameLocation":"5292:22:104","parameters":{"id":71524,"nodeType":"ParameterList","parameters":[],"src":"5314:2:104"}},{"id":71527,"nodeType":"ErrorDefinition","src":"5322:23:104","nodes":[],"errorSelector":"968a4d2c","name":"StrategyExists","nameLocation":"5328:14:104","parameters":{"id":71526,"nodeType":"ParameterList","parameters":[],"src":"5342:2:104"}},{"id":71529,"nodeType":"ErrorDefinition","src":"5350:25:104","nodes":[],"errorSelector":"46c26e4b","name":"StrategyDisabled","nameLocation":"5356:16:104","parameters":{"id":71528,"nodeType":"ParameterList","parameters":[],"src":"5372:2:104"}},{"id":71531,"nodeType":"ErrorDefinition","src":"5380:26:104","nodes":[],"errorSelector":"ebcd0d6e","name":"SenderNotNewOwner","nameLocation":"5386:17:104","parameters":{"id":71530,"nodeType":"ParameterList","parameters":[],"src":"5403:2:104"}},{"id":71533,"nodeType":"ErrorDefinition","src":"5411:26:104","nodes":[],"errorSelector":"bbe79611","name":"SenderNotStrategy","nameLocation":"5417:17:104","parameters":{"id":71532,"nodeType":"ParameterList","parameters":[],"src":"5434:2:104"}},{"id":71535,"nodeType":"ErrorDefinition","src":"5442:26:104","nodes":[],"errorSelector":"c70d18aa","name":"ValueCannotBeZero","nameLocation":"5448:17:104","parameters":{"id":71534,"nodeType":"ParameterList","parameters":[],"src":"5465:2:104"}},{"id":71537,"nodeType":"ErrorDefinition","src":"5473:29:104","nodes":[],"errorSelector":"fe925f7d","name":"NewFeeGreaterThanMax","nameLocation":"5479:20:104","parameters":{"id":71536,"nodeType":"ParameterList","parameters":[],"src":"5499:2:104"}},{"id":71539,"nodeType":"ErrorDefinition","src":"5507:23:104","nodes":[],"errorSelector":"cb63dc72","name":"KickNotEnabled","nameLocation":"5513:14:104","parameters":{"id":71538,"nodeType":"ParameterList","parameters":[],"src":"5527:2:104"}},{"id":71541,"nodeType":"ErrorDefinition","src":"5535:26:104","nodes":[],"errorSelector":"d4d3290e","name":"PointsDeactivated","nameLocation":"5541:17:104","parameters":{"id":71540,"nodeType":"ParameterList","parameters":[],"src":"5558:2:104"}},{"id":71543,"nodeType":"ErrorDefinition","src":"5566:29:104","nodes":[],"errorSelector":"9c47d02e","name":"DecreaseUnderMinimum","nameLocation":"5572:20:104","parameters":{"id":71542,"nodeType":"ParameterList","parameters":[],"src":"5592:2:104"}},{"id":71549,"nodeType":"ErrorDefinition","src":"5600:80:104","nodes":[],"errorSelector":"8a11f318","name":"CantDecreaseMoreThanPower","nameLocation":"5606:25:104","parameters":{"id":71548,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71545,"mutability":"mutable","name":"_decreaseAmount","nameLocation":"5640:15:104","nodeType":"VariableDeclaration","scope":71549,"src":"5632:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71544,"name":"uint256","nodeType":"ElementaryTypeName","src":"5632:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":71547,"mutability":"mutable","name":"_currentPower","nameLocation":"5665:13:104","nodeType":"VariableDeclaration","scope":71549,"src":"5657:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71546,"name":"uint256","nodeType":"ElementaryTypeName","src":"5657:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5631:48:104"}},{"id":71552,"nodeType":"UsingForDirective","src":"5686:32:104","nodes":[],"global":false,"libraryName":{"id":71550,"name":"ERC165Checker","nameLocations":["5692:13:104"],"nodeType":"IdentifierPath","referencedDeclaration":57216,"src":"5692:13:104"},"typeName":{"id":71551,"name":"address","nodeType":"ElementaryTypeName","src":"5710:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":71556,"nodeType":"UsingForDirective","src":"5723:27:104","nodes":[],"global":false,"libraryName":{"id":71553,"name":"SafeERC20","nameLocations":["5729:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":56262,"src":"5729:9:104"},"typeName":{"id":71555,"nodeType":"UserDefinedTypeName","pathNode":{"id":71554,"name":"IERC20","nameLocations":["5743:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"5743:6:104"},"referencedDeclaration":55825,"src":"5743:6:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}}},{"id":71559,"nodeType":"UsingForDirective","src":"5755:24:104","nodes":[],"global":false,"libraryName":{"id":71557,"name":"Clone","nameLocations":["5761:5:104"],"nodeType":"IdentifierPath","referencedDeclaration":3002,"src":"5761:5:104"},"typeName":{"id":71558,"name":"address","nodeType":"ElementaryTypeName","src":"5771:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":71562,"nodeType":"VariableDeclaration","src":"5785:38:104","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"5808:7:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":71560,"name":"string","nodeType":"ElementaryTypeName","src":"5785:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":71561,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5818:5:104","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":71566,"nodeType":"VariableDeclaration","src":"5909:75:104","nodes":[],"constant":true,"documentation":{"id":71563,"nodeType":"StructuredDocumentation","src":"5829:75:104","text":"@notice The native address to represent native token eg: ETH in mainnet"},"functionSelector":"a0cf0aea","mutability":"constant","name":"NATIVE","nameLocation":"5933:6:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71564,"name":"address","nodeType":"ElementaryTypeName","src":"5909:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":{"hexValue":"307845656565654565656545654565654565456545656545454565656565456565656565656545456545","id":71565,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5942:42:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"value":"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE"},"visibility":"public"},{"id":71572,"nodeType":"VariableDeclaration","src":"6074:49:104","nodes":[],"constant":true,"documentation":{"id":71567,"nodeType":"StructuredDocumentation","src":"5990:79:104","text":"@notice The precision scale used in the contract to avoid loss of precision"},"functionSelector":"d7050f07","mutability":"constant","name":"PRECISION_SCALE","nameLocation":"6098:15:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71568,"name":"uint256","nodeType":"ElementaryTypeName","src":"6074:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"id":71571,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":71569,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6116:2:104","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"**","rightExpression":{"hexValue":"34","id":71570,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6122:1:104","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"6116:7:104","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"}},"visibility":"public"},{"id":71578,"nodeType":"VariableDeclaration","src":"6198:54:104","nodes":[],"constant":true,"documentation":{"id":71573,"nodeType":"StructuredDocumentation","src":"6129:64:104","text":"@notice The maximum fee that can be charged to the community"},"functionSelector":"bc063e1a","mutability":"constant","name":"MAX_FEE","nameLocation":"6222:7:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71574,"name":"uint256","nodeType":"ElementaryTypeName","src":"6198:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71577,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"3130","id":71575,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6232:2:104","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":71576,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71572,"src":"6237:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"6232:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":71581,"nodeType":"VariableDeclaration","src":"6325:34:104","nodes":[],"constant":false,"documentation":{"id":71579,"nodeType":"StructuredDocumentation","src":"6258:62:104","text":"@notice The amount of tokens required to register a member"},"functionSelector":"78a0b8a9","mutability":"mutable","name":"registerStakeAmount","nameLocation":"6340:19:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71580,"name":"uint256","nodeType":"ElementaryTypeName","src":"6325:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":71584,"nodeType":"VariableDeclaration","src":"6436:27:104","nodes":[],"constant":false,"documentation":{"id":71582,"nodeType":"StructuredDocumentation","src":"6365:66:104","text":"@notice The fee charged to the community for each registration"},"functionSelector":"8961be6b","mutability":"mutable","name":"communityFee","nameLocation":"6451:12:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71583,"name":"uint256","nodeType":"ElementaryTypeName","src":"6436:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":71587,"nodeType":"VariableDeclaration","src":"6530:25:104","nodes":[],"constant":false,"documentation":{"id":71585,"nodeType":"StructuredDocumentation","src":"6469:56:104","text":"@notice The nonce used to create new strategy clones"},"functionSelector":"33960459","mutability":"mutable","name":"cloneNonce","nameLocation":"6545:10:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71586,"name":"uint256","nodeType":"ElementaryTypeName","src":"6530:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":71590,"nodeType":"VariableDeclaration","src":"6629:24:104","nodes":[],"constant":false,"documentation":{"id":71588,"nodeType":"StructuredDocumentation","src":"6561:63:104","text":"@notice The profileId of the community in the Allo Registry"},"functionSelector":"08386eba","mutability":"mutable","name":"profileId","nameLocation":"6644:9:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":71589,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6629:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":71593,"nodeType":"VariableDeclaration","src":"6710:25:104","nodes":[],"constant":false,"documentation":{"id":71591,"nodeType":"StructuredDocumentation","src":"6659:46:104","text":"@notice Enable or disable the kick feature"},"functionSelector":"1f787d28","mutability":"mutable","name":"isKickEnabled","nameLocation":"6722:13:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":71592,"name":"bool","nodeType":"ElementaryTypeName","src":"6710:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"public"},{"id":71596,"nodeType":"VariableDeclaration","src":"6802:26:104","nodes":[],"constant":false,"documentation":{"id":71594,"nodeType":"StructuredDocumentation","src":"6742:55:104","text":"@notice The address that receives the community fee"},"functionSelector":"b3f00674","mutability":"mutable","name":"feeReceiver","nameLocation":"6817:11:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71595,"name":"address","nodeType":"ElementaryTypeName","src":"6802:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":71599,"nodeType":"VariableDeclaration","src":"6886:30:104","nodes":[],"constant":false,"documentation":{"id":71597,"nodeType":"StructuredDocumentation","src":"6834:47:104","text":"@notice The address of the registry factory"},"functionSelector":"f86c5f89","mutability":"mutable","name":"registryFactory","nameLocation":"6901:15:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71598,"name":"address","nodeType":"ElementaryTypeName","src":"6886:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":71602,"nodeType":"VariableDeclaration","src":"6983:38:104","nodes":[],"constant":false,"documentation":{"id":71600,"nodeType":"StructuredDocumentation","src":"6922:56:104","text":"@notice The address of the collateral vault template"},"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"6998:23:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71601,"name":"address","nodeType":"ElementaryTypeName","src":"6983:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":71605,"nodeType":"VariableDeclaration","src":"7080:31:104","nodes":[],"constant":false,"documentation":{"id":71603,"nodeType":"StructuredDocumentation","src":"7027:48:104","text":"@notice The address of the strategy template"},"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"7095:16:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71604,"name":"address","nodeType":"ElementaryTypeName","src":"7080:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":71608,"nodeType":"VariableDeclaration","src":"7179:41:104","nodes":[],"constant":false,"documentation":{"id":71606,"nodeType":"StructuredDocumentation","src":"7117:57:104","text":"@notice The address of the pending council safe owner"},"functionSelector":"68decabb","mutability":"mutable","name":"pendingCouncilSafe","nameLocation":"7202:18:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":71607,"name":"address","nodeType":"ElementaryTypeName","src":"7179:15:104","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"public"},{"id":71612,"nodeType":"VariableDeclaration","src":"7270:25:104","nodes":[],"constant":false,"documentation":{"id":71609,"nodeType":"StructuredDocumentation","src":"7227:38:104","text":"@notice The Registry Allo contract"},"functionSelector":"7b103999","mutability":"mutable","name":"registry","nameLocation":"7287:8:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"},"typeName":{"id":71611,"nodeType":"UserDefinedTypeName","pathNode":{"id":71610,"name":"IRegistry","nameLocations":["7270:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":2802,"src":"7270:9:104"},"referencedDeclaration":2802,"src":"7270:9:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"visibility":"public"},{"id":71616,"nodeType":"VariableDeclaration","src":"7358:25:104","nodes":[],"constant":false,"documentation":{"id":71613,"nodeType":"StructuredDocumentation","src":"7301:52:104","text":"@notice The token used to stake in the community"},"functionSelector":"db61d65c","mutability":"mutable","name":"gardenToken","nameLocation":"7372:11:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":71615,"nodeType":"UserDefinedTypeName","pathNode":{"id":71614,"name":"IERC20","nameLocations":["7358:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"7358:6:104"},"referencedDeclaration":55825,"src":"7358:6:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"public"},{"id":71620,"nodeType":"VariableDeclaration","src":"7439:24:104","nodes":[],"constant":false,"documentation":{"id":71617,"nodeType":"StructuredDocumentation","src":"7389:45:104","text":"@notice The council safe contract address"},"functionSelector":"6c53db9a","mutability":"mutable","name":"councilSafe","nameLocation":"7452:11:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"},"typeName":{"id":71619,"nodeType":"UserDefinedTypeName","pathNode":{"id":71618,"name":"ISafe","nameLocations":["7439:5:104"],"nodeType":"IdentifierPath","referencedDeclaration":77075,"src":"7439:5:104"},"referencedDeclaration":77075,"src":"7439:5:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}},"visibility":"public"},{"id":71624,"nodeType":"VariableDeclaration","src":"7511:17:104","nodes":[],"constant":false,"documentation":{"id":71621,"nodeType":"StructuredDocumentation","src":"7469:37:104","text":"@notice The Allo contract address"},"functionSelector":"d6d8428d","mutability":"mutable","name":"allo","nameLocation":"7524:4:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76808","typeString":"contract FAllo"},"typeName":{"id":71623,"nodeType":"UserDefinedTypeName","pathNode":{"id":71622,"name":"FAllo","nameLocations":["7511:5:104"],"nodeType":"IdentifierPath","referencedDeclaration":76808,"src":"7511:5:104"},"referencedDeclaration":76808,"src":"7511:5:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76808","typeString":"contract FAllo"}},"visibility":"public"},{"id":71627,"nodeType":"VariableDeclaration","src":"7570:27:104","nodes":[],"constant":false,"documentation":{"id":71625,"nodeType":"StructuredDocumentation","src":"7535:30:104","text":"@notice The community name"},"functionSelector":"c6d572ae","mutability":"mutable","name":"communityName","nameLocation":"7584:13:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":71626,"name":"string","nodeType":"ElementaryTypeName","src":"7570:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"public"},{"id":71630,"nodeType":"VariableDeclaration","src":"7655:30:104","nodes":[],"constant":false,"documentation":{"id":71628,"nodeType":"StructuredDocumentation","src":"7603:47:104","text":"@notice The covenant IPFS hash of community"},"functionSelector":"b64e39af","mutability":"mutable","name":"covenantIpfsHash","nameLocation":"7669:16:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string"},"typeName":{"id":71629,"name":"string","nodeType":"ElementaryTypeName","src":"7655:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"public"},{"id":71635,"nodeType":"VariableDeclaration","src":"7801:68:104","nodes":[],"constant":false,"documentation":{"id":71631,"nodeType":"StructuredDocumentation","src":"7749:47:104","text":"@notice List of enabled/disabled strategies"},"functionSelector":"3a871fe1","mutability":"mutable","name":"enabledStrategies","nameLocation":"7852:17:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"typeName":{"id":71634,"keyName":"strategy","keyNameLocation":"7817:8:104","keyType":{"id":71632,"name":"address","nodeType":"ElementaryTypeName","src":"7809:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7801:43:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"isEnabled","valueNameLocation":"7834:9:104","valueType":{"id":71633,"name":"bool","nodeType":"ElementaryTypeName","src":"7829:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}},"visibility":"public"},{"id":71642,"nodeType":"VariableDeclaration","src":"7937:98:104","nodes":[],"constant":false,"documentation":{"id":71636,"nodeType":"StructuredDocumentation","src":"7875:57:104","text":"@notice Power points for each member in each strategy"},"functionSelector":"65e3864c","mutability":"mutable","name":"memberPowerInStrategy","nameLocation":"8014:21:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"},"typeName":{"id":71641,"keyName":"strategy","keyNameLocation":"7953:8:104","keyType":{"id":71637,"name":"address","nodeType":"ElementaryTypeName","src":"7945:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7937: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":71640,"keyName":"member","keyNameLocation":"7981:6:104","keyType":{"id":71638,"name":"address","nodeType":"ElementaryTypeName","src":"7973:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"7965:40:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"},"valueName":"power","valueNameLocation":"7999:5:104","valueType":{"id":71639,"name":"uint256","nodeType":"ElementaryTypeName","src":"7991:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}}},"visibility":"public"},{"id":71648,"nodeType":"VariableDeclaration","src":"8135:60:104","nodes":[],"constant":false,"documentation":{"id":71643,"nodeType":"StructuredDocumentation","src":"8041:89:104","text":"@notice Member information as the staked amount and if is registered in the community"},"functionSelector":"88cfe684","mutability":"mutable","name":"addressToMemberInfo","nameLocation":"8176:19:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member)"},"typeName":{"id":71647,"keyName":"member","keyNameLocation":"8151:6:104","keyType":{"id":71644,"name":"address","nodeType":"ElementaryTypeName","src":"8143:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"8135:33:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":71646,"nodeType":"UserDefinedTypeName","pathNode":{"id":71645,"name":"Member","nameLocations":["8161:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":71359,"src":"8161:6:104"},"referencedDeclaration":71359,"src":"8161:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage_ptr","typeString":"struct Member"}}},"visibility":"public"},{"id":71654,"nodeType":"VariableDeclaration","src":"8266:82:104","nodes":[],"constant":false,"documentation":{"id":71649,"nodeType":"StructuredDocumentation","src":"8201:60:104","text":"@notice List of strategies for each member are activated"},"functionSelector":"2b38c69c","mutability":"mutable","name":"strategiesByMember","nameLocation":"8330:18:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[])"},"typeName":{"id":71653,"keyName":"member","keyNameLocation":"8282:6:104","keyType":{"id":71650,"name":"address","nodeType":"ElementaryTypeName","src":"8274:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"8266:56:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[])"},"valueName":"strategiesAddresses","valueNameLocation":"8302:19:104","valueType":{"baseType":{"id":71651,"name":"address","nodeType":"ElementaryTypeName","src":"8292:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71652,"nodeType":"ArrayTypeName","src":"8292:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"visibility":"public"},{"id":71661,"nodeType":"VariableDeclaration","src":"8426:107:104","nodes":[],"constant":false,"documentation":{"id":71655,"nodeType":"StructuredDocumentation","src":"8354:67:104","text":"@notice Mapping to check if a member is activated in a strategy"},"functionSelector":"477a5cc0","mutability":"mutable","name":"memberActivatedInStrategies","nameLocation":"8506:27:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"},"typeName":{"id":71660,"keyName":"member","keyNameLocation":"8442:6:104","keyType":{"id":71656,"name":"address","nodeType":"ElementaryTypeName","src":"8434:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"8426: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":71659,"keyName":"strategy","keyNameLocation":"8468:8:104","keyType":{"id":71657,"name":"address","nodeType":"ElementaryTypeName","src":"8460:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"8452:45:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"},"valueName":"isActivated","valueNameLocation":"8485:11:104","valueType":{"id":71658,"name":"bool","nodeType":"ElementaryTypeName","src":"8480:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}}},"visibility":"public"},{"id":71665,"nodeType":"VariableDeclaration","src":"8626:24:104","nodes":[],"constant":false,"documentation":{"id":71662,"nodeType":"StructuredDocumentation","src":"8540:81:104","text":"@notice List of initial members to be added as pool managers in the Allo Pool"},"mutability":"mutable","name":"initialMembers","nameLocation":"8636:14:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[]"},"typeName":{"baseType":{"id":71663,"name":"address","nodeType":"ElementaryTypeName","src":"8626:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71664,"nodeType":"ArrayTypeName","src":"8626:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"},{"id":71668,"nodeType":"VariableDeclaration","src":"8718:27:104","nodes":[],"constant":false,"documentation":{"id":71666,"nodeType":"StructuredDocumentation","src":"8657:56:104","text":"@notice The total number of members in the community"},"functionSelector":"76e92559","mutability":"mutable","name":"totalMembers","nameLocation":"8733:12:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71667,"name":"uint256","nodeType":"ElementaryTypeName","src":"8718:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":71674,"nodeType":"VariableDeclaration","src":"8962:68:104","nodes":[],"constant":true,"documentation":{"id":71669,"nodeType":"StructuredDocumentation","src":"8917:40:104","text":"@notice Role to council safe members"},"functionSelector":"733a2d1f","mutability":"constant","name":"COUNCIL_MEMBER","nameLocation":"8986:14:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":71670,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8962:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"arguments":[{"hexValue":"434f554e43494c5f4d454d424552","id":71672,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"9013: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":71671,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"9003:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":71673,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9003:27:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"public"},{"id":71691,"nodeType":"FunctionDefinition","src":"9203:167:104","nodes":[],"body":{"id":71690,"nodeType":"Block","src":"9252:118:104","nodes":[],"statements":[{"condition":{"id":71682,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9266:36:104","subExpression":{"arguments":[{"id":71678,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71674,"src":"9275:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":71679,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9291:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71680,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9295:6:104","memberName":"sender","nodeType":"MemberAccess","src":"9291:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":71677,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51753,"src":"9267:7:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":71681,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9267:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71689,"nodeType":"IfStatement","src":"9262:102:104","trueBody":{"id":71688,"nodeType":"Block","src":"9304:60:104","statements":[{"errorCall":{"arguments":[{"expression":{"id":71684,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9342:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71685,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9346:6:104","memberName":"sender","nodeType":"MemberAccess","src":"9342:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71683,"name":"UserNotInCouncil","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71519,"src":"9325:16:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":71686,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9325:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71687,"nodeType":"RevertStatement","src":"9318:35:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyCouncilSafe","nameLocation":"9212:15:104","parameters":{"id":71675,"nodeType":"ParameterList","parameters":[],"src":"9227:2:104"},"returnParameters":{"id":71676,"nodeType":"ParameterList","parameters":[],"src":"9252:0:104"},"scope":73556,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":71705,"nodeType":"FunctionDefinition","src":"9376:152:104","nodes":[],"body":{"id":71704,"nodeType":"Block","src":"9434:94:104","nodes":[],"statements":[{"condition":{"id":71698,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9448:21:104","subExpression":{"arguments":[{"expression":{"id":71695,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"9458:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71696,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9462:6:104","memberName":"sender","nodeType":"MemberAccess","src":"9458:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71694,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72999,"src":"9449:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":71697,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9449:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71703,"nodeType":"IfStatement","src":"9444:78:104","trueBody":{"id":71702,"nodeType":"Block","src":"9471:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71699,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71521,"src":"9492:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71700,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9492:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71701,"nodeType":"RevertStatement","src":"9485:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryMemberSender","nameLocation":"9385:24:104","parameters":{"id":71692,"nodeType":"ParameterList","parameters":[],"src":"9409:2:104"},"returnParameters":{"id":71693,"nodeType":"ParameterList","parameters":[],"src":"9434:0:104"},"scope":73556,"stateMutability":"view","virtual":true,"visibility":"internal"},{"id":71720,"nodeType":"FunctionDefinition","src":"9534:157:104","nodes":[],"body":{"id":71719,"nodeType":"Block","src":"9600:91:104","nodes":[],"statements":[{"condition":{"id":71713,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9614:18:104","subExpression":{"arguments":[{"id":71711,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71707,"src":"9624:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71710,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72999,"src":"9615:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":71712,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9615:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71718,"nodeType":"IfStatement","src":"9610:75:104","trueBody":{"id":71717,"nodeType":"Block","src":"9634:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71714,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71521,"src":"9655:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71715,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9655:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71716,"nodeType":"RevertStatement","src":"9648:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyRegistryMemberAddress","nameLocation":"9543:25:104","parameters":{"id":71708,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71707,"mutability":"mutable","name":"_sender","nameLocation":"9577:7:104","nodeType":"VariableDeclaration","scope":71720,"src":"9569:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71706,"name":"address","nodeType":"ElementaryTypeName","src":"9569:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9568:17:104"},"returnParameters":{"id":71709,"nodeType":"ParameterList","parameters":[],"src":"9600:0:104"},"scope":73556,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":71735,"nodeType":"FunctionDefinition","src":"9697:161:104","nodes":[],"body":{"id":71734,"nodeType":"Block","src":"9757:101:104","nodes":[],"statements":[{"condition":{"id":71728,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"9771:29:104","subExpression":{"baseExpression":{"id":71725,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71635,"src":"9772:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71727,"indexExpression":{"id":71726,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71722,"src":"9790:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"9772:28:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71733,"nodeType":"IfStatement","src":"9767:85:104","trueBody":{"id":71732,"nodeType":"Block","src":"9802:50:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71729,"name":"StrategyDisabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71529,"src":"9823:16:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71730,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9823:18:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71731,"nodeType":"RevertStatement","src":"9816:25:104"}]}}]},"functionSelector":"411481e6","implemented":true,"kind":"function","modifiers":[],"name":"onlyStrategyEnabled","nameLocation":"9706:19:104","parameters":{"id":71723,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71722,"mutability":"mutable","name":"_strategy","nameLocation":"9734:9:104","nodeType":"VariableDeclaration","scope":71735,"src":"9726:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71721,"name":"address","nodeType":"ElementaryTypeName","src":"9726:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"9725:19:104"},"returnParameters":{"id":71724,"nodeType":"ParameterList","parameters":[],"src":"9757:0:104"},"scope":73556,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":71748,"nodeType":"FunctionDefinition","src":"9864:146:104","nodes":[],"body":{"id":71747,"nodeType":"Block","src":"9908:102:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71740,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71738,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71668,"src":"9922:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":71739,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9937:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"9922:16:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71746,"nodeType":"IfStatement","src":"9918:86:104","trueBody":{"id":71745,"nodeType":"Block","src":"9940:64:104","statements":[{"errorCall":{"arguments":[{"id":71742,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71668,"src":"9980:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71741,"name":"OnlyEmptyCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71515,"src":"9961:18:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":71743,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9961:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71744,"nodeType":"RevertStatement","src":"9954:39:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyEmptyCommunity","nameLocation":"9873:18:104","parameters":{"id":71736,"nodeType":"ParameterList","parameters":[],"src":"9891:2:104"},"returnParameters":{"id":71737,"nodeType":"ParameterList","parameters":[],"src":"9908:0:104"},"scope":73556,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":71764,"nodeType":"FunctionDefinition","src":"10016:172:104","nodes":[],"body":{"id":71763,"nodeType":"Block","src":"10095:93:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":71757,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71755,"name":"_sender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71750,"src":"10109:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":71756,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71752,"src":"10120:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10109:20:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71762,"nodeType":"IfStatement","src":"10105:77:104","trueBody":{"id":71761,"nodeType":"Block","src":"10131:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71758,"name":"SenderNotStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71533,"src":"10152:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71759,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10152:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71760,"nodeType":"RevertStatement","src":"10145:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyStrategyAddress","nameLocation":"10025:19:104","parameters":{"id":71753,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71750,"mutability":"mutable","name":"_sender","nameLocation":"10053:7:104","nodeType":"VariableDeclaration","scope":71764,"src":"10045:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71749,"name":"address","nodeType":"ElementaryTypeName","src":"10045:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71752,"mutability":"mutable","name":"_strategy","nameLocation":"10070:9:104","nodeType":"VariableDeclaration","scope":71764,"src":"10062:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71751,"name":"address","nodeType":"ElementaryTypeName","src":"10062:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10044:36:104"},"returnParameters":{"id":71754,"nodeType":"ParameterList","parameters":[],"src":"10095:0:104"},"scope":73556,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":71782,"nodeType":"FunctionDefinition","src":"10194:190:104","nodes":[],"body":{"id":71781,"nodeType":"Block","src":"10260:124:104","nodes":[],"statements":[{"condition":{"id":71775,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"10274:51:104","subExpression":{"baseExpression":{"baseExpression":{"id":71769,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71661,"src":"10275:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":71772,"indexExpression":{"expression":{"id":71770,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"10303:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71771,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10307:6:104","memberName":"sender","nodeType":"MemberAccess","src":"10303:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10275:39:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":71774,"indexExpression":{"id":71773,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71766,"src":"10315:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"10275:50:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71780,"nodeType":"IfStatement","src":"10270:108:104","trueBody":{"id":71779,"nodeType":"Block","src":"10327:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71776,"name":"PointsDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71541,"src":"10348:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71777,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10348:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71778,"nodeType":"RevertStatement","src":"10341:26:104"}]}}]},"implemented":true,"kind":"function","modifiers":[],"name":"onlyActivatedInStrategy","nameLocation":"10203:23:104","parameters":{"id":71767,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71766,"mutability":"mutable","name":"_strategy","nameLocation":"10235:9:104","nodeType":"VariableDeclaration","scope":71782,"src":"10227:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71765,"name":"address","nodeType":"ElementaryTypeName","src":"10227:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10226:19:104"},"returnParameters":{"id":71768,"nodeType":"ParameterList","parameters":[],"src":"10260:0:104"},"scope":73556,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":71794,"nodeType":"FunctionDefinition","src":"10538:110:104","nodes":[],"body":{"id":71793,"nodeType":"Block","src":"10604:44:104","nodes":[],"statements":[{"expression":{"id":71791,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71789,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71605,"src":"10614:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71790,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71784,"src":"10633:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10614:27:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71792,"nodeType":"ExpressionStatement","src":"10614:27:104"}]},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":71787,"kind":"modifierInvocation","modifierName":{"id":71786,"name":"onlyOwner","nameLocations":["10594:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"10594:9:104"},"nodeType":"ModifierInvocation","src":"10594:9:104"}],"name":"setStrategyTemplate","nameLocation":"10547:19:104","parameters":{"id":71785,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71784,"mutability":"mutable","name":"template","nameLocation":"10575:8:104","nodeType":"VariableDeclaration","scope":71794,"src":"10567:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71783,"name":"address","nodeType":"ElementaryTypeName","src":"10567:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10566:18:104"},"returnParameters":{"id":71788,"nodeType":"ParameterList","parameters":[],"src":"10604:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":71806,"nodeType":"FunctionDefinition","src":"10654:124:104","nodes":[],"body":{"id":71805,"nodeType":"Block","src":"10727:51:104","nodes":[],"statements":[{"expression":{"id":71803,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71801,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71602,"src":"10737:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":71802,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71796,"src":"10763:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"10737:34:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71804,"nodeType":"ExpressionStatement","src":"10737:34:104"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":71799,"kind":"modifierInvocation","modifierName":{"id":71798,"name":"onlyOwner","nameLocations":["10717:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"10717:9:104"},"nodeType":"ModifierInvocation","src":"10717:9:104"}],"name":"setCollateralVaultTemplate","nameLocation":"10663:26:104","parameters":{"id":71797,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71796,"mutability":"mutable","name":"template","nameLocation":"10698:8:104","nodeType":"VariableDeclaration","scope":71806,"src":"10690:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71795,"name":"address","nodeType":"ElementaryTypeName","src":"10690:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10689:18:104"},"returnParameters":{"id":71800,"nodeType":"ParameterList","parameters":[],"src":"10727:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":72051,"nodeType":"FunctionDefinition","src":"10928:2544:104","nodes":[],"body":{"id":72050,"nodeType":"Block","src":"11135:2337:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":71823,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71815,"src":"11162:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":71820,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"11145:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryCommunityV0_0_$73556_$","typeString":"type(contract super RegistryCommunityV0_0)"}},"id":71822,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11151:10:104","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":71108,"src":"11145:16:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":71824,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11145:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71825,"nodeType":"ExpressionStatement","src":"11145:24:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71826,"name":"__ReentrancyGuard_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52473,"src":"11179:22:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":71827,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11179:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71828,"nodeType":"ExpressionStatement","src":"11179:24:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":71829,"name":"__AccessControl_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51706,"src":"11213:20:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":71830,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11213:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71831,"nodeType":"ExpressionStatement","src":"11213:22:104"},{"expression":{"arguments":[{"id":71833,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71674,"src":"11260:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":71834,"name":"DEFAULT_ADMIN_ROLE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51689,"src":"11276:18:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":71832,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51925,"src":"11246:13:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":71835,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11246:49:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71836,"nodeType":"ExpressionStatement","src":"11246:49:104"},{"expression":{"id":71842,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71837,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71624,"src":"11634:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76808","typeString":"contract FAllo"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":71839,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"11647:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71840,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11654:5:104","memberName":"_allo","nodeType":"MemberAccess","referencedDeclaration":71327,"src":"11647:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71838,"name":"FAllo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76808,"src":"11641:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_FAllo_$76808_$","typeString":"type(contract FAllo)"}},"id":71841,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11641:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76808","typeString":"contract FAllo"}},"src":"11634:26:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76808","typeString":"contract FAllo"}},"id":71843,"nodeType":"ExpressionStatement","src":"11634:26:104"},{"expression":{"id":71847,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71844,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71616,"src":"11670:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71845,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"11684:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71846,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11691:12:104","memberName":"_gardenToken","nodeType":"MemberAccess","referencedDeclaration":71330,"src":"11684:19:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"src":"11670:33:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":71848,"nodeType":"ExpressionStatement","src":"11670:33:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71852,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71849,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"11717:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71850,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11724:20:104","memberName":"_registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":71332,"src":"11717:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":71851,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11748:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"11717:32:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71857,"nodeType":"IfStatement","src":"11713:89:104","trueBody":{"id":71856,"nodeType":"Block","src":"11751:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":71853,"name":"ValueCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71535,"src":"11772:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":71854,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11772:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71855,"nodeType":"RevertStatement","src":"11765:26:104"}]}},{"expression":{"id":71861,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71858,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"11811:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71859,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"11833:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71860,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11840:20:104","memberName":"_registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":71332,"src":"11833:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11811:49:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71862,"nodeType":"ExpressionStatement","src":"11811:49:104"},{"expression":{"id":71866,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71863,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71584,"src":"11870:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71864,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"11885:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71865,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11892:13:104","memberName":"_communityFee","nodeType":"MemberAccess","referencedDeclaration":71334,"src":"11885:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"11870:35:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71867,"nodeType":"ExpressionStatement","src":"11870:35:104"},{"expression":{"id":71871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71868,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71593,"src":"11915:13:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71869,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"11931:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71870,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11938:14:104","memberName":"_isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":71349,"src":"11931:21:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"11915:37:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71872,"nodeType":"ExpressionStatement","src":"11915:37:104"},{"expression":{"id":71876,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71873,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71627,"src":"11962:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71874,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"11978:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71875,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"11985:14:104","memberName":"_communityName","nodeType":"MemberAccess","referencedDeclaration":71347,"src":"11978:21:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"11962:37:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":71877,"nodeType":"ExpressionStatement","src":"11962:37:104"},{"expression":{"id":71881,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71878,"name":"covenantIpfsHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71630,"src":"12009:16:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71879,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"12028:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71880,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12035:16:104","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":71351,"src":"12028:23:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"12009:42:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":71882,"nodeType":"ExpressionStatement","src":"12009:42:104"},{"expression":{"id":71886,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71883,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71599,"src":"12062:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71884,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"12080:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71885,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12087:16:104","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":71338,"src":"12080:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12062:41:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71887,"nodeType":"ExpressionStatement","src":"12062:41:104"},{"expression":{"id":71891,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71888,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71596,"src":"12113:11:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71889,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"12127:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71890,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12134:12:104","memberName":"_feeReceiver","nodeType":"MemberAccess","referencedDeclaration":71340,"src":"12127:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12113:33:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71892,"nodeType":"ExpressionStatement","src":"12113:33:104"},{"expression":{"id":71898,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71893,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71620,"src":"12156:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":71895,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"12176:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71896,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12183:12:104","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":71345,"src":"12176:19:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":71894,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77075,"src":"12170:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISafe_$77075_$","typeString":"type(contract ISafe)"}},"id":71897,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12170:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}},"src":"12156:40:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}},"id":71899,"nodeType":"ExpressionStatement","src":"12156:40:104"},{"expression":{"id":71902,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71900,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71668,"src":"12206:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":71901,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12221:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"12206:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71903,"nodeType":"ExpressionStatement","src":"12206:16:104"},{"expression":{"arguments":[{"id":71905,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71674,"src":"12244:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"expression":{"id":71906,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"12260:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":71907,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"12267:12:104","memberName":"_councilSafe","nodeType":"MemberAccess","referencedDeclaration":71345,"src":"12260: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":71904,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51957,"src":"12233:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":71908,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12233:47:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":71909,"nodeType":"ExpressionStatement","src":"12233:47:104"},{"expression":{"id":71916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71910,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71612,"src":"12291:8:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71912,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71624,"src":"12312:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76808","typeString":"contract FAllo"}},"id":71913,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12317:11:104","memberName":"getRegistry","nodeType":"MemberAccess","referencedDeclaration":76799,"src":"12312:16:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_address_$","typeString":"function () view external returns (address)"}},"id":71914,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12312:18:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":71911,"name":"IRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2802,"src":"12302:9:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistry_$2802_$","typeString":"type(contract IRegistry)"}},"id":71915,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12302:29:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"src":"12291:40:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":71917,"nodeType":"ExpressionStatement","src":"12291:40:104"},{"assignments":[71922],"declarations":[{"constant":false,"id":71922,"mutability":"mutable","name":"pool_initialMembers","nameLocation":"12359:19:104","nodeType":"VariableDeclaration","scope":72050,"src":"12342:36:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71920,"name":"address","nodeType":"ElementaryTypeName","src":"12342:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71921,"nodeType":"ArrayTypeName","src":"12342:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71923,"nodeType":"VariableDeclarationStatement","src":"12342:36:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71931,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"arguments":[{"id":71926,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71620,"src":"12438:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":71925,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12430:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71924,"name":"address","nodeType":"ElementaryTypeName","src":"12430:7:104","typeDescriptions":{}}},"id":71927,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12430:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71928,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12451:4:104","memberName":"code","nodeType":"MemberAccess","src":"12430:25:104","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":71929,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12456:6:104","memberName":"length","nodeType":"MemberAccess","src":"12430:32:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":71930,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12466:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"12430:37:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":71989,"nodeType":"Block","src":"12587:266:104","statements":[{"assignments":[71952],"declarations":[{"constant":false,"id":71952,"mutability":"mutable","name":"owners","nameLocation":"12618:6:104","nodeType":"VariableDeclaration","scope":71989,"src":"12601:23:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":71950,"name":"address","nodeType":"ElementaryTypeName","src":"12601:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71951,"nodeType":"ArrayTypeName","src":"12601:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":71956,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":71953,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71620,"src":"12627:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}},"id":71954,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12639:9:104","memberName":"getOwners","nodeType":"MemberAccess","referencedDeclaration":76990,"src":"12627:21:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_array$_t_address_$dyn_memory_ptr_$","typeString":"function () view external returns (address[] memory)"}},"id":71955,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12627:23:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"12601:49:104"},{"expression":{"id":71966,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71957,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71922,"src":"12664: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":71964,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71961,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71952,"src":"12700:6:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71962,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12707:6:104","memberName":"length","nodeType":"MemberAccess","src":"12700:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"32","id":71963,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12716:1:104","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"12700:17:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":71960,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12686: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":71958,"name":"address","nodeType":"ElementaryTypeName","src":"12690:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71959,"nodeType":"ArrayTypeName","src":"12690:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":71965,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12686:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"12664:54:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71967,"nodeType":"ExpressionStatement","src":"12664:54:104"},{"body":{"id":71987,"nodeType":"Block","src":"12776:67:104","statements":[{"expression":{"id":71985,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71979,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71922,"src":"12794:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71981,"indexExpression":{"id":71980,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71969,"src":"12814:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12794:22:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":71982,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71952,"src":"12819:6:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71984,"indexExpression":{"id":71983,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71969,"src":"12826:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"12819:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12794:34:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71986,"nodeType":"ExpressionStatement","src":"12794:34:104"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71975,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":71972,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71969,"src":"12752:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":71973,"name":"owners","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71952,"src":"12756:6:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71974,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12763:6:104","memberName":"length","nodeType":"MemberAccess","src":"12756:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"12752:17:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":71988,"initializationExpression":{"assignments":[71969],"declarations":[{"constant":false,"id":71969,"mutability":"mutable","name":"i","nameLocation":"12745:1:104","nodeType":"VariableDeclaration","scope":71988,"src":"12737:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":71968,"name":"uint256","nodeType":"ElementaryTypeName","src":"12737:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":71971,"initialValue":{"hexValue":"30","id":71970,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12749:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"12737:13:104"},"loopExpression":{"expression":{"id":71977,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"12771:3:104","subExpression":{"id":71976,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71969,"src":"12771:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":71978,"nodeType":"ExpressionStatement","src":"12771:3:104"},"nodeType":"ForStatement","src":"12732:111:104"}]},"id":71990,"nodeType":"IfStatement","src":"12426:427:104","trueBody":{"id":71947,"nodeType":"Block","src":"12469:112:104","statements":[{"expression":{"id":71938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":71932,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71922,"src":"12483:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"hexValue":"33","id":71936,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12519: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":71935,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"12505: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":71933,"name":"address","nodeType":"ElementaryTypeName","src":"12509:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71934,"nodeType":"ArrayTypeName","src":"12509:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}}},"id":71937,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12505:16:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"12483:38:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71939,"nodeType":"ExpressionStatement","src":"12483:38:104"},{"expression":{"id":71945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71940,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71922,"src":"12535:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71942,"indexExpression":{"hexValue":"30","id":71941,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12555: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":"12535:22:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":71943,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"12560:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":71944,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12564:6:104","memberName":"sender","nodeType":"MemberAccess","src":"12560:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12535:35:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":71946,"nodeType":"ExpressionStatement","src":"12535:35:104"}]}},{"expression":{"id":72001,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":71991,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71922,"src":"12863:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71996,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":71995,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":71992,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71922,"src":"12883:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":71993,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12903:6:104","memberName":"length","nodeType":"MemberAccess","src":"12883:26:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":71994,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12912:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"12883:30:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12863:51:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":71999,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71620,"src":"12925:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":71998,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"12917:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":71997,"name":"address","nodeType":"ElementaryTypeName","src":"12917:7:104","typeDescriptions":{}}},"id":72000,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12917:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12863:74:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72002,"nodeType":"ExpressionStatement","src":"12863:74:104"},{"expression":{"id":72013,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":72003,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71922,"src":"12947:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72008,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72007,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":72004,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71922,"src":"12967:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72005,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12987:6:104","memberName":"length","nodeType":"MemberAccess","src":"12967:26:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"32","id":72006,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12996:1:104","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"12967:30:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"12947:51:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72011,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13009:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":72010,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13001:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72009,"name":"address","nodeType":"ElementaryTypeName","src":"13001:7:104","typeDescriptions":{}}},"id":72012,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13001:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"12947:67:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72014,"nodeType":"ExpressionStatement","src":"12947:67:104"},{"expression":{"id":72029,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72015,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71590,"src":"13102:9:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"id":72018,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"13149:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72019,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"13156:6:104","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":71336,"src":"13149:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72020,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71627,"src":"13164:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},{"expression":{"id":72021,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"13179:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72022,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"13186:9:104","memberName":"_metadata","nodeType":"MemberAccess","referencedDeclaration":71343,"src":"13179:16:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"arguments":[{"id":72025,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"13205:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":72024,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13197:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72023,"name":"address","nodeType":"ElementaryTypeName","src":"13197:7:104","typeDescriptions":{}}},"id":72026,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13197:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72027,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71922,"src":"13212: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":72016,"name":"registry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71612,"src":"13126:8:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistry_$2802","typeString":"contract IRegistry"}},"id":72017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13135:13:104","memberName":"createProfile","nodeType":"MemberAccess","referencedDeclaration":2742,"src":"13126: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":72028,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13126:106:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"13102:130:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":72030,"nodeType":"ExpressionStatement","src":"13102:130:104"},{"expression":{"id":72033,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72031,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71665,"src":"13243:14:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72032,"name":"pool_initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71922,"src":"13260:19:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"src":"13243:36:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":72034,"nodeType":"ExpressionStatement","src":"13243:36:104"},{"expression":{"id":72037,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72035,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71605,"src":"13290:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72036,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71811,"src":"13309:17:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13290:36:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72038,"nodeType":"ExpressionStatement","src":"13290:36:104"},{"expression":{"id":72041,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72039,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71602,"src":"13336:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72040,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71813,"src":"13362:24:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"13336:50:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72042,"nodeType":"ExpressionStatement","src":"13336:50:104"},{"eventCall":{"arguments":[{"id":72044,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71590,"src":"13422:9:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72045,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71627,"src":"13433:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},{"expression":{"id":72046,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71809,"src":"13448:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":72047,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"13455:9:104","memberName":"_metadata","nodeType":"MemberAccess","referencedDeclaration":71343,"src":"13448: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":72043,"name":"RegistryInitialized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71436,"src":"13402: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":72048,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13402:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72049,"nodeType":"EmitStatement","src":"13397:68:104"}]},"functionSelector":"34196355","implemented":true,"kind":"function","modifiers":[{"id":71818,"kind":"modifierInvocation","modifierName":{"id":71817,"name":"initializer","nameLocations":["11123:11:104"],"nodeType":"IdentifierPath","referencedDeclaration":52351,"src":"11123:11:104"},"nodeType":"ModifierInvocation","src":"11123:11:104"}],"name":"initialize","nameLocation":"10937:10:104","parameters":{"id":71816,"nodeType":"ParameterList","parameters":[{"constant":false,"id":71809,"mutability":"mutable","name":"params","nameLocation":"11002:6:104","nodeType":"VariableDeclaration","scope":72051,"src":"10957:51:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":71808,"nodeType":"UserDefinedTypeName","pathNode":{"id":71807,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["10957:37:104"],"nodeType":"IdentifierPath","referencedDeclaration":71352,"src":"10957:37:104"},"referencedDeclaration":71352,"src":"10957:37:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"},{"constant":false,"id":71811,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"11026:17:104","nodeType":"VariableDeclaration","scope":72051,"src":"11018:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71810,"name":"address","nodeType":"ElementaryTypeName","src":"11018:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71813,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"11061:24:104","nodeType":"VariableDeclaration","scope":72051,"src":"11053:32:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71812,"name":"address","nodeType":"ElementaryTypeName","src":"11053:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":71815,"mutability":"mutable","name":"_owner","nameLocation":"11103:6:104","nodeType":"VariableDeclaration","scope":72051,"src":"11095:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":71814,"name":"address","nodeType":"ElementaryTypeName","src":"11095:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"10947:168:104"},"returnParameters":{"id":71819,"nodeType":"ParameterList","parameters":[],"src":"11135:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":72190,"nodeType":"FunctionDefinition","src":"13478:1359:104","nodes":[],"body":{"id":72189,"nodeType":"Block","src":"13674:1163:104","nodes":[],"statements":[{"assignments":[72067],"declarations":[{"constant":false,"id":72067,"mutability":"mutable","name":"strategyProxy","nameLocation":"13692:13:104","nodeType":"VariableDeclaration","scope":72189,"src":"13684:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72066,"name":"address","nodeType":"ElementaryTypeName","src":"13684:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72092,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":72075,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71605,"src":"13771:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72074,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13763:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72073,"name":"address","nodeType":"ElementaryTypeName","src":"13763:7:104","typeDescriptions":{}}},"id":72076,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13763:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":72079,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70249,"src":"13850:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$70249_$","typeString":"type(contract CVStrategyV0_0)"}},"id":72080,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13865:4:104","memberName":"init","nodeType":"MemberAccess","referencedDeclaration":66678,"src":"13850:19:104","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function CVStrategyV0_0.init(address,address,address)"}},"id":72081,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13870:8:104","memberName":"selector","nodeType":"MemberAccess","src":"13850:28:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"arguments":[{"id":72084,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71624,"src":"13888:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76808","typeString":"contract FAllo"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_FAllo_$76808","typeString":"contract FAllo"}],"id":72083,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13880:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72082,"name":"address","nodeType":"ElementaryTypeName","src":"13880:7:104","typeDescriptions":{}}},"id":72085,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13880:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72086,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71602,"src":"13895:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":72087,"name":"proxyOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71118,"src":"13920:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":72088,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13920:12: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":72077,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"13806:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72078,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"13810:18:104","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"13806:22:104","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":72089,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13806:144: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":72072,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"13729:16:104","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$54318_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":72071,"nodeType":"UserDefinedTypeName","pathNode":{"id":72070,"name":"ERC1967Proxy","nameLocations":["13733:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"13733:12:104"},"referencedDeclaration":54318,"src":"13733:12:104","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}},"id":72090,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13729:235:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}],"id":72069,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"13708:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72068,"name":"address","nodeType":"ElementaryTypeName","src":"13708:7:104","typeDescriptions":{}}},"id":72091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13708:266:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"13684:290:104"},{"expression":{"id":72102,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"components":[{"id":72093,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72062,"src":"13985:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72094,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72064,"src":"13993:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":72095,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"TupleExpression","src":"13984:18:104","typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72097,"name":"strategyProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72067,"src":"14016:13:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72098,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72053,"src":"14031:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72099,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72056,"src":"14039:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},{"id":72100,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72059,"src":"14048: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_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"},{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}],"id":72096,"name":"createPool","nodeType":"Identifier","overloadedDeclarations":[72190,72255],"referencedDeclaration":72255,"src":"14005:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$_t_struct$_CVStrategyInitializeParamsV0_1_$66370_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":72101,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14005:53:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_address_$","typeString":"tuple(uint256,address)"}},"src":"13984:74:104","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72103,"nodeType":"ExpressionStatement","src":"13984:74:104"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"expression":{"id":72106,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72056,"src":"14081:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72107,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14089:11:104","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":66364,"src":"14081:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72105,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14073:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72104,"name":"address","nodeType":"ElementaryTypeName","src":"14073:7:104","typeDescriptions":{}}},"id":72108,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14073:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":72111,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14113: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":72110,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"14105:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72109,"name":"address","nodeType":"ElementaryTypeName","src":"14105:7:104","typeDescriptions":{}}},"id":72112,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14105:10:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"14073:42:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72160,"nodeType":"IfStatement","src":"14069:453:104","trueBody":{"id":72159,"nodeType":"Block","src":"14117:405:104","statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72118,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"expression":{"id":72114,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72056,"src":"14135:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72115,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14143:16:104","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":66369,"src":"14135:24:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14160:6:104","memberName":"length","nodeType":"MemberAccess","src":"14135:31:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"3130303030","id":72117,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14169:5:104","typeDescriptions":{"typeIdentifier":"t_rational_10000_by_1","typeString":"int_const 10000"},"value":"10000"},"src":"14135:39:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72126,"nodeType":"IfStatement","src":"14131:133:104","trueBody":{"id":72125,"nodeType":"Block","src":"14176:88:104","statements":[{"errorCall":{"arguments":[{"expression":{"expression":{"id":72120,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72056,"src":"14217:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72121,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14225:16:104","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":66369,"src":"14217:24:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14242:6:104","memberName":"length","nodeType":"MemberAccess","src":"14217:31:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72119,"name":"AllowlistTooBig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71511,"src":"14201:15:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$returns$__$","typeString":"function (uint256) pure"}},"id":72123,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14201:48:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72124,"nodeType":"RevertStatement","src":"14194:55:104"}]}},{"assignments":[72128],"declarations":[{"constant":false,"id":72128,"mutability":"mutable","name":"allowlistRole","nameLocation":"14285:13:104","nodeType":"VariableDeclaration","scope":72159,"src":"14277:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":72127,"name":"bytes32","nodeType":"ElementaryTypeName","src":"14277:7:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":72136,"initialValue":{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":72132,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14328:11:104","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":72133,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72062,"src":"14341:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72130,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14311:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72131,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14315:12:104","memberName":"encodePacked","nodeType":"MemberAccess","src":"14311:16:104","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72134,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14311:37:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72129,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14301:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72135,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14301:48:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"14277:72:104"},{"body":{"id":72157,"nodeType":"Block","src":"14425:87:104","statements":[{"expression":{"arguments":[{"id":72150,"name":"allowlistRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72128,"src":"14454:13:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"baseExpression":{"expression":{"id":72151,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72056,"src":"14469:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72152,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14477:16:104","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":66369,"src":"14469:24:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72154,"indexExpression":{"id":72153,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72138,"src":"14494:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"14469:27:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72149,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51957,"src":"14443:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":72155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14443:54:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72156,"nodeType":"ExpressionStatement","src":"14443:54:104"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72145,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72141,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72138,"src":"14383:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"expression":{"id":72142,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72056,"src":"14387:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}},"id":72143,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"14395:16:104","memberName":"initialAllowlist","nodeType":"MemberAccess","referencedDeclaration":66369,"src":"14387:24:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":72144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14412:6:104","memberName":"length","nodeType":"MemberAccess","src":"14387:31:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"14383:35:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72158,"initializationExpression":{"assignments":[72138],"declarations":[{"constant":false,"id":72138,"mutability":"mutable","name":"i","nameLocation":"14376:1:104","nodeType":"VariableDeclaration","scope":72158,"src":"14368:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72137,"name":"uint256","nodeType":"ElementaryTypeName","src":"14368:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72140,"initialValue":{"hexValue":"30","id":72139,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14380:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"14368:13:104"},"loopExpression":{"expression":{"id":72147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"14420:3:104","subExpression":{"id":72146,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72138,"src":"14420:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72148,"nodeType":"ExpressionStatement","src":"14420:3:104"},"nodeType":"ForStatement","src":"14363:149:104"}]}},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c495354","id":72165,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14657:11:104","typeDescriptions":{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},"value":"ALLOWLIST"},{"id":72166,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72062,"src":"14670:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca","typeString":"literal_string \"ALLOWLIST\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72163,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14640:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72164,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14644:12:104","memberName":"encodePacked","nodeType":"MemberAccess","src":"14640:16:104","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72167,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14640:37:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72162,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14630:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72168,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14630:48:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c4953545f41444d494e","id":72172,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14707:17:104","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},"value":"ALLOWLIST_ADMIN"},{"id":72173,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72062,"src":"14726:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72170,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14690:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72171,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14694:12:104","memberName":"encodePacked","nodeType":"MemberAccess","src":"14690:16:104","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72174,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14690:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72169,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14680:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72175,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14680:54:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"id":72161,"name":"_setRoleAdmin","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51925,"src":"14603:13:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (bytes32,bytes32)"}},"id":72176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14603:141:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72177,"nodeType":"ExpressionStatement","src":"14603:141:104"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"hexValue":"414c4c4f574c4953545f41444d494e","id":72182,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"14792:17:104","typeDescriptions":{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},"value":"ALLOWLIST_ADMIN"},{"id":72183,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72062,"src":"14811:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_0d5ac11ce98a7539557343d2c66c127dd8d0e8fb181c5ec16cb674ddf827d109","typeString":"literal_string \"ALLOWLIST_ADMIN\""},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72180,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"14775:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72181,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"14779:12:104","memberName":"encodePacked","nodeType":"MemberAccess","src":"14775:16:104","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72184,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14775:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":72179,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"14765:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":72185,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14765:54:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72186,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72064,"src":"14821:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72178,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51957,"src":"14754:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":72187,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14754:76:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72188,"nodeType":"ExpressionStatement","src":"14754:76:104"}]},"functionSelector":"e0eab988","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"13487:10:104","parameters":{"id":72060,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72053,"mutability":"mutable","name":"_token","nameLocation":"13506:6:104","nodeType":"VariableDeclaration","scope":72190,"src":"13498:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72052,"name":"address","nodeType":"ElementaryTypeName","src":"13498:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72056,"mutability":"mutable","name":"_params","nameLocation":"13552:7:104","nodeType":"VariableDeclaration","scope":72190,"src":"13514:45:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":72055,"nodeType":"UserDefinedTypeName","pathNode":{"id":72054,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["13514:30:104"],"nodeType":"IdentifierPath","referencedDeclaration":66370,"src":"13514:30:104"},"referencedDeclaration":66370,"src":"13514:30:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"},{"constant":false,"id":72059,"mutability":"mutable","name":"_metadata","nameLocation":"13577:9:104","nodeType":"VariableDeclaration","scope":72190,"src":"13561:25:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":72058,"nodeType":"UserDefinedTypeName","pathNode":{"id":72057,"name":"Metadata","nameLocations":["13561:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"13561:8:104"},"referencedDeclaration":3098,"src":"13561:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"13497:90:104"},"returnParameters":{"id":72065,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72062,"mutability":"mutable","name":"poolId","nameLocation":"13644:6:104","nodeType":"VariableDeclaration","scope":72190,"src":"13636:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72061,"name":"uint256","nodeType":"ElementaryTypeName","src":"13636:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72064,"mutability":"mutable","name":"strategy","nameLocation":"13660:8:104","nodeType":"VariableDeclaration","scope":72190,"src":"13652:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72063,"name":"address","nodeType":"ElementaryTypeName","src":"13652:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"13635:34:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72255,"nodeType":"FunctionDefinition","src":"14843:601:104","nodes":[],"body":{"id":72254,"nodeType":"Block","src":"15068:376:104","nodes":[],"statements":[{"assignments":[72208],"declarations":[{"constant":false,"id":72208,"mutability":"mutable","name":"token","nameLocation":"15086:5:104","nodeType":"VariableDeclaration","scope":72254,"src":"15078:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72207,"name":"address","nodeType":"ElementaryTypeName","src":"15078:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72210,"initialValue":{"id":72209,"name":"NATIVE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71566,"src":"15094:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"15078:22:104"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72216,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72211,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72194,"src":"15114:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":72214,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15132: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":72213,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15124:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72212,"name":"address","nodeType":"ElementaryTypeName","src":"15124:7:104","typeDescriptions":{}}},"id":72215,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15124:10:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15114:20:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72222,"nodeType":"IfStatement","src":"15110:65:104","trueBody":{"id":72221,"nodeType":"Block","src":"15136:39:104","statements":[{"expression":{"id":72219,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72217,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72208,"src":"15150:5:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72218,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72194,"src":"15158:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15150:14:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72220,"nodeType":"ExpressionStatement","src":"15150:14:104"}]}},{"expression":{"id":72225,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72223,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72205,"src":"15184:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72224,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72192,"src":"15195:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"15184:20:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72226,"nodeType":"ExpressionStatement","src":"15184:20:104"},{"expression":{"id":72241,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72227,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72203,"src":"15215:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72230,"name":"profileId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71590,"src":"15271:9:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72231,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72205,"src":"15282:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":72234,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72197,"src":"15303:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1 memory"}],"expression":{"id":72232,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"15292:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":72233,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"15296:6:104","memberName":"encode","nodeType":"MemberAccess","src":"15292:10:104","typeDescriptions":{"typeIdentifier":"t_function_abiencode_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":72235,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15292:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":72236,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72208,"src":"15313:5:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":72237,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15320:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"id":72238,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72200,"src":"15323:9:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata memory"}},{"id":72239,"name":"initialMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71665,"src":"15334:14:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}}],"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_storage","typeString":"address[] storage ref"}],"expression":{"id":72228,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71624,"src":"15224:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76808","typeString":"contract FAllo"}},"id":72229,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15229:28:104","memberName":"createPoolWithCustomStrategy","nodeType":"MemberAccess","referencedDeclaration":76794,"src":"15224: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":72240,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15224:134:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"15215:143:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72242,"nodeType":"ExpressionStatement","src":"15215:143:104"},{"eventCall":{"arguments":[{"id":72244,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72203,"src":"15386:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72245,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72205,"src":"15394:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":72248,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"15412:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":72247,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"15404:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72246,"name":"address","nodeType":"ElementaryTypeName","src":"15404:7:104","typeDescriptions":{}}},"id":72249,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15404:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72250,"name":"_token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72194,"src":"15419:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72251,"name":"_metadata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72200,"src":"15427: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":72243,"name":"PoolCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71503,"src":"15374: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":72252,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15374:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72253,"nodeType":"EmitStatement","src":"15369:68:104"}]},"functionSelector":"f24b150f","implemented":true,"kind":"function","modifiers":[],"name":"createPool","nameLocation":"14852:10:104","parameters":{"id":72201,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72192,"mutability":"mutable","name":"_strategy","nameLocation":"14880:9:104","nodeType":"VariableDeclaration","scope":72255,"src":"14872:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72191,"name":"address","nodeType":"ElementaryTypeName","src":"14872:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72194,"mutability":"mutable","name":"_token","nameLocation":"14907:6:104","nodeType":"VariableDeclaration","scope":72255,"src":"14899:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72193,"name":"address","nodeType":"ElementaryTypeName","src":"14899:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72197,"mutability":"mutable","name":"_params","nameLocation":"14961:7:104","nodeType":"VariableDeclaration","scope":72255,"src":"14923:45:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_memory_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"},"typeName":{"id":72196,"nodeType":"UserDefinedTypeName","pathNode":{"id":72195,"name":"CVStrategyInitializeParamsV0_1","nameLocations":["14923:30:104"],"nodeType":"IdentifierPath","referencedDeclaration":66370,"src":"14923:30:104"},"referencedDeclaration":66370,"src":"14923:30:104","typeDescriptions":{"typeIdentifier":"t_struct$_CVStrategyInitializeParamsV0_1_$66370_storage_ptr","typeString":"struct CVStrategyInitializeParamsV0_1"}},"visibility":"internal"},{"constant":false,"id":72200,"mutability":"mutable","name":"_metadata","nameLocation":"14994:9:104","nodeType":"VariableDeclaration","scope":72255,"src":"14978:25:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_memory_ptr","typeString":"struct Metadata"},"typeName":{"id":72199,"nodeType":"UserDefinedTypeName","pathNode":{"id":72198,"name":"Metadata","nameLocations":["14978:8:104"],"nodeType":"IdentifierPath","referencedDeclaration":3098,"src":"14978:8:104"},"referencedDeclaration":3098,"src":"14978:8:104","typeDescriptions":{"typeIdentifier":"t_struct$_Metadata_$3098_storage_ptr","typeString":"struct Metadata"}},"visibility":"internal"}],"src":"14862:147:104"},"returnParameters":{"id":72206,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72203,"mutability":"mutable","name":"poolId","nameLocation":"15042:6:104","nodeType":"VariableDeclaration","scope":72255,"src":"15034:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72202,"name":"uint256","nodeType":"ElementaryTypeName","src":"15034:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":72205,"mutability":"mutable","name":"strategy","nameLocation":"15058:8:104","nodeType":"VariableDeclaration","scope":72255,"src":"15050:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72204,"name":"address","nodeType":"ElementaryTypeName","src":"15050:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15033:34:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72374,"nodeType":"FunctionDefinition","src":"15450:1225:104","nodes":[],"body":{"id":72373,"nodeType":"Block","src":"15548:1127:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":72265,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72257,"src":"15584:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72264,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71720,"src":"15558:25:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":72266,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15558:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72267,"nodeType":"ExpressionStatement","src":"15558:34:104"},{"expression":{"arguments":[{"id":72269,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72259,"src":"15622:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72268,"name":"onlyStrategyEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71735,"src":"15602:19:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":72270,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15602:30:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72271,"nodeType":"ExpressionStatement","src":"15602:30:104"},{"expression":{"arguments":[{"expression":{"id":72273,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"15662:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":72274,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15666:6:104","memberName":"sender","nodeType":"MemberAccess","src":"15662:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72275,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72259,"src":"15674:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72272,"name":"onlyStrategyAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71764,"src":"15642:19:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":72276,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15642:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72277,"nodeType":"ExpressionStatement","src":"15642:42:104"},{"condition":{"baseExpression":{"baseExpression":{"id":72278,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71661,"src":"15741:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":72280,"indexExpression":{"id":72279,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72257,"src":"15769:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15741:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":72282,"indexExpression":{"id":72281,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72259,"src":"15778:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15741:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72287,"nodeType":"IfStatement","src":"15737:107:104","trueBody":{"id":72286,"nodeType":"Block","src":"15790:54:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72283,"name":"UserAlreadyActivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71523,"src":"15811:20:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72284,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15811:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72285,"nodeType":"RevertStatement","src":"15804:29:104"}]}},{"assignments":[72290],"declarations":[{"constant":false,"id":72290,"mutability":"mutable","name":"member","nameLocation":"15868:6:104","nodeType":"VariableDeclaration","scope":72373,"src":"15854:20:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_memory_ptr","typeString":"struct Member"},"typeName":{"id":72289,"nodeType":"UserDefinedTypeName","pathNode":{"id":72288,"name":"Member","nameLocations":["15854:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":71359,"src":"15854:6:104"},"referencedDeclaration":71359,"src":"15854:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":72294,"initialValue":{"baseExpression":{"id":72291,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71648,"src":"15877:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72293,"indexExpression":{"id":72292,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72257,"src":"15897:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"15877:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"15854:51:104"},{"assignments":[72296],"declarations":[{"constant":false,"id":72296,"mutability":"mutable","name":"totalStakedAmount","nameLocation":"15924:17:104","nodeType":"VariableDeclaration","scope":72373,"src":"15916:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72295,"name":"uint256","nodeType":"ElementaryTypeName","src":"15916:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72299,"initialValue":{"expression":{"id":72297,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72290,"src":"15944:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_memory_ptr","typeString":"struct Member memory"}},"id":72298,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"15951:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":71356,"src":"15944:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15916:47:104"},{"assignments":[72301],"declarations":[{"constant":false,"id":72301,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"15981:16:104","nodeType":"VariableDeclaration","scope":72373,"src":"15973:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72300,"name":"uint256","nodeType":"ElementaryTypeName","src":"15973:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72303,"initialValue":{"id":72302,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"16000:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"15973:46:104"},{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"id":72311,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":72305,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72259,"src":"16049:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72304,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66224,"src":"16034:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}},"id":72306,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16034:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$66224","typeString":"contract IPointStrategy"}},"id":72307,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16060:14:104","memberName":"getPointSystem","nodeType":"MemberAccess","referencedDeclaration":66223,"src":"16034:40:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_enum$_PointSystem_$66233_$","typeString":"function () external returns (enum PointSystem)"}},"id":72308,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16034:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":72309,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"16080:11:104","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$66233_$","typeString":"type(enum PointSystem)"}},"id":72310,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"16092:9:104","memberName":"Quadratic","nodeType":"MemberAccess","referencedDeclaration":66232,"src":"16080:21:104","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"16034:67:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"condition":{"commonType":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"},"id":72330,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"id":72324,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72259,"src":"16223:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72323,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66224,"src":"16208:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}},"id":72325,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16208:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$66224","typeString":"contract IPointStrategy"}},"id":72326,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16234:14:104","memberName":"getPointSystem","nodeType":"MemberAccess","referencedDeclaration":66223,"src":"16208:40:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$__$returns$_t_enum$_PointSystem_$66233_$","typeString":"function () external returns (enum PointSystem)"}},"id":72327,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16208:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"expression":{"id":72328,"name":"PointSystem","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66233,"src":"16254:11:104","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_PointSystem_$66233_$","typeString":"type(enum PointSystem)"}},"id":72329,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"16266:5:104","memberName":"Fixed","nodeType":"MemberAccess","referencedDeclaration":66229,"src":"16254:17:104","typeDescriptions":{"typeIdentifier":"t_enum$_PointSystem_$66233","typeString":"enum PointSystem"}},"src":"16208:63:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72342,"nodeType":"IfStatement","src":"16204:180:104","trueBody":{"id":72341,"nodeType":"Block","src":"16273:111:104","statements":[{"expression":{"id":72339,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72331,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72301,"src":"16287:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72336,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72257,"src":"16346:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72337,"name":"totalStakedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72296,"src":"16355:17:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":72333,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72259,"src":"16321:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72332,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66224,"src":"16306:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}},"id":72334,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16306:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$66224","typeString":"contract IPointStrategy"}},"id":72335,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16332:13:104","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":66208,"src":"16306:39:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":72338,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16306:67:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16287:86:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72340,"nodeType":"ExpressionStatement","src":"16287:86:104"}]}},"id":72343,"nodeType":"IfStatement","src":"16030:354:104","trueBody":{"id":72322,"nodeType":"Block","src":"16103:95:104","statements":[{"expression":{"id":72320,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72312,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72301,"src":"16117:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72317,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72257,"src":"16176:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":72318,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16185: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":72314,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72259,"src":"16151:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72313,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66224,"src":"16136:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}},"id":72315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16136:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$66224","typeString":"contract IPointStrategy"}},"id":72316,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16162:13:104","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":66208,"src":"16136:39:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":72319,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16136:51:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16117:70:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72321,"nodeType":"ExpressionStatement","src":"16117:70:104"}]}},{"expression":{"id":72350,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":72344,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71642,"src":"16394:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":72347,"indexExpression":{"id":72345,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72257,"src":"16416:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16394:30:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":72348,"indexExpression":{"id":72346,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72259,"src":"16425:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16394:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72349,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72301,"src":"16438:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"16394:60:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72351,"nodeType":"ExpressionStatement","src":"16394:60:104"},{"expression":{"id":72358,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":72352,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71661,"src":"16483:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":72355,"indexExpression":{"id":72353,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72257,"src":"16511:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16483:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":72356,"indexExpression":{"id":72354,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72259,"src":"16520:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"16483:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":72357,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"16533:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"16483:54:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72359,"nodeType":"ExpressionStatement","src":"16483:54:104"},{"expression":{"arguments":[{"id":72364,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72259,"src":"16581:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"baseExpression":{"id":72360,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"16548:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72362,"indexExpression":{"id":72361,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72257,"src":"16567:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16548:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":72363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16576:4:104","memberName":"push","nodeType":"MemberAccess","src":"16548: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":72365,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16548:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72366,"nodeType":"ExpressionStatement","src":"16548:43:104"},{"eventCall":{"arguments":[{"id":72368,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72257,"src":"16631:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72369,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72259,"src":"16640:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72370,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72301,"src":"16651: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":72367,"name":"MemberActivatedStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71452,"src":"16607:23:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":72371,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16607:61:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72372,"nodeType":"EmitStatement","src":"16602:66:104"}]},"functionSelector":"0d4a8b49","implemented":true,"kind":"function","modifiers":[{"id":72262,"kind":"modifierInvocation","modifierName":{"id":72261,"name":"nonReentrant","nameLocations":["15535:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":52494,"src":"15535:12:104"},"nodeType":"ModifierInvocation","src":"15535:12:104"}],"name":"activateMemberInStrategy","nameLocation":"15459:24:104","parameters":{"id":72260,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72257,"mutability":"mutable","name":"_member","nameLocation":"15492:7:104","nodeType":"VariableDeclaration","scope":72374,"src":"15484:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72256,"name":"address","nodeType":"ElementaryTypeName","src":"15484:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72259,"mutability":"mutable","name":"_strategy","nameLocation":"15509:9:104","nodeType":"VariableDeclaration","scope":72374,"src":"15501:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72258,"name":"address","nodeType":"ElementaryTypeName","src":"15501:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"15483:36:104"},"returnParameters":{"id":72263,"nodeType":"ParameterList","parameters":[],"src":"15548:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72429,"nodeType":"FunctionDefinition","src":"16681:702:104","nodes":[],"body":{"id":72428,"nodeType":"Block","src":"16768:615:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":72382,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72376,"src":"16804:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72381,"name":"onlyRegistryMemberAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71720,"src":"16778:25:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$__$","typeString":"function (address) view"}},"id":72383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16778:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72384,"nodeType":"ExpressionStatement","src":"16778:34:104"},{"expression":{"arguments":[{"expression":{"id":72386,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"16884:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":72387,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16888:6:104","memberName":"sender","nodeType":"MemberAccess","src":"16884:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72388,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72378,"src":"16896:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72385,"name":"onlyStrategyAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71764,"src":"16864:19:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":72389,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16864:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72390,"nodeType":"ExpressionStatement","src":"16864:42:104"},{"condition":{"id":72396,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"16921:48:104","subExpression":{"baseExpression":{"baseExpression":{"id":72391,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71661,"src":"16922:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":72393,"indexExpression":{"id":72392,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72376,"src":"16950:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16922:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":72395,"indexExpression":{"id":72394,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72378,"src":"16959:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"16922:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72401,"nodeType":"IfStatement","src":"16917:110:104","trueBody":{"id":72400,"nodeType":"Block","src":"16971:56:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72397,"name":"UserAlreadyDeactivated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71525,"src":"16992:22:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72398,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16992:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72399,"nodeType":"RevertStatement","src":"16985:31:104"}]}},{"expression":{"id":72408,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":72402,"name":"memberActivatedInStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71661,"src":"17037:27:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_bool_$_$","typeString":"mapping(address => mapping(address => bool))"}},"id":72405,"indexExpression":{"id":72403,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72376,"src":"17065:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17037:36:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":72406,"indexExpression":{"id":72404,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72378,"src":"17074:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"17037:47:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":72407,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"17087:5:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"17037:55:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72409,"nodeType":"ExpressionStatement","src":"17037:55:104"},{"expression":{"id":72416,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":72410,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71642,"src":"17102:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":72413,"indexExpression":{"id":72411,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72376,"src":"17124:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17102:30:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":72414,"indexExpression":{"id":72412,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72378,"src":"17133:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"17102:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":72415,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17146:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"17102:45:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72417,"nodeType":"ExpressionStatement","src":"17102:45:104"},{"expression":{"arguments":[{"id":72419,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72376,"src":"17182:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72420,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72378,"src":"17191:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72418,"name":"removeStrategyFromMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72482,"src":"17157:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":72421,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17157:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72422,"nodeType":"ExpressionStatement","src":"17157:44:104"},{"eventCall":{"arguments":[{"id":72424,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72376,"src":"17357:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72425,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72378,"src":"17366:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72423,"name":"MemberDeactivatedStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71458,"src":"17331:25:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":72426,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17331:45:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72427,"nodeType":"EmitStatement","src":"17326:50:104"}]},"functionSelector":"22bcf999","implemented":true,"kind":"function","modifiers":[],"name":"deactivateMemberInStrategy","nameLocation":"16690:26:104","parameters":{"id":72379,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72376,"mutability":"mutable","name":"_member","nameLocation":"16725:7:104","nodeType":"VariableDeclaration","scope":72429,"src":"16717:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72375,"name":"address","nodeType":"ElementaryTypeName","src":"16717:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72378,"mutability":"mutable","name":"_strategy","nameLocation":"16742:9:104","nodeType":"VariableDeclaration","scope":72429,"src":"16734:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72377,"name":"address","nodeType":"ElementaryTypeName","src":"16734:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"16716:36:104"},"returnParameters":{"id":72380,"nodeType":"ParameterList","parameters":[],"src":"16768:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72482,"nodeType":"FunctionDefinition","src":"17389:433:104","nodes":[],"body":{"id":72481,"nodeType":"Block","src":"17476:346:104","nodes":[],"statements":[{"assignments":[72440],"declarations":[{"constant":false,"id":72440,"mutability":"mutable","name":"memberStrategies","nameLocation":"17504:16:104","nodeType":"VariableDeclaration","scope":72481,"src":"17486:34:104","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":72438,"name":"address","nodeType":"ElementaryTypeName","src":"17486:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72439,"nodeType":"ArrayTypeName","src":"17486:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":72444,"initialValue":{"baseExpression":{"id":72441,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"17523:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72443,"indexExpression":{"id":72442,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72431,"src":"17542:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17523:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"17486:64:104"},{"body":{"id":72479,"nodeType":"Block","src":"17614:202:104","statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72460,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":72456,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72440,"src":"17632:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72458,"indexExpression":{"id":72457,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72446,"src":"17649:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17632:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"id":72459,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72433,"src":"17655:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17632:32:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72478,"nodeType":"IfStatement","src":"17628:178:104","trueBody":{"id":72477,"nodeType":"Block","src":"17666:140:104","statements":[{"expression":{"id":72470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":72461,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72440,"src":"17684:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72463,"indexExpression":{"id":72462,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72446,"src":"17701:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"17684:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":72464,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72440,"src":"17706:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72469,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72468,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":72465,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72440,"src":"17723:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72466,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17740:6:104","memberName":"length","nodeType":"MemberAccess","src":"17723:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":72467,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17749:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"17723:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"17706:45:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"17684:67:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72471,"nodeType":"ExpressionStatement","src":"17684:67:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":72472,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72440,"src":"17769:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72474,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17786:3:104","memberName":"pop","nodeType":"MemberAccess","src":"17769: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":72475,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17769:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72476,"nodeType":"ExpressionStatement","src":"17769:22:104"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72452,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72449,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72446,"src":"17580:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":72450,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72440,"src":"17584:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72451,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17601:6:104","memberName":"length","nodeType":"MemberAccess","src":"17584:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"17580:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72480,"initializationExpression":{"assignments":[72446],"declarations":[{"constant":false,"id":72446,"mutability":"mutable","name":"i","nameLocation":"17573:1:104","nodeType":"VariableDeclaration","scope":72480,"src":"17565:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72445,"name":"uint256","nodeType":"ElementaryTypeName","src":"17565:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72448,"initialValue":{"hexValue":"30","id":72447,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17577:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"17565:13:104"},"loopExpression":{"expression":{"id":72454,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"17609:3:104","subExpression":{"id":72453,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72446,"src":"17609:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72455,"nodeType":"ExpressionStatement","src":"17609:3:104"},"nodeType":"ForStatement","src":"17560:256:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"removeStrategyFromMember","nameLocation":"17398:24:104","parameters":{"id":72434,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72431,"mutability":"mutable","name":"_member","nameLocation":"17431:7:104","nodeType":"VariableDeclaration","scope":72482,"src":"17423:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72430,"name":"address","nodeType":"ElementaryTypeName","src":"17423:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72433,"mutability":"mutable","name":"_strategy","nameLocation":"17448:9:104","nodeType":"VariableDeclaration","scope":72482,"src":"17440:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72432,"name":"address","nodeType":"ElementaryTypeName","src":"17440:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"17422:36:104"},"returnParameters":{"id":72435,"nodeType":"ParameterList","parameters":[],"src":"17476:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":72570,"nodeType":"FunctionDefinition","src":"17828:986:104","nodes":[],"body":{"id":72569,"nodeType":"Block","src":"17902:912:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72489,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71705,"src":"17912:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72490,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17912:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72491,"nodeType":"ExpressionStatement","src":"17912:26:104"},{"assignments":[72493],"declarations":[{"constant":false,"id":72493,"mutability":"mutable","name":"member","nameLocation":"17956:6:104","nodeType":"VariableDeclaration","scope":72569,"src":"17948:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72492,"name":"address","nodeType":"ElementaryTypeName","src":"17948:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72496,"initialValue":{"expression":{"id":72494,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"17965:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":72495,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17969:6:104","memberName":"sender","nodeType":"MemberAccess","src":"17965:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"17948:27:104"},{"assignments":[72498],"declarations":[{"constant":false,"id":72498,"mutability":"mutable","name":"pointsToIncrease","nameLocation":"17993:16:104","nodeType":"VariableDeclaration","scope":72569,"src":"17985:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72497,"name":"uint256","nodeType":"ElementaryTypeName","src":"17985:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72499,"nodeType":"VariableDeclarationStatement","src":"17985:24:104"},{"body":{"id":72544,"nodeType":"Block","src":"18084:522:104","statements":[{"expression":{"id":72525,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72513,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72498,"src":"18213:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72522,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72493,"src":"18292:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72523,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72484,"src":"18300:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"baseExpression":{"baseExpression":{"id":72515,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"18247:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72517,"indexExpression":{"id":72516,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72493,"src":"18266:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18247:26:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":72519,"indexExpression":{"id":72518,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72501,"src":"18274:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18247:29:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72514,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66224,"src":"18232:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}},"id":72520,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18232:45:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$66224","typeString":"contract IPointStrategy"}},"id":72521,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18278:13:104","memberName":"increasePower","nodeType":"MemberAccess","referencedDeclaration":66208,"src":"18232:59:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":72524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18232:82:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18213:101:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72526,"nodeType":"ExpressionStatement","src":"18213:101:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72529,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72527,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72498,"src":"18332:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"hexValue":"30","id":72528,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18352:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"18332:21:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72543,"nodeType":"IfStatement","src":"18328:252:104","trueBody":{"id":72542,"nodeType":"Block","src":"18355:225:104","statements":[{"expression":{"id":72540,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":72530,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71642,"src":"18373:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":72537,"indexExpression":{"id":72531,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72493,"src":"18395:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18373:29:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":72538,"indexExpression":{"baseExpression":{"baseExpression":{"id":72532,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"18403:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72534,"indexExpression":{"id":72533,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72493,"src":"18422:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18403:26:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":72536,"indexExpression":{"id":72535,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72501,"src":"18430:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18403:29:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"18373:60:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":72539,"name":"pointsToIncrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72498,"src":"18437:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18373:80:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72541,"nodeType":"ExpressionStatement","src":"18373:80:104"}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72504,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72501,"src":"18040:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"baseExpression":{"id":72505,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"18044:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72507,"indexExpression":{"id":72506,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72493,"src":"18063:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18044:26:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"id":72508,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18071:6:104","memberName":"length","nodeType":"MemberAccess","src":"18044:33:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18040:37:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72545,"initializationExpression":{"assignments":[72501],"declarations":[{"constant":false,"id":72501,"mutability":"mutable","name":"i","nameLocation":"18033:1:104","nodeType":"VariableDeclaration","scope":72545,"src":"18025:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72500,"name":"uint256","nodeType":"ElementaryTypeName","src":"18025:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72503,"initialValue":{"hexValue":"30","id":72502,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18037:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"18025:13:104"},"loopExpression":{"expression":{"id":72511,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"18079:3:104","subExpression":{"id":72510,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72501,"src":"18079:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72512,"nodeType":"ExpressionStatement","src":"18079:3:104"},"nodeType":"ForStatement","src":"18020:586:104"},{"expression":{"arguments":[{"id":72549,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72493,"src":"18645:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":72552,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"18661:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":72551,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"18653:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72550,"name":"address","nodeType":"ElementaryTypeName","src":"18653:7:104","typeDescriptions":{}}},"id":72553,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18653:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72554,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72484,"src":"18668: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":72546,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71616,"src":"18616:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":72548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18628:16:104","memberName":"safeTransferFrom","nodeType":"MemberAccess","referencedDeclaration":55946,"src":"18616:28:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_address_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$55825_$","typeString":"function (contract IERC20,address,address,uint256)"}},"id":72555,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18616:66:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72556,"nodeType":"ExpressionStatement","src":"18616:66:104"},{"expression":{"id":72562,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72557,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71648,"src":"18692:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72559,"indexExpression":{"id":72558,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72493,"src":"18712:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"18692:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage","typeString":"struct Member storage ref"}},"id":72560,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"18720:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":71356,"src":"18692:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"id":72561,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72484,"src":"18736:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"18692:57:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72563,"nodeType":"ExpressionStatement","src":"18692:57:104"},{"eventCall":{"arguments":[{"id":72565,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72493,"src":"18785:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72566,"name":"_amountStaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72484,"src":"18793:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72564,"name":"MemberPowerIncreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71468,"src":"18764:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":72567,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18764:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72568,"nodeType":"EmitStatement","src":"18759:48:104"}]},"functionSelector":"559de05d","implemented":true,"kind":"function","modifiers":[{"id":72487,"kind":"modifierInvocation","modifierName":{"id":72486,"name":"nonReentrant","nameLocations":["17889:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":52494,"src":"17889:12:104"},"nodeType":"ModifierInvocation","src":"17889:12:104"}],"name":"increasePower","nameLocation":"17837:13:104","parameters":{"id":72485,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72484,"mutability":"mutable","name":"_amountStaked","nameLocation":"17859:13:104","nodeType":"VariableDeclaration","scope":72570,"src":"17851:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72483,"name":"uint256","nodeType":"ElementaryTypeName","src":"17851:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"17850:23:104"},"returnParameters":{"id":72488,"nodeType":"ParameterList","parameters":[],"src":"17902:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72720,"nodeType":"FunctionDefinition","src":"18957:1562:104","nodes":[],"body":{"id":72719,"nodeType":"Block","src":"19033:1486:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72577,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71705,"src":"19043:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72578,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19043:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72579,"nodeType":"ExpressionStatement","src":"19043:26:104"},{"assignments":[72581],"declarations":[{"constant":false,"id":72581,"mutability":"mutable","name":"member","nameLocation":"19087:6:104","nodeType":"VariableDeclaration","scope":72719,"src":"19079:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72580,"name":"address","nodeType":"ElementaryTypeName","src":"19079:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72584,"initialValue":{"expression":{"id":72582,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"19096:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":72583,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19100:6:104","memberName":"sender","nodeType":"MemberAccess","src":"19096:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"19079:27:104"},{"assignments":[72589],"declarations":[{"constant":false,"id":72589,"mutability":"mutable","name":"memberStrategies","nameLocation":"19134:16:104","nodeType":"VariableDeclaration","scope":72719,"src":"19116:34:104","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":72587,"name":"address","nodeType":"ElementaryTypeName","src":"19116:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72588,"nodeType":"ArrayTypeName","src":"19116:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":72593,"initialValue":{"baseExpression":{"id":72590,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"19153:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":72592,"indexExpression":{"id":72591,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72581,"src":"19172:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19153:26:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"19116:63:104"},{"assignments":[72595],"declarations":[{"constant":false,"id":72595,"mutability":"mutable","name":"pointsToDecrease","nameLocation":"19198:16:104","nodeType":"VariableDeclaration","scope":72719,"src":"19190:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72594,"name":"uint256","nodeType":"ElementaryTypeName","src":"19190:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72596,"nodeType":"VariableDeclarationStatement","src":"19190:24:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72604,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72602,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"baseExpression":{"id":72597,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71648,"src":"19229:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72599,"indexExpression":{"id":72598,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72581,"src":"19249:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19229:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage","typeString":"struct Member storage ref"}},"id":72600,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"19257:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":71356,"src":"19229:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":72601,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72572,"src":"19272:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19229:58:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"id":72603,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"19290:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19229:80:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72609,"nodeType":"IfStatement","src":"19225:140:104","trueBody":{"id":72608,"nodeType":"Block","src":"19311:54:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72605,"name":"DecreaseUnderMinimum","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71543,"src":"19332:20:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19332:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72607,"nodeType":"RevertStatement","src":"19325:29:104"}]}},{"expression":{"arguments":[{"id":72613,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72581,"src":"19399:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72614,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72572,"src":"19407:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72610,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71616,"src":"19374:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":72612,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19386:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":55919,"src":"19374:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$55825_$","typeString":"function (contract IERC20,address,uint256)"}},"id":72615,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19374:49:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72616,"nodeType":"ExpressionStatement","src":"19374:49:104"},{"body":{"id":72705,"nodeType":"Block","src":"19487:897:104","statements":[{"assignments":[72629],"declarations":[{"constant":false,"id":72629,"mutability":"mutable","name":"strategy","nameLocation":"19509:8:104","nodeType":"VariableDeclaration","scope":72705,"src":"19501:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72628,"name":"address","nodeType":"ElementaryTypeName","src":"19501:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72633,"initialValue":{"baseExpression":{"id":72630,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72589,"src":"19520:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72632,"indexExpression":{"id":72631,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72618,"src":"19537:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19520:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"19501:38:104"},{"condition":{"arguments":[{"expression":{"arguments":[{"id":72637,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66224,"src":"19589:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}],"id":72636,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"19584:4:104","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":72638,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19584:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$66224","typeString":"type(contract IPointStrategy)"}},"id":72639,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"19605:11:104","memberName":"interfaceId","nodeType":"MemberAccess","src":"19584:32:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":72634,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72629,"src":"19557:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72635,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19566:17:104","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57072,"src":"19557: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":72640,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19557:60:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":72703,"nodeType":"Block","src":"20107:250:104","statements":[{"expression":{"id":72692,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":72683,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72589,"src":"20192:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72685,"indexExpression":{"id":72684,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72618,"src":"20209:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"20192:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":72686,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72589,"src":"20214:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72691,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72690,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":72687,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72589,"src":"20231:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72688,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20248:6:104","memberName":"length","nodeType":"MemberAccess","src":"20231:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":72689,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20257:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"20231:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20214:45:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"20192:67:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72693,"nodeType":"ExpressionStatement","src":"20192:67:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":72694,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72589,"src":"20277:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72696,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20294:3:104","memberName":"pop","nodeType":"MemberAccess","src":"20277: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":72697,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20277:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72698,"nodeType":"ExpressionStatement","src":"20277:22:104"},{"expression":{"arguments":[{"id":72700,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72629,"src":"20333:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72699,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72910,"src":"20317:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72701,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20317:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72702,"nodeType":"ExpressionStatement","src":"20317:25:104"}]},"id":72704,"nodeType":"IfStatement","src":"19553:804:104","trueBody":{"id":72682,"nodeType":"Block","src":"19619:482:104","statements":[{"expression":{"id":72649,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72641,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72595,"src":"19637:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72646,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72581,"src":"19695:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72647,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72572,"src":"19703:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"arguments":[{"id":72643,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72629,"src":"19671:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72642,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66224,"src":"19656:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}},"id":72644,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19656:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$66224","typeString":"contract IPointStrategy"}},"id":72645,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19681:13:104","memberName":"decreasePower","nodeType":"MemberAccess","referencedDeclaration":66217,"src":"19656:38:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_uint256_$","typeString":"function (address,uint256) external returns (uint256)"}},"id":72648,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19656:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19637:82:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72650,"nodeType":"ExpressionStatement","src":"19637:82:104"},{"assignments":[72652],"declarations":[{"constant":false,"id":72652,"mutability":"mutable","name":"currentPower","nameLocation":"19745:12:104","nodeType":"VariableDeclaration","scope":72682,"src":"19737:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72651,"name":"uint256","nodeType":"ElementaryTypeName","src":"19737:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72660,"initialValue":{"baseExpression":{"baseExpression":{"id":72653,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71642,"src":"19760:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":72655,"indexExpression":{"id":72654,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72581,"src":"19782:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19760:29:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":72659,"indexExpression":{"baseExpression":{"id":72656,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72589,"src":"19790:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72658,"indexExpression":{"id":72657,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72618,"src":"19807:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19790:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19760:50:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"19737:73:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72663,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72661,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72595,"src":"19832:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":72662,"name":"currentPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72652,"src":"19851:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19832:31:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":72680,"nodeType":"Block","src":"19976:111:104","statements":[{"expression":{"id":72678,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"baseExpression":{"id":72670,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71642,"src":"19998:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":72675,"indexExpression":{"id":72671,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72581,"src":"20020:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"19998:29:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":72676,"indexExpression":{"baseExpression":{"id":72672,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72589,"src":"20028:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72674,"indexExpression":{"id":72673,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72618,"src":"20045:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20028:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"19998:50:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":72677,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72595,"src":"20052:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19998:70:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72679,"nodeType":"ExpressionStatement","src":"19998:70:104"}]},"id":72681,"nodeType":"IfStatement","src":"19828:259:104","trueBody":{"id":72669,"nodeType":"Block","src":"19865:105:104","statements":[{"errorCall":{"arguments":[{"id":72665,"name":"pointsToDecrease","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72595,"src":"19920:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":72666,"name":"currentPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72652,"src":"19938:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72664,"name":"CantDecreaseMoreThanPower","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71549,"src":"19894:25:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) pure"}},"id":72667,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19894:57:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72668,"nodeType":"RevertStatement","src":"19887:64:104"}]}}]}}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":72624,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":72621,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72618,"src":"19453:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":72622,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72589,"src":"19457:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[] storage pointer"}},"id":72623,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19474:6:104","memberName":"length","nodeType":"MemberAccess","src":"19457:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"19453:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72706,"initializationExpression":{"assignments":[72618],"declarations":[{"constant":false,"id":72618,"mutability":"mutable","name":"i","nameLocation":"19446:1:104","nodeType":"VariableDeclaration","scope":72706,"src":"19438:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72617,"name":"uint256","nodeType":"ElementaryTypeName","src":"19438:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":72620,"initialValue":{"hexValue":"30","id":72619,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"19450:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"19438:13:104"},"loopExpression":{"expression":{"id":72626,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"19482:3:104","subExpression":{"id":72625,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72618,"src":"19482:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72627,"nodeType":"ExpressionStatement","src":"19482:3:104"},"nodeType":"ForStatement","src":"19433:951:104"},{"expression":{"id":72712,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":72707,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71648,"src":"20393:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72709,"indexExpression":{"id":72708,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72581,"src":"20413:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20393:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage","typeString":"struct Member storage ref"}},"id":72710,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"20421:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":71356,"src":"20393:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"id":72711,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72572,"src":"20437:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"20393:59:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":72713,"nodeType":"ExpressionStatement","src":"20393:59:104"},{"eventCall":{"arguments":[{"id":72715,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72581,"src":"20488:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72716,"name":"_amountUnstaked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72572,"src":"20496:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":72714,"name":"MemberPowerDecreased","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71474,"src":"20467:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":72717,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20467:45:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72718,"nodeType":"EmitStatement","src":"20462:50:104"}]},"functionSelector":"5ecf71c5","implemented":true,"kind":"function","modifiers":[{"id":72575,"kind":"modifierInvocation","modifierName":{"id":72574,"name":"nonReentrant","nameLocations":["19020:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":52494,"src":"19020:12:104"},"nodeType":"ModifierInvocation","src":"19020:12:104"}],"name":"decreasePower","nameLocation":"18966:13:104","parameters":{"id":72573,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72572,"mutability":"mutable","name":"_amountUnstaked","nameLocation":"18988:15:104","nodeType":"VariableDeclaration","scope":72720,"src":"18980:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72571,"name":"uint256","nodeType":"ElementaryTypeName","src":"18980:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"18979:25:104"},"returnParameters":{"id":72576,"nodeType":"ParameterList","parameters":[],"src":"19033:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72736,"nodeType":"FunctionDefinition","src":"20525:173:104","nodes":[],"body":{"id":72735,"nodeType":"Block","src":"20633:65:104","nodes":[],"statements":[{"expression":{"baseExpression":{"baseExpression":{"id":72729,"name":"memberPowerInStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71642,"src":"20650:21:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$","typeString":"mapping(address => mapping(address => uint256))"}},"id":72731,"indexExpression":{"id":72730,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72722,"src":"20672:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20650:30:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_uint256_$","typeString":"mapping(address => uint256)"}},"id":72733,"indexExpression":{"id":72732,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72724,"src":"20681:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20650:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":72728,"id":72734,"nodeType":"Return","src":"20643:48:104"}]},"functionSelector":"7817ee4f","implemented":true,"kind":"function","modifiers":[],"name":"getMemberPowerInStrategy","nameLocation":"20534:24:104","parameters":{"id":72725,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72722,"mutability":"mutable","name":"_member","nameLocation":"20567:7:104","nodeType":"VariableDeclaration","scope":72736,"src":"20559:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72721,"name":"address","nodeType":"ElementaryTypeName","src":"20559:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":72724,"mutability":"mutable","name":"_strategy","nameLocation":"20584:9:104","nodeType":"VariableDeclaration","scope":72736,"src":"20576:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72723,"name":"address","nodeType":"ElementaryTypeName","src":"20576:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20558:36:104"},"returnParameters":{"id":72728,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72727,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72736,"src":"20624:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72726,"name":"uint256","nodeType":"ElementaryTypeName","src":"20624:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20623:9:104"},"scope":73556,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":72749,"nodeType":"FunctionDefinition","src":"20704:151:104","nodes":[],"body":{"id":72748,"nodeType":"Block","src":"20790:65:104","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":72743,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71648,"src":"20807:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72745,"indexExpression":{"id":72744,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72738,"src":"20827:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"20807:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage","typeString":"struct Member storage ref"}},"id":72746,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"20836:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":71356,"src":"20807:41:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":72742,"id":72747,"nodeType":"Return","src":"20800:48:104"}]},"functionSelector":"2c611c4a","implemented":true,"kind":"function","modifiers":[],"name":"getMemberStakedAmount","nameLocation":"20713:21:104","parameters":{"id":72739,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72738,"mutability":"mutable","name":"_member","nameLocation":"20743:7:104","nodeType":"VariableDeclaration","scope":72749,"src":"20735:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72737,"name":"address","nodeType":"ElementaryTypeName","src":"20735:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"20734:17:104"},"returnParameters":{"id":72742,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72741,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72749,"src":"20781:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72740,"name":"uint256","nodeType":"ElementaryTypeName","src":"20781:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20780:9:104"},"scope":73556,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":72782,"nodeType":"FunctionDefinition","src":"20861:324:104","nodes":[],"body":{"id":72781,"nodeType":"Block","src":"20921:264:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72754,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71691,"src":"20931:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72755,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20931:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72756,"nodeType":"ExpressionStatement","src":"20931:17:104"},{"assignments":[72758],"declarations":[{"constant":false,"id":72758,"mutability":"mutable","name":"strategy","nameLocation":"20966:8:104","nodeType":"VariableDeclaration","scope":72781,"src":"20958:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72757,"name":"address","nodeType":"ElementaryTypeName","src":"20958:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72767,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":72763,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72751,"src":"20998:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72761,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71624,"src":"20985:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76808","typeString":"contract FAllo"}},"id":72762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20990:7:104","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":76807,"src":"20985: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":72764,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20985:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":72765,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"21006:8:104","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"20985:29:104","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":72760,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"20977:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72759,"name":"address","nodeType":"ElementaryTypeName","src":"20977:7:104","typeDescriptions":{}}},"id":72766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20977:38:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"20958:57:104"},{"condition":{"arguments":[{"expression":{"arguments":[{"id":72771,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66224,"src":"21102:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}],"id":72770,"name":"type","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-27,"src":"21097:4:104","typeDescriptions":{"typeIdentifier":"t_function_metatype_pure$__$returns$__$","typeString":"function () pure"}},"id":72772,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21097:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_magic_meta_type_t_contract$_IPointStrategy_$66224","typeString":"type(contract IPointStrategy)"}},"id":72773,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"21118:11:104","memberName":"interfaceId","nodeType":"MemberAccess","src":"21097:32:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"}],"expression":{"id":72768,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72758,"src":"21070:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":72769,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21079:17:104","memberName":"supportsInterface","nodeType":"MemberAccess","referencedDeclaration":57072,"src":"21070: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":72774,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21070:60:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72780,"nodeType":"IfStatement","src":"21066:113:104","trueBody":{"id":72779,"nodeType":"Block","src":"21132:47:104","statements":[{"expression":{"arguments":[{"id":72776,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72758,"src":"21159:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72775,"name":"_addStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72848,"src":"21146:12:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72777,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21146:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72778,"nodeType":"ExpressionStatement","src":"21146:22:104"}]}}]},"functionSelector":"82d6a1e7","implemented":true,"kind":"function","modifiers":[],"name":"addStrategyByPoolId","nameLocation":"20870:19:104","parameters":{"id":72752,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72751,"mutability":"mutable","name":"poolId","nameLocation":"20898:6:104","nodeType":"VariableDeclaration","scope":72782,"src":"20890:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72750,"name":"uint256","nodeType":"ElementaryTypeName","src":"20890:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"20889:16:104"},"returnParameters":{"id":72753,"nodeType":"ParameterList","parameters":[],"src":"20921:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72795,"nodeType":"FunctionDefinition","src":"21191:128:104","nodes":[],"body":{"id":72794,"nodeType":"Block","src":"21249:70:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72787,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71691,"src":"21259:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72788,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21259:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72789,"nodeType":"ExpressionStatement","src":"21259:17:104"},{"expression":{"arguments":[{"id":72791,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72784,"src":"21299:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72790,"name":"_addStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72848,"src":"21286:12:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72792,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21286:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72793,"nodeType":"ExpressionStatement","src":"21286:26:104"}]},"functionSelector":"223e5479","implemented":true,"kind":"function","modifiers":[],"name":"addStrategy","nameLocation":"21200:11:104","parameters":{"id":72785,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72784,"mutability":"mutable","name":"_newStrategy","nameLocation":"21220:12:104","nodeType":"VariableDeclaration","scope":72795,"src":"21212:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72783,"name":"address","nodeType":"ElementaryTypeName","src":"21212:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"21211:22:104"},"returnParameters":{"id":72786,"nodeType":"ParameterList","parameters":[],"src":"21249:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72848,"nodeType":"FunctionDefinition","src":"21325:456:104","nodes":[],"body":{"id":72847,"nodeType":"Block","src":"21386:395:104","nodes":[],"statements":[{"condition":{"baseExpression":{"id":72800,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71635,"src":"21400:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":72802,"indexExpression":{"id":72801,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72797,"src":"21418:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21400:31:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72807,"nodeType":"IfStatement","src":"21396:85:104","trueBody":{"id":72806,"nodeType":"Block","src":"21433:48:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72803,"name":"StrategyExists","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71527,"src":"21454:14:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72804,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21454:16:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72805,"nodeType":"RevertStatement","src":"21447:23:104"}]}},{"expression":{"id":72812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":72808,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71635,"src":"21490:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":72810,"indexExpression":{"id":72809,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72797,"src":"21508:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"21490:31:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":72811,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"21524:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"21490:38:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72813,"nodeType":"ExpressionStatement","src":"21490:38:104"},{"assignments":[72816],"declarations":[{"constant":false,"id":72816,"mutability":"mutable","name":"sybilScorer","nameLocation":"21551:11:104","nodeType":"VariableDeclaration","scope":72847,"src":"21538:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"},"typeName":{"id":72815,"nodeType":"UserDefinedTypeName","pathNode":{"id":72814,"name":"ISybilScorer","nameLocations":["21538:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":70608,"src":"21538:12:104"},"referencedDeclaration":70608,"src":"21538:12:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"visibility":"internal"}],"id":72825,"initialValue":{"arguments":[],"expression":{"argumentTypes":[],"expression":{"arguments":[{"arguments":[{"id":72820,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72797,"src":"21588:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72819,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21580:8:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":72818,"name":"address","nodeType":"ElementaryTypeName","src":"21580:8:104","stateMutability":"payable","typeDescriptions":{}}},"id":72821,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21580:21:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72817,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70249,"src":"21565:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$70249_$","typeString":"type(contract CVStrategyV0_0)"}},"id":72822,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21565:37:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$70249","typeString":"contract CVStrategyV0_0"}},"id":72823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21603:11:104","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":66631,"src":"21565:49:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISybilScorer_$70608_$","typeString":"function () view external returns (contract ISybilScorer)"}},"id":72824,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21565:51:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"nodeType":"VariableDeclarationStatement","src":"21538:78:104"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72834,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"id":72828,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72816,"src":"21638:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}],"id":72827,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21630:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72826,"name":"address","nodeType":"ElementaryTypeName","src":"21630:7:104","typeDescriptions":{}}},"id":72829,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21630:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":72832,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21662: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":72831,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"21654:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72830,"name":"address","nodeType":"ElementaryTypeName","src":"21654:7:104","typeDescriptions":{}}},"id":72833,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21654:10:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"21630:34:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72842,"nodeType":"IfStatement","src":"21626:107:104","trueBody":{"id":72841,"nodeType":"Block","src":"21666:67:104","statements":[{"expression":{"arguments":[{"id":72838,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72797,"src":"21709:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":72835,"name":"sybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72816,"src":"21680:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70608","typeString":"contract ISybilScorer"}},"id":72837,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21692:16:104","memberName":"activateStrategy","nodeType":"MemberAccess","referencedDeclaration":70607,"src":"21680:28:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":72839,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21680:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72840,"nodeType":"ExpressionStatement","src":"21680:42:104"}]}},{"eventCall":{"arguments":[{"id":72844,"name":"_newStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72797,"src":"21761:12:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72843,"name":"StrategyAdded","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71440,"src":"21747:13:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72845,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21747:27:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72846,"nodeType":"EmitStatement","src":"21742:32:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addStrategy","nameLocation":"21334:12:104","parameters":{"id":72798,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72797,"mutability":"mutable","name":"_newStrategy","nameLocation":"21355:12:104","nodeType":"VariableDeclaration","scope":72848,"src":"21347:20:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72796,"name":"address","nodeType":"ElementaryTypeName","src":"21347:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"21346:22:104"},"returnParameters":{"id":72799,"nodeType":"ParameterList","parameters":[],"src":"21386:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":72870,"nodeType":"FunctionDefinition","src":"21787:220:104","nodes":[],"body":{"id":72869,"nodeType":"Block","src":"21841:166:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72853,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71691,"src":"21851:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72854,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21851:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72855,"nodeType":"ExpressionStatement","src":"21851:17:104"},{"condition":{"baseExpression":{"id":72856,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71635,"src":"21882:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":72858,"indexExpression":{"id":72857,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72850,"src":"21900:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"21882:28:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72864,"nodeType":"IfStatement","src":"21878:85:104","trueBody":{"id":72863,"nodeType":"Block","src":"21912:51:104","statements":[{"expression":{"arguments":[{"id":72860,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72850,"src":"21942:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72859,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72910,"src":"21926:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72861,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21926:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72862,"nodeType":"ExpressionStatement","src":"21926:26:104"}]}},{"eventCall":{"arguments":[{"id":72866,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72850,"src":"21990:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72865,"name":"PoolRejected","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71507,"src":"21977:12:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72867,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21977:23:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72868,"nodeType":"EmitStatement","src":"21972:28:104"}]},"functionSelector":"fb1f6917","implemented":true,"kind":"function","modifiers":[],"name":"rejectPool","nameLocation":"21796:10:104","parameters":{"id":72851,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72850,"mutability":"mutable","name":"_strategy","nameLocation":"21815:9:104","nodeType":"VariableDeclaration","scope":72870,"src":"21807:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72849,"name":"address","nodeType":"ElementaryTypeName","src":"21807:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"21806:19:104"},"returnParameters":{"id":72852,"nodeType":"ParameterList","parameters":[],"src":"21841:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72894,"nodeType":"FunctionDefinition","src":"22013:240:104","nodes":[],"body":{"id":72893,"nodeType":"Block","src":"22076:177:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72875,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71691,"src":"22086:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72876,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22086:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72877,"nodeType":"ExpressionStatement","src":"22086:17:104"},{"assignments":[72879],"declarations":[{"constant":false,"id":72879,"mutability":"mutable","name":"strategy","nameLocation":"22121:8:104","nodeType":"VariableDeclaration","scope":72893,"src":"22113:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72878,"name":"address","nodeType":"ElementaryTypeName","src":"22113:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":72888,"initialValue":{"arguments":[{"expression":{"arguments":[{"id":72884,"name":"poolId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72872,"src":"22153:6:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":72882,"name":"allo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71624,"src":"22140:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_FAllo_$76808","typeString":"contract FAllo"}},"id":72883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22145:7:104","memberName":"getPool","nodeType":"MemberAccess","referencedDeclaration":76807,"src":"22140: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":72885,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22140:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_Pool_$2319_memory_ptr","typeString":"struct IAllo.Pool memory"}},"id":72886,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"22161:8:104","memberName":"strategy","nodeType":"MemberAccess","referencedDeclaration":2309,"src":"22140:29:104","typeDescriptions":{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IStrategy_$2969","typeString":"contract IStrategy"}],"id":72881,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22132:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72880,"name":"address","nodeType":"ElementaryTypeName","src":"22132:7:104","typeDescriptions":{}}},"id":72887,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22132:38:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"22113:57:104"},{"expression":{"arguments":[{"id":72890,"name":"strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72879,"src":"22237:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72889,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72910,"src":"22221:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72891,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22221:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72892,"nodeType":"ExpressionStatement","src":"22221:25:104"}]},"functionSelector":"73265c37","implemented":true,"kind":"function","modifiers":[],"name":"removeStrategyByPoolId","nameLocation":"22022:22:104","parameters":{"id":72873,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72872,"mutability":"mutable","name":"poolId","nameLocation":"22053:6:104","nodeType":"VariableDeclaration","scope":72894,"src":"22045:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":72871,"name":"uint256","nodeType":"ElementaryTypeName","src":"22045:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"22044:16:104"},"returnParameters":{"id":72874,"nodeType":"ParameterList","parameters":[],"src":"22076:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72910,"nodeType":"FunctionDefinition","src":"22259:197:104","nodes":[],"body":{"id":72909,"nodeType":"Block","src":"22320:136:104","nodes":[],"statements":[{"expression":{"id":72903,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":72899,"name":"enabledStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71635,"src":"22372:17:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_bool_$","typeString":"mapping(address => bool)"}},"id":72901,"indexExpression":{"id":72900,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72896,"src":"22390:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"22372:28:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":72902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"22403:5:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"22372:36:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72904,"nodeType":"ExpressionStatement","src":"22372:36:104"},{"eventCall":{"arguments":[{"id":72906,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72896,"src":"22439:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72905,"name":"StrategyRemoved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71444,"src":"22423:15:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72907,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22423:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72908,"nodeType":"EmitStatement","src":"22418:31:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeStrategy","nameLocation":"22268:15:104","parameters":{"id":72897,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72896,"mutability":"mutable","name":"_strategy","nameLocation":"22292:9:104","nodeType":"VariableDeclaration","scope":72910,"src":"22284:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72895,"name":"address","nodeType":"ElementaryTypeName","src":"22284:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"22283:19:104"},"returnParameters":{"id":72898,"nodeType":"ParameterList","parameters":[],"src":"22320:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":72923,"nodeType":"FunctionDefinition","src":"22462:128:104","nodes":[],"body":{"id":72922,"nodeType":"Block","src":"22520:70:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72915,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71691,"src":"22530:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72916,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22530:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72917,"nodeType":"ExpressionStatement","src":"22530:17:104"},{"expression":{"arguments":[{"id":72919,"name":"_strategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72912,"src":"22573:9:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72918,"name":"_removeStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72910,"src":"22557:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22557:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72921,"nodeType":"ExpressionStatement","src":"22557:26:104"}]},"functionSelector":"175188e8","implemented":true,"kind":"function","modifiers":[],"name":"removeStrategy","nameLocation":"22471:14:104","parameters":{"id":72913,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72912,"mutability":"mutable","name":"_strategy","nameLocation":"22494:9:104","nodeType":"VariableDeclaration","scope":72923,"src":"22486:17:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72911,"name":"address","nodeType":"ElementaryTypeName","src":"22486:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"22485:19:104"},"returnParameters":{"id":72914,"nodeType":"ParameterList","parameters":[],"src":"22520:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72944,"nodeType":"FunctionDefinition","src":"22596:251:104","nodes":[],"body":{"id":72943,"nodeType":"Block","src":"22658:189:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":72928,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71691,"src":"22668:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":72929,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22668:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72930,"nodeType":"ExpressionStatement","src":"22668:17:104"},{"expression":{"id":72933,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72931,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71608,"src":"22733:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":72932,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72925,"src":"22754:5:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"22733:26:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":72934,"nodeType":"ExpressionStatement","src":"22733:26:104"},{"eventCall":{"arguments":[{"arguments":[{"id":72938,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71620,"src":"22807:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":72937,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"22799:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72936,"name":"address","nodeType":"ElementaryTypeName","src":"22799:7:104","typeDescriptions":{}}},"id":72939,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22799:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":72940,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71608,"src":"22821: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":72935,"name":"CouncilSafeChangeStarted","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71395,"src":"22774:24:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":72941,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22774:66:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72942,"nodeType":"EmitStatement","src":"22769:71:104"}]},"functionSelector":"397e2543","implemented":true,"kind":"function","modifiers":[],"name":"setCouncilSafe","nameLocation":"22605:14:104","parameters":{"id":72926,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72925,"mutability":"mutable","name":"_safe","nameLocation":"22636:5:104","nodeType":"VariableDeclaration","scope":72944,"src":"22620:21:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"},"typeName":{"id":72924,"name":"address","nodeType":"ElementaryTypeName","src":"22620:15:104","stateMutability":"payable","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"visibility":"internal"}],"src":"22619:23:104"},"returnParameters":{"id":72927,"nodeType":"ParameterList","parameters":[],"src":"22658:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72986,"nodeType":"FunctionDefinition","src":"22853:403:104","nodes":[],"body":{"id":72985,"nodeType":"Block","src":"22897:359:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":72950,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":72947,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"22911:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":72948,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22915:6:104","memberName":"sender","nodeType":"MemberAccess","src":"22911:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":72949,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71608,"src":"22925:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"22911:32:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":72955,"nodeType":"IfStatement","src":"22907:89:104","trueBody":{"id":72954,"nodeType":"Block","src":"22945:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":72951,"name":"SenderNotNewOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71531,"src":"22966:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":72952,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22966:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72953,"nodeType":"RevertStatement","src":"22959:26:104"}]}},{"expression":{"arguments":[{"id":72957,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71674,"src":"23016:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":72958,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71608,"src":"23032:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72956,"name":"_grantRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51957,"src":"23005:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":72959,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23005:46:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72960,"nodeType":"ExpressionStatement","src":"23005:46:104"},{"expression":{"arguments":[{"id":72962,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71674,"src":"23073:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"arguments":[{"id":72965,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71620,"src":"23097:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":72964,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23089:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72963,"name":"address","nodeType":"ElementaryTypeName","src":"23089:7:104","typeDescriptions":{}}},"id":72966,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23089:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":72961,"name":"_revokeRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51988,"src":"23061:11:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address)"}},"id":72967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23061:49:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72968,"nodeType":"ExpressionStatement","src":"23061:49:104"},{"expression":{"id":72973,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":72969,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71620,"src":"23120:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":72971,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71608,"src":"23140:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":72970,"name":"ISafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":77075,"src":"23134:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ISafe_$77075_$","typeString":"type(contract ISafe)"}},"id":72972,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23134:25:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}},"src":"23120:39:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}},"id":72974,"nodeType":"ExpressionStatement","src":"23120:39:104"},{"expression":{"id":72976,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"23169:25:104","subExpression":{"id":72975,"name":"pendingCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71608,"src":"23176:18:104","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72977,"nodeType":"ExpressionStatement","src":"23169:25:104"},{"eventCall":{"arguments":[{"arguments":[{"id":72981,"name":"councilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71620,"src":"23236:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISafe_$77075","typeString":"contract ISafe"}],"id":72980,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23228:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":72979,"name":"address","nodeType":"ElementaryTypeName","src":"23228:7:104","typeDescriptions":{}}},"id":72982,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23228:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":72978,"name":"CouncilSafeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71389,"src":"23209:18:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":72983,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23209:40:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":72984,"nodeType":"EmitStatement","src":"23204:45:104"}]},"functionSelector":"b5058c50","implemented":true,"kind":"function","modifiers":[],"name":"acceptCouncilSafe","nameLocation":"22862:17:104","parameters":{"id":72945,"nodeType":"ParameterList","parameters":[],"src":"22879:2:104"},"returnParameters":{"id":72946,"nodeType":"ParameterList","parameters":[],"src":"22897:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":72999,"nodeType":"FunctionDefinition","src":"23262:135:104","nodes":[],"body":{"id":72998,"nodeType":"Block","src":"23332:65:104","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":72993,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71648,"src":"23349:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":72995,"indexExpression":{"id":72994,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72988,"src":"23369:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23349:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage","typeString":"struct Member storage ref"}},"id":72996,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"23378:12:104","memberName":"isRegistered","nodeType":"MemberAccess","referencedDeclaration":71358,"src":"23349:41:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":72992,"id":72997,"nodeType":"Return","src":"23342:48:104"}]},"functionSelector":"a230c524","implemented":true,"kind":"function","modifiers":[],"name":"isMember","nameLocation":"23271:8:104","parameters":{"id":72989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72988,"mutability":"mutable","name":"_member","nameLocation":"23288:7:104","nodeType":"VariableDeclaration","scope":72999,"src":"23280:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":72987,"name":"address","nodeType":"ElementaryTypeName","src":"23280:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"23279:17:104"},"returnParameters":{"id":72992,"nodeType":"ParameterList","parameters":[{"constant":false,"id":72991,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":72999,"src":"23326:4:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":72990,"name":"bool","nodeType":"ElementaryTypeName","src":"23326:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"23325:6:104"},"scope":73556,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":73120,"nodeType":"FunctionDefinition","src":"23403:1963:104","nodes":[],"body":{"id":73119,"nodeType":"Block","src":"23490:1876:104","nodes":[],"statements":[{"assignments":[73008],"declarations":[{"constant":false,"id":73008,"mutability":"mutable","name":"gardensFactory","nameLocation":"23517:14:104","nodeType":"VariableDeclaration","scope":73119,"src":"23500:31:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70530","typeString":"contract IRegistryFactory"},"typeName":{"id":73007,"nodeType":"UserDefinedTypeName","pathNode":{"id":73006,"name":"IRegistryFactory","nameLocations":["23500:16:104"],"nodeType":"IdentifierPath","referencedDeclaration":70530,"src":"23500:16:104"},"referencedDeclaration":70530,"src":"23500:16:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70530","typeString":"contract IRegistryFactory"}},"visibility":"internal"}],"id":73012,"initialValue":{"arguments":[{"id":73010,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71599,"src":"23551:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73009,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70530,"src":"23534:16:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistryFactory_$70530_$","typeString":"type(contract IRegistryFactory)"}},"id":73011,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23534:33:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70530","typeString":"contract IRegistryFactory"}},"nodeType":"VariableDeclarationStatement","src":"23500:67:104"},{"assignments":[73014],"declarations":[{"constant":false,"id":73014,"mutability":"mutable","name":"communityFeeAmount","nameLocation":"23585:18:104","nodeType":"VariableDeclaration","scope":73119,"src":"23577:26:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73013,"name":"uint256","nodeType":"ElementaryTypeName","src":"23577:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":73024,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73023,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73015,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"23607:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":73016,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71584,"src":"23629:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23607:34:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":73018,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"23606:36:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73021,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":73019,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23646:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":73020,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71572,"src":"23652:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23646:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":73022,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23645:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23606:62:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23577:91:104"},{"assignments":[73026],"declarations":[{"constant":false,"id":73026,"mutability":"mutable","name":"gardensFeeAmount","nameLocation":"23686:16:104","nodeType":"VariableDeclaration","scope":73119,"src":"23678:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73025,"name":"uint256","nodeType":"ElementaryTypeName","src":"23678:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":73042,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73041,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73035,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73027,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"23718:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[{"id":73032,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"23778:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":73031,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"23770:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73030,"name":"address","nodeType":"ElementaryTypeName","src":"23770:7:104","typeDescriptions":{}}},"id":73033,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23770:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":73028,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73008,"src":"23740:14:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70530","typeString":"contract IRegistryFactory"}},"id":73029,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23755:14:104","memberName":"getProtocolFee","nodeType":"MemberAccess","referencedDeclaration":70529,"src":"23740:29:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":73034,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23740:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23718:66:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":73036,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"23717:68:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73039,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":73037,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23789:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":73038,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71572,"src":"23795:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23789:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":73040,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"23788:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23717:94:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"23678:133:104"},{"condition":{"id":73047,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"23825:21:104","subExpression":{"arguments":[{"expression":{"id":73044,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"23835:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":73045,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23839:6:104","memberName":"sender","nodeType":"MemberAccess","src":"23835:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73043,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72999,"src":"23826:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":73046,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23826:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73118,"nodeType":"IfStatement","src":"23821:1539:104","trueBody":{"id":73117,"nodeType":"Block","src":"23848:1512:104","statements":[{"expression":{"id":73054,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73048,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71648,"src":"23862:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":73051,"indexExpression":{"expression":{"id":73049,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"23882:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":73050,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23886:6:104","memberName":"sender","nodeType":"MemberAccess","src":"23882:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23862:31:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage","typeString":"struct Member storage ref"}},"id":73052,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"23894:12:104","memberName":"isRegistered","nodeType":"MemberAccess","referencedDeclaration":71358,"src":"23862:44:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":73053,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"23909:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"23862:51:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73055,"nodeType":"ExpressionStatement","src":"23862:51:104"},{"expression":{"id":73062,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73056,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71648,"src":"23928:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":73059,"indexExpression":{"expression":{"id":73057,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"23948:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":73058,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23952:6:104","memberName":"sender","nodeType":"MemberAccess","src":"23948:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"23928:31:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage","typeString":"struct Member storage ref"}},"id":73060,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"23960:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":71356,"src":"23928:44:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73061,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"23975:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"23928:66:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73063,"nodeType":"ExpressionStatement","src":"23928:66:104"},{"expression":{"arguments":[{"expression":{"id":73067,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"24192:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":73068,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24196:6:104","memberName":"sender","nodeType":"MemberAccess","src":"24192:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"id":73071,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"24212:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":73070,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"24204:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73069,"name":"address","nodeType":"ElementaryTypeName","src":"24204:7:104","typeDescriptions":{}}},"id":73072,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24204:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73077,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73075,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73073,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"24219:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":73074,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73014,"src":"24241:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24219:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":73076,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73026,"src":"24262:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"24219: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":73064,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71616,"src":"24146:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":73066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24158:16:104","memberName":"safeTransferFrom","nodeType":"MemberAccess","referencedDeclaration":55946,"src":"24146:28:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_address_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$55825_$","typeString":"function (contract IERC20,address,address,uint256)"}},"id":73078,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24146:146:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73079,"nodeType":"ExpressionStatement","src":"24146:146:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73082,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73080,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73014,"src":"24717:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":73081,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24738:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"24717:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73091,"nodeType":"IfStatement","src":"24713:178:104","trueBody":{"id":73090,"nodeType":"Block","src":"24741:150:104","statements":[{"expression":{"arguments":[{"id":73086,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71596,"src":"24844:11:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73087,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73014,"src":"24857:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":73083,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71616,"src":"24819:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":73085,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24831:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":55919,"src":"24819:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$55825_$","typeString":"function (contract IERC20,address,uint256)"}},"id":73088,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24819:57:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73089,"nodeType":"ExpressionStatement","src":"24819:57:104"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73094,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73092,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73026,"src":"24974:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":73093,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24993:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"24974:20:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73105,"nodeType":"IfStatement","src":"24970:255:104","trueBody":{"id":73104,"nodeType":"Block","src":"24996:229:104","statements":[{"expression":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":73098,"name":"gardensFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73008,"src":"25153:14:104","typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70530","typeString":"contract IRegistryFactory"}},"id":73099,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25168:21:104","memberName":"getGardensFeeReceiver","nodeType":"MemberAccess","referencedDeclaration":70522,"src":"25153:36:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_address_$","typeString":"function () view external returns (address)"}},"id":73100,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25153:38:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73101,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73026,"src":"25193:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":73095,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71616,"src":"25128:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":73097,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25140:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":55919,"src":"25128:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$55825_$","typeString":"function (contract IERC20,address,uint256)"}},"id":73102,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25128:82:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73103,"nodeType":"ExpressionStatement","src":"25128:82:104"}]}},{"expression":{"id":73108,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73106,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71668,"src":"25238:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"+=","rightHandSide":{"hexValue":"31","id":73107,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25254:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"25238:17:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73109,"nodeType":"ExpressionStatement","src":"25238:17:104"},{"eventCall":{"arguments":[{"expression":{"id":73111,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"25304:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":73112,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25308:6:104","memberName":"sender","nodeType":"MemberAccess","src":"25304:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73113,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"25316:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":73114,"name":"covenantSig","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73001,"src":"25337:11:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":73110,"name":"MemberRegisteredWithCovenant","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71409,"src":"25275:28:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$_t_string_memory_ptr_$returns$__$","typeString":"function (address,uint256,string memory)"}},"id":73115,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25275:74:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73116,"nodeType":"EmitStatement","src":"25270:79:104"}]}}]},"functionSelector":"9a1f46e2","implemented":true,"kind":"function","modifiers":[{"id":73004,"kind":"modifierInvocation","modifierName":{"id":73003,"name":"nonReentrant","nameLocations":["23477:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":52494,"src":"23477:12:104"},"nodeType":"ModifierInvocation","src":"23477:12:104"}],"name":"stakeAndRegisterMember","nameLocation":"23412:22:104","parameters":{"id":73002,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73001,"mutability":"mutable","name":"covenantSig","nameLocation":"23449:11:104","nodeType":"VariableDeclaration","scope":73120,"src":"23435:25:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":73000,"name":"string","nodeType":"ElementaryTypeName","src":"23435:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"23434:27:104"},"returnParameters":{"id":73005,"nodeType":"ParameterList","parameters":[],"src":"23490:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73164,"nodeType":"FunctionDefinition","src":"25372:429:104","nodes":[],"body":{"id":73163,"nodeType":"Block","src":"25444:357:104","nodes":[],"statements":[{"assignments":[73126],"declarations":[{"constant":false,"id":73126,"mutability":"mutable","name":"communityFeeAmount","nameLocation":"25462:18:104","nodeType":"VariableDeclaration","scope":73163,"src":"25454:26:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73125,"name":"uint256","nodeType":"ElementaryTypeName","src":"25454:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":73136,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73135,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73129,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73127,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"25484:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":73128,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71584,"src":"25506:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25484:34:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":73130,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"25483:36:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73133,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":73131,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25523:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":73132,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71572,"src":"25529:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25523:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":73134,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"25522:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25483:62:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"25454:91:104"},{"assignments":[73138],"declarations":[{"constant":false,"id":73138,"mutability":"mutable","name":"gardensFeeAmount","nameLocation":"25563:16:104","nodeType":"VariableDeclaration","scope":73163,"src":"25555:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73137,"name":"uint256","nodeType":"ElementaryTypeName","src":"25555:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":73156,"initialValue":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73155,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73139,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"25596:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"arguments":[{"arguments":[{"id":73146,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"25675:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":73145,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"25667:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73144,"name":"address","nodeType":"ElementaryTypeName","src":"25667:7:104","typeDescriptions":{}}},"id":73147,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25667:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"id":73141,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71599,"src":"25635:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73140,"name":"IRegistryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70530,"src":"25618:16:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IRegistryFactory_$70530_$","typeString":"type(contract IRegistryFactory)"}},"id":73142,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25618:33:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IRegistryFactory_$70530","typeString":"contract IRegistryFactory"}},"id":73143,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25652:14:104","memberName":"getProtocolFee","nodeType":"MemberAccess","referencedDeclaration":70529,"src":"25618:48:104","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":73148,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25618:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25596:85:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":73150,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"25582:109:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"/","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73153,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"leftExpression":{"hexValue":"313030","id":73151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25695:3:104","typeDescriptions":{"typeIdentifier":"t_rational_100_by_1","typeString":"int_const 100"},"value":"100"},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"id":73152,"name":"PRECISION_SCALE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71572,"src":"25701:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25695:21:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"id":73154,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"25694:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25582:135:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"25555:162:104"},{"expression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73161,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73159,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73157,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"25735:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":73158,"name":"communityFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73126,"src":"25757:18:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25735:40:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":73160,"name":"gardensFeeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73138,"src":"25778:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"25735:59:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":73124,"id":73162,"nodeType":"Return","src":"25728:66:104"}]},"functionSelector":"28c309e9","implemented":true,"kind":"function","modifiers":[],"name":"getStakeAmountWithFees","nameLocation":"25381:22:104","parameters":{"id":73121,"nodeType":"ParameterList","parameters":[],"src":"25403:2:104"},"returnParameters":{"id":73124,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73123,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":73164,"src":"25435:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73122,"name":"uint256","nodeType":"ElementaryTypeName","src":"25435:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25434:9:104"},"scope":73556,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":73172,"nodeType":"FunctionDefinition","src":"25807:115:104","nodes":[],"body":{"id":73171,"nodeType":"Block","src":"25879:43:104","nodes":[],"statements":[{"expression":{"id":73169,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"25896:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":73168,"id":73170,"nodeType":"Return","src":"25889:26:104"}]},"functionSelector":"0331383c","implemented":true,"kind":"function","modifiers":[],"name":"getBasisStakedAmount","nameLocation":"25816:20:104","parameters":{"id":73165,"nodeType":"ParameterList","parameters":[],"src":"25836:2:104"},"returnParameters":{"id":73168,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73167,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":73172,"src":"25870:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73166,"name":"uint256","nodeType":"ElementaryTypeName","src":"25870:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25869:9:104"},"scope":73556,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":73192,"nodeType":"FunctionDefinition","src":"25928:222:104","nodes":[],"body":{"id":73191,"nodeType":"Block","src":"25993:157:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":73177,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71691,"src":"26003:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":73178,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26003:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73179,"nodeType":"ExpressionStatement","src":"26003:17:104"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":73180,"name":"onlyEmptyCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71748,"src":"26030:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":73181,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26030:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73182,"nodeType":"ExpressionStatement","src":"26030:20:104"},{"expression":{"id":73185,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73183,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"26060:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73184,"name":"_newAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73174,"src":"26082:10:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26060:32:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73186,"nodeType":"ExpressionStatement","src":"26060:32:104"},{"eventCall":{"arguments":[{"id":73188,"name":"_newAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73174,"src":"26132:10:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":73187,"name":"BasisStakedAmountUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71462,"src":"26107:24:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":73189,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26107:36:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73190,"nodeType":"EmitStatement","src":"26102:41:104"}]},"functionSelector":"31f61bca","implemented":true,"kind":"function","modifiers":[],"name":"setBasisStakedAmount","nameLocation":"25937:20:104","parameters":{"id":73175,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73174,"mutability":"mutable","name":"_newAmount","nameLocation":"25966:10:104","nodeType":"VariableDeclaration","scope":73192,"src":"25958:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73173,"name":"uint256","nodeType":"ElementaryTypeName","src":"25958:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"25957:20:104"},"returnParameters":{"id":73176,"nodeType":"ParameterList","parameters":[],"src":"25993:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73354,"nodeType":"FunctionDefinition","src":"26156:1574:104","nodes":[],"body":{"id":73353,"nodeType":"Block","src":"26225:1505:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":73198,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71691,"src":"26235:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":73199,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26235:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73200,"nodeType":"ExpressionStatement","src":"26235:17:104"},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":73224,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":73209,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73204,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":73201,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"26279:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73202,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26287:19:104","memberName":"registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":71369,"src":"26279:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":73203,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"26310:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26279:50:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":73208,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":73205,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"26333:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73206,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26341:13:104","memberName":"isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":71371,"src":"26333:21:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":73207,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71593,"src":"26358:13:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"26333:38:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"26279:92:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":73223,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"expression":{"id":73213,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"26407:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73214,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26415:16:104","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":71373,"src":"26407:24:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":73212,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"26401:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":73211,"name":"bytes","nodeType":"ElementaryTypeName","src":"26401:5:104","typeDescriptions":{}}},"id":73215,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26401:31:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":73210,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"26391:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":73216,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26391:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[{"id":73220,"name":"covenantIpfsHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71630,"src":"26453:16:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}],"id":73219,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"26447:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":73218,"name":"bytes","nodeType":"ElementaryTypeName","src":"26447:5:104","typeDescriptions":{}}},"id":73221,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26447:23:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes storage pointer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes storage pointer"}],"id":73217,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"26437:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":73222,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26437:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"26391:80:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"26279:192:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73282,"nodeType":"IfStatement","src":"26262:854:104","trueBody":{"id":73281,"nodeType":"Block","src":"26482:634:104","statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":73225,"name":"onlyEmptyCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71748,"src":"26496:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":73226,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26496:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73227,"nodeType":"ExpressionStatement","src":"26496:20:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73231,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":73228,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"26534:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73229,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26542:19:104","memberName":"registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":71369,"src":"26534:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":73230,"name":"registerStakeAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71581,"src":"26565:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"26534:50:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73238,"nodeType":"IfStatement","src":"26530:138:104","trueBody":{"id":73237,"nodeType":"Block","src":"26586:82:104","statements":[{"expression":{"arguments":[{"expression":{"id":73233,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"26625:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73234,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26633:19:104","memberName":"registerStakeAmount","nodeType":"MemberAccess","referencedDeclaration":71369,"src":"26625:27:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":73232,"name":"setBasisStakedAmount","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73192,"src":"26604:20:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":73235,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26604:49:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73236,"nodeType":"ExpressionStatement","src":"26604:49:104"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":73242,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":73239,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"26685:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73240,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26693:13:104","memberName":"isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":71371,"src":"26685:21:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":73241,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71593,"src":"26710:13:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"26685:38:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73254,"nodeType":"IfStatement","src":"26681:178:104","trueBody":{"id":73253,"nodeType":"Block","src":"26725:134:104","statements":[{"expression":{"id":73246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73243,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71593,"src":"26743:13:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":73244,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"26759:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73245,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26767:13:104","memberName":"isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":71371,"src":"26759:21:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"26743:37:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73247,"nodeType":"ExpressionStatement","src":"26743:37:104"},{"eventCall":{"arguments":[{"expression":{"id":73249,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"26822:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73250,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26830:13:104","memberName":"isKickEnabled","nodeType":"MemberAccess","referencedDeclaration":71371,"src":"26822:21:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"}],"id":73248,"name":"KickEnabledUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71486,"src":"26803:18:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_bool_$returns$__$","typeString":"function (bool)"}},"id":73251,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26803:41:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73252,"nodeType":"EmitStatement","src":"26798:46:104"}]}},{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":73268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"expression":{"id":73258,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"26892:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73259,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"26900:16:104","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":71373,"src":"26892:24:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":73257,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"26886:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":73256,"name":"bytes","nodeType":"ElementaryTypeName","src":"26886:5:104","typeDescriptions":{}}},"id":73260,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26886:31:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":73255,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"26876:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":73261,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26876:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[{"id":73265,"name":"covenantIpfsHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71630,"src":"26938:16:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}],"id":73264,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"26932:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":73263,"name":"bytes","nodeType":"ElementaryTypeName","src":"26932:5:104","typeDescriptions":{}}},"id":73266,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26932:23:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes storage pointer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes storage pointer"}],"id":73262,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"26922:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":73267,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26922:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"26876:80:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73280,"nodeType":"IfStatement","src":"26872:234:104","trueBody":{"id":73279,"nodeType":"Block","src":"26958:148:104","statements":[{"expression":{"id":73272,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73269,"name":"covenantIpfsHash","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71630,"src":"26976:16:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":73270,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"26995:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73271,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27003:16:104","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":71373,"src":"26995:24:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"26976:43:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":73273,"nodeType":"ExpressionStatement","src":"26976:43:104"},{"eventCall":{"arguments":[{"expression":{"id":73275,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"27066:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73276,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27074:16:104","memberName":"covenantIpfsHash","nodeType":"MemberAccess","referencedDeclaration":71373,"src":"27066:24:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":73274,"name":"CovenantIpfsHashUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71482,"src":"27042:23:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":73277,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27042:49:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73278,"nodeType":"EmitStatement","src":"27037:54:104"}]}}]}},{"condition":{"commonType":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"id":73296,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"expression":{"id":73286,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"27145:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73287,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27153:13:104","memberName":"communityName","nodeType":"MemberAccess","referencedDeclaration":71367,"src":"27145:21:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":73285,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"27139:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":73284,"name":"bytes","nodeType":"ElementaryTypeName","src":"27139:5:104","typeDescriptions":{}}},"id":73288,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27139:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":73283,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"27129:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":73289,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27129:39:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"arguments":[{"id":73293,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71627,"src":"27188:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}],"id":73292,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"27182:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":73291,"name":"bytes","nodeType":"ElementaryTypeName","src":"27182:5:104","typeDescriptions":{}}},"id":73294,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27182:20:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes storage pointer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes storage pointer"}],"id":73290,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-8,"src":"27172:9:104","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":73295,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27172:31:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"src":"27129:74:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73308,"nodeType":"IfStatement","src":"27125:204:104","trueBody":{"id":73307,"nodeType":"Block","src":"27205:124:104","statements":[{"expression":{"id":73300,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73297,"name":"communityName","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71627,"src":"27219:13:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":73298,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"27235:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73299,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27243:13:104","memberName":"communityName","nodeType":"MemberAccess","referencedDeclaration":71367,"src":"27235:21:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"27219:37:104","typeDescriptions":{"typeIdentifier":"t_string_storage","typeString":"string storage ref"}},"id":73301,"nodeType":"ExpressionStatement","src":"27219:37:104"},{"eventCall":{"arguments":[{"expression":{"id":73303,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"27296:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73304,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27304:13:104","memberName":"communityName","nodeType":"MemberAccess","referencedDeclaration":71367,"src":"27296:21:104","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":73302,"name":"CommunityNameUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71478,"src":"27275:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory)"}},"id":73305,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27275:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73306,"nodeType":"EmitStatement","src":"27270:48:104"}]}},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73312,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":73309,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"27342:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73310,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27350:12:104","memberName":"communityFee","nodeType":"MemberAccess","referencedDeclaration":71365,"src":"27342:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":73311,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71584,"src":"27366:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27342:36:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73319,"nodeType":"IfStatement","src":"27338:104:104","trueBody":{"id":73318,"nodeType":"Block","src":"27380:62:104","statements":[{"expression":{"arguments":[{"expression":{"id":73314,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"27410:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73315,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27418:12:104","memberName":"communityFee","nodeType":"MemberAccess","referencedDeclaration":71365,"src":"27410:20:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":73313,"name":"setCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73379,"src":"27394:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":73316,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27394:37:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73317,"nodeType":"ExpressionStatement","src":"27394:37:104"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":73323,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":73320,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"27455:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73321,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27463:11:104","memberName":"feeReceiver","nodeType":"MemberAccess","referencedDeclaration":71363,"src":"27455:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"id":73322,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71596,"src":"27478:11:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"27455:34:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73335,"nodeType":"IfStatement","src":"27451:156:104","trueBody":{"id":73334,"nodeType":"Block","src":"27491:116:104","statements":[{"expression":{"id":73327,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73324,"name":"feeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71596,"src":"27505:11:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":73325,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"27519:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73326,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27527:11:104","memberName":"feeReceiver","nodeType":"MemberAccess","referencedDeclaration":71363,"src":"27519:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"27505:33:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73328,"nodeType":"ExpressionStatement","src":"27505:33:104"},{"eventCall":{"arguments":[{"expression":{"id":73330,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"27576:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73331,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27584:11:104","memberName":"feeReceiver","nodeType":"MemberAccess","referencedDeclaration":71363,"src":"27576:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73329,"name":"FeeReceiverChanged","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71490,"src":"27557:18:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73332,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27557:39:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73333,"nodeType":"EmitStatement","src":"27552:44:104"}]}},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":73342,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":73336,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"27620:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73337,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27628:11:104","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71361,"src":"27620:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":73340,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27651: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":73339,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"27643:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73338,"name":"address","nodeType":"ElementaryTypeName","src":"27643:7:104","typeDescriptions":{}}},"id":73341,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27643:10:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"27620:33:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73352,"nodeType":"IfStatement","src":"27616:108:104","trueBody":{"id":73351,"nodeType":"Block","src":"27655:69:104","statements":[{"expression":{"arguments":[{"arguments":[{"expression":{"id":73346,"name":"_params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73195,"src":"27692:7:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams memory"}},"id":73347,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"27700:11:104","memberName":"councilSafe","nodeType":"MemberAccess","referencedDeclaration":71361,"src":"27692:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73345,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"27684:8:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":73344,"name":"address","nodeType":"ElementaryTypeName","src":"27684:8:104","stateMutability":"payable","typeDescriptions":{}}},"id":73348,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27684:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":73343,"name":"setCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72944,"src":"27669:14:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_payable_$returns$__$","typeString":"function (address payable)"}},"id":73349,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27669:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73350,"nodeType":"ExpressionStatement","src":"27669:44:104"}]}}]},"functionSelector":"f2d774e7","implemented":true,"kind":"function","modifiers":[],"name":"setCommunityParams","nameLocation":"26165:18:104","parameters":{"id":73196,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73195,"mutability":"mutable","name":"_params","nameLocation":"26207:7:104","nodeType":"VariableDeclaration","scope":73354,"src":"26184:30:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_memory_ptr","typeString":"struct CommunityParams"},"typeName":{"id":73194,"nodeType":"UserDefinedTypeName","pathNode":{"id":73193,"name":"CommunityParams","nameLocations":["26184:15:104"],"nodeType":"IdentifierPath","referencedDeclaration":71374,"src":"26184:15:104"},"referencedDeclaration":71374,"src":"26184:15:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityParams_$71374_storage_ptr","typeString":"struct CommunityParams"}},"visibility":"internal"}],"src":"26183:32:104"},"returnParameters":{"id":73197,"nodeType":"ParameterList","parameters":[],"src":"26225:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":73379,"nodeType":"FunctionDefinition","src":"27736:288:104","nodes":[],"body":{"id":73378,"nodeType":"Block","src":"27802:222:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":73359,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71691,"src":"27812:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":73360,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27812:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73361,"nodeType":"ExpressionStatement","src":"27812:17:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73364,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73362,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73356,"src":"27843:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"id":73363,"name":"MAX_FEE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71578,"src":"27862:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27843:26:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73369,"nodeType":"IfStatement","src":"27839:86:104","trueBody":{"id":73368,"nodeType":"Block","src":"27871:54:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":73365,"name":"NewFeeGreaterThanMax","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71537,"src":"27892:20:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":73366,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27892:22:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73367,"nodeType":"RevertStatement","src":"27885:29:104"}]}},{"expression":{"id":73372,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73370,"name":"communityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71584,"src":"27934:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73371,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73356,"src":"27949:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"27934:31:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73373,"nodeType":"ExpressionStatement","src":"27934:31:104"},{"eventCall":{"arguments":[{"id":73375,"name":"_newCommunityFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73356,"src":"28000:16:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":73374,"name":"CommunityFeeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71427,"src":"27980:19:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":73376,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27980:37:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73377,"nodeType":"EmitStatement","src":"27975:42:104"}]},"functionSelector":"0d12bbdb","implemented":true,"kind":"function","modifiers":[],"name":"setCommunityFee","nameLocation":"27745:15:104","parameters":{"id":73357,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73356,"mutability":"mutable","name":"_newCommunityFee","nameLocation":"27769:16:104","nodeType":"VariableDeclaration","scope":73379,"src":"27761:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73355,"name":"uint256","nodeType":"ElementaryTypeName","src":"27761:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"27760:26:104"},"returnParameters":{"id":73358,"nodeType":"ParameterList","parameters":[],"src":"27802:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73392,"nodeType":"FunctionDefinition","src":"28030:133:104","nodes":[],"body":{"id":73391,"nodeType":"Block","src":"28107:56:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":73387,"name":"COUNCIL_MEMBER","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71674,"src":"28132:14:104","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":73388,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73381,"src":"28148:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"id":73386,"name":"hasRole","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":51753,"src":"28124:7:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes32_$_t_address_$returns$_t_bool_$","typeString":"function (bytes32,address) view returns (bool)"}},"id":73389,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28124:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":73385,"id":73390,"nodeType":"Return","src":"28117:39:104"}]},"functionSelector":"ebd7dc52","implemented":true,"kind":"function","modifiers":[],"name":"isCouncilMember","nameLocation":"28039:15:104","parameters":{"id":73382,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73381,"mutability":"mutable","name":"_member","nameLocation":"28063:7:104","nodeType":"VariableDeclaration","scope":73392,"src":"28055:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73380,"name":"address","nodeType":"ElementaryTypeName","src":"28055:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"28054:17:104"},"returnParameters":{"id":73385,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73384,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":73392,"src":"28101:4:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73383,"name":"bool","nodeType":"ElementaryTypeName","src":"28101:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"28100:6:104"},"scope":73556,"stateMutability":"view","virtual":true,"visibility":"public"},{"id":73450,"nodeType":"FunctionDefinition","src":"28169:643:104","nodes":[],"body":{"id":73449,"nodeType":"Block","src":"28225:587:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":73397,"name":"onlyRegistryMemberSender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71705,"src":"28235:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":73398,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28235:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73399,"nodeType":"ExpressionStatement","src":"28235:26:104"},{"assignments":[73401],"declarations":[{"constant":false,"id":73401,"mutability":"mutable","name":"_member","nameLocation":"28279:7:104","nodeType":"VariableDeclaration","scope":73449,"src":"28271:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73400,"name":"address","nodeType":"ElementaryTypeName","src":"28271:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":73404,"initialValue":{"expression":{"id":73402,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"28289:3:104","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":73403,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"28293:6:104","memberName":"sender","nodeType":"MemberAccess","src":"28289:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"28271:28:104"},{"expression":{"arguments":[{"id":73406,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73401,"src":"28333:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73405,"name":"deactivateAllStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73487,"src":"28309:23:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73407,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28309:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73408,"nodeType":"ExpressionStatement","src":"28309:32:104"},{"assignments":[73411],"declarations":[{"constant":false,"id":73411,"mutability":"mutable","name":"member","nameLocation":"28365:6:104","nodeType":"VariableDeclaration","scope":73449,"src":"28351:20:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_memory_ptr","typeString":"struct Member"},"typeName":{"id":73410,"nodeType":"UserDefinedTypeName","pathNode":{"id":73409,"name":"Member","nameLocations":["28351:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":71359,"src":"28351:6:104"},"referencedDeclaration":71359,"src":"28351:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":73415,"initialValue":{"baseExpression":{"id":73412,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71648,"src":"28374:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":73414,"indexExpression":{"id":73413,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73401,"src":"28394:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"28374:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"28351:51:104"},{"expression":{"id":73419,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"28412:35:104","subExpression":{"baseExpression":{"id":73416,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71648,"src":"28419:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":73418,"indexExpression":{"id":73417,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73401,"src":"28439:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"28419:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage","typeString":"struct Member storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73420,"nodeType":"ExpressionStatement","src":"28412:35:104"},{"expression":{"id":73424,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"28457:34:104","subExpression":{"baseExpression":{"id":73421,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"28464:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":73423,"indexExpression":{"id":73422,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73401,"src":"28483:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"28464:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73425,"nodeType":"ExpressionStatement","src":"28457:34:104"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73426,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71668,"src":"28619:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":73427,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28634:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"28619:16:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73434,"nodeType":"IfStatement","src":"28615:64:104","trueBody":{"id":73433,"nodeType":"Block","src":"28637:42:104","statements":[{"expression":{"id":73431,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73429,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71668,"src":"28651:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":73430,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28667:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"28651:17:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73432,"nodeType":"ExpressionStatement","src":"28651:17:104"}]}},{"expression":{"arguments":[{"id":73438,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73401,"src":"28713:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":73439,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73411,"src":"28722:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_memory_ptr","typeString":"struct Member memory"}},"id":73440,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28729:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":71356,"src":"28722:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":73435,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71616,"src":"28688:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":73437,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"28700:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":55919,"src":"28688:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$55825_$","typeString":"function (contract IERC20,address,uint256)"}},"id":73441,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28688:54:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73442,"nodeType":"ExpressionStatement","src":"28688:54:104"},{"eventCall":{"arguments":[{"id":73444,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73401,"src":"28776:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":73445,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73411,"src":"28785:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_memory_ptr","typeString":"struct Member memory"}},"id":73446,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"28792:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":71356,"src":"28785:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":73443,"name":"MemberUnregistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71415,"src":"28757:18:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":73447,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28757:48:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73448,"nodeType":"EmitStatement","src":"28752:53:104"}]},"functionSelector":"b99b4370","implemented":true,"kind":"function","modifiers":[{"id":73395,"kind":"modifierInvocation","modifierName":{"id":73394,"name":"nonReentrant","nameLocations":["28212:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":52494,"src":"28212:12:104"},"nodeType":"ModifierInvocation","src":"28212:12:104"}],"name":"unregisterMember","nameLocation":"28178:16:104","parameters":{"id":73393,"nodeType":"ParameterList","parameters":[],"src":"28194:2:104"},"returnParameters":{"id":73396,"nodeType":"ParameterList","parameters":[],"src":"28225:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73487,"nodeType":"FunctionDefinition","src":"28818:474:104","nodes":[],"body":{"id":73486,"nodeType":"Block","src":"28885:407:104","nodes":[],"statements":[{"assignments":[73459],"declarations":[{"constant":false,"id":73459,"mutability":"mutable","name":"memberStrategies","nameLocation":"28912:16:104","nodeType":"VariableDeclaration","scope":73486,"src":"28895:33:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":73457,"name":"address","nodeType":"ElementaryTypeName","src":"28895:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73458,"nodeType":"ArrayTypeName","src":"28895:9:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":73463,"initialValue":{"baseExpression":{"id":73460,"name":"strategiesByMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71654,"src":"28931:18:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_array$_t_address_$dyn_storage_$","typeString":"mapping(address => address[] storage ref)"}},"id":73462,"indexExpression":{"id":73461,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73452,"src":"28950:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"28931:27:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage","typeString":"address[] storage ref"}},"nodeType":"VariableDeclarationStatement","src":"28895:63:104"},{"body":{"id":73484,"nodeType":"Block","src":"29088:198:104","statements":[{"expression":{"arguments":[{"id":73481,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73452,"src":"29267:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"baseExpression":{"id":73476,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73459,"src":"29229:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":73478,"indexExpression":{"id":73477,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73465,"src":"29246:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29229:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73475,"name":"IPointStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":66224,"src":"29214:14:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IPointStrategy_$66224_$","typeString":"type(contract IPointStrategy)"}},"id":73479,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29214:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IPointStrategy_$66224","typeString":"contract IPointStrategy"}},"id":73480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"29250:16:104","memberName":"deactivatePoints","nodeType":"MemberAccess","referencedDeclaration":66199,"src":"29214:52:104","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":73482,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29214:61:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73483,"nodeType":"ExpressionStatement","src":"29214:61:104"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":73471,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73468,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73465,"src":"29054:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":73469,"name":"memberStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73459,"src":"29058:16:104","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":73470,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"29075:6:104","memberName":"length","nodeType":"MemberAccess","src":"29058:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"29054:27:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73485,"initializationExpression":{"assignments":[73465],"declarations":[{"constant":false,"id":73465,"mutability":"mutable","name":"i","nameLocation":"29047:1:104","nodeType":"VariableDeclaration","scope":73485,"src":"29039:9:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73464,"name":"uint256","nodeType":"ElementaryTypeName","src":"29039:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":73467,"initialValue":{"hexValue":"30","id":73466,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29051:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"29039:13:104"},"loopExpression":{"expression":{"id":73473,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"29083:3:104","subExpression":{"id":73472,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73465,"src":"29083:1:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73474,"nodeType":"ExpressionStatement","src":"29083:3:104"},"nodeType":"ForStatement","src":"29034:252:104"}]},"implemented":true,"kind":"function","modifiers":[],"name":"deactivateAllStrategies","nameLocation":"28827:23:104","parameters":{"id":73453,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73452,"mutability":"mutable","name":"_member","nameLocation":"28859:7:104","nodeType":"VariableDeclaration","scope":73487,"src":"28851:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73451,"name":"address","nodeType":"ElementaryTypeName","src":"28851:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"28850:17:104"},"returnParameters":{"id":73454,"nodeType":"ParameterList","parameters":[],"src":"28885:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"internal"},{"id":73551,"nodeType":"FunctionDefinition","src":"29298:610:104","nodes":[],"body":{"id":73550,"nodeType":"Block","src":"29389:519:104","nodes":[],"statements":[{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":73496,"name":"onlyCouncilSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71691,"src":"29399:15:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$__$","typeString":"function () view"}},"id":73497,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29399:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73498,"nodeType":"ExpressionStatement","src":"29399:17:104"},{"condition":{"id":73500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"29430:14:104","subExpression":{"id":73499,"name":"isKickEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71593,"src":"29431:13:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73505,"nodeType":"IfStatement","src":"29426:68:104","trueBody":{"id":73504,"nodeType":"Block","src":"29446:48:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":73501,"name":"KickNotEnabled","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71539,"src":"29467:14:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":73502,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29467:16:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73503,"nodeType":"RevertStatement","src":"29460:23:104"}]}},{"condition":{"id":73509,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"29507:18:104","subExpression":{"arguments":[{"id":73507,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73489,"src":"29517:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73506,"name":"isMember","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":72999,"src":"29508:8:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":73508,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29508:17:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73514,"nodeType":"IfStatement","src":"29503:75:104","trueBody":{"id":73513,"nodeType":"Block","src":"29527:51:104","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":73510,"name":"UserNotInRegistry","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71521,"src":"29548:17:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":73511,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29548:19:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73512,"nodeType":"RevertStatement","src":"29541:26:104"}]}},{"assignments":[73517],"declarations":[{"constant":false,"id":73517,"mutability":"mutable","name":"member","nameLocation":"29601:6:104","nodeType":"VariableDeclaration","scope":73550,"src":"29587:20:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_memory_ptr","typeString":"struct Member"},"typeName":{"id":73516,"nodeType":"UserDefinedTypeName","pathNode":{"id":73515,"name":"Member","nameLocations":["29587:6:104"],"nodeType":"IdentifierPath","referencedDeclaration":71359,"src":"29587:6:104"},"referencedDeclaration":71359,"src":"29587:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage_ptr","typeString":"struct Member"}},"visibility":"internal"}],"id":73521,"initialValue":{"baseExpression":{"id":73518,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71648,"src":"29610:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":73520,"indexExpression":{"id":73519,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73489,"src":"29630:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"29610:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage","typeString":"struct Member storage ref"}},"nodeType":"VariableDeclarationStatement","src":"29587:51:104"},{"expression":{"arguments":[{"id":73523,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73489,"src":"29672:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73522,"name":"deactivateAllStrategies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73487,"src":"29648:23:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29648:32:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73525,"nodeType":"ExpressionStatement","src":"29648:32:104"},{"expression":{"id":73529,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"delete","prefix":true,"src":"29690:35:104","subExpression":{"baseExpression":{"id":73526,"name":"addressToMemberInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71648,"src":"29697:19:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_Member_$71359_storage_$","typeString":"mapping(address => struct Member storage ref)"}},"id":73528,"indexExpression":{"id":73527,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73489,"src":"29717:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"29697:28:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_storage","typeString":"struct Member storage ref"}},"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73530,"nodeType":"ExpressionStatement","src":"29690:35:104"},{"expression":{"id":73533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73531,"name":"totalMembers","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71668,"src":"29735:12:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"-=","rightHandSide":{"hexValue":"31","id":73532,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29751:1:104","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"29735:17:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73534,"nodeType":"ExpressionStatement","src":"29735:17:104"},{"expression":{"arguments":[{"id":73538,"name":"_transferAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73491,"src":"29788:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":73539,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73517,"src":"29806:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_memory_ptr","typeString":"struct Member memory"}},"id":73540,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29813:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":71356,"src":"29806:19:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":73535,"name":"gardenToken","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71616,"src":"29763:11:104","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":73537,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"29775:12:104","memberName":"safeTransfer","nodeType":"MemberAccess","referencedDeclaration":55919,"src":"29763:24:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_address_$_t_uint256_$returns$__$attached_to$_t_contract$_IERC20_$55825_$","typeString":"function (contract IERC20,address,uint256)"}},"id":73541,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29763:63:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73542,"nodeType":"ExpressionStatement","src":"29763:63:104"},{"eventCall":{"arguments":[{"id":73544,"name":"_member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73489,"src":"29854:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73545,"name":"_transferAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73491,"src":"29863:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"expression":{"id":73546,"name":"member","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73517,"src":"29881:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_Member_$71359_memory_ptr","typeString":"struct Member memory"}},"id":73547,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"29888:12:104","memberName":"stakedAmount","nodeType":"MemberAccess","referencedDeclaration":71356,"src":"29881: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":73543,"name":"MemberKicked","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71423,"src":"29841:12:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,address,uint256)"}},"id":73548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29841:60:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73549,"nodeType":"EmitStatement","src":"29836:65:104"}]},"functionSelector":"6871eb4d","implemented":true,"kind":"function","modifiers":[{"id":73494,"kind":"modifierInvocation","modifierName":{"id":73493,"name":"nonReentrant","nameLocations":["29376:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":52494,"src":"29376:12:104"},"nodeType":"ModifierInvocation","src":"29376:12:104"}],"name":"kickMember","nameLocation":"29307:10:104","parameters":{"id":73492,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73489,"mutability":"mutable","name":"_member","nameLocation":"29326:7:104","nodeType":"VariableDeclaration","scope":73551,"src":"29318:15:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73488,"name":"address","nodeType":"ElementaryTypeName","src":"29318:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73491,"mutability":"mutable","name":"_transferAddress","nameLocation":"29343:16:104","nodeType":"VariableDeclaration","scope":73551,"src":"29335:24:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73490,"name":"address","nodeType":"ElementaryTypeName","src":"29335:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"29317:43:104"},"returnParameters":{"id":73495,"nodeType":"ParameterList","parameters":[],"src":"29389:0:104"},"scope":73556,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73555,"nodeType":"VariableDeclaration","src":"29914:25:104","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"29934:5:104","scope":73556,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage","typeString":"uint256[49]"},"typeName":{"baseType":{"id":73552,"name":"uint256","nodeType":"ElementaryTypeName","src":"29914:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73554,"length":{"hexValue":"3439","id":73553,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29922:2:104","typeDescriptions":{"typeIdentifier":"t_rational_49_by_1","typeString":"int_const 49"},"value":"49"},"nodeType":"ArrayTypeName","src":"29914:11:104","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage_ptr","typeString":"uint256[49]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":71380,"name":"ProxyOwnableUpgrader","nameLocations":["3182:20:104"],"nodeType":"IdentifierPath","referencedDeclaration":71181,"src":"3182:20:104"},"id":71381,"nodeType":"InheritanceSpecifier","src":"3182:20:104"},{"baseName":{"id":71382,"name":"ReentrancyGuardUpgradeable","nameLocations":["3204:26:104"],"nodeType":"IdentifierPath","referencedDeclaration":52534,"src":"3204:26:104"},"id":71383,"nodeType":"InheritanceSpecifier","src":"3204:26:104"},{"baseName":{"id":71384,"name":"AccessControlUpgradeable","nameLocations":["3232:24:104"],"nodeType":"IdentifierPath","referencedDeclaration":51994,"src":"3232:24:104"},"id":71385,"nodeType":"InheritanceSpecifier","src":"3232:24:104"}],"canonicalName":"RegistryCommunityV0_0","contractDependencies":[54318],"contractKind":"contract","documentation":{"id":71379,"nodeType":"StructuredDocumentation","src":"3097:51:104","text":"@custom:oz-upgrades-from RegistryCommunityV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[73556,51994,53267,53279,52067,52534,71181,54969,54622,54271,54281,52200,52993,52449],"name":"RegistryCommunityV0_0","nameLocation":"3157:21:104","scope":73557,"usedErrors":[71096,71511,71515,71519,71521,71523,71525,71527,71529,71531,71533,71535,71537,71539,71541,71543,71549]}],"license":"AGPL-3.0-only"},"id":104} \ 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 a53b02785..47a973676 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":"0x6080806040523461001657611108908161001c8239f35b600080fdfe60806040526004361015610015575b366104c457005b60003560e01c806302c1d0b1146100b55780631f931c1c146100b057806352d1902d146100ab5780635c94e4d2146100a657806377122d56146100a1578063affed0e01461009c578063b2bdfa7b14610097578063b8bed90114610092578063c4d66de81461008d5763ffa1ad740361000e57610446565b6102d6565b6102ad565b610284565b610266565b61023d565b610214565b6101d9565b61015e565b6100d9565b6001600160a01b031690565b6001600160a01b03909116815260200190565b34610102576000366003190112610102576068546040516001600160a01b039091168152602090f35b600080fd5b602435906001600160a01b038216820361010257565b35906001600160a01b038216820361010257565b9181601f84011215610102578235916001600160401b038311610102576020838186019501011161010257565b34610102576060366003190112610102576004356001600160401b03808211610102573660238301121561010257816004013591818311610102573660248460051b83010111610102576101b0610107565b604435928311610102576101d7936101ce6024943690600401610131565b9490930161057a565b005b346101025760003660031901126101025760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b34610102576000366003190112610102576069546040516001600160a01b039091168152602090f35b3461010257600036600319011261010257606a546040516001600160a01b039091168152602090f35b34610102576000366003190112610102576020606554604051908152f35b34610102576000366003190112610102576033546040516001600160a01b039091168152602090f35b34610102576000366003190112610102576067546040516001600160a01b039091168152602090f35b34610102576020366003190112610102576004356001600160a01b0381811691829003610102576000805160206110b38339815191529182549160ff8360a01c1661035b57819083167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a36001600160a81b031990911617600160a01b179055005b604051639289b96160e01b8152600490fd5b634e487b7160e01b600052604160045260246000fd5b60405190606082016001600160401b038111838210176103a257604052565b61036d565b60408051919082016001600160401b038111838210176103a257604052565b6040519190601f01601f191682016001600160401b038111838210176103a257604052565b6001600160401b0381116103a257601f01601f191660200190565b919082519283825260005b848110610432575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201610411565b34610102576000366003190112610102576104866104626103a7565b60038152620302e360ec1b6020820152604051918291602083526020830190610406565b0390f35b63ffffffff60e01b16600052600080516020611073833981519152602052604060002090565b6001600160e01b0319909116815260200190565b600080356001600160e01b03191680825260008051602061107383398151915260205260408220546001600160a01b031690811561051a5750818091368280378136915af43d82803e15610516573d90f35b3d90fd5b60249060405190630a82dd7360e31b82526004820152fd5b6001600160401b0381116103a25760051b60200190565b92919261055d610558836103eb565b6103c6565b938285528282011161010257816000926020928387013784010152565b6000805160206110b38339815191525493959491936001600160a01b0316338190036106c757506105ad61055885610532565b9081948083526020809301600591821b8301923684116101025780915b8483106105ef575050505050506105ed93946105e7913691610549565b91610899565b565b6001600160401b03833581811161010257830160608136031261010257610614610383565b9161061e8261011d565b835288820135600381101561010257898401526040918281013591821161010257019036601f8301121561010257813561065a61055882610532565b928a808584815201928a1b8201019036821161010257908b809694929795939701905b8082106106975750508495508201528152019201916105ca565b91939550919395823563ffffffff60e01b8116810361010257818d92918392520192018b9593919694929661067d565b6044906040519063ff4127cb60e01b82523360048301526024820152fd5b80546001600160a01b0319166001600160a01b03909216919091179055565b634e487b7160e01b600052601160045260246000fd5b60001981146107295760010190565b610704565b634e487b7160e01b600052603260045260246000fd5b80518210156107585760209160051b010190565b61072e565b6003111561076757565b634e487b7160e01b600052602160045260246000fd5b5160038110156107675790565b90815180825260208080930193019160005b8281106107aa575050505090565b83516001600160e01b0319168552938101939281019260010161079c565b93929091936060928382019380835281518095526080830160808660051b85010195602080940192600080915b83831061082a57505050505050610827949561081a9183019060018060a01b03169052565b6040818403910152610406565b90565b909192939498607f1988820301865289519060018060a01b0382511681528782015160038110156108855761087760019385848c959486809601528160408094015193820152019061078a565b9b01960194930191906107f5565b634e487b7160e01b85526021600452602485fd5b92909160005b84518110156109aa576040806108b58388610744565b510151906108d46108c68489610744565b51516001600160a01b031690565b9082511561098e576108f260206108eb868b610744565b510161077d565b906108fc8261075d565b8161091b575050610916929161091191610b15565b61071a565b61089f565b6109248261075d565b6001820361093c575050610916929161091191610c70565b6109458261075d565b6002820361095d575050610916929161091191610dd9565b61098a925061096b8261075d565b51633ff4d20f60e11b815260ff90911660048201529081906024820190565b0390fd5b5163e767f91f60e01b81529150819061098a90600483016100c6565b509092917f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb673816105ed946109e485604051938493846107c8565b0390a1610f88565b90602061082792818152019061078a565b610a05610383565b906024825263636f646560e01b6040837f4c69624469616d6f6e644375743a2041646420666163657420686173206e6f2060208201520152565b805461ffff60a01b191660a09290921b61ffff60a01b16919091179055565b61ffff60206105ed93610a7a60018060a01b03825116856106e5565b01511690610a3f565b90600080516020611093833981519152805483101561075857600052601c60206000208360031c019260021b1690565b60008051602061109383398151915280549190600160401b8310156103a25782610ae59160016105ed95019055610a83565b90919063ffffffff83549160031b9260e01c831b921b1916179055565b61ffff8091169081146107295760010190565b91906001600160a01b03831615610c0d576000805160206110938339815191525461ffff1690610b4c610b466109fd565b85611033565b6000915b8151831015610c0657610b74610b668484610744565b516001600160e01b03191690565b610b95610b90610b838361048a565b546001600160a01b031690565b6100ba565b610be957610be391610bd8610bdd92610bd3610baf6103a7565b6001600160a01b038b16815261ffff85166020820152610bce8361048a565b610a5e565b610ab3565b610b02565b9261071a565b91610b50565b60405163ebbf5d0760e01b815290819061098a90600483016104b0565b5050509050565b6040516302b8da0760e21b815290819061098a90600483016109ec565b610c32610383565b906028825267206e6f20636f646560c01b6040837f4c69624469616d6f6e644375743a205265706c6163652066616365742068617360208201520152565b6001600160a01b03811692918315610d3c57610c93610c8d610c2a565b83611033565b60005b8151811015610c0657610cac610b668284610744565b610cbb610b90610b838361048a565b308114610d2157868114610d065715610ce9579061091184610cdf610ce49461048a565b6106e5565b610c96565b604051637479f93960e01b815290819061098a90600483016104b0565b604051631ac6ce8d60e11b81528061098a84600483016104b0565b604051632901806d60e11b81528061098a84600483016104b0565b60405163cd98a96f60e01b815290819061098a90600483016109ec565b9061ffff610d656103a7565b92546001600160a01b038116845260a01c166020830152565b8015610729576000190190565b60008051602061109383398151915280548015610dc3576000190190610db082610a83565b63ffffffff82549160031b1b1916905555565b634e487b7160e01b600052603160045260246000fd5b600080516020611093833981519152549291906001600160a01b038116610f235750600090815b8151811015610c0657610e16610b668284610744565b94610e28610e238761048a565b610d59565b90610e36610b9083516100ba565b15610f085730610e49610b9084516100ba565b14610eed57610e8d602097610e939493610e638894610d7e565b998a91018161ffff610e77835161ffff1690565b1603610e98575b5050610e88610d8b565b61048a565b5561071a565b610e00565b610ee1610edb610eba610ead610ee695610a83565b90549060031b1c60e01b90565b92610ed384610ae5610ece845161ffff1690565b610a83565b5161ffff1690565b9161048a565b610a3f565b8838610e7e565b604051630df5fd6160e31b81528061098a89600483016104b0565b604051637a08a22d60e01b81528061098a89600483016104b0565b60405163d091bc8160e01b815290819061098a90600483016100c6565b3d15610f61573d90610f54610558836103eb565b9182523d6000602084013e565b606090565b6001600160a01b03909116815260406020820181905261082792910190610406565b906001600160a01b0382161561102f57610fe4610fa3610383565b602881527f4c69624469616d6f6e644375743a205f696e6974206164647265737320686173602082015267206e6f20636f646560c01b604082015283611033565b600080825160208401855af491610ff9610f40565b921561100457505050565b82511561101357825160208401fd5b61098a60405192839263192105d760e01b845260048401610f66565b5050565b803b1561103e575050565b6040805163919834b960e01b81526001600160a01b039092166004830152602482015290819061098a90604483019061040656fec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131cc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131dc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131fa264697066735822122055a07108432fae3e9b91988735c621bfa45a8024ac309fe565a4c00c547ece6a64736f6c63430008130033","sourceMap":"590:1024:110:-:0;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040526004361015610015575b366104c457005b60003560e01c806302c1d0b1146100b55780631f931c1c146100b057806352d1902d146100ab5780635c94e4d2146100a657806377122d56146100a1578063affed0e01461009c578063b2bdfa7b14610097578063b8bed90114610092578063c4d66de81461008d5763ffa1ad740361000e57610446565b6102d6565b6102ad565b610284565b610266565b61023d565b610214565b6101d9565b61015e565b6100d9565b6001600160a01b031690565b6001600160a01b03909116815260200190565b34610102576000366003190112610102576068546040516001600160a01b039091168152602090f35b600080fd5b602435906001600160a01b038216820361010257565b35906001600160a01b038216820361010257565b9181601f84011215610102578235916001600160401b038311610102576020838186019501011161010257565b34610102576060366003190112610102576004356001600160401b03808211610102573660238301121561010257816004013591818311610102573660248460051b83010111610102576101b0610107565b604435928311610102576101d7936101ce6024943690600401610131565b9490930161057a565b005b346101025760003660031901126101025760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b34610102576000366003190112610102576069546040516001600160a01b039091168152602090f35b3461010257600036600319011261010257606a546040516001600160a01b039091168152602090f35b34610102576000366003190112610102576020606554604051908152f35b34610102576000366003190112610102576033546040516001600160a01b039091168152602090f35b34610102576000366003190112610102576067546040516001600160a01b039091168152602090f35b34610102576020366003190112610102576004356001600160a01b0381811691829003610102576000805160206110b38339815191529182549160ff8360a01c1661035b57819083167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a36001600160a81b031990911617600160a01b179055005b604051639289b96160e01b8152600490fd5b634e487b7160e01b600052604160045260246000fd5b60405190606082016001600160401b038111838210176103a257604052565b61036d565b60408051919082016001600160401b038111838210176103a257604052565b6040519190601f01601f191682016001600160401b038111838210176103a257604052565b6001600160401b0381116103a257601f01601f191660200190565b919082519283825260005b848110610432575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201610411565b34610102576000366003190112610102576104866104626103a7565b60038152620302e360ec1b6020820152604051918291602083526020830190610406565b0390f35b63ffffffff60e01b16600052600080516020611073833981519152602052604060002090565b6001600160e01b0319909116815260200190565b600080356001600160e01b03191680825260008051602061107383398151915260205260408220546001600160a01b031690811561051a5750818091368280378136915af43d82803e15610516573d90f35b3d90fd5b60249060405190630a82dd7360e31b82526004820152fd5b6001600160401b0381116103a25760051b60200190565b92919261055d610558836103eb565b6103c6565b938285528282011161010257816000926020928387013784010152565b6000805160206110b38339815191525493959491936001600160a01b0316338190036106c757506105ad61055885610532565b9081948083526020809301600591821b8301923684116101025780915b8483106105ef575050505050506105ed93946105e7913691610549565b91610899565b565b6001600160401b03833581811161010257830160608136031261010257610614610383565b9161061e8261011d565b835288820135600381101561010257898401526040918281013591821161010257019036601f8301121561010257813561065a61055882610532565b928a808584815201928a1b8201019036821161010257908b809694929795939701905b8082106106975750508495508201528152019201916105ca565b91939550919395823563ffffffff60e01b8116810361010257818d92918392520192018b9593919694929661067d565b6044906040519063ff4127cb60e01b82523360048301526024820152fd5b80546001600160a01b0319166001600160a01b03909216919091179055565b634e487b7160e01b600052601160045260246000fd5b60001981146107295760010190565b610704565b634e487b7160e01b600052603260045260246000fd5b80518210156107585760209160051b010190565b61072e565b6003111561076757565b634e487b7160e01b600052602160045260246000fd5b5160038110156107675790565b90815180825260208080930193019160005b8281106107aa575050505090565b83516001600160e01b0319168552938101939281019260010161079c565b93929091936060928382019380835281518095526080830160808660051b85010195602080940192600080915b83831061082a57505050505050610827949561081a9183019060018060a01b03169052565b6040818403910152610406565b90565b909192939498607f1988820301865289519060018060a01b0382511681528782015160038110156108855761087760019385848c959486809601528160408094015193820152019061078a565b9b01960194930191906107f5565b634e487b7160e01b85526021600452602485fd5b92909160005b84518110156109aa576040806108b58388610744565b510151906108d46108c68489610744565b51516001600160a01b031690565b9082511561098e576108f260206108eb868b610744565b510161077d565b906108fc8261075d565b8161091b575050610916929161091191610b15565b61071a565b61089f565b6109248261075d565b6001820361093c575050610916929161091191610c70565b6109458261075d565b6002820361095d575050610916929161091191610dd9565b61098a925061096b8261075d565b51633ff4d20f60e11b815260ff90911660048201529081906024820190565b0390fd5b5163e767f91f60e01b81529150819061098a90600483016100c6565b509092917f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb673816105ed946109e485604051938493846107c8565b0390a1610f88565b90602061082792818152019061078a565b610a05610383565b906024825263636f646560e01b6040837f4c69624469616d6f6e644375743a2041646420666163657420686173206e6f2060208201520152565b805461ffff60a01b191660a09290921b61ffff60a01b16919091179055565b61ffff60206105ed93610a7a60018060a01b03825116856106e5565b01511690610a3f565b90600080516020611093833981519152805483101561075857600052601c60206000208360031c019260021b1690565b60008051602061109383398151915280549190600160401b8310156103a25782610ae59160016105ed95019055610a83565b90919063ffffffff83549160031b9260e01c831b921b1916179055565b61ffff8091169081146107295760010190565b91906001600160a01b03831615610c0d576000805160206110938339815191525461ffff1690610b4c610b466109fd565b85611033565b6000915b8151831015610c0657610b74610b668484610744565b516001600160e01b03191690565b610b95610b90610b838361048a565b546001600160a01b031690565b6100ba565b610be957610be391610bd8610bdd92610bd3610baf6103a7565b6001600160a01b038b16815261ffff85166020820152610bce8361048a565b610a5e565b610ab3565b610b02565b9261071a565b91610b50565b60405163ebbf5d0760e01b815290819061098a90600483016104b0565b5050509050565b6040516302b8da0760e21b815290819061098a90600483016109ec565b610c32610383565b906028825267206e6f20636f646560c01b6040837f4c69624469616d6f6e644375743a205265706c6163652066616365742068617360208201520152565b6001600160a01b03811692918315610d3c57610c93610c8d610c2a565b83611033565b60005b8151811015610c0657610cac610b668284610744565b610cbb610b90610b838361048a565b308114610d2157868114610d065715610ce9579061091184610cdf610ce49461048a565b6106e5565b610c96565b604051637479f93960e01b815290819061098a90600483016104b0565b604051631ac6ce8d60e11b81528061098a84600483016104b0565b604051632901806d60e11b81528061098a84600483016104b0565b60405163cd98a96f60e01b815290819061098a90600483016109ec565b9061ffff610d656103a7565b92546001600160a01b038116845260a01c166020830152565b8015610729576000190190565b60008051602061109383398151915280548015610dc3576000190190610db082610a83565b63ffffffff82549160031b1b1916905555565b634e487b7160e01b600052603160045260246000fd5b600080516020611093833981519152549291906001600160a01b038116610f235750600090815b8151811015610c0657610e16610b668284610744565b94610e28610e238761048a565b610d59565b90610e36610b9083516100ba565b15610f085730610e49610b9084516100ba565b14610eed57610e8d602097610e939493610e638894610d7e565b998a91018161ffff610e77835161ffff1690565b1603610e98575b5050610e88610d8b565b61048a565b5561071a565b610e00565b610ee1610edb610eba610ead610ee695610a83565b90549060031b1c60e01b90565b92610ed384610ae5610ece845161ffff1690565b610a83565b5161ffff1690565b9161048a565b610a3f565b8838610e7e565b604051630df5fd6160e31b81528061098a89600483016104b0565b604051637a08a22d60e01b81528061098a89600483016104b0565b60405163d091bc8160e01b815290819061098a90600483016100c6565b3d15610f61573d90610f54610558836103eb565b9182523d6000602084013e565b606090565b6001600160a01b03909116815260406020820181905261082792910190610406565b906001600160a01b0382161561102f57610fe4610fa3610383565b602881527f4c69624469616d6f6e644375743a205f696e6974206164647265737320686173602082015267206e6f20636f646560c01b604082015283611033565b600080825160208401855af491610ff9610f40565b921561100457505050565b82511561101357825160208401fd5b61098a60405192839263192105d760e01b845260048401610f66565b5050565b803b1561103e575050565b6040805163919834b960e01b81526001600160a01b039092166004830152602482015290819061098a90604483019061040656fec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131cc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131dc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131fa264697066735822122055a07108432fae3e9b91988735c621bfa45a8024ac309fe565a4c00c547ece6a64736f6c63430008130033","sourceMap":"590:1024:110:-:0;;;;;;;;;-1:-1:-1;590:1024:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;-1:-1:-1;;;;;590:1024:110;;:::o;:::-;-1:-1:-1;;;;;590:1024:110;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;;590:1024:110;;;;1293:40;590:1024;;;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;;;;;;;-1:-1:-1;;;;;590:1024:110;;;;;;:::o;:::-;;;-1:-1:-1;;;;;590:1024:110;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;;590:1024:110;;;;;;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;590:1024:110;;;;;;;884:66:109;590:1024:110;;;;;;;;;-1:-1:-1;;590:1024:110;;;;1339:31;590:1024;;;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;;;;;-1:-1:-1;;590:1024:110;;;;1376:38;590:1024;;;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;;;;;-1:-1:-1;;590:1024:110;;;;;1172:20;590:1024;;;;;;;;;;;;;-1:-1:-1;;590:1024:110;;;;1113:21;590:1024;;;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;;;;;-1:-1:-1;;590:1024:110;;;;1254:33;590:1024;;;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;;;;;-1:-1:-1;;590:1024:110;;;;;;-1:-1:-1;;;;;590:1024:110;;;;;;;;;-1:-1:-1;;;;;;;;;;;590:1024:110;;;;;;;;;1042:91:109;;590:1024:110;;;;2940:46:122;-1:-1:-1;2940:46:122;;-1:-1:-1;;;;;;590:1024:110;;;;-1:-1:-1;;;590:1024:110;;;;1042:91:109;590:1024:110;;-1:-1:-1;;;1095:27:109;;590:1024:110;;1095:27:109;590:1024:110;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;:::o;:::-;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;590:1024:110;;;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;590:1024:110;;;;;;-1:-1:-1;;590:1024:110;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;590:1024:110;;;;;;;:::i;:::-;;;;-1:-1:-1;;;590:1024:110;;;;;;;;;;;;;;;;;:::i;:::-;;;;1585:45:122;;;;;;;-1:-1:-1;;;;;;;;;;;1585:45:122;;;;;;:::o;:::-;-1:-1:-1;;;;;;1585:45:122;;;;;;;;:::o;1347:1089:109:-;-1:-1:-1;1682:7:109;;-1:-1:-1;;;;;;1682:7:109;1585:45:122;;;-1:-1:-1;;;;;;;;;;;1585:45:122;;;;;;-1:-1:-1;;;;;590:1024:110;;1717:19:109;;1713:82;;1893:537;;;;;;;;;;;;;;;;;;;;;;;;;;;1713:82;1585:45:122;590:1024:110;1585:45:122;590:1024:110;1759:25:109;;;;;;;;;1585:45:122;1759:25:109;590:1024:110;-1:-1:-1;;;;;590:1024:110;;;;;;;;;:::o;:::-;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;3044:262:109:-;-1:-1:-1;;;;;;;;;;;1585:45:122;3044:262:109;;;;;-1:-1:-1;;;;;590:1024:110;3203:10:122;:44;;;3199:142;;590:1024:110;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3247:52:109;590:1024:110;;;;;;;:::i;:::-;3247:52:109;;:::i;:::-;3044:262::o;590:1024:110:-;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;3217:30:122;590:1024:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1585:45:122;;;;;590:1024:110;;;;;;;;;;;;;;;;;;;;;;;;3199:142:122;590:1024:110;;;;3270:60:122;;;;;;3203:10;3270:60;;;590:1024:110;;;;;3270:60:122;590:1024:110;;;-1:-1:-1;;;;;;590:1024:110;-1:-1:-1;;;;;590:1024:110;;;;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;590:1024:110;;;;;;;:::o;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;:::i;:::-;;-1:-1:-1;590:1024:110;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;-1:-1:-1;590:1024:110;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;;1585:45:122;;;590:1024:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;590:1024:110;;;;;;;;3491:1179:122;;;;-1:-1:-1;3670:12:122;590:1024:110;;3637:31:122;;;;;3734:41;:23;;;;;:::i;:::-;;:41;;3812:23;:36;:23;;;;:::i;:::-;;590:1024:110;-1:-1:-1;;;;;590:1024:110;;;3812:36:122;590:1024:110;;;3866:29:122;3862:122;;4033:30;;:23;;;;:::i;:::-;;:30;;:::i;:::-;590:1024:110;;;;:::i;:::-;4081:37:122;;;4165:17;;3670:12;4165:17;;;;;:::i;:::-;3670:12;:::i;:::-;3617:18;;4077:473;590:1024:110;;;:::i;:::-;4218:31:122;4208:41;;4218:31;;4300:17;;3670:12;4300:17;;;;;:::i;4204:346::-;590:1024:110;;;:::i;:::-;4353:30:122;4343:40;;4353:30;;4433:17;;3670:12;4433:17;;;;;:::i;4339:211::-;4497:38;590:1024:110;;;;;:::i;:::-;;-1:-1:-1;;;4497:38:122;;590:1024:110;;;;4497:38:122;;;590:1024:110;;;;;;;;;4497:38:122;;;;3862:122;590:1024:110;-1:-1:-1;;;3922:47:122;;590:1024:110;-1:-1:-1;590:1024:110;;3922:47:122;;;;;;:::i;3637:31::-;;;;;4574:41;3637:31;4653:9;3637:31;4574:41;590:1024:110;3734:41:122;590:1024:110;4574:41:122;;;;;:::i;:::-;;;;4653:9;:::i;590:1024:110:-;;;;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;-1:-1:-1;;;590:1024:110;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;590:1024:110;;;;;;-1:-1:-1;;;590:1024:110;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;-1:-1:-1;;;;;;;;;;;590:1024:110;;;;;;;-1:-1:-1;590:1024:110;;;-1:-1:-1;590:1024:110;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;;;;;;;590:1024:110;;;;-1:-1:-1;;;590:1024:110;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4676:1026:122:-;;;-1:-1:-1;;;;;590:1024:110;;4780:27:122;4776:116;;-1:-1:-1;;;;;;;;;;;590:1024:110;;;;5015:77:122;590:1024:110;;:::i;:::-;5015:77:122;;:::i;:::-;4805:1;5102:594;5173:15;590:1024:110;;5130:41:122;;;;;5222:33;;;;;:::i;:::-;590:1024:110;-1:-1:-1;;;;;;1585:45:122;;590:1024:110;5222:33:122;5370:29;5295:57;:44;;;:::i;:::-;1585:45;-1:-1:-1;;;;;590:1024:110;;1585:45:122;5295:57;5370:29;:::i;:::-;5366:128;;5173:15;590:1024:110;5629:27:122;5670:15;590:1024:110;;;;:::i;:::-;-1:-1:-1;;;;;590:1024:110;;;;;;;5554:61:122;;;590:1024:110;5507:44:122;;;:::i;:::-;590:1024:110;:::i;:::-;5629:27:122;:::i;:::-;5670:15;:::i;:::-;5173;;:::i;:::-;5107:21;;;5366:128;590:1024:110;;-1:-1:-1;;;5426:53:122;;590:1024:110;;;5426:53:122;;;;;;:::i;5130:41::-;;;;;;4676:1026::o;4776:116::-;590:1024:110;;-1:-1:-1;;;4830:51:122;;590:1024:110;;;4830:51:122;;;;;;:::i;590:1024:110:-;;;:::i;:::-;;;;;-1:-1:-1;;;590:1024:110;;;;;;;;;:::o;5708:1315:122:-;-1:-1:-1;;;;;590:1024:110;;;5708:1315:122;5870:27;;5866:131;;6006:81;590:1024:110;;:::i;:::-;6006:81:122;;:::i;:::-;5895:1;6168:15;590:1024:110;;6125:41:122;;;;;6217:33;;;;;:::i;:::-;6472:32;6290:57;:44;;;:::i;6472:32::-;6499:4;6472:32;;6468:118;;6603:32;;;6599:144;;6760:29;6756:123;;6933:44;:73;:44;;6168:15;6933:44;;:::i;:::-;:73;:::i;6168:15::-;6102:21;;6756:123;590:1024:110;;-1:-1:-1;;;6816:48:122;;590:1024:110;;;6816:48:122;;;;;;:::i;6599:144::-;590:1024:110;;-1:-1:-1;;;6662:66:122;;590:1024:110;6662:66:122;590:1024:110;6662:66:122;;;;:::i;6468:118::-;590:1024:110;;-1:-1:-1;;;6531:40:122;;590:1024:110;6531:40:122;590:1024:110;6531:40:122;;;;:::i;5866:131::-;590:1024:110;;-1:-1:-1;;;5920:66:122;;590:1024:110;;;5920:66:122;;;;;;:::i;590:1024:110:-;;;;;:::i;:::-;1585:45:122;;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;;:::o;:::-;;;;;-1:-1:-1;;590:1024:110;;:::o;:::-;-1:-1:-1;;;;;;;;;;;590:1024:110;;;;;;-1:-1:-1;;590:1024:110;;;;;:::i;:::-;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;7029:1713:122;-1:-1:-1;;;;;;;;;;;590:1024:110;;7029:1713:122;;-1:-1:-1;;;;;590:1024:110;;7239:115:122;;7368:21;7268:1;7368:21;;7434:15;590:1024:110;;7391:41:122;;;;;7483:33;;;;;:::i;:::-;7622:44;590:1024:110;7622:44:122;;;:::i;:::-;590:1024:110;:::i;:::-;;7684:61:122;590:1024:110;;;;:::i;7684:61:122:-;;7680:153;;8003:4;7944:64;590:1024:110;;;;:::i;7944:64:122:-;;7940:149;;8681:44;8186:51;8153:15;7434;8153;;;;;;:::i;:::-;8186:51;;;;590:1024:110;;;;;;;;;;;8186:68:122;8182:411;;7434:15;8642:16;;;;:::i;:::-;8681:44;:::i;:::-;590:1024:110;7434:15:122;:::i;:::-;7368:21;;8182:411;8439:48;590:1024:110;;8296:27:122;8439:139;8296:27;;:::i;:::-;590:1024:110;;;;;;;;;;;;8341:80:122;590:1024:110;8341:65:122;590:1024:110;;;;;;;;8341:65:122;:::i;:80::-;590:1024:110;;;;;;8439:48:122;;:::i;:::-;:139;:::i;:::-;8182:411;;;;7940:149;590:1024:110;;-1:-1:-1;;;8035:39:122;;590:1024:110;8035:39:122;590:1024:110;8035:39:122;;;;:::i;7680:153::-;590:1024:110;;-1:-1:-1;;;7772:46:122;;590:1024:110;7772:46:122;590:1024:110;7772:46:122;;;;:::i;7239:115::-;590:1024:110;;-1:-1:-1;;;7293:50:122;;590:1024:110;;;7293:50:122;;;;;;:::i;590:1024:110:-;;;;;;;;;;;:::i;:::-;;;;;-1:-1:-1;590:1024:110;;;;:::o;:::-;;;:::o;:::-;-1:-1:-1;;;;;590:1024:110;;;;;;;;;;;;;;;;;;:::i;8748:734:122:-;;-1:-1:-1;;;;;590:1024:110;;8840:19:122;8836:56;;8901:73;590:1024:110;;:::i;:::-;;;;;;;;;-1:-1:-1;;;590:1024:110;;;;8901:73:122;;:::i;:::-;8857:1;9021:29;;;590:1024:110;9021:29:122;;;;;;;;:::i;:::-;9064:8;;9060:416;;8748:734;;;:::o;9060:416::-;590:1024:110;;9092:16:122;:12;;9214:144;;590:1024:110;9214:144:122;;;9088:378;9403:48;590:1024:110;;9403:48:122;;;;;;;;;;;;:::i;8836:56::-;8875:7;;:::o;9488:320::-;9622:71;;9706:17;9702:100;;9488:320;;:::o;9702:100::-;590:1024:110;;;-1:-1:-1;;;9746:45:122;;-1:-1:-1;;;;;590:1024:110;;;9746:45:122;;;590:1024:110;;;;;;;;;;;;;;;:::i","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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x7c09f054d221d135f09030de7ea6c88370b40d1155c91c79bd9571e9745eaafd\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://15fe19550228f403c79c613fb5fd371882fc89a5f1cee91c937b3030b85352ac\",\"dweb:/ipfs/QmPoXyKEkLd7TwXxKxS5zWquA864ggdpFjVNe5QtAuazFi\"]},\"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol\":{\"keccak256\":\"0x232fa021560a662379a347cb147fff40e55343bd10e9ddf70d93397d94c10b0a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7e9451d0a0c535484d40a2dd0b6886437ee4c07783713b562c4934bf0170031d\",\"dweb:/ipfs/QmThranaa7Zhm6WM9ehYExPXzdW9dBnFVCnkFa5pKuApAv\"]},\"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\":\"0xd84ac2cbe48406b426cb10027b588b4ddca6f5b71479e81f49cb19184f85898b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cbadd4432cfea4431e024025dac245c9c0b2952022b5058487731cc0d1c591de\",\"dweb:/ipfs/QmVjPSnFLHvF4RLScCe3adKso8ocZ8ySU7yDAkAVspd4Xf\"]}},\"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{},"viaIR":true},"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":"0x7c09f054d221d135f09030de7ea6c88370b40d1155c91c79bd9571e9745eaafd","urls":["bzz-raw://15fe19550228f403c79c613fb5fd371882fc89a5f1cee91c937b3030b85352ac","dweb:/ipfs/QmPoXyKEkLd7TwXxKxS5zWquA864ggdpFjVNe5QtAuazFi"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol":{"keccak256":"0x232fa021560a662379a347cb147fff40e55343bd10e9ddf70d93397d94c10b0a","urls":["bzz-raw://7e9451d0a0c535484d40a2dd0b6886437ee4c07783713b562c4934bf0170031d","dweb:/ipfs/QmThranaa7Zhm6WM9ehYExPXzdW9dBnFVCnkFa5pKuApAv"],"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":"0xd84ac2cbe48406b426cb10027b588b4ddca6f5b71479e81f49cb19184f85898b","urls":["bzz-raw://cbadd4432cfea4431e024025dac245c9c0b2952022b5058487731cc0d1c591de","dweb:/ipfs/QmVjPSnFLHvF4RLScCe3adKso8ocZ8ySU7yDAkAVspd4Xf"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":73783,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":73785,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":73789,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap1","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":73791,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":73795,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap2","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":73797,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":73802,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)73776_storage)"},{"astId":73804,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":73806,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":73808,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":73810,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":73814,"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)73776_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)73776_storage"},"t_struct(CommunityInfo)73776_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":73773,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":73775,"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":73816,"exportedSymbols":{"BaseDiamond":[73757],"CommunityInfo":[73776],"IDiamondCut":[75020],"IDiamondLoupe":[75061],"IERC173":[75095],"IERC1822Proxiable":[54281],"LibDiamond":[75828],"RegistryFactoryDiamond":[73815]},"nodeType":"SourceUnit","src":"42:1573:110","nodes":[{"id":73759,"nodeType":"PragmaDirective","src":"42:24:110","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":73761,"nodeType":"ImportDirective","src":"68:46:110","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/BaseDiamond.sol","file":"./BaseDiamond.sol","nameLocation":"-1:-1:-1","scope":73816,"sourceUnit":73758,"symbolAliases":[{"foreign":{"id":73760,"name":"BaseDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73757,"src":"76:11:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73763,"nodeType":"ImportDirective","src":"115:54:110","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/libraries/LibDiamond.sol","file":"./libraries/LibDiamond.sol","nameLocation":"-1:-1:-1","scope":73816,"sourceUnit":75829,"symbolAliases":[{"foreign":{"id":73762,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75828,"src":"123:10:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73765,"nodeType":"ImportDirective","src":"170:57:110","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol","file":"./interfaces/IDiamondCut.sol","nameLocation":"-1:-1:-1","scope":73816,"sourceUnit":75021,"symbolAliases":[{"foreign":{"id":73764,"name":"IDiamondCut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75020,"src":"178:11:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73767,"nodeType":"ImportDirective","src":"228:61:110","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IDiamondLoupe.sol","file":"./interfaces/IDiamondLoupe.sol","nameLocation":"-1:-1:-1","scope":73816,"sourceUnit":75062,"symbolAliases":[{"foreign":{"id":73766,"name":"IDiamondLoupe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75061,"src":"236:13:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73769,"nodeType":"ImportDirective","src":"290:49:110","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IERC173.sol","file":"./interfaces/IERC173.sol","nameLocation":"-1:-1:-1","scope":73816,"sourceUnit":75096,"symbolAliases":[{"foreign":{"id":73768,"name":"IERC173","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75095,"src":"298:7:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73771,"nodeType":"ImportDirective","src":"394:88:110","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","file":"@openzeppelin/contracts/interfaces/draft-IERC1822.sol","nameLocation":"-1:-1:-1","scope":73816,"sourceUnit":54282,"symbolAliases":[{"foreign":{"id":73770,"name":"IERC1822Proxiable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54281,"src":"402:17:110","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73776,"nodeType":"StructDefinition","src":"531:57:110","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":73773,"mutability":"mutable","name":"fee","nameLocation":"566:3:110","nodeType":"VariableDeclaration","scope":73776,"src":"558:11:110","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73772,"name":"uint256","nodeType":"ElementaryTypeName","src":"558:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":73775,"mutability":"mutable","name":"valid","nameLocation":"580:5:110","nodeType":"VariableDeclaration","scope":73776,"src":"575:10:110","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73774,"name":"bool","nodeType":"ElementaryTypeName","src":"575:4:110","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"538:13:110","scope":73816,"visibility":"public"},{"id":73815,"nodeType":"ContractDefinition","src":"590:1024:110","nodes":[{"id":73781,"nodeType":"VariableDeclaration","src":"808:38:110","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"831:7:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":73779,"name":"string","nodeType":"ElementaryTypeName","src":"808:6:110","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":73780,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"841:5:110","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":73783,"nodeType":"VariableDeclaration","src":"1017:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"_initialized","nameLocation":"1031:12:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":73782,"name":"uint8","nodeType":"ElementaryTypeName","src":"1017:5:110","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"private"},{"id":73785,"nodeType":"VariableDeclaration","src":"1049:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"_initializing","nameLocation":"1062:13:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73784,"name":"bool","nodeType":"ElementaryTypeName","src":"1049:4:110","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"private"},{"id":73789,"nodeType":"VariableDeclaration","src":"1081:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"__gap1","nameLocation":"1101:6:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73786,"name":"uint256","nodeType":"ElementaryTypeName","src":"1081:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73788,"length":{"hexValue":"3530","id":73787,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1089:2:110","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"1081:11:110","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"},{"id":73791,"nodeType":"VariableDeclaration","src":"1113:21:110","nodes":[],"constant":false,"functionSelector":"b2bdfa7b","mutability":"mutable","name":"_owner","nameLocation":"1128:6:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73790,"name":"address","nodeType":"ElementaryTypeName","src":"1113:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73795,"nodeType":"VariableDeclaration","src":"1140:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"__gap2","nameLocation":"1160:6:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage","typeString":"uint256[49]"},"typeName":{"baseType":{"id":73792,"name":"uint256","nodeType":"ElementaryTypeName","src":"1140:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73794,"length":{"hexValue":"3439","id":73793,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1148:2:110","typeDescriptions":{"typeIdentifier":"t_rational_49_by_1","typeString":"int_const 49"},"value":"49"},"nodeType":"ArrayTypeName","src":"1140:11:110","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage_ptr","typeString":"uint256[49]"}},"visibility":"private"},{"id":73797,"nodeType":"VariableDeclaration","src":"1172:20:110","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"1187:5:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73796,"name":"uint256","nodeType":"ElementaryTypeName","src":"1172:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":73802,"nodeType":"VariableDeclaration","src":"1199:49:110","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"1233:15:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73776_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":73801,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":73798,"name":"address","nodeType":"ElementaryTypeName","src":"1207:7:110","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"1199:33:110","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73776_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":73800,"nodeType":"UserDefinedTypeName","pathNode":{"id":73799,"name":"CommunityInfo","nameLocations":["1218:13:110"],"nodeType":"IdentifierPath","referencedDeclaration":73776,"src":"1218:13:110"},"referencedDeclaration":73776,"src":"1218:13:110","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73776_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":73804,"nodeType":"VariableDeclaration","src":"1254:33:110","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"1269:18:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73803,"name":"address","nodeType":"ElementaryTypeName","src":"1254:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73806,"nodeType":"VariableDeclaration","src":"1293:40:110","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"1308:25:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73805,"name":"address","nodeType":"ElementaryTypeName","src":"1293:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73808,"nodeType":"VariableDeclaration","src":"1339:31:110","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"1354:16:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73807,"name":"address","nodeType":"ElementaryTypeName","src":"1339:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73810,"nodeType":"VariableDeclaration","src":"1376:38:110","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"1391:23:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73809,"name":"address","nodeType":"ElementaryTypeName","src":"1376:7:110","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73814,"nodeType":"VariableDeclaration","src":"1420:26:110","nodes":[],"constant":false,"mutability":"mutable","name":"__gap3","nameLocation":"1440:6:110","scope":73815,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73811,"name":"uint256","nodeType":"ElementaryTypeName","src":"1420:7:110","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73813,"length":{"hexValue":"3530","id":73812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1428:2:110","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"1420:11:110","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":73777,"name":"BaseDiamond","nameLocations":["625:11:110"],"nodeType":"IdentifierPath","referencedDeclaration":73757,"src":"625:11:110"},"id":73778,"nodeType":"InheritanceSpecifier","src":"625:11:110"}],"canonicalName":"RegistryFactoryDiamond","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[73815,73757,75020,75001,54281],"name":"RegistryFactoryDiamond","nameLocation":"599:22:110","scope":73816,"usedErrors":[73632,73634,75109,75113,75118,75124,75128,75132,75137,75141,75145,75149,75153,75157,75161,75167]}],"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":"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":"0x6080806040523461001657611108908161001c8239f35b600080fdfe60806040526004361015610015575b366104c457005b60003560e01c806302c1d0b1146100b55780631f931c1c146100b057806352d1902d146100ab5780635c94e4d2146100a657806377122d56146100a1578063affed0e01461009c578063b2bdfa7b14610097578063b8bed90114610092578063c4d66de81461008d5763ffa1ad740361000e57610446565b6102d6565b6102ad565b610284565b610266565b61023d565b610214565b6101d9565b61015e565b6100d9565b6001600160a01b031690565b6001600160a01b03909116815260200190565b34610102576000366003190112610102576068546040516001600160a01b039091168152602090f35b600080fd5b602435906001600160a01b038216820361010257565b35906001600160a01b038216820361010257565b9181601f84011215610102578235916001600160401b038311610102576020838186019501011161010257565b34610102576060366003190112610102576004356001600160401b03808211610102573660238301121561010257816004013591818311610102573660248460051b83010111610102576101b0610107565b604435928311610102576101d7936101ce6024943690600401610131565b9490930161057a565b005b346101025760003660031901126101025760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b34610102576000366003190112610102576069546040516001600160a01b039091168152602090f35b3461010257600036600319011261010257606a546040516001600160a01b039091168152602090f35b34610102576000366003190112610102576020606554604051908152f35b34610102576000366003190112610102576033546040516001600160a01b039091168152602090f35b34610102576000366003190112610102576067546040516001600160a01b039091168152602090f35b34610102576020366003190112610102576004356001600160a01b0381811691829003610102576000805160206110b38339815191529182549160ff8360a01c1661035b57819083167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a36001600160a81b031990911617600160a01b179055005b604051639289b96160e01b8152600490fd5b634e487b7160e01b600052604160045260246000fd5b60405190606082016001600160401b038111838210176103a257604052565b61036d565b60408051919082016001600160401b038111838210176103a257604052565b6040519190601f01601f191682016001600160401b038111838210176103a257604052565b6001600160401b0381116103a257601f01601f191660200190565b919082519283825260005b848110610432575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201610411565b34610102576000366003190112610102576104866104626103a7565b60038152620302e360ec1b6020820152604051918291602083526020830190610406565b0390f35b63ffffffff60e01b16600052600080516020611073833981519152602052604060002090565b6001600160e01b0319909116815260200190565b600080356001600160e01b03191680825260008051602061107383398151915260205260408220546001600160a01b031690811561051a5750818091368280378136915af43d82803e15610516573d90f35b3d90fd5b60249060405190630a82dd7360e31b82526004820152fd5b6001600160401b0381116103a25760051b60200190565b92919261055d610558836103eb565b6103c6565b938285528282011161010257816000926020928387013784010152565b6000805160206110b38339815191525493959491936001600160a01b0316338190036106c757506105ad61055885610532565b9081948083526020809301600591821b8301923684116101025780915b8483106105ef575050505050506105ed93946105e7913691610549565b91610899565b565b6001600160401b03833581811161010257830160608136031261010257610614610383565b9161061e8261011d565b835288820135600381101561010257898401526040918281013591821161010257019036601f8301121561010257813561065a61055882610532565b928a808584815201928a1b8201019036821161010257908b809694929795939701905b8082106106975750508495508201528152019201916105ca565b91939550919395823563ffffffff60e01b8116810361010257818d92918392520192018b9593919694929661067d565b6044906040519063ff4127cb60e01b82523360048301526024820152fd5b80546001600160a01b0319166001600160a01b03909216919091179055565b634e487b7160e01b600052601160045260246000fd5b60001981146107295760010190565b610704565b634e487b7160e01b600052603260045260246000fd5b80518210156107585760209160051b010190565b61072e565b6003111561076757565b634e487b7160e01b600052602160045260246000fd5b5160038110156107675790565b90815180825260208080930193019160005b8281106107aa575050505090565b83516001600160e01b0319168552938101939281019260010161079c565b93929091936060928382019380835281518095526080830160808660051b85010195602080940192600080915b83831061082a57505050505050610827949561081a9183019060018060a01b03169052565b6040818403910152610406565b90565b909192939498607f1988820301865289519060018060a01b0382511681528782015160038110156108855761087760019385848c959486809601528160408094015193820152019061078a565b9b01960194930191906107f5565b634e487b7160e01b85526021600452602485fd5b92909160005b84518110156109aa576040806108b58388610744565b510151906108d46108c68489610744565b51516001600160a01b031690565b9082511561098e576108f260206108eb868b610744565b510161077d565b906108fc8261075d565b8161091b575050610916929161091191610b15565b61071a565b61089f565b6109248261075d565b6001820361093c575050610916929161091191610c70565b6109458261075d565b6002820361095d575050610916929161091191610dd9565b61098a925061096b8261075d565b51633ff4d20f60e11b815260ff90911660048201529081906024820190565b0390fd5b5163e767f91f60e01b81529150819061098a90600483016100c6565b509092917f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb673816105ed946109e485604051938493846107c8565b0390a1610f88565b90602061082792818152019061078a565b610a05610383565b906024825263636f646560e01b6040837f4c69624469616d6f6e644375743a2041646420666163657420686173206e6f2060208201520152565b805461ffff60a01b191660a09290921b61ffff60a01b16919091179055565b61ffff60206105ed93610a7a60018060a01b03825116856106e5565b01511690610a3f565b90600080516020611093833981519152805483101561075857600052601c60206000208360031c019260021b1690565b60008051602061109383398151915280549190600160401b8310156103a25782610ae59160016105ed95019055610a83565b90919063ffffffff83549160031b9260e01c831b921b1916179055565b61ffff8091169081146107295760010190565b91906001600160a01b03831615610c0d576000805160206110938339815191525461ffff1690610b4c610b466109fd565b85611033565b6000915b8151831015610c0657610b74610b668484610744565b516001600160e01b03191690565b610b95610b90610b838361048a565b546001600160a01b031690565b6100ba565b610be957610be391610bd8610bdd92610bd3610baf6103a7565b6001600160a01b038b16815261ffff85166020820152610bce8361048a565b610a5e565b610ab3565b610b02565b9261071a565b91610b50565b60405163ebbf5d0760e01b815290819061098a90600483016104b0565b5050509050565b6040516302b8da0760e21b815290819061098a90600483016109ec565b610c32610383565b906028825267206e6f20636f646560c01b6040837f4c69624469616d6f6e644375743a205265706c6163652066616365742068617360208201520152565b6001600160a01b03811692918315610d3c57610c93610c8d610c2a565b83611033565b60005b8151811015610c0657610cac610b668284610744565b610cbb610b90610b838361048a565b308114610d2157868114610d065715610ce9579061091184610cdf610ce49461048a565b6106e5565b610c96565b604051637479f93960e01b815290819061098a90600483016104b0565b604051631ac6ce8d60e11b81528061098a84600483016104b0565b604051632901806d60e11b81528061098a84600483016104b0565b60405163cd98a96f60e01b815290819061098a90600483016109ec565b9061ffff610d656103a7565b92546001600160a01b038116845260a01c166020830152565b8015610729576000190190565b60008051602061109383398151915280548015610dc3576000190190610db082610a83565b63ffffffff82549160031b1b1916905555565b634e487b7160e01b600052603160045260246000fd5b600080516020611093833981519152549291906001600160a01b038116610f235750600090815b8151811015610c0657610e16610b668284610744565b94610e28610e238761048a565b610d59565b90610e36610b9083516100ba565b15610f085730610e49610b9084516100ba565b14610eed57610e8d602097610e939493610e638894610d7e565b998a91018161ffff610e77835161ffff1690565b1603610e98575b5050610e88610d8b565b61048a565b5561071a565b610e00565b610ee1610edb610eba610ead610ee695610a83565b90549060031b1c60e01b90565b92610ed384610ae5610ece845161ffff1690565b610a83565b5161ffff1690565b9161048a565b610a3f565b8838610e7e565b604051630df5fd6160e31b81528061098a89600483016104b0565b604051637a08a22d60e01b81528061098a89600483016104b0565b60405163d091bc8160e01b815290819061098a90600483016100c6565b3d15610f61573d90610f54610558836103eb565b9182523d6000602084013e565b606090565b6001600160a01b03909116815260406020820181905261082792910190610406565b906001600160a01b0382161561102f57610fe4610fa3610383565b602881527f4c69624469616d6f6e644375743a205f696e6974206164647265737320686173602082015267206e6f20636f646560c01b604082015283611033565b600080825160208401855af491610ff9610f40565b921561100457505050565b82511561101357825160208401fd5b61098a60405192839263192105d760e01b845260048401610f66565b5050565b803b1561103e575050565b6040805163919834b960e01b81526001600160a01b039092166004830152602482015290819061098a90604483019061040656fec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131cc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131dc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131fa264697066735822122055a07108432fae3e9b91988735c621bfa45a8024ac309fe565a4c00c547ece6a64736f6c63430008130033","sourceMap":"590:1024:109:-:0;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60806040526004361015610015575b366104c457005b60003560e01c806302c1d0b1146100b55780631f931c1c146100b057806352d1902d146100ab5780635c94e4d2146100a657806377122d56146100a1578063affed0e01461009c578063b2bdfa7b14610097578063b8bed90114610092578063c4d66de81461008d5763ffa1ad740361000e57610446565b6102d6565b6102ad565b610284565b610266565b61023d565b610214565b6101d9565b61015e565b6100d9565b6001600160a01b031690565b6001600160a01b03909116815260200190565b34610102576000366003190112610102576068546040516001600160a01b039091168152602090f35b600080fd5b602435906001600160a01b038216820361010257565b35906001600160a01b038216820361010257565b9181601f84011215610102578235916001600160401b038311610102576020838186019501011161010257565b34610102576060366003190112610102576004356001600160401b03808211610102573660238301121561010257816004013591818311610102573660248460051b83010111610102576101b0610107565b604435928311610102576101d7936101ce6024943690600401610131565b9490930161057a565b005b346101025760003660031901126101025760206040517f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8152f35b34610102576000366003190112610102576069546040516001600160a01b039091168152602090f35b3461010257600036600319011261010257606a546040516001600160a01b039091168152602090f35b34610102576000366003190112610102576020606554604051908152f35b34610102576000366003190112610102576033546040516001600160a01b039091168152602090f35b34610102576000366003190112610102576067546040516001600160a01b039091168152602090f35b34610102576020366003190112610102576004356001600160a01b0381811691829003610102576000805160206110b38339815191529182549160ff8360a01c1661035b57819083167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a36001600160a81b031990911617600160a01b179055005b604051639289b96160e01b8152600490fd5b634e487b7160e01b600052604160045260246000fd5b60405190606082016001600160401b038111838210176103a257604052565b61036d565b60408051919082016001600160401b038111838210176103a257604052565b6040519190601f01601f191682016001600160401b038111838210176103a257604052565b6001600160401b0381116103a257601f01601f191660200190565b919082519283825260005b848110610432575050826000602080949584010152601f8019910116010190565b602081830181015184830182015201610411565b34610102576000366003190112610102576104866104626103a7565b60038152620302e360ec1b6020820152604051918291602083526020830190610406565b0390f35b63ffffffff60e01b16600052600080516020611073833981519152602052604060002090565b6001600160e01b0319909116815260200190565b600080356001600160e01b03191680825260008051602061107383398151915260205260408220546001600160a01b031690811561051a5750818091368280378136915af43d82803e15610516573d90f35b3d90fd5b60249060405190630a82dd7360e31b82526004820152fd5b6001600160401b0381116103a25760051b60200190565b92919261055d610558836103eb565b6103c6565b938285528282011161010257816000926020928387013784010152565b6000805160206110b38339815191525493959491936001600160a01b0316338190036106c757506105ad61055885610532565b9081948083526020809301600591821b8301923684116101025780915b8483106105ef575050505050506105ed93946105e7913691610549565b91610899565b565b6001600160401b03833581811161010257830160608136031261010257610614610383565b9161061e8261011d565b835288820135600381101561010257898401526040918281013591821161010257019036601f8301121561010257813561065a61055882610532565b928a808584815201928a1b8201019036821161010257908b809694929795939701905b8082106106975750508495508201528152019201916105ca565b91939550919395823563ffffffff60e01b8116810361010257818d92918392520192018b9593919694929661067d565b6044906040519063ff4127cb60e01b82523360048301526024820152fd5b80546001600160a01b0319166001600160a01b03909216919091179055565b634e487b7160e01b600052601160045260246000fd5b60001981146107295760010190565b610704565b634e487b7160e01b600052603260045260246000fd5b80518210156107585760209160051b010190565b61072e565b6003111561076757565b634e487b7160e01b600052602160045260246000fd5b5160038110156107675790565b90815180825260208080930193019160005b8281106107aa575050505090565b83516001600160e01b0319168552938101939281019260010161079c565b93929091936060928382019380835281518095526080830160808660051b85010195602080940192600080915b83831061082a57505050505050610827949561081a9183019060018060a01b03169052565b6040818403910152610406565b90565b909192939498607f1988820301865289519060018060a01b0382511681528782015160038110156108855761087760019385848c959486809601528160408094015193820152019061078a565b9b01960194930191906107f5565b634e487b7160e01b85526021600452602485fd5b92909160005b84518110156109aa576040806108b58388610744565b510151906108d46108c68489610744565b51516001600160a01b031690565b9082511561098e576108f260206108eb868b610744565b510161077d565b906108fc8261075d565b8161091b575050610916929161091191610b15565b61071a565b61089f565b6109248261075d565b6001820361093c575050610916929161091191610c70565b6109458261075d565b6002820361095d575050610916929161091191610dd9565b61098a925061096b8261075d565b51633ff4d20f60e11b815260ff90911660048201529081906024820190565b0390fd5b5163e767f91f60e01b81529150819061098a90600483016100c6565b509092917f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb673816105ed946109e485604051938493846107c8565b0390a1610f88565b90602061082792818152019061078a565b610a05610383565b906024825263636f646560e01b6040837f4c69624469616d6f6e644375743a2041646420666163657420686173206e6f2060208201520152565b805461ffff60a01b191660a09290921b61ffff60a01b16919091179055565b61ffff60206105ed93610a7a60018060a01b03825116856106e5565b01511690610a3f565b90600080516020611093833981519152805483101561075857600052601c60206000208360031c019260021b1690565b60008051602061109383398151915280549190600160401b8310156103a25782610ae59160016105ed95019055610a83565b90919063ffffffff83549160031b9260e01c831b921b1916179055565b61ffff8091169081146107295760010190565b91906001600160a01b03831615610c0d576000805160206110938339815191525461ffff1690610b4c610b466109fd565b85611033565b6000915b8151831015610c0657610b74610b668484610744565b516001600160e01b03191690565b610b95610b90610b838361048a565b546001600160a01b031690565b6100ba565b610be957610be391610bd8610bdd92610bd3610baf6103a7565b6001600160a01b038b16815261ffff85166020820152610bce8361048a565b610a5e565b610ab3565b610b02565b9261071a565b91610b50565b60405163ebbf5d0760e01b815290819061098a90600483016104b0565b5050509050565b6040516302b8da0760e21b815290819061098a90600483016109ec565b610c32610383565b906028825267206e6f20636f646560c01b6040837f4c69624469616d6f6e644375743a205265706c6163652066616365742068617360208201520152565b6001600160a01b03811692918315610d3c57610c93610c8d610c2a565b83611033565b60005b8151811015610c0657610cac610b668284610744565b610cbb610b90610b838361048a565b308114610d2157868114610d065715610ce9579061091184610cdf610ce49461048a565b6106e5565b610c96565b604051637479f93960e01b815290819061098a90600483016104b0565b604051631ac6ce8d60e11b81528061098a84600483016104b0565b604051632901806d60e11b81528061098a84600483016104b0565b60405163cd98a96f60e01b815290819061098a90600483016109ec565b9061ffff610d656103a7565b92546001600160a01b038116845260a01c166020830152565b8015610729576000190190565b60008051602061109383398151915280548015610dc3576000190190610db082610a83565b63ffffffff82549160031b1b1916905555565b634e487b7160e01b600052603160045260246000fd5b600080516020611093833981519152549291906001600160a01b038116610f235750600090815b8151811015610c0657610e16610b668284610744565b94610e28610e238761048a565b610d59565b90610e36610b9083516100ba565b15610f085730610e49610b9084516100ba565b14610eed57610e8d602097610e939493610e638894610d7e565b998a91018161ffff610e77835161ffff1690565b1603610e98575b5050610e88610d8b565b61048a565b5561071a565b610e00565b610ee1610edb610eba610ead610ee695610a83565b90549060031b1c60e01b90565b92610ed384610ae5610ece845161ffff1690565b610a83565b5161ffff1690565b9161048a565b610a3f565b8838610e7e565b604051630df5fd6160e31b81528061098a89600483016104b0565b604051637a08a22d60e01b81528061098a89600483016104b0565b60405163d091bc8160e01b815290819061098a90600483016100c6565b3d15610f61573d90610f54610558836103eb565b9182523d6000602084013e565b606090565b6001600160a01b03909116815260406020820181905261082792910190610406565b906001600160a01b0382161561102f57610fe4610fa3610383565b602881527f4c69624469616d6f6e644375743a205f696e6974206164647265737320686173602082015267206e6f20636f646560c01b604082015283611033565b600080825160208401855af491610ff9610f40565b921561100457505050565b82511561101357825160208401fd5b61098a60405192839263192105d760e01b845260048401610f66565b5050565b803b1561103e575050565b6040805163919834b960e01b81526001600160a01b039092166004830152602482015290819061098a90604483019061040656fec8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131cc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131dc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131fa264697066735822122055a07108432fae3e9b91988735c621bfa45a8024ac309fe565a4c00c547ece6a64736f6c63430008130033","sourceMap":"590:1024:109:-:0;;;;;;;;;-1:-1:-1;590:1024:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;-1:-1:-1;;;;;590:1024:109;;:::o;:::-;-1:-1:-1;;;;;590:1024:109;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;;590:1024:109;;;;1293:40;590:1024;;;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;;;;;;;-1:-1:-1;;;;;590:1024:109;;;;;;:::o;:::-;;;-1:-1:-1;;;;;590:1024:109;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;;590:1024:109;;;;;;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;590:1024:109;;;;;;;884:66:108;590:1024:109;;;;;;;;;-1:-1:-1;;590:1024:109;;;;1339:31;590:1024;;;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;;;;;-1:-1:-1;;590:1024:109;;;;1376:38;590:1024;;;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;;;;;-1:-1:-1;;590:1024:109;;;;;1172:20;590:1024;;;;;;;;;;;;;-1:-1:-1;;590:1024:109;;;;1113:21;590:1024;;;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;;;;;-1:-1:-1;;590:1024:109;;;;1254:33;590:1024;;;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;;;;;-1:-1:-1;;590:1024:109;;;;;;-1:-1:-1;;;;;590:1024:109;;;;;;;;;-1:-1:-1;;;;;;;;;;;590:1024:109;;;;;;;;;1042:91:108;;590:1024:109;;;;2940:46:121;-1:-1:-1;2940:46:121;;-1:-1:-1;;;;;;590:1024:109;;;;-1:-1:-1;;;590:1024:109;;;;1042:91:108;590:1024:109;;-1:-1:-1;;;1095:27:108;;590:1024:109;;1095:27:108;590:1024:109;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;:::o;:::-;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;590:1024:109;;;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;590:1024:109;;;;;;-1:-1:-1;;590:1024:109;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;590:1024:109;;;;;;;:::i;:::-;;;;-1:-1:-1;;;590:1024:109;;;;;;;;;;;;;;;;;:::i;:::-;;;;1585:45:121;;;;;;;-1:-1:-1;;;;;;;;;;;1585:45:121;;;;;;:::o;:::-;-1:-1:-1;;;;;;1585:45:121;;;;;;;;:::o;1347:1089:108:-;-1:-1:-1;1682:7:108;;-1:-1:-1;;;;;;1682:7:108;1585:45:121;;;-1:-1:-1;;;;;;;;;;;1585:45:121;;;;;;-1:-1:-1;;;;;590:1024:109;;1717:19:108;;1713:82;;1893:537;;;;;;;;;;;;;;;;;;;;;;;;;;;1713:82;1585:45:121;590:1024:109;1585:45:121;590:1024:109;1759:25:108;;;;;;;;;1585:45:121;1759:25:108;590:1024:109;-1:-1:-1;;;;;590:1024:109;;;;;;;;;:::o;:::-;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;3044:262:108:-;-1:-1:-1;;;;;;;;;;;1585:45:121;3044:262:108;;;;;-1:-1:-1;;;;;590:1024:109;3203:10:121;:44;;;3199:142;;590:1024:109;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3247:52:108;590:1024:109;;;;;;;:::i;:::-;3247:52:108;;:::i;:::-;3044:262::o;590:1024:109:-;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;3217:30:121;590:1024:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1585:45:121;;;;;590:1024:109;;;;;;;;;;;;;;;;;;;;;;;;3199:142:121;590:1024:109;;;;3270:60:121;;;;;;3203:10;3270:60;;;590:1024:109;;;;;3270:60:121;590:1024:109;;;-1:-1:-1;;;;;;590:1024:109;-1:-1:-1;;;;;590:1024:109;;;;;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;590:1024:109;;;;;;;:::o;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;:::i;:::-;;-1:-1:-1;590:1024:109;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;-1:-1:-1;590:1024:109;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;;1585:45:121;;;590:1024:109;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;590:1024:109;;;;;;;;3491:1179:121;;;;-1:-1:-1;3670:12:121;590:1024:109;;3637:31:121;;;;;3734:41;:23;;;;;:::i;:::-;;:41;;3812:23;:36;:23;;;;:::i;:::-;;590:1024:109;-1:-1:-1;;;;;590:1024:109;;;3812:36:121;590:1024:109;;;3866:29:121;3862:122;;4033:30;;:23;;;;:::i;:::-;;:30;;:::i;:::-;590:1024:109;;;;:::i;:::-;4081:37:121;;;4165:17;;3670:12;4165:17;;;;;:::i;:::-;3670:12;:::i;:::-;3617:18;;4077:473;590:1024:109;;;:::i;:::-;4218:31:121;4208:41;;4218:31;;4300:17;;3670:12;4300:17;;;;;:::i;4204:346::-;590:1024:109;;;:::i;:::-;4353:30:121;4343:40;;4353:30;;4433:17;;3670:12;4433:17;;;;;:::i;4339:211::-;4497:38;590:1024:109;;;;;:::i;:::-;;-1:-1:-1;;;4497:38:121;;590:1024:109;;;;4497:38:121;;;590:1024:109;;;;;;;;;4497:38:121;;;;3862:122;590:1024:109;-1:-1:-1;;;3922:47:121;;590:1024:109;-1:-1:-1;590:1024:109;;3922:47:121;;;;;;:::i;3637:31::-;;;;;4574:41;3637:31;4653:9;3637:31;4574:41;590:1024:109;3734:41:121;590:1024:109;4574:41:121;;;;;:::i;:::-;;;;4653:9;:::i;590:1024:109:-;;;;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;-1:-1:-1;;;590:1024:109;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;590:1024:109;;;;;;-1:-1:-1;;;590:1024:109;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;-1:-1:-1;;;;;;;;;;;590:1024:109;;;;;;;-1:-1:-1;590:1024:109;;;-1:-1:-1;590:1024:109;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;;;;;;;590:1024:109;;;;-1:-1:-1;;;590:1024:109;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4676:1026:121:-;;;-1:-1:-1;;;;;590:1024:109;;4780:27:121;4776:116;;-1:-1:-1;;;;;;;;;;;590:1024:109;;;;5015:77:121;590:1024:109;;:::i;:::-;5015:77:121;;:::i;:::-;4805:1;5102:594;5173:15;590:1024:109;;5130:41:121;;;;;5222:33;;;;;:::i;:::-;590:1024:109;-1:-1:-1;;;;;;1585:45:121;;590:1024:109;5222:33:121;5370:29;5295:57;:44;;;:::i;:::-;1585:45;-1:-1:-1;;;;;590:1024:109;;1585:45:121;5295:57;5370:29;:::i;:::-;5366:128;;5173:15;590:1024:109;5629:27:121;5670:15;590:1024:109;;;;:::i;:::-;-1:-1:-1;;;;;590:1024:109;;;;;;;5554:61:121;;;590:1024:109;5507:44:121;;;:::i;:::-;590:1024:109;:::i;:::-;5629:27:121;:::i;:::-;5670:15;:::i;:::-;5173;;:::i;:::-;5107:21;;;5366:128;590:1024:109;;-1:-1:-1;;;5426:53:121;;590:1024:109;;;5426:53:121;;;;;;:::i;5130:41::-;;;;;;4676:1026::o;4776:116::-;590:1024:109;;-1:-1:-1;;;4830:51:121;;590:1024:109;;;4830:51:121;;;;;;:::i;590:1024:109:-;;;:::i;:::-;;;;;-1:-1:-1;;;590:1024:109;;;;;;;;;:::o;5708:1315:121:-;-1:-1:-1;;;;;590:1024:109;;;5708:1315:121;5870:27;;5866:131;;6006:81;590:1024:109;;:::i;:::-;6006:81:121;;:::i;:::-;5895:1;6168:15;590:1024:109;;6125:41:121;;;;;6217:33;;;;;:::i;:::-;6472:32;6290:57;:44;;;:::i;6472:32::-;6499:4;6472:32;;6468:118;;6603:32;;;6599:144;;6760:29;6756:123;;6933:44;:73;:44;;6168:15;6933:44;;:::i;:::-;:73;:::i;6168:15::-;6102:21;;6756:123;590:1024:109;;-1:-1:-1;;;6816:48:121;;590:1024:109;;;6816:48:121;;;;;;:::i;6599:144::-;590:1024:109;;-1:-1:-1;;;6662:66:121;;590:1024:109;6662:66:121;590:1024:109;6662:66:121;;;;:::i;6468:118::-;590:1024:109;;-1:-1:-1;;;6531:40:121;;590:1024:109;6531:40:121;590:1024:109;6531:40:121;;;;:::i;5866:131::-;590:1024:109;;-1:-1:-1;;;5920:66:121;;590:1024:109;;;5920:66:121;;;;;;:::i;590:1024:109:-;;;;;:::i;:::-;1585:45:121;;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;;:::o;:::-;;;;;-1:-1:-1;;590:1024:109;;:::o;:::-;-1:-1:-1;;;;;;;;;;;590:1024:109;;;;;;-1:-1:-1;;590:1024:109;;;;;:::i;:::-;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;7029:1713:121;-1:-1:-1;;;;;;;;;;;590:1024:109;;7029:1713:121;;-1:-1:-1;;;;;590:1024:109;;7239:115:121;;7368:21;7268:1;7368:21;;7434:15;590:1024:109;;7391:41:121;;;;;7483:33;;;;;:::i;:::-;7622:44;590:1024:109;7622:44:121;;;:::i;:::-;590:1024:109;:::i;:::-;;7684:61:121;590:1024:109;;;;:::i;7684:61:121:-;;7680:153;;8003:4;7944:64;590:1024:109;;;;:::i;7944:64:121:-;;7940:149;;8681:44;8186:51;8153:15;7434;8153;;;;;;:::i;:::-;8186:51;;;;590:1024:109;;;;;;;;;;;8186:68:121;8182:411;;7434:15;8642:16;;;;:::i;:::-;8681:44;:::i;:::-;590:1024:109;7434:15:121;:::i;:::-;7368:21;;8182:411;8439:48;590:1024:109;;8296:27:121;8439:139;8296:27;;:::i;:::-;590:1024:109;;;;;;;;;;;;8341:80:121;590:1024:109;8341:65:121;590:1024:109;;;;;;;;8341:65:121;:::i;:80::-;590:1024:109;;;;;;8439:48:121;;:::i;:::-;:139;:::i;:::-;8182:411;;;;7940:149;590:1024:109;;-1:-1:-1;;;8035:39:121;;590:1024:109;8035:39:121;590:1024:109;8035:39:121;;;;:::i;7680:153::-;590:1024:109;;-1:-1:-1;;;7772:46:121;;590:1024:109;7772:46:121;590:1024:109;7772:46:121;;;;:::i;7239:115::-;590:1024:109;;-1:-1:-1;;;7293:50:121;;590:1024:109;;;7293:50:121;;;;;;:::i;590:1024:109:-;;;;;;;;;;;:::i;:::-;;;;;-1:-1:-1;590:1024:109;;;;:::o;:::-;;;:::o;:::-;-1:-1:-1;;;;;590:1024:109;;;;;;;;;;;;;;;;;;:::i;8748:734:121:-;;-1:-1:-1;;;;;590:1024:109;;8840:19:121;8836:56;;8901:73;590:1024:109;;:::i;:::-;;;;;;;;;-1:-1:-1;;;590:1024:109;;;;8901:73:121;;:::i;:::-;8857:1;9021:29;;;590:1024:109;9021:29:121;;;;;;;;:::i;:::-;9064:8;;9060:416;;8748:734;;;:::o;9060:416::-;590:1024:109;;9092:16:121;:12;;9214:144;;590:1024:109;9214:144:121;;;9088:378;9403:48;590:1024:109;;9403:48:121;;;;;;;;;;;;:::i;8836:56::-;8875:7;;:::o;9488:320::-;9622:71;;9706:17;9702:100;;9488:320;;:::o;9702:100::-;590:1024:109;;;-1:-1:-1;;;9746:45:121;;-1:-1:-1;;;;;590:1024:109;;;9746:45:121;;;590:1024:109;;;;;;;;;;;;;;;:::i","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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x7c09f054d221d135f09030de7ea6c88370b40d1155c91c79bd9571e9745eaafd\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://15fe19550228f403c79c613fb5fd371882fc89a5f1cee91c937b3030b85352ac\",\"dweb:/ipfs/QmPoXyKEkLd7TwXxKxS5zWquA864ggdpFjVNe5QtAuazFi\"]},\"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol\":{\"keccak256\":\"0x232fa021560a662379a347cb147fff40e55343bd10e9ddf70d93397d94c10b0a\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7e9451d0a0c535484d40a2dd0b6886437ee4c07783713b562c4934bf0170031d\",\"dweb:/ipfs/QmThranaa7Zhm6WM9ehYExPXzdW9dBnFVCnkFa5pKuApAv\"]},\"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\":\"0xd84ac2cbe48406b426cb10027b588b4ddca6f5b71479e81f49cb19184f85898b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cbadd4432cfea4431e024025dac245c9c0b2952022b5058487731cc0d1c591de\",\"dweb:/ipfs/QmVjPSnFLHvF4RLScCe3adKso8ocZ8ySU7yDAkAVspd4Xf\"]}},\"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{},"viaIR":true},"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":"0x7c09f054d221d135f09030de7ea6c88370b40d1155c91c79bd9571e9745eaafd","urls":["bzz-raw://15fe19550228f403c79c613fb5fd371882fc89a5f1cee91c937b3030b85352ac","dweb:/ipfs/QmPoXyKEkLd7TwXxKxS5zWquA864ggdpFjVNe5QtAuazFi"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol":{"keccak256":"0x232fa021560a662379a347cb147fff40e55343bd10e9ddf70d93397d94c10b0a","urls":["bzz-raw://7e9451d0a0c535484d40a2dd0b6886437ee4c07783713b562c4934bf0170031d","dweb:/ipfs/QmThranaa7Zhm6WM9ehYExPXzdW9dBnFVCnkFa5pKuApAv"],"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":"0xd84ac2cbe48406b426cb10027b588b4ddca6f5b71479e81f49cb19184f85898b","urls":["bzz-raw://cbadd4432cfea4431e024025dac245c9c0b2952022b5058487731cc0d1c591de","dweb:/ipfs/QmVjPSnFLHvF4RLScCe3adKso8ocZ8ySU7yDAkAVspd4Xf"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":74594,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":74596,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":74600,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap1","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":74602,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":74606,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"__gap2","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":74608,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":74613,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)74587_storage)"},{"astId":74615,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":74617,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":74619,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":74621,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":74625,"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)74587_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)74587_storage"},"t_struct(CommunityInfo)74587_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":74584,"contract":"pkg/contracts/src/diamonds/RegistryFactoryDiamond.sol:RegistryFactoryDiamond","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":74586,"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":74627,"exportedSymbols":{"BaseDiamond":[74568],"CommunityInfo":[74587],"IDiamondCut":[75831],"IDiamondLoupe":[75872],"IERC173":[75906],"IERC1822Proxiable":[54281],"LibDiamond":[76639],"RegistryFactoryDiamond":[74626]},"nodeType":"SourceUnit","src":"42:1573:109","nodes":[{"id":74570,"nodeType":"PragmaDirective","src":"42:24:109","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":74572,"nodeType":"ImportDirective","src":"68:46:109","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/BaseDiamond.sol","file":"./BaseDiamond.sol","nameLocation":"-1:-1:-1","scope":74627,"sourceUnit":74569,"symbolAliases":[{"foreign":{"id":74571,"name":"BaseDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74568,"src":"76:11:109","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74574,"nodeType":"ImportDirective","src":"115:54:109","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/libraries/LibDiamond.sol","file":"./libraries/LibDiamond.sol","nameLocation":"-1:-1:-1","scope":74627,"sourceUnit":76640,"symbolAliases":[{"foreign":{"id":74573,"name":"LibDiamond","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76639,"src":"123:10:109","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74576,"nodeType":"ImportDirective","src":"170:57:109","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IDiamondCut.sol","file":"./interfaces/IDiamondCut.sol","nameLocation":"-1:-1:-1","scope":74627,"sourceUnit":75832,"symbolAliases":[{"foreign":{"id":74575,"name":"IDiamondCut","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75831,"src":"178:11:109","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74578,"nodeType":"ImportDirective","src":"228:61:109","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IDiamondLoupe.sol","file":"./interfaces/IDiamondLoupe.sol","nameLocation":"-1:-1:-1","scope":74627,"sourceUnit":75873,"symbolAliases":[{"foreign":{"id":74577,"name":"IDiamondLoupe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75872,"src":"236:13:109","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74580,"nodeType":"ImportDirective","src":"290:49:109","nodes":[],"absolutePath":"pkg/contracts/src/diamonds/interfaces/IERC173.sol","file":"./interfaces/IERC173.sol","nameLocation":"-1:-1:-1","scope":74627,"sourceUnit":75907,"symbolAliases":[{"foreign":{"id":74579,"name":"IERC173","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75906,"src":"298:7:109","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74582,"nodeType":"ImportDirective","src":"394:88:109","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/interfaces/draft-IERC1822.sol","file":"@openzeppelin/contracts/interfaces/draft-IERC1822.sol","nameLocation":"-1:-1:-1","scope":74627,"sourceUnit":54282,"symbolAliases":[{"foreign":{"id":74581,"name":"IERC1822Proxiable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54281,"src":"402:17:109","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74587,"nodeType":"StructDefinition","src":"531:57:109","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":74584,"mutability":"mutable","name":"fee","nameLocation":"566:3:109","nodeType":"VariableDeclaration","scope":74587,"src":"558:11:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74583,"name":"uint256","nodeType":"ElementaryTypeName","src":"558:7:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74586,"mutability":"mutable","name":"valid","nameLocation":"580:5:109","nodeType":"VariableDeclaration","scope":74587,"src":"575:10:109","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74585,"name":"bool","nodeType":"ElementaryTypeName","src":"575:4:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"538:13:109","scope":74627,"visibility":"public"},{"id":74626,"nodeType":"ContractDefinition","src":"590:1024:109","nodes":[{"id":74592,"nodeType":"VariableDeclaration","src":"808:38:109","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"831:7:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":74590,"name":"string","nodeType":"ElementaryTypeName","src":"808:6:109","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":74591,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"841:5:109","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":74594,"nodeType":"VariableDeclaration","src":"1017:26:109","nodes":[],"constant":false,"mutability":"mutable","name":"_initialized","nameLocation":"1031:12:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":74593,"name":"uint8","nodeType":"ElementaryTypeName","src":"1017:5:109","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"private"},{"id":74596,"nodeType":"VariableDeclaration","src":"1049:26:109","nodes":[],"constant":false,"mutability":"mutable","name":"_initializing","nameLocation":"1062:13:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74595,"name":"bool","nodeType":"ElementaryTypeName","src":"1049:4:109","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"private"},{"id":74600,"nodeType":"VariableDeclaration","src":"1081:26:109","nodes":[],"constant":false,"mutability":"mutable","name":"__gap1","nameLocation":"1101:6:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":74597,"name":"uint256","nodeType":"ElementaryTypeName","src":"1081:7:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74599,"length":{"hexValue":"3530","id":74598,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1089:2:109","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"1081:11:109","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"},{"id":74602,"nodeType":"VariableDeclaration","src":"1113:21:109","nodes":[],"constant":false,"functionSelector":"b2bdfa7b","mutability":"mutable","name":"_owner","nameLocation":"1128:6:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74601,"name":"address","nodeType":"ElementaryTypeName","src":"1113:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74606,"nodeType":"VariableDeclaration","src":"1140:26:109","nodes":[],"constant":false,"mutability":"mutable","name":"__gap2","nameLocation":"1160:6:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage","typeString":"uint256[49]"},"typeName":{"baseType":{"id":74603,"name":"uint256","nodeType":"ElementaryTypeName","src":"1140:7:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74605,"length":{"hexValue":"3439","id":74604,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1148:2:109","typeDescriptions":{"typeIdentifier":"t_rational_49_by_1","typeString":"int_const 49"},"value":"49"},"nodeType":"ArrayTypeName","src":"1140:11:109","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$49_storage_ptr","typeString":"uint256[49]"}},"visibility":"private"},{"id":74608,"nodeType":"VariableDeclaration","src":"1172:20:109","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"1187:5:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74607,"name":"uint256","nodeType":"ElementaryTypeName","src":"1172:7:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":74613,"nodeType":"VariableDeclaration","src":"1199:49:109","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"1233:15:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74587_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":74612,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":74609,"name":"address","nodeType":"ElementaryTypeName","src":"1207:7:109","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"1199:33:109","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74587_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":74611,"nodeType":"UserDefinedTypeName","pathNode":{"id":74610,"name":"CommunityInfo","nameLocations":["1218:13:109"],"nodeType":"IdentifierPath","referencedDeclaration":74587,"src":"1218:13:109"},"referencedDeclaration":74587,"src":"1218:13:109","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74587_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":74615,"nodeType":"VariableDeclaration","src":"1254:33:109","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"1269:18:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74614,"name":"address","nodeType":"ElementaryTypeName","src":"1254:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74617,"nodeType":"VariableDeclaration","src":"1293:40:109","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"1308:25:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74616,"name":"address","nodeType":"ElementaryTypeName","src":"1293:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74619,"nodeType":"VariableDeclaration","src":"1339:31:109","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"1354:16:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74618,"name":"address","nodeType":"ElementaryTypeName","src":"1339:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74621,"nodeType":"VariableDeclaration","src":"1376:38:109","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"1391:23:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74620,"name":"address","nodeType":"ElementaryTypeName","src":"1376:7:109","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74625,"nodeType":"VariableDeclaration","src":"1420:26:109","nodes":[],"constant":false,"mutability":"mutable","name":"__gap3","nameLocation":"1440:6:109","scope":74626,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":74622,"name":"uint256","nodeType":"ElementaryTypeName","src":"1420:7:109","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74624,"length":{"hexValue":"3530","id":74623,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1428:2:109","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"1420:11:109","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":74588,"name":"BaseDiamond","nameLocations":["625:11:109"],"nodeType":"IdentifierPath","referencedDeclaration":74568,"src":"625:11:109"},"id":74589,"nodeType":"InheritanceSpecifier","src":"625:11:109"}],"canonicalName":"RegistryFactoryDiamond","contractDependencies":[],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[74626,74568,75831,75812,54281],"name":"RegistryFactoryDiamond","nameLocation":"599:22:109","scope":74627,"usedErrors":[74443,74445,75920,75924,75929,75935,75939,75943,75948,75952,75956,75960,75964,75968,75972,75978]}],"license":"AGPL-3.0-only"},"id":109} \ 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 7c6a5bf97..19f70ce55 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":"proxyOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"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":"0x60a080604052346100315730608052611e3f90816100378239608051818181610a4801528181610b4b0152610de40152f35b600080fdfe60808060405260043610156200001457600080fd5b60003560e01c908163025313a214620013db5750806302c1d0b114620013b05780630a992e0c146200133f5780631459457a14620011bb5780631b71f0e4146200117257806329b6eca914620010d25780633101cfcb14620010325780633659cfe61462000dbb5780634f1ef2861462000af657806352d1902d1462000a335780635a2c8ace14620009a55780635c94e4d2146200097a5780635decae021462000931578063715018a614620008e157806377122d5614620008b65780638279c7db146200084a5780638da5cb5b1462000819578063987435be1462000712578063affed0e014620007f9578063b0d3713a14620007b0578063b5b3ca2c146200073d578063b8bed9011462000712578063beb331a314620002cb578063c4d66de8146200023b578063f2fde38b14620001a35763f5016b5e146200015857600080fd5b346200019e5760203660031901126200019e576001600160a01b036200017d62001401565b166000526066602052602060ff600160406000200154166040519015158152f35b600080fd5b346200019e5760203660031901126200019e57620001c062001401565b620001ca620014e6565b6001600160a01b03811615620001e757620001e59062001548565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b346200019e5760203660031901126200019e576200025862001401565b60ff60005460081c16156200027257620001e59062001548565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b346200019e576003196020368201126200019e576001600160401b03600435116200019e5761018081600435360301126200019e576040519061018082016001600160401b03811183821017620006e6576040526200032f60043560040162001418565b8252600435602401356001600160a01b03811681036200019e5760208301526004356044810135604084015260648101356060840152608481013560808401526200037d9060a40162001418565b60a08301526200039260c46004350162001418565b60c083015260043560e401356001600160401b0381116200019e57604090600435019182360301126200019e5760408051919082016001600160401b03811183821017620006e657604052600481013582526024810135906001600160401b0382116200019e5760046200040a9236920101620014c5565b602082015260e082015260043561010401356001600160a01b03811681036200019e5761010082015260043561012401356001600160401b0381116200019e576200045d906004369181350101620014c5565b610120820152600435610144013580151590036200019e576004356101448101356101408301526001600160401b0361016490910135116200019e57620004b036600480356101648101350101620014c5565b6101608201526065546000198114620006fc576001810160655560808201523060a0820152606854606954606a546001600160a01b03928316936200060e936200063893919291811691166200050562001799565b60408051633419635560e01b60208083019190915260806024830181905287516001600160a01b0390811660a485015282890151811660c48501528885015160e485015260608901516101048501529088015161012484015260a0880151811661014484015260c08801511661016483015260e0870151610180610184840152805161022484015201516102448201929092529687959293929091620005b19061026488019062001757565b6101008201516001600160a01b03166101a488015261012082015187820360a3199081016101c48a01529161016091620005ec919062001757565b9261014081015115156101e48a01520151908783030161020488015262001757565b604485019390935260648401526001600160a01b0316608483015203601f19810183528262001449565b6040519161041080840192906001600160401b03841185851017620006e65784936200067793604092620018ba87398152816020820152019062001757565b03906000f08015620006da5760209060018060a01b031680600052606682526001604060002001600160ff198254161790557fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2982604051838152a1604051908152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b346200019e5760003660031901126200019e576067546040516001600160a01b039091168152602090f35b346200019e5760403660031901126200019e577fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c60406200077d62001401565b602435906200078b620014e6565b60018060a01b03169081600052606660205280836000205582519182526020820152a1005b346200019e5760203660031901126200019e57620007cd62001401565b620007d7620014e6565b606a80546001600160a01b0319166001600160a01b0392909216919091179055005b346200019e5760003660031901126200019e576020606554604051908152f35b346200019e5760003660031901126200019e5760206200083862001799565b6040516001600160a01b039091168152f35b346200019e5760203660031901126200019e5760008051602062001d8a83398151915260206200087962001401565b62000883620014e6565b6200088e8162001896565b606780546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b346200019e5760003660031901126200019e57606a546040516001600160a01b039091168152602090f35b346200019e5760003660031901126200019e57620008fe620014e6565b603380546001600160a01b031981169091556000906001600160a01b031660008051602062001d4a8339815191528280a3005b346200019e5760203660031901126200019e576200094e62001401565b62000958620014e6565b606880546001600160a01b0319166001600160a01b0392909216919091179055005b346200019e5760003660031901126200019e576069546040516001600160a01b039091168152602090f35b346200019e5760403660031901126200019e57620009c262001401565b602435908115158092036200019e577fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f629160409162000a00620014e6565b60018060a01b0316908160005260666020526001836000200160ff1981541660ff831617905582519182526020820152a1005b346200019e5760003660031901126200019e577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300362000a9057602060405160008051602062001d0a8339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b60403660031901126200019e5762000b0d62001401565b6024356001600160401b0381116200019e57366023820112156200019e5762000b4190369060248160040135910162001489565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919062000b7c3084141562001580565b62000b9c60008051602062001d0a833981519152938285541614620015d1565b62000ba662001799565b813391160362000d925760008051602062001cca8339815191525460ff161562000bd857505050620001e59062001622565b8316604051926352d1902d60e01b84526020938481600481865afa6000918162000d5d575b5062000c4e5760405162461bcd60e51b815260048101869052602e602482015260008051602062001dea83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9392930362000d175762000c628462001622565b60008051602062001d6a833981519152600080a281511580159062000d0e575b62000c8957005b620001e5926000806040519462000ca0866200142d565b6027865260008051602062001dca83398151915285870152660819985a5b195960ca1b60408701528481519101845af4903d1562000d04573d62000ce4816200146d565b9062000cf4604051928362001449565b8152600081943d92013e620016b4565b60609250620016b4565b50600162000c82565b60405162461bcd60e51b8152600481018390526029602482015260008051602062001daa8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508581813d831162000d8a575b62000d78818362001449565b810103126200019e5751908762000bfd565b503d62000d6c565b60449062000d9f62001799565b60405163163678e960e01b815233600482015291166024820152fd5b346200019e576020806003193601126200019e5762000dd962001401565b6001600160a01b03917f0000000000000000000000000000000000000000000000000000000000000000831662000e133082141562001580565b62000e3360008051602062001d0a833981519152918583541614620015d1565b62000e3d62001799565b84339116036200102557604051828101949091906001600160401b03861183871017620006e657856040526000835260ff60008051602062001cca833981519152541660001462000e985750505050620001e5915062001622565b8492939416906040516352d1902d60e01b81528581600481865afa6000918162000ff0575b5062000f0e5760405162461bcd60e51b815260048101879052602e602482015260008051602062001dea83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9493940362000faa5762000f228262001622565b60008051602062001d6a833981519152600080a282511580159062000fa1575b62000f4957005b600080620001e5956040519562000f60876200142d565b6027875260008051602062001dca83398151915286880152660819985a5b195960ca1b60408801525190845af4903d1562000d04573d62000ce4816200146d565b50600062000f42565b60405162461bcd60e51b8152600481018490526029602482015260008051602062001daa8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d83116200101d575b6200100b818362001449565b810103126200019e5751908862000ebd565b503d62000fff565b60448462000d9f62001799565b346200019e5760203660031901126200019e576200104f62001401565b61010360005460ff8160081c161580620010c4575b6200106f9062001832565b61ffff19161760005562001082620014e6565b6001600160a01b03811615620001e7576200109d9062001548565b61ff00196000541660005560008051602062001d2a833981519152602060405160038152a1005b50600360ff82161062001064565b346200019e5760203660031901126200019e57620010ef62001401565b61010260005460ff8160081c16158062001164575b6200110f9062001832565b61ffff19161760005562001122620014e6565b6001600160a01b03811615620001e7576200113d9062001548565b61ff00196000541660005560008051602062001d2a833981519152602060405160028152a1005b50600260ff82161062001104565b346200019e5760203660031901126200019e576200118f62001401565b62001199620014e6565b606980546001600160a01b0319166001600160a01b0392909216919091179055005b346200019e5760a03660031901126200019e57620011d862001401565b6001600160a01b0390602435908282168083036200019e57604435918483168084036200019e576064358681168091036200019e57608435968716928388036200019e576000549760ff8960081c16159889809a62001331575b801562001318575b620012459062001832565b60ff1981166001176000558962001305575b5060ff60005460081c161562000272576200129d6020976200129d60008051602062001d8a8339815191529a62001292620012a39662001548565b600060655562001896565b62001896565b60018060a01b03199184836067541617606755826068541617606855816069541617606955606a541617606a55604051908152a1620012de57005b61ff00196000541660005560008051602062001d2a833981519152602060405160018152a1005b61ffff1916610101176000558962001257565b50303b1580156200123a575060ff81166001146200123a565b50600160ff82161062001232565b346200019e5760203660031901126200019e576001600160a01b036200136462001401565b1680600052606660205260ff6001604060002001541615620013985760005260666020526020604060002054604051908152f35b6024906040519063f5a6943d60e01b82526004820152fd5b346200019e5760003660031901126200019e576068546040516001600160a01b039091168152602090f35b346200019e5760003660031901126200019e576033546001600160a01b03168152602090f35b600435906001600160a01b03821682036200019e57565b35906001600160a01b03821682036200019e57565b606081019081106001600160401b03821117620006e657604052565b601f909101601f19168101906001600160401b03821190821017620006e657604052565b6001600160401b038111620006e657601f01601f191660200190565b92919262001497826200146d565b91620014a7604051938462001449565b8294818452818301116200019e578281602093846000960137010152565b9080601f830112156200019e57816020620014e39335910162001489565b90565b620014f062001799565b336001600160a01b03909116036200150457565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062001d4a833981519152600080a3565b156200158857565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001cea83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b15620015d957565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001cea83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b15620016595760008051602062001d0a83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b91929015620017195750815115620016ca575090565b3b15620016d45790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156200172d5750805190602001fd5b60405162461bcd60e51b8152602060048201529081906200175390602483019062001757565b0390fd5b919082519283825260005b84811062001784575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520162001762565b6033546001600160a01b0390811690813b620017b3575090565b604051638da5cb5b60e01b8152602081600481865afa918291600093620017e5575b5050620017e0575090565b905090565b602093919293813d821162001829575b81620018046020938362001449565b810103126200182557519182168203620018225750903880620017d5565b80fd5b5080fd5b3d9150620017f5565b156200183a57565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b6001600160a01b031615620018a757565b6040516303988b8160e61b8152600490fdfe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c634300081300334910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024988be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3bbdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a2646970667358221220ec3e7f8dc72f777e7d88aee1f840c7a907e383b9943f5ece6f9a028b1fed803964736f6c63430008130033","sourceMap":"529:5756:107:-:0;;;;;;;1088:4:61;1080:13;;529:5756:107;;;;;;1080:13:61;529:5756:107;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60808060405260043610156200001457600080fd5b60003560e01c908163025313a214620013db5750806302c1d0b114620013b05780630a992e0c146200133f5780631459457a14620011bb5780631b71f0e4146200117257806329b6eca914620010d25780633101cfcb14620010325780633659cfe61462000dbb5780634f1ef2861462000af657806352d1902d1462000a335780635a2c8ace14620009a55780635c94e4d2146200097a5780635decae021462000931578063715018a614620008e157806377122d5614620008b65780638279c7db146200084a5780638da5cb5b1462000819578063987435be1462000712578063affed0e014620007f9578063b0d3713a14620007b0578063b5b3ca2c146200073d578063b8bed9011462000712578063beb331a314620002cb578063c4d66de8146200023b578063f2fde38b14620001a35763f5016b5e146200015857600080fd5b346200019e5760203660031901126200019e576001600160a01b036200017d62001401565b166000526066602052602060ff600160406000200154166040519015158152f35b600080fd5b346200019e5760203660031901126200019e57620001c062001401565b620001ca620014e6565b6001600160a01b03811615620001e757620001e59062001548565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b346200019e5760203660031901126200019e576200025862001401565b60ff60005460081c16156200027257620001e59062001548565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b346200019e576003196020368201126200019e576001600160401b03600435116200019e5761018081600435360301126200019e576040519061018082016001600160401b03811183821017620006e6576040526200032f60043560040162001418565b8252600435602401356001600160a01b03811681036200019e5760208301526004356044810135604084015260648101356060840152608481013560808401526200037d9060a40162001418565b60a08301526200039260c46004350162001418565b60c083015260043560e401356001600160401b0381116200019e57604090600435019182360301126200019e5760408051919082016001600160401b03811183821017620006e657604052600481013582526024810135906001600160401b0382116200019e5760046200040a9236920101620014c5565b602082015260e082015260043561010401356001600160a01b03811681036200019e5761010082015260043561012401356001600160401b0381116200019e576200045d906004369181350101620014c5565b610120820152600435610144013580151590036200019e576004356101448101356101408301526001600160401b0361016490910135116200019e57620004b036600480356101648101350101620014c5565b6101608201526065546000198114620006fc576001810160655560808201523060a0820152606854606954606a546001600160a01b03928316936200060e936200063893919291811691166200050562001799565b60408051633419635560e01b60208083019190915260806024830181905287516001600160a01b0390811660a485015282890151811660c48501528885015160e485015260608901516101048501529088015161012484015260a0880151811661014484015260c08801511661016483015260e0870151610180610184840152805161022484015201516102448201929092529687959293929091620005b19061026488019062001757565b6101008201516001600160a01b03166101a488015261012082015187820360a3199081016101c48a01529161016091620005ec919062001757565b9261014081015115156101e48a01520151908783030161020488015262001757565b604485019390935260648401526001600160a01b0316608483015203601f19810183528262001449565b6040519161041080840192906001600160401b03841185851017620006e65784936200067793604092620018ba87398152816020820152019062001757565b03906000f08015620006da5760209060018060a01b031680600052606682526001604060002001600160ff198254161790557fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2982604051838152a1604051908152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b346200019e5760003660031901126200019e576067546040516001600160a01b039091168152602090f35b346200019e5760403660031901126200019e577fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c60406200077d62001401565b602435906200078b620014e6565b60018060a01b03169081600052606660205280836000205582519182526020820152a1005b346200019e5760203660031901126200019e57620007cd62001401565b620007d7620014e6565b606a80546001600160a01b0319166001600160a01b0392909216919091179055005b346200019e5760003660031901126200019e576020606554604051908152f35b346200019e5760003660031901126200019e5760206200083862001799565b6040516001600160a01b039091168152f35b346200019e5760203660031901126200019e5760008051602062001d8a83398151915260206200087962001401565b62000883620014e6565b6200088e8162001896565b606780546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b346200019e5760003660031901126200019e57606a546040516001600160a01b039091168152602090f35b346200019e5760003660031901126200019e57620008fe620014e6565b603380546001600160a01b031981169091556000906001600160a01b031660008051602062001d4a8339815191528280a3005b346200019e5760203660031901126200019e576200094e62001401565b62000958620014e6565b606880546001600160a01b0319166001600160a01b0392909216919091179055005b346200019e5760003660031901126200019e576069546040516001600160a01b039091168152602090f35b346200019e5760403660031901126200019e57620009c262001401565b602435908115158092036200019e577fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f629160409162000a00620014e6565b60018060a01b0316908160005260666020526001836000200160ff1981541660ff831617905582519182526020820152a1005b346200019e5760003660031901126200019e577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300362000a9057602060405160008051602062001d0a8339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b60403660031901126200019e5762000b0d62001401565b6024356001600160401b0381116200019e57366023820112156200019e5762000b4190369060248160040135910162001489565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919062000b7c3084141562001580565b62000b9c60008051602062001d0a833981519152938285541614620015d1565b62000ba662001799565b813391160362000d925760008051602062001cca8339815191525460ff161562000bd857505050620001e59062001622565b8316604051926352d1902d60e01b84526020938481600481865afa6000918162000d5d575b5062000c4e5760405162461bcd60e51b815260048101869052602e602482015260008051602062001dea83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9392930362000d175762000c628462001622565b60008051602062001d6a833981519152600080a281511580159062000d0e575b62000c8957005b620001e5926000806040519462000ca0866200142d565b6027865260008051602062001dca83398151915285870152660819985a5b195960ca1b60408701528481519101845af4903d1562000d04573d62000ce4816200146d565b9062000cf4604051928362001449565b8152600081943d92013e620016b4565b60609250620016b4565b50600162000c82565b60405162461bcd60e51b8152600481018390526029602482015260008051602062001daa8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508581813d831162000d8a575b62000d78818362001449565b810103126200019e5751908762000bfd565b503d62000d6c565b60449062000d9f62001799565b60405163163678e960e01b815233600482015291166024820152fd5b346200019e576020806003193601126200019e5762000dd962001401565b6001600160a01b03917f0000000000000000000000000000000000000000000000000000000000000000831662000e133082141562001580565b62000e3360008051602062001d0a833981519152918583541614620015d1565b62000e3d62001799565b84339116036200102557604051828101949091906001600160401b03861183871017620006e657856040526000835260ff60008051602062001cca833981519152541660001462000e985750505050620001e5915062001622565b8492939416906040516352d1902d60e01b81528581600481865afa6000918162000ff0575b5062000f0e5760405162461bcd60e51b815260048101879052602e602482015260008051602062001dea83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9493940362000faa5762000f228262001622565b60008051602062001d6a833981519152600080a282511580159062000fa1575b62000f4957005b600080620001e5956040519562000f60876200142d565b6027875260008051602062001dca83398151915286880152660819985a5b195960ca1b60408801525190845af4903d1562000d04573d62000ce4816200146d565b50600062000f42565b60405162461bcd60e51b8152600481018490526029602482015260008051602062001daa8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d83116200101d575b6200100b818362001449565b810103126200019e5751908862000ebd565b503d62000fff565b60448462000d9f62001799565b346200019e5760203660031901126200019e576200104f62001401565b61010360005460ff8160081c161580620010c4575b6200106f9062001832565b61ffff19161760005562001082620014e6565b6001600160a01b03811615620001e7576200109d9062001548565b61ff00196000541660005560008051602062001d2a833981519152602060405160038152a1005b50600360ff82161062001064565b346200019e5760203660031901126200019e57620010ef62001401565b61010260005460ff8160081c16158062001164575b6200110f9062001832565b61ffff19161760005562001122620014e6565b6001600160a01b03811615620001e7576200113d9062001548565b61ff00196000541660005560008051602062001d2a833981519152602060405160028152a1005b50600260ff82161062001104565b346200019e5760203660031901126200019e576200118f62001401565b62001199620014e6565b606980546001600160a01b0319166001600160a01b0392909216919091179055005b346200019e5760a03660031901126200019e57620011d862001401565b6001600160a01b0390602435908282168083036200019e57604435918483168084036200019e576064358681168091036200019e57608435968716928388036200019e576000549760ff8960081c16159889809a62001331575b801562001318575b620012459062001832565b60ff1981166001176000558962001305575b5060ff60005460081c161562000272576200129d6020976200129d60008051602062001d8a8339815191529a62001292620012a39662001548565b600060655562001896565b62001896565b60018060a01b03199184836067541617606755826068541617606855816069541617606955606a541617606a55604051908152a1620012de57005b61ff00196000541660005560008051602062001d2a833981519152602060405160018152a1005b61ffff1916610101176000558962001257565b50303b1580156200123a575060ff81166001146200123a565b50600160ff82161062001232565b346200019e5760203660031901126200019e576001600160a01b036200136462001401565b1680600052606660205260ff6001604060002001541615620013985760005260666020526020604060002054604051908152f35b6024906040519063f5a6943d60e01b82526004820152fd5b346200019e5760003660031901126200019e576068546040516001600160a01b039091168152602090f35b346200019e5760003660031901126200019e576033546001600160a01b03168152602090f35b600435906001600160a01b03821682036200019e57565b35906001600160a01b03821682036200019e57565b606081019081106001600160401b03821117620006e657604052565b601f909101601f19168101906001600160401b03821190821017620006e657604052565b6001600160401b038111620006e657601f01601f191660200190565b92919262001497826200146d565b91620014a7604051938462001449565b8294818452818301116200019e578281602093846000960137010152565b9080601f830112156200019e57816020620014e39335910162001489565b90565b620014f062001799565b336001600160a01b03909116036200150457565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062001d4a833981519152600080a3565b156200158857565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001cea83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b15620015d957565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001cea83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b15620016595760008051602062001d0a83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b91929015620017195750815115620016ca575090565b3b15620016d45790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156200172d5750805190602001fd5b60405162461bcd60e51b8152602060048201529081906200175390602483019062001757565b0390fd5b919082519283825260005b84811062001784575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520162001762565b6033546001600160a01b0390811690813b620017b3575090565b604051638da5cb5b60e01b8152602081600481865afa918291600093620017e5575b5050620017e0575090565b905090565b602093919293813d821162001829575b81620018046020938362001449565b810103126200182557519182168203620018225750903880620017d5565b80fd5b5080fd5b3d9150620017f5565b156200183a57565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b6001600160a01b031615620018a757565b6040516303988b8160e61b8152600490fdfe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c634300081300334910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024988be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3bbdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a2646970667358221220ec3e7f8dc72f777e7d88aee1f840c7a907e383b9943f5ece6f9a028b1fed803964736f6c63430008130033","sourceMap":"529:5756:107:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;-1:-1:-1;;;;;529:5756:107;;:::i;:::-;;;;5956:15;529:5756;;;689:66:57;529:5756:107;;;;5956:33;689:66:57;;529:5756:107;;;;;;;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;529:5756:107;;2423:22:42;529:5756:107;;2517:8:42;;;:::i;:::-;529:5756:107;;;;-1:-1:-1;;;529:5756:107;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:5756:107;;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;;;:::i;:::-;689:66:57;529:5756:107;;;;689:66:57;529:5756:107;;;499:12:102;;;:::i;529:5756:107:-;;;-1:-1:-1;;;529:5756:107;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:5756:107;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;4404:7;529:5756;-1:-1:-1;;529:5756:107;;;;;;;4404:7;529:5756;;;;;4455:4;529:5756;;;;4530:25;529:5756;4661:16;529:5756;4679:23;529:5756;-1:-1:-1;;;;;529:5756:107;;;;;;4570:155;;529:5756;;;;;;;4704:7;;:::i;:::-;529:5756;;;-1:-1:-1;;;529:5756:107;4570:155;;;;;;;529:5756;;4570:155;;529:5756;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4610:41;529:5756;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4610:41;;529:5756;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;;;;-1:-1:-1;529:5756:107;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;4570:155;-1:-1:-1;;4570:155:107;;;;;;:::i;:::-;529:5756;;;4492:243;;;;;;-1:-1:-1;;;;;4492:243:107;;;;;;;;;;529:5756;4492:243;529:5756;4492:243;;;;529:5756;;;;;;;;;;:::i;:::-;4492:243;;529:5756;4492:243;;;;;529:5756;;;;;;;;;;;4894:15;529:5756;;;;;;4894:49;529:5756;;;;;;;;;4965:44;529:5756;;;;;;4965:44;529:5756;;;;;;4492:243;529:5756;;689:66:57;529:5756:107;689:66:57;;;;;4492:243:107;529:5756;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;671:33;529:5756;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;5582:43;529:5756;;;:::i;:::-;;;1324:62:42;;;:::i;:::-;529:5756:107;;;;;;;;;;5518:15;529:5756;;;;;;;;;;;;;;;;5582:43;529:5756;;;;;;;-1:-1:-1;;529:5756:107;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2662:34:107;529:5756;;-1:-1:-1;;;;;;529:5756:107;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;;589:20;529:5756;;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;-1:-1:-1;;;;;;;;;;;529:5756:107;;;:::i;:::-;1324:62:42;;:::i;:::-;5172:15:107;;;:::i;:::-;5198:36;529:5756;;-1:-1:-1;;;;;;529:5756:107;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;5249:31;529:5756;;;;;;;-1:-1:-1;;529:5756:107;;;;793:38;529:5756;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;1324:62:42;;:::i;:::-;2779:6;529:5756:107;;-1:-1:-1;;;;;;529:5756:107;;;;;;;-1:-1:-1;;;;;529:5756:107;-1:-1:-1;;;;;;;;;;;529:5756:107;;2827:40:42;529:5756:107;;;;;;;-1:-1:-1;;529:5756:107;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2064:36:107;529:5756;;-1:-1:-1;;;;;;529:5756:107;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;756:31;529:5756;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;;;:::i;:::-;;;;;;;;;;;;5797:42;1324:62:42;529:5756:107;1324:62:42;;;:::i;:::-;529:5756:107;;;;;;;;;;5738:15;529:5756;;;;;;5738:33;529:5756;;;;;;;;;;;;;;;;;;;;5797:42;529:5756;;;;;;;-1:-1:-1;;529:5756:107;;;;2089:6:61;-1:-1:-1;;;;;529:5756:107;2080:4:61;2072:23;529:5756:107;;;;;-1:-1:-1;;;;;;;;;;;529:5756:107;;;;;;-1:-1:-1;;;529:5756:107;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:5756:107;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;;;:::i;:::-;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1654:6:61;529:5756:107;;;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;529:5756:107;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;529:5756:107;;1256:21:102;1252:94;;-1:-1:-1;;;;;;;;;;;689:66:57;;;;;;2993:17;;;;;;:::i;2906:504::-;529:5756:107;;;;689:66:57;;;;3046:52;;;;;;529:5756:107;3046:52:57;;;;529:5756:107;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;529:5756:107;;-1:-1:-1;;;3262:56:57;;529:5756:107;3262:56:57;;689:66;;;;529:5756:107;689:66:57;;529:5756:107;-1:-1:-1;;;;;;;;;;;529:5756:107;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;529:5756:107;1889:27:57;;529:5756:107;;2208:15:57;;;:28;;;3042:291;2204:112;;529:5756:107;2204:112:57;7307:69:73;529:5756:107;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;529:5756:107;;;;-1:-1:-1;;;529:5756:107;;;;7265:25:73;;;;;;;;;529:5756:107;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;7307:69:73;:::i;529:5756:107:-;;;-1:-1:-1;7307:69:73;:::i;2208:28:57:-;;529:5756:107;2208:28:57;;689:66;529:5756:107;;-1:-1:-1;;;689:66:57;;529:5756:107;689:66:57;;;;;;529:5756:107;689:66:57;;529:5756:107;-1:-1:-1;;;;;;;;;;;529:5756:107;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;;;;;;1252:94:102;529:5756:107;1327:7:102;;;:::i;:::-;529:5756:107;;-1:-1:-1;;;1300:35:102;;1267:10;529:5756:107;1300:35:102;;529:5756:107;;;;;;;1300:35:102;529:5756:107;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;529:5756:107;1654:6:61;529:5756:107;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;529:5756:107;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;529:5756:107;;1256:21:102;1252:94;;529:5756:107;;;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;689:66:57;-1:-1:-1;;;;;;;;;;;689:66:57;;2906:504;689:66;;;2993:17;;;;;;;;:::i;2906:504::-;529:5756:107;;;;;;;;689:66:57;;;3046:52;;;;529:5756:107;3046:52:57;;;;529:5756:107;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;529:5756:107;;-1:-1:-1;;;3262:56:57;;529:5756:107;3262:56:57;;689:66;;;;;;;529:5756:107;-1:-1:-1;;;;;;;;;;;529:5756:107;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;529:5756:107;1889:27:57;;529:5756:107;;2208:15:57;;;:28;;;3042:291;2204:112;;529:5756:107;2204:112:57;529:5756:107;;7307:69:73;529:5756:107;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;529:5756:107;;;;-1:-1:-1;;;529:5756:107;;;;7265:25:73;;;;;;529:5756:107;;;;;;;;:::i;2208:28:57:-;;529:5756:107;2208:28:57;;689:66;529:5756:107;;-1:-1:-1;;;689:66:57;;529:5756:107;689:66:57;;;;;;;;;529:5756:107;-1:-1:-1;;;;;;;;;;;529:5756:107;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;;;;;;1252:94:102;529:5756:107;1327:7:102;;;:::i;529:5756:107:-;;;;;;-1:-1:-1;;529:5756:107;;;;;;:::i;:::-;;;;689:66:57;529:5756:107;;;689:66:57;4881:14:44;:40;;;529:5756:107;4873:99:44;;;:::i;:::-;-1:-1:-1;;529:5756:107;;;;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;529:5756:107;;2423:22:42;529:5756:107;;2517:8:42;;;:::i;:::-;529:5756:107;;;;;;;-1:-1:-1;;;;;;;;;;;529:5756:107;;;;;;5091:20:44;529:5756:107;4881:40:44;-1:-1:-1;529:5756:107;689:66:57;;;4899:22:44;4881:40;;529:5756:107;;;;;;-1:-1:-1;;529:5756:107;;;;;;:::i;:::-;;;;689:66:57;529:5756:107;;;689:66:57;4881:14:44;:40;;;529:5756:107;4873:99:44;;;:::i;:::-;-1:-1:-1;;529:5756:107;;;;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;529:5756:107;;2423:22:42;529:5756:107;;2517:8:42;;;:::i;:::-;529:5756:107;;;;;;;-1:-1:-1;;;;;;;;;;;529:5756:107;;;4055:1;529:5756;;5091:20:44;529:5756:107;4881:40:44;-1:-1:-1;4055:1:107;689:66:57;;;4899:22:44;4881:40;;529:5756:107;;;;;;-1:-1:-1;;529:5756:107;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2357:27:107;529:5756;;-1:-1:-1;;;;;;529:5756:107;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;;;:::i;:::-;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;689:66:57;529:5756:107;;;689:66:57;3301:14:44;3347:34;;;;;;529:5756:107;3346:108:44;;;;529:5756:107;3325:201:44;;;:::i;:::-;-1:-1:-1;;529:5756:107;;;;;;;3562:65:44;;529:5756:107;;689:66:57;529:5756:107;;;;689:66:57;529:5756:107;;;3568:26;529:5756;499:12:102;3519:19:107;-1:-1:-1;;;;;;;;;;;499:12:102;;3624:24:107;499:12:102;;:::i;:::-;529:5756:107;3481:9;529:5756;3519:19;:::i;:::-;3568:26;:::i;3624:24::-;529:5756;;;;;;;;;3659:40;529:5756;;;3659:40;529:5756;;3709:54;529:5756;;;3709:54;529:5756;;3773:36;529:5756;;;3773:36;529:5756;3819:50;529:5756;;;3819:50;529:5756;;;;;;3884:35;3647:99:44;;529:5756:107;3647:99:44;529:5756:107;;;;;;;-1:-1:-1;;;;;;;;;;;529:5756:107;;;;;;3721:14:44;529:5756:107;3562:65:44;-1:-1:-1;;529:5756:107;;;;;3562:65:44;;;3346:108;3426:4;;1702:19:73;:23;3387:66:44;;3346:108;3387:66;-1:-1:-1;689:66:57;;;529:5756:107;3436:17:44;3346:108;;3347:34;689:66:57;529:5756:107;689:66:57;;;3365:16:44;3347:34;;529:5756:107;;;;;;-1:-1:-1;;529:5756:107;;;;-1:-1:-1;;;;;529:5756:107;;:::i;:::-;;;;;6101:15;529:5756;;689:66:57;529:5756:107;;;;6101:33;689:66:57;;6100:34:107;6096:100;;529:5756;;6101:15;529:5756;;;;;;;;;;;;;6096:100;529:5756;;;;6157:28;;;;;;529:5756;6157:28;;529:5756;6157:28;529:5756;;;;;;-1:-1:-1;;529:5756:107;;;;710:40;529:5756;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;;;;;-1:-1:-1;;529:5756:107;;;;1534:6:42;529:5756:107;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;:::o;:::-;;;-1:-1:-1;;;;;529:5756:107;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;:::o;:::-;4570:155;529:5756;;;-1:-1:-1;;529:5756:107;;;;-1:-1:-1;;;;;529:5756:107;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;529:5756:107;;;;4570:155;529:5756;-1:-1:-1;;529:5756:107;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;529:5756:107;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;1620:130:42:-;1683:7;;:::i;:::-;965:10:48;-1:-1:-1;;;;;529:5756:107;;;1683:23:42;529:5756:107;;1620:130:42:o;529:5756:107:-;;;;;;;;;;;;;;;;;;;;;;;;;2687:187:42;2779:6;529:5756:107;;-1:-1:-1;;;;;529:5756:107;;;-1:-1:-1;;;;;;529:5756:107;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;2827:40:42;2687:187::o;529:5756:107:-;;;;:::o;:::-;;;-1:-1:-1;;;529:5756:107;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;529:5756:107;;;;-1:-1:-1;;;529:5756:107;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;529:5756:107;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;529:5756:107;;;;-1:-1:-1;;;529:5756:107;;;;;;;1406:259:57;1702:19:73;;:23;529:5756:107;;-1:-1:-1;;;;;;;;;;;529:5756:107;;-1:-1:-1;;;;;;529:5756:107;-1:-1:-1;;;;;529:5756:107;;;;;;;;;1406:259:57:o;529:5756:107:-;;;-1:-1:-1;;;529:5756:107;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:5756:107;;;;;;;7671:628:73;;;;7875:418;;;529:5756:107;;;7906:22:73;7902:286;;8201:17;;:::o;7902:286::-;1702:19;:23;529:5756:107;;8201:17:73;:::o;529:5756:107:-;;;-1:-1:-1;;;529:5756:107;;;;;;;;;;;;;;;;;;;;7875:418:73;529:5756:107;;;;-1:-1:-1;8980:21:73;:17;;9152:142;;;;;;;8976:379;529:5756:107;;-1:-1:-1;;;9324:20:73;;529:5756:107;9324:20:73;;;529:5756:107;;;;;;;;;;;:::i;:::-;9324:20:73;;;529:5756:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;4570:155;;;529:5756;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;633:544:102;1534:6:42;529:5756:107;-1:-1:-1;;;;;529:5756:107;;;;755:33:102;;1534:6:42;;870:19:102;;:::o;751:420::-;529:5756:107;;-1:-1:-1;;;924:40:102;;;529:5756:107;924:40:102;529:5756:107;924:40:102;;;;;;-1:-1:-1;924:40:102;;;751:420;-1:-1:-1;;920:241:102;;1127:19;;:::o;920:241::-;1008:13;;;:::o;924:40::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;529:5756:107;;;;;;;;;;;;924:40:102;;;;;;529:5756:107;;;;;;;924:40:102;;;-1:-1:-1;924:40:102;;529:5756:107;;;;:::o;:::-;;;-1:-1:-1;;;529:5756:107;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:5756:107;;;;;;;1664:141;-1:-1:-1;;;;;529:5756:107;1746:22;1742:56;;1664:141::o;1742:56::-;529:5756;;-1:-1:-1;;;1777:21:107;;;;","linkReferences":{},"immutableReferences":{"54869":[{"start":2632,"length":32},{"start":2891,"length":32},{"start":3556,"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","proxyOwner()":"025313a2","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\":\"proxyOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda\",\"dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol\":{\"keccak256\":\"0x5fbf85ca8e6c4f20cdc449e2f1298b6e9530678710a2f69f792e47dcd02fcc68\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://31c33494b50399a02ef1ed6144ad1dda55acd0be107dd46b6526eb8028d70268\",\"dweb:/ipfs/QmRF4w3UnZPveAMNxqgnSbK8G9PpPXJqWWnNMBNLAbQTyg\"]},\"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":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{},"viaIR":true},"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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f","urls":["bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda","dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol":{"keccak256":"0x5fbf85ca8e6c4f20cdc449e2f1298b6e9530678710a2f69f792e47dcd02fcc68","urls":["bzz-raw://31c33494b50399a02ef1ed6144ad1dda55acd0be107dd46b6526eb8028d70268","dweb:/ipfs/QmRF4w3UnZPveAMNxqgnSbK8G9PpPXJqWWnNMBNLAbQTyg"],"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":52287,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52290,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":52992,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52079,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52199,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":74168,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":74173,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)74163_storage)"},{"astId":74175,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":74177,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":74179,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":74181,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":74543,"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)74163_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)74163_storage"},"t_struct(CommunityInfo)74163_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":74160,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":74162,"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":74545,"exportedSymbols":{"Clone":[3002],"CommunityInfo":[74163],"ERC1967Proxy":[54318],"ProxyOwnableUpgrader":[71005],"RegistryCommunityInitializeParamsV0_0":[71072],"RegistryCommunityV0_0":[73276],"RegistryFactoryFacet":[74544]},"nodeType":"SourceUnit","src":"42:6244:107","nodes":[{"id":74149,"nodeType":"PragmaDirective","src":"42:24:107","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":74152,"nodeType":"ImportDirective","src":"68:136:107","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":74545,"sourceUnit":73277,"symbolAliases":[{"foreign":{"id":74150,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73276,"src":"81:21:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":74151,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71072,"src":"108:37:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74154,"nodeType":"ImportDirective","src":"205:67:107","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"@src/ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":74545,"sourceUnit":71006,"symbolAliases":[{"foreign":{"id":74153,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71005,"src":"213:20:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74156,"nodeType":"ImportDirective","src":"273:84:107","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":74545,"sourceUnit":54319,"symbolAliases":[{"foreign":{"id":74155,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54318,"src":"281:12:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74158,"nodeType":"ImportDirective","src":"358: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":74545,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":74157,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"366:5:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74163,"nodeType":"StructDefinition","src":"425:57:107","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":74160,"mutability":"mutable","name":"fee","nameLocation":"460:3:107","nodeType":"VariableDeclaration","scope":74163,"src":"452:11:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74159,"name":"uint256","nodeType":"ElementaryTypeName","src":"452:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74162,"mutability":"mutable","name":"valid","nameLocation":"474:5:107","nodeType":"VariableDeclaration","scope":74163,"src":"469:10:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74161,"name":"bool","nodeType":"ElementaryTypeName","src":"469:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"432:13:107","scope":74545,"visibility":"public"},{"id":74544,"nodeType":"ContractDefinition","src":"529:5756:107","nodes":[{"id":74168,"nodeType":"VariableDeclaration","src":"589:20:107","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"604:5:107","scope":74544,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74167,"name":"uint256","nodeType":"ElementaryTypeName","src":"589:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":74173,"nodeType":"VariableDeclaration","src":"616:49:107","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"650:15:107","scope":74544,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74163_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":74172,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":74169,"name":"address","nodeType":"ElementaryTypeName","src":"624:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"616:33:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74163_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":74171,"nodeType":"UserDefinedTypeName","pathNode":{"id":74170,"name":"CommunityInfo","nameLocations":["635:13:107"],"nodeType":"IdentifierPath","referencedDeclaration":74163,"src":"635:13:107"},"referencedDeclaration":74163,"src":"635:13:107","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74163_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":74175,"nodeType":"VariableDeclaration","src":"671:33:107","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"686:18:107","scope":74544,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74174,"name":"address","nodeType":"ElementaryTypeName","src":"671:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74177,"nodeType":"VariableDeclaration","src":"710:40:107","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"725:25:107","scope":74544,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74176,"name":"address","nodeType":"ElementaryTypeName","src":"710:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74179,"nodeType":"VariableDeclaration","src":"756:31:107","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"771:16:107","scope":74544,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74178,"name":"address","nodeType":"ElementaryTypeName","src":"756:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74181,"nodeType":"VariableDeclaration","src":"793:38:107","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"808:23:107","scope":74544,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74180,"name":"address","nodeType":"ElementaryTypeName","src":"793:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":74185,"nodeType":"EventDefinition","src":"1004:46:107","nodes":[],"anonymous":false,"eventSelector":"bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d","name":"FeeReceiverSet","nameLocation":"1010:14:107","parameters":{"id":74184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74183,"indexed":false,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"1033:15:107","nodeType":"VariableDeclaration","scope":74185,"src":"1025:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74182,"name":"address","nodeType":"ElementaryTypeName","src":"1025:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1024:25:107"}},{"id":74191,"nodeType":"EventDefinition","src":"1055:66:107","nodes":[],"anonymous":false,"eventSelector":"a1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c","name":"ProtocolFeeSet","nameLocation":"1061:14:107","parameters":{"id":74190,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74187,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1084:10:107","nodeType":"VariableDeclaration","scope":74191,"src":"1076:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74186,"name":"address","nodeType":"ElementaryTypeName","src":"1076:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74189,"indexed":false,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"1104:15:107","nodeType":"VariableDeclaration","scope":74191,"src":"1096:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74188,"name":"uint256","nodeType":"ElementaryTypeName","src":"1096:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1075:45:107"}},{"id":74195,"nodeType":"EventDefinition","src":"1126:51:107","nodes":[],"anonymous":false,"eventSelector":"b4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc29","name":"CommunityCreated","nameLocation":"1132:16:107","parameters":{"id":74194,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74193,"indexed":false,"mutability":"mutable","name":"_registryCommunity","nameLocation":"1157:18:107","nodeType":"VariableDeclaration","scope":74195,"src":"1149:26:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74192,"name":"address","nodeType":"ElementaryTypeName","src":"1149:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1148:28:107"}},{"id":74201,"nodeType":"EventDefinition","src":"1182:62:107","nodes":[],"anonymous":false,"eventSelector":"ecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f62","name":"CommunityValiditySet","nameLocation":"1188:20:107","parameters":{"id":74200,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74197,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1217:10:107","nodeType":"VariableDeclaration","scope":74201,"src":"1209:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74196,"name":"address","nodeType":"ElementaryTypeName","src":"1209:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74199,"indexed":false,"mutability":"mutable","name":"_isValid","nameLocation":"1234:8:107","nodeType":"VariableDeclaration","scope":74201,"src":"1229:13:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74198,"name":"bool","nodeType":"ElementaryTypeName","src":"1229:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1208:35:107"}},{"id":74205,"nodeType":"ErrorDefinition","src":"1416:43:107","nodes":[],"errorSelector":"f5a6943d","name":"CommunityInvalid","nameLocation":"1422:16:107","parameters":{"id":74204,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74203,"mutability":"mutable","name":"_community","nameLocation":"1447:10:107","nodeType":"VariableDeclaration","scope":74205,"src":"1439:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74202,"name":"address","nodeType":"ElementaryTypeName","src":"1439:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1438:20:107"}},{"id":74207,"nodeType":"ErrorDefinition","src":"1464:28:107","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"1470:19:107","parameters":{"id":74206,"nodeType":"ParameterList","parameters":[],"src":"1489:2:107"}},{"id":74223,"nodeType":"FunctionDefinition","src":"1664:141:107","nodes":[],"body":{"id":74222,"nodeType":"Block","src":"1732:73:107","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":74217,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":74212,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74209,"src":"1746:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":74215,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1766: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":74214,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1758:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74213,"name":"address","nodeType":"ElementaryTypeName","src":"1758:7:107","typeDescriptions":{}}},"id":74216,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1758:10:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1746:22:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74221,"nodeType":"IfStatement","src":"1742:56:107","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":74218,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74207,"src":"1777:19:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":74219,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1777:21:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74220,"nodeType":"RevertStatement","src":"1770:28:107"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"1673:18:107","parameters":{"id":74210,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74209,"mutability":"mutable","name":"_address","nameLocation":"1700:8:107","nodeType":"VariableDeclaration","scope":74223,"src":"1692:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74208,"name":"address","nodeType":"ElementaryTypeName","src":"1692:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1691:18:107"},"returnParameters":{"id":74211,"nodeType":"ParameterList","parameters":[],"src":"1732:0:107"},"scope":74544,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":74236,"nodeType":"FunctionDefinition","src":"1979:128:107","nodes":[],"body":{"id":74235,"nodeType":"Block","src":"2054:53:107","nodes":[],"statements":[{"expression":{"id":74233,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74231,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74177,"src":"2064:25:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74232,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74226,"src":"2092:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2064:36:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74234,"nodeType":"ExpressionStatement","src":"2064:36:107"}]},"documentation":{"id":74224,"nodeType":"StructuredDocumentation","src":"1810:164:107","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":74229,"kind":"modifierInvocation","modifierName":{"id":74228,"name":"onlyOwner","nameLocations":["2044:9:107"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"2044:9:107"},"nodeType":"ModifierInvocation","src":"2044:9:107"}],"name":"setRegistryCommunityTemplate","nameLocation":"1988:28:107","parameters":{"id":74227,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74226,"mutability":"mutable","name":"template","nameLocation":"2025:8:107","nodeType":"VariableDeclaration","scope":74236,"src":"2017:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74225,"name":"address","nodeType":"ElementaryTypeName","src":"2017:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2016:18:107"},"returnParameters":{"id":74230,"nodeType":"ParameterList","parameters":[],"src":"2054:0:107"},"scope":74544,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":74249,"nodeType":"FunctionDefinition","src":"2281:110:107","nodes":[],"body":{"id":74248,"nodeType":"Block","src":"2347:44:107","nodes":[],"statements":[{"expression":{"id":74246,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74244,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74179,"src":"2357:16:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74245,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74239,"src":"2376:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2357:27:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74247,"nodeType":"ExpressionStatement","src":"2357:27:107"}]},"documentation":{"id":74237,"nodeType":"StructuredDocumentation","src":"2113:163:107","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":74242,"kind":"modifierInvocation","modifierName":{"id":74241,"name":"onlyOwner","nameLocations":["2337:9:107"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"2337:9:107"},"nodeType":"ModifierInvocation","src":"2337:9:107"}],"name":"setStrategyTemplate","nameLocation":"2290:19:107","parameters":{"id":74240,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74239,"mutability":"mutable","name":"template","nameLocation":"2318:8:107","nodeType":"VariableDeclaration","scope":74249,"src":"2310:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74238,"name":"address","nodeType":"ElementaryTypeName","src":"2310:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2309:18:107"},"returnParameters":{"id":74243,"nodeType":"ParameterList","parameters":[],"src":"2347:0:107"},"scope":74544,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":74262,"nodeType":"FunctionDefinition","src":"2579:124:107","nodes":[],"body":{"id":74261,"nodeType":"Block","src":"2652:51:107","nodes":[],"statements":[{"expression":{"id":74259,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74257,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74181,"src":"2662:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74258,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74252,"src":"2688:8:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2662:34:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74260,"nodeType":"ExpressionStatement","src":"2662:34:107"}]},"documentation":{"id":74250,"nodeType":"StructuredDocumentation","src":"2397:177:107","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":74255,"kind":"modifierInvocation","modifierName":{"id":74254,"name":"onlyOwner","nameLocations":["2642:9:107"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"2642:9:107"},"nodeType":"ModifierInvocation","src":"2642:9:107"}],"name":"setCollateralVaultTemplate","nameLocation":"2588:26:107","parameters":{"id":74253,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74252,"mutability":"mutable","name":"template","nameLocation":"2623:8:107","nodeType":"VariableDeclaration","scope":74262,"src":"2615:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74251,"name":"address","nodeType":"ElementaryTypeName","src":"2615:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2614:18:107"},"returnParameters":{"id":74256,"nodeType":"ParameterList","parameters":[],"src":"2652:0:107"},"scope":74544,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":74321,"nodeType":"FunctionDefinition","src":"3202:788:107","nodes":[],"body":{"id":74320,"nodeType":"Block","src":"3437:553:107","nodes":[],"statements":[{"expression":{"arguments":[{"id":74281,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74265,"src":"3464:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":74278,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"3447:5:107","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryFactoryFacet_$74544_$","typeString":"type(contract super RegistryFactoryFacet)"}},"id":74280,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3453:10:107","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70932,"src":"3447:16:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74282,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3447:24:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74283,"nodeType":"ExpressionStatement","src":"3447:24:107"},{"expression":{"id":74286,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74284,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74168,"src":"3481:5:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":74285,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3489:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"3481:9:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74287,"nodeType":"ExpressionStatement","src":"3481:9:107"},{"expression":{"arguments":[{"id":74289,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74267,"src":"3519:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74288,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74223,"src":"3500:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74290,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3500:39:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74291,"nodeType":"ExpressionStatement","src":"3500:39:107"},{"expression":{"arguments":[{"id":74293,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74269,"src":"3568:26:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74292,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74223,"src":"3549:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74294,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3549:46:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74295,"nodeType":"ExpressionStatement","src":"3549:46:107"},{"expression":{"arguments":[{"id":74297,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74273,"src":"3624:24:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74296,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74223,"src":"3605:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74298,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3605:44:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74299,"nodeType":"ExpressionStatement","src":"3605:44:107"},{"expression":{"id":74302,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74300,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74175,"src":"3659:18:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74301,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74267,"src":"3680:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3659:40:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74303,"nodeType":"ExpressionStatement","src":"3659:40:107"},{"expression":{"id":74306,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74304,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74177,"src":"3709:25:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74305,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74269,"src":"3737:26:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3709:54:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74307,"nodeType":"ExpressionStatement","src":"3709:54:107"},{"expression":{"id":74310,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74308,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74179,"src":"3773:16:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74309,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74271,"src":"3792:17:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3773:36:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74311,"nodeType":"ExpressionStatement","src":"3773:36:107"},{"expression":{"id":74314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74312,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74181,"src":"3819:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74313,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74273,"src":"3845:24:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3819:50:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74315,"nodeType":"ExpressionStatement","src":"3819:50:107"},{"eventCall":{"arguments":[{"id":74317,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74267,"src":"3899:19:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74316,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74185,"src":"3884:14:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74318,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3884:35:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74319,"nodeType":"EmitStatement","src":"3879:40:107"}]},"documentation":{"id":74263,"nodeType":"StructuredDocumentation","src":"2709:435:107","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":74276,"kind":"modifierInvocation","modifierName":{"id":74275,"name":"initializer","nameLocations":["3425:11:107"],"nodeType":"IdentifierPath","referencedDeclaration":52351,"src":"3425:11:107"},"nodeType":"ModifierInvocation","src":"3425:11:107"}],"name":"initialize","nameLocation":"3211:10:107","parameters":{"id":74274,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74265,"mutability":"mutable","name":"_owner","nameLocation":"3239:6:107","nodeType":"VariableDeclaration","scope":74321,"src":"3231:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74264,"name":"address","nodeType":"ElementaryTypeName","src":"3231:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74267,"mutability":"mutable","name":"_gardensFeeReceiver","nameLocation":"3263:19:107","nodeType":"VariableDeclaration","scope":74321,"src":"3255:27:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74266,"name":"address","nodeType":"ElementaryTypeName","src":"3255:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74269,"mutability":"mutable","name":"_registryCommunityTemplate","nameLocation":"3300:26:107","nodeType":"VariableDeclaration","scope":74321,"src":"3292:34:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74268,"name":"address","nodeType":"ElementaryTypeName","src":"3292:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74271,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"3344:17:107","nodeType":"VariableDeclaration","scope":74321,"src":"3336:25:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74270,"name":"address","nodeType":"ElementaryTypeName","src":"3336:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74273,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"3379:24:107","nodeType":"VariableDeclaration","scope":74321,"src":"3371:32:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74272,"name":"address","nodeType":"ElementaryTypeName","src":"3371:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3221:188:107"},"returnParameters":{"id":74277,"nodeType":"ParameterList","parameters":[],"src":"3437:0:107"},"scope":74544,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74334,"nodeType":"FunctionDefinition","src":"3996:104:107","nodes":[],"body":{"id":74333,"nodeType":"Block","src":"4058:42:107","nodes":[],"statements":[{"expression":{"arguments":[{"id":74330,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74323,"src":"4086:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74329,"name":"transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52174,"src":"4068:17:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74331,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4068:25:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74332,"nodeType":"ExpressionStatement","src":"4068:25:107"}]},"functionSelector":"29b6eca9","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":74326,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4055:1:107","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":74327,"kind":"modifierInvocation","modifierName":{"id":74325,"name":"reinitializer","nameLocations":["4041:13:107"],"nodeType":"IdentifierPath","referencedDeclaration":52384,"src":"4041:13:107"},"nodeType":"ModifierInvocation","src":"4041:16:107"}],"name":"initializeV2","nameLocation":"4005:12:107","parameters":{"id":74324,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74323,"mutability":"mutable","name":"_owner","nameLocation":"4026:6:107","nodeType":"VariableDeclaration","scope":74334,"src":"4018:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74322,"name":"address","nodeType":"ElementaryTypeName","src":"4018:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4017:16:107"},"returnParameters":{"id":74328,"nodeType":"ParameterList","parameters":[],"src":"4058:0:107"},"scope":74544,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":74347,"nodeType":"FunctionDefinition","src":"4106:104:107","nodes":[],"body":{"id":74346,"nodeType":"Block","src":"4168:42:107","nodes":[],"statements":[{"expression":{"arguments":[{"id":74343,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74336,"src":"4196:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74342,"name":"transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52174,"src":"4178:17:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74344,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4178:25:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74345,"nodeType":"ExpressionStatement","src":"4178:25:107"}]},"functionSelector":"3101cfcb","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"33","id":74339,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4165:1:107","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"}],"id":74340,"kind":"modifierInvocation","modifierName":{"id":74338,"name":"reinitializer","nameLocations":["4151:13:107"],"nodeType":"IdentifierPath","referencedDeclaration":52384,"src":"4151:13:107"},"nodeType":"ModifierInvocation","src":"4151:16:107"}],"name":"initializeV3","nameLocation":"4115:12:107","parameters":{"id":74337,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74336,"mutability":"mutable","name":"_owner","nameLocation":"4136:6:107","nodeType":"VariableDeclaration","scope":74347,"src":"4128:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74335,"name":"address","nodeType":"ElementaryTypeName","src":"4128:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4127:16:107"},"returnParameters":{"id":74341,"nodeType":"ParameterList","parameters":[],"src":"4168:0:107"},"scope":74544,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":74430,"nodeType":"FunctionDefinition","src":"4216:843:107","nodes":[],"body":{"id":74429,"nodeType":"Block","src":"4378:681:107","nodes":[],"statements":[{"expression":{"id":74360,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":74355,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74350,"src":"4388:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":74357,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4395:6:107","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":71056,"src":"4388:13:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74359,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"4404:7:107","subExpression":{"id":74358,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74168,"src":"4404:5:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4388:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74361,"nodeType":"ExpressionStatement","src":"4388:23:107"},{"expression":{"id":74369,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":74362,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74350,"src":"4421:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":74364,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4428:16:107","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":71058,"src":"4421:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":74367,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"4455:4:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryFacet_$74544","typeString":"contract RegistryFactoryFacet"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryFacet_$74544","typeString":"contract RegistryFactoryFacet"}],"id":74366,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4447:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74365,"name":"address","nodeType":"ElementaryTypeName","src":"4447:7:107","typeDescriptions":{}}},"id":74368,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4447:13:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4421:39:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74370,"nodeType":"ExpressionStatement","src":"4421:39:107"},{"assignments":[74373],"declarations":[{"constant":false,"id":74373,"mutability":"mutable","name":"proxy","nameLocation":"4484:5:107","nodeType":"VariableDeclaration","scope":74429,"src":"4471:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"},"typeName":{"id":74372,"nodeType":"UserDefinedTypeName","pathNode":{"id":74371,"name":"ERC1967Proxy","nameLocations":["4471:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"4471:12:107"},"referencedDeclaration":54318,"src":"4471:12:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":74393,"initialValue":{"arguments":[{"arguments":[{"id":74379,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74177,"src":"4530:25:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74378,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4522:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74377,"name":"address","nodeType":"ElementaryTypeName","src":"4522:7:107","typeDescriptions":{}}},"id":74380,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4522:34:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":74383,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73276,"src":"4610:21:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73276_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":74384,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4632:10:107","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":71771,"src":"4610:32:107","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":74385,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4643:8:107","memberName":"selector","nodeType":"MemberAccess","src":"4610:41:107","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":74386,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74350,"src":"4653:6:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":74387,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74179,"src":"4661:16:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":74388,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74181,"src":"4679:23:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":74389,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70983],"referencedDeclaration":70983,"src":"4704:5:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":74390,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4704:7:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":74381,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4570:3:107","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":74382,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4574:18:107","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"4570:22:107","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":74391,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4570: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":74376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"4492:16:107","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$54318_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":74375,"nodeType":"UserDefinedTypeName","pathNode":{"id":74374,"name":"ERC1967Proxy","nameLocations":["4496:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"4496:12:107"},"referencedDeclaration":54318,"src":"4496:12:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}},"id":74392,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4492:243:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"4471:264:107"},{"assignments":[74396],"declarations":[{"constant":false,"id":74396,"mutability":"mutable","name":"registryCommunity","nameLocation":"4768:17:107","nodeType":"VariableDeclaration","scope":74429,"src":"4746:39:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":74395,"nodeType":"UserDefinedTypeName","pathNode":{"id":74394,"name":"RegistryCommunityV0_0","nameLocations":["4746:21:107"],"nodeType":"IdentifierPath","referencedDeclaration":73276,"src":"4746:21:107"},"referencedDeclaration":73276,"src":"4746:21:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":74406,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":74402,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74373,"src":"4826:5:107","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}],"id":74401,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4818:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74400,"name":"address","nodeType":"ElementaryTypeName","src":"4818:7:107","typeDescriptions":{}}},"id":74403,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4818:14:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74399,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4810:8:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":74398,"name":"address","nodeType":"ElementaryTypeName","src":"4810:8:107","stateMutability":"payable","typeDescriptions":{}}},"id":74404,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4810:23:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":74397,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73276,"src":"4788:21:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73276_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":74405,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4788:46:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"4746:88:107"},{"expression":{"id":74415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":74407,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74173,"src":"4894:15:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74163_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74412,"indexExpression":{"arguments":[{"id":74410,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74396,"src":"4918:17:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}],"id":74409,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4910:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74408,"name":"address","nodeType":"ElementaryTypeName","src":"4910:7:107","typeDescriptions":{}}},"id":74411,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4910:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4894:43:107","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74163_storage","typeString":"struct CommunityInfo storage ref"}},"id":74413,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4938:5:107","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":74162,"src":"4894:49:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":74414,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4946:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"4894:56:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74416,"nodeType":"ExpressionStatement","src":"4894:56:107"},{"eventCall":{"arguments":[{"arguments":[{"id":74420,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74396,"src":"4990:17:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}],"id":74419,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4982:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74418,"name":"address","nodeType":"ElementaryTypeName","src":"4982:7:107","typeDescriptions":{}}},"id":74421,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4982:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74417,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74195,"src":"4965:16:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4965:44:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74423,"nodeType":"EmitStatement","src":"4960:49:107"},{"expression":{"arguments":[{"id":74426,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74396,"src":"5034:17:107","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}],"id":74425,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5026:7:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74424,"name":"address","nodeType":"ElementaryTypeName","src":"5026:7:107","typeDescriptions":{}}},"id":74427,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5026:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":74354,"id":74428,"nodeType":"Return","src":"5019:33:107"}]},"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"4225:14:107","parameters":{"id":74351,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74350,"mutability":"mutable","name":"params","nameLocation":"4285:6:107","nodeType":"VariableDeclaration","scope":74430,"src":"4240:51:107","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":74349,"nodeType":"UserDefinedTypeName","pathNode":{"id":74348,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["4240:37:107"],"nodeType":"IdentifierPath","referencedDeclaration":71072,"src":"4240:37:107"},"referencedDeclaration":71072,"src":"4240:37:107","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"4239:53:107"},"returnParameters":{"id":74354,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74353,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"4349:23:107","nodeType":"VariableDeclaration","scope":74430,"src":"4341:31:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74352,"name":"address","nodeType":"ElementaryTypeName","src":"4341:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4340:33:107"},"scope":74544,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74450,"nodeType":"FunctionDefinition","src":"5065:222:107","nodes":[],"body":{"id":74449,"nodeType":"Block","src":"5143:144:107","nodes":[],"statements":[{"expression":{"arguments":[{"id":74438,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74432,"src":"5172:15:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74437,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74223,"src":"5153:18:107","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74439,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5153:35:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74440,"nodeType":"ExpressionStatement","src":"5153:35:107"},{"expression":{"id":74443,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74441,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74175,"src":"5198:18:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74442,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74432,"src":"5219:15:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"5198:36:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74444,"nodeType":"ExpressionStatement","src":"5198:36:107"},{"eventCall":{"arguments":[{"id":74446,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74432,"src":"5264:15:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74445,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74185,"src":"5249:14:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74447,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5249:31:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74448,"nodeType":"EmitStatement","src":"5244:36:107"}]},"functionSelector":"8279c7db","implemented":true,"kind":"function","modifiers":[{"id":74435,"kind":"modifierInvocation","modifierName":{"id":74434,"name":"onlyOwner","nameLocations":["5133:9:107"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"5133:9:107"},"nodeType":"ModifierInvocation","src":"5133:9:107"}],"name":"setReceiverAddress","nameLocation":"5074:18:107","parameters":{"id":74433,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74432,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"5101:15:107","nodeType":"VariableDeclaration","scope":74450,"src":"5093:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74431,"name":"address","nodeType":"ElementaryTypeName","src":"5093:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5092:25:107"},"returnParameters":{"id":74436,"nodeType":"ParameterList","parameters":[],"src":"5143:0:107"},"scope":74544,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74458,"nodeType":"FunctionDefinition","src":"5293:115:107","nodes":[],"body":{"id":74457,"nodeType":"Block","src":"5366:42:107","nodes":[],"statements":[{"expression":{"id":74455,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74175,"src":"5383:18:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":74454,"id":74456,"nodeType":"Return","src":"5376:25:107"}]},"functionSelector":"987435be","implemented":true,"kind":"function","modifiers":[],"name":"getGardensFeeReceiver","nameLocation":"5302:21:107","parameters":{"id":74451,"nodeType":"ParameterList","parameters":[],"src":"5323:2:107"},"returnParameters":{"id":74454,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74453,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74458,"src":"5357:7:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74452,"name":"address","nodeType":"ElementaryTypeName","src":"5357:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5356:9:107"},"scope":74544,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":74480,"nodeType":"FunctionDefinition","src":"5414:218:107","nodes":[],"body":{"id":74479,"nodeType":"Block","src":"5508:124:107","nodes":[],"statements":[{"expression":{"id":74472,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":74467,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74173,"src":"5518:15:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74163_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74469,"indexExpression":{"id":74468,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74460,"src":"5534:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5518:27:107","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74163_storage","typeString":"struct CommunityInfo storage ref"}},"id":74470,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"5546:3:107","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":74160,"src":"5518:31:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74471,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74462,"src":"5552:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5518:49:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74473,"nodeType":"ExpressionStatement","src":"5518:49:107"},{"eventCall":{"arguments":[{"id":74475,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74460,"src":"5597:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":74476,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74462,"src":"5609:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":74474,"name":"ProtocolFeeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74191,"src":"5582:14:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":74477,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5582:43:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74478,"nodeType":"EmitStatement","src":"5577:48:107"}]},"functionSelector":"b5b3ca2c","implemented":true,"kind":"function","modifiers":[{"id":74465,"kind":"modifierInvocation","modifierName":{"id":74464,"name":"onlyOwner","nameLocations":["5498:9:107"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"5498:9:107"},"nodeType":"ModifierInvocation","src":"5498:9:107"}],"name":"setProtocolFee","nameLocation":"5423:14:107","parameters":{"id":74463,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74460,"mutability":"mutable","name":"_community","nameLocation":"5446:10:107","nodeType":"VariableDeclaration","scope":74480,"src":"5438:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74459,"name":"address","nodeType":"ElementaryTypeName","src":"5438:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74462,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"5466:15:107","nodeType":"VariableDeclaration","scope":74480,"src":"5458:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74461,"name":"uint256","nodeType":"ElementaryTypeName","src":"5458:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5437:45:107"},"returnParameters":{"id":74466,"nodeType":"ParameterList","parameters":[],"src":"5508:0:107"},"scope":74544,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74502,"nodeType":"FunctionDefinition","src":"5638:208:107","nodes":[],"body":{"id":74501,"nodeType":"Block","src":"5728:118:107","nodes":[],"statements":[{"expression":{"id":74494,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":74489,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74173,"src":"5738:15:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74163_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74491,"indexExpression":{"id":74490,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74482,"src":"5754:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5738:27:107","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74163_storage","typeString":"struct CommunityInfo storage ref"}},"id":74492,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"5766:5:107","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":74162,"src":"5738:33:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74493,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74484,"src":"5774:8:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"5738:44:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74495,"nodeType":"ExpressionStatement","src":"5738:44:107"},{"eventCall":{"arguments":[{"id":74497,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74482,"src":"5818:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":74498,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74484,"src":"5830:8:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":74496,"name":"CommunityValiditySet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74201,"src":"5797:20:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_bool_$returns$__$","typeString":"function (address,bool)"}},"id":74499,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5797:42:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74500,"nodeType":"EmitStatement","src":"5792:47:107"}]},"functionSelector":"5a2c8ace","implemented":true,"kind":"function","modifiers":[{"id":74487,"kind":"modifierInvocation","modifierName":{"id":74486,"name":"onlyOwner","nameLocations":["5718:9:107"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"5718:9:107"},"nodeType":"ModifierInvocation","src":"5718:9:107"}],"name":"setCommunityValidity","nameLocation":"5647:20:107","parameters":{"id":74485,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74482,"mutability":"mutable","name":"_community","nameLocation":"5676:10:107","nodeType":"VariableDeclaration","scope":74502,"src":"5668:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74481,"name":"address","nodeType":"ElementaryTypeName","src":"5668:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74484,"mutability":"mutable","name":"_isValid","nameLocation":"5693:8:107","nodeType":"VariableDeclaration","scope":74502,"src":"5688:13:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74483,"name":"bool","nodeType":"ElementaryTypeName","src":"5688:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5667:35:107"},"returnParameters":{"id":74488,"nodeType":"ParameterList","parameters":[],"src":"5728:0:107"},"scope":74544,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":74515,"nodeType":"FunctionDefinition","src":"5852:144:107","nodes":[],"body":{"id":74514,"nodeType":"Block","src":"5939:57:107","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":74509,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74173,"src":"5956:15:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74163_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74511,"indexExpression":{"id":74510,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74504,"src":"5972:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5956:27:107","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74163_storage","typeString":"struct CommunityInfo storage ref"}},"id":74512,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5984:5:107","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":74162,"src":"5956:33:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":74508,"id":74513,"nodeType":"Return","src":"5949:40:107"}]},"functionSelector":"f5016b5e","implemented":true,"kind":"function","modifiers":[],"name":"getCommunityValidity","nameLocation":"5861:20:107","parameters":{"id":74505,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74504,"mutability":"mutable","name":"_community","nameLocation":"5890:10:107","nodeType":"VariableDeclaration","scope":74515,"src":"5882:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74503,"name":"address","nodeType":"ElementaryTypeName","src":"5882:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5881:20:107"},"returnParameters":{"id":74508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74507,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74515,"src":"5933:4:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74506,"name":"bool","nodeType":"ElementaryTypeName","src":"5933:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5932:6:107"},"scope":74544,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":74539,"nodeType":"FunctionDefinition","src":"6002:249:107","nodes":[],"body":{"id":74538,"nodeType":"Block","src":"6086:165:107","nodes":[],"statements":[{"condition":{"id":74526,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"6100:34:107","subExpression":{"expression":{"baseExpression":{"id":74522,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74173,"src":"6101:15:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74163_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74524,"indexExpression":{"id":74523,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74517,"src":"6117:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6101:27:107","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74163_storage","typeString":"struct CommunityInfo storage ref"}},"id":74525,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"6129:5:107","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":74162,"src":"6101:33:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74532,"nodeType":"IfStatement","src":"6096:100:107","trueBody":{"id":74531,"nodeType":"Block","src":"6136:60:107","statements":[{"errorCall":{"arguments":[{"id":74528,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74517,"src":"6174:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74527,"name":"CommunityInvalid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74205,"src":"6157:16:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":74529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6157:28:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74530,"nodeType":"RevertStatement","src":"6150:35:107"}]}},{"expression":{"expression":{"baseExpression":{"id":74533,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74173,"src":"6213:15:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$74163_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74535,"indexExpression":{"id":74534,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74517,"src":"6229:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6213:27:107","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$74163_storage","typeString":"struct CommunityInfo storage ref"}},"id":74536,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"6241:3:107","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":74160,"src":"6213:31:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":74521,"id":74537,"nodeType":"Return","src":"6206:38:107"}]},"functionSelector":"0a992e0c","implemented":true,"kind":"function","modifiers":[],"name":"getProtocolFee","nameLocation":"6011:14:107","parameters":{"id":74518,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74517,"mutability":"mutable","name":"_community","nameLocation":"6034:10:107","nodeType":"VariableDeclaration","scope":74539,"src":"6026:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74516,"name":"address","nodeType":"ElementaryTypeName","src":"6026:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6025:20:107"},"returnParameters":{"id":74521,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74520,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74539,"src":"6077:7:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74519,"name":"uint256","nodeType":"ElementaryTypeName","src":"6077:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6076:9:107"},"scope":74544,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":74543,"nodeType":"VariableDeclaration","src":"6257:25:107","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"6277:5:107","scope":74544,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":74540,"name":"uint256","nodeType":"ElementaryTypeName","src":"6257:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74542,"length":{"hexValue":"3530","id":74541,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6265:2:107","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"6257:11:107","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":74165,"name":"ProxyOwnableUpgrader","nameLocations":["562:20:107"],"nodeType":"IdentifierPath","referencedDeclaration":71005,"src":"562:20:107"},"id":74166,"nodeType":"InheritanceSpecifier","src":"562:20:107"}],"canonicalName":"RegistryFactoryFacet","contractDependencies":[54318],"contractKind":"contract","documentation":{"id":74164,"nodeType":"StructuredDocumentation","src":"483:45:107","text":"@custom:oz-upgrades-from RegistryFactory"},"fullyImplemented":true,"linearizedBaseContracts":[74544,71005,54969,54622,54271,54281,52200,52993,52449],"name":"RegistryFactoryFacet","nameLocation":"538:20:107","scope":74545,"usedErrors":[70920,74205,74207]}],"license":"AGPL-3.0-only"},"id":107} \ No newline at end of file +{"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":"proxyOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"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":"0x60a080604052346100315730608052611e3f90816100378239608051818181610a4801528181610b4b0152610de40152f35b600080fdfe60808060405260043610156200001457600080fd5b60003560e01c908163025313a214620013db5750806302c1d0b114620013b05780630a992e0c146200133f5780631459457a14620011bb5780631b71f0e4146200117257806329b6eca914620010d25780633101cfcb14620010325780633659cfe61462000dbb5780634f1ef2861462000af657806352d1902d1462000a335780635a2c8ace14620009a55780635c94e4d2146200097a5780635decae021462000931578063715018a614620008e157806377122d5614620008b65780638279c7db146200084a5780638da5cb5b1462000819578063987435be1462000712578063affed0e014620007f9578063b0d3713a14620007b0578063b5b3ca2c146200073d578063b8bed9011462000712578063beb331a314620002cb578063c4d66de8146200023b578063f2fde38b14620001a35763f5016b5e146200015857600080fd5b346200019e5760203660031901126200019e576001600160a01b036200017d62001401565b166000526066602052602060ff600160406000200154166040519015158152f35b600080fd5b346200019e5760203660031901126200019e57620001c062001401565b620001ca620014e6565b6001600160a01b03811615620001e757620001e59062001548565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b346200019e5760203660031901126200019e576200025862001401565b60ff60005460081c16156200027257620001e59062001548565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b346200019e576003196020368201126200019e576001600160401b03600435116200019e5761018081600435360301126200019e576040519061018082016001600160401b03811183821017620006e6576040526200032f60043560040162001418565b8252600435602401356001600160a01b03811681036200019e5760208301526004356044810135604084015260648101356060840152608481013560808401526200037d9060a40162001418565b60a08301526200039260c46004350162001418565b60c083015260043560e401356001600160401b0381116200019e57604090600435019182360301126200019e5760408051919082016001600160401b03811183821017620006e657604052600481013582526024810135906001600160401b0382116200019e5760046200040a9236920101620014c5565b602082015260e082015260043561010401356001600160a01b03811681036200019e5761010082015260043561012401356001600160401b0381116200019e576200045d906004369181350101620014c5565b610120820152600435610144013580151590036200019e576004356101448101356101408301526001600160401b0361016490910135116200019e57620004b036600480356101648101350101620014c5565b6101608201526065546000198114620006fc576001810160655560808201523060a0820152606854606954606a546001600160a01b03928316936200060e936200063893919291811691166200050562001799565b60408051633419635560e01b60208083019190915260806024830181905287516001600160a01b0390811660a485015282890151811660c48501528885015160e485015260608901516101048501529088015161012484015260a0880151811661014484015260c08801511661016483015260e0870151610180610184840152805161022484015201516102448201929092529687959293929091620005b19061026488019062001757565b6101008201516001600160a01b03166101a488015261012082015187820360a3199081016101c48a01529161016091620005ec919062001757565b9261014081015115156101e48a01520151908783030161020488015262001757565b604485019390935260648401526001600160a01b0316608483015203601f19810183528262001449565b6040519161041080840192906001600160401b03841185851017620006e65784936200067793604092620018ba87398152816020820152019062001757565b03906000f08015620006da5760209060018060a01b031680600052606682526001604060002001600160ff198254161790557fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2982604051838152a1604051908152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b346200019e5760003660031901126200019e576067546040516001600160a01b039091168152602090f35b346200019e5760403660031901126200019e577fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c60406200077d62001401565b602435906200078b620014e6565b60018060a01b03169081600052606660205280836000205582519182526020820152a1005b346200019e5760203660031901126200019e57620007cd62001401565b620007d7620014e6565b606a80546001600160a01b0319166001600160a01b0392909216919091179055005b346200019e5760003660031901126200019e576020606554604051908152f35b346200019e5760003660031901126200019e5760206200083862001799565b6040516001600160a01b039091168152f35b346200019e5760203660031901126200019e5760008051602062001d8a83398151915260206200087962001401565b62000883620014e6565b6200088e8162001896565b606780546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b346200019e5760003660031901126200019e57606a546040516001600160a01b039091168152602090f35b346200019e5760003660031901126200019e57620008fe620014e6565b603380546001600160a01b031981169091556000906001600160a01b031660008051602062001d4a8339815191528280a3005b346200019e5760203660031901126200019e576200094e62001401565b62000958620014e6565b606880546001600160a01b0319166001600160a01b0392909216919091179055005b346200019e5760003660031901126200019e576069546040516001600160a01b039091168152602090f35b346200019e5760403660031901126200019e57620009c262001401565b602435908115158092036200019e577fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f629160409162000a00620014e6565b60018060a01b0316908160005260666020526001836000200160ff1981541660ff831617905582519182526020820152a1005b346200019e5760003660031901126200019e577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300362000a9057602060405160008051602062001d0a8339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b60403660031901126200019e5762000b0d62001401565b6024356001600160401b0381116200019e57366023820112156200019e5762000b4190369060248160040135910162001489565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919062000b7c3084141562001580565b62000b9c60008051602062001d0a833981519152938285541614620015d1565b62000ba662001799565b813391160362000d925760008051602062001cca8339815191525460ff161562000bd857505050620001e59062001622565b8316604051926352d1902d60e01b84526020938481600481865afa6000918162000d5d575b5062000c4e5760405162461bcd60e51b815260048101869052602e602482015260008051602062001dea83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9392930362000d175762000c628462001622565b60008051602062001d6a833981519152600080a281511580159062000d0e575b62000c8957005b620001e5926000806040519462000ca0866200142d565b6027865260008051602062001dca83398151915285870152660819985a5b195960ca1b60408701528481519101845af4903d1562000d04573d62000ce4816200146d565b9062000cf4604051928362001449565b8152600081943d92013e620016b4565b60609250620016b4565b50600162000c82565b60405162461bcd60e51b8152600481018390526029602482015260008051602062001daa8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508581813d831162000d8a575b62000d78818362001449565b810103126200019e5751908762000bfd565b503d62000d6c565b60449062000d9f62001799565b60405163163678e960e01b815233600482015291166024820152fd5b346200019e576020806003193601126200019e5762000dd962001401565b6001600160a01b03917f0000000000000000000000000000000000000000000000000000000000000000831662000e133082141562001580565b62000e3360008051602062001d0a833981519152918583541614620015d1565b62000e3d62001799565b84339116036200102557604051828101949091906001600160401b03861183871017620006e657856040526000835260ff60008051602062001cca833981519152541660001462000e985750505050620001e5915062001622565b8492939416906040516352d1902d60e01b81528581600481865afa6000918162000ff0575b5062000f0e5760405162461bcd60e51b815260048101879052602e602482015260008051602062001dea83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9493940362000faa5762000f228262001622565b60008051602062001d6a833981519152600080a282511580159062000fa1575b62000f4957005b600080620001e5956040519562000f60876200142d565b6027875260008051602062001dca83398151915286880152660819985a5b195960ca1b60408801525190845af4903d1562000d04573d62000ce4816200146d565b50600062000f42565b60405162461bcd60e51b8152600481018490526029602482015260008051602062001daa8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d83116200101d575b6200100b818362001449565b810103126200019e5751908862000ebd565b503d62000fff565b60448462000d9f62001799565b346200019e5760203660031901126200019e576200104f62001401565b61010360005460ff8160081c161580620010c4575b6200106f9062001832565b61ffff19161760005562001082620014e6565b6001600160a01b03811615620001e7576200109d9062001548565b61ff00196000541660005560008051602062001d2a833981519152602060405160038152a1005b50600360ff82161062001064565b346200019e5760203660031901126200019e57620010ef62001401565b61010260005460ff8160081c16158062001164575b6200110f9062001832565b61ffff19161760005562001122620014e6565b6001600160a01b03811615620001e7576200113d9062001548565b61ff00196000541660005560008051602062001d2a833981519152602060405160028152a1005b50600260ff82161062001104565b346200019e5760203660031901126200019e576200118f62001401565b62001199620014e6565b606980546001600160a01b0319166001600160a01b0392909216919091179055005b346200019e5760a03660031901126200019e57620011d862001401565b6001600160a01b0390602435908282168083036200019e57604435918483168084036200019e576064358681168091036200019e57608435968716928388036200019e576000549760ff8960081c16159889809a62001331575b801562001318575b620012459062001832565b60ff1981166001176000558962001305575b5060ff60005460081c161562000272576200129d6020976200129d60008051602062001d8a8339815191529a62001292620012a39662001548565b600060655562001896565b62001896565b60018060a01b03199184836067541617606755826068541617606855816069541617606955606a541617606a55604051908152a1620012de57005b61ff00196000541660005560008051602062001d2a833981519152602060405160018152a1005b61ffff1916610101176000558962001257565b50303b1580156200123a575060ff81166001146200123a565b50600160ff82161062001232565b346200019e5760203660031901126200019e576001600160a01b036200136462001401565b1680600052606660205260ff6001604060002001541615620013985760005260666020526020604060002054604051908152f35b6024906040519063f5a6943d60e01b82526004820152fd5b346200019e5760003660031901126200019e576068546040516001600160a01b039091168152602090f35b346200019e5760003660031901126200019e576033546001600160a01b03168152602090f35b600435906001600160a01b03821682036200019e57565b35906001600160a01b03821682036200019e57565b606081019081106001600160401b03821117620006e657604052565b601f909101601f19168101906001600160401b03821190821017620006e657604052565b6001600160401b038111620006e657601f01601f191660200190565b92919262001497826200146d565b91620014a7604051938462001449565b8294818452818301116200019e578281602093846000960137010152565b9080601f830112156200019e57816020620014e39335910162001489565b90565b620014f062001799565b336001600160a01b03909116036200150457565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062001d4a833981519152600080a3565b156200158857565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001cea83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b15620015d957565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001cea83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b15620016595760008051602062001d0a83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b91929015620017195750815115620016ca575090565b3b15620016d45790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156200172d5750805190602001fd5b60405162461bcd60e51b8152602060048201529081906200175390602483019062001757565b0390fd5b919082519283825260005b84811062001784575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520162001762565b6033546001600160a01b0390811690813b620017b3575090565b604051638da5cb5b60e01b8152602081600481865afa918291600093620017e5575b5050620017e0575090565b905090565b602093919293813d821162001829575b81620018046020938362001449565b810103126200182557519182168203620018225750903880620017d5565b80fd5b5080fd5b3d9150620017f5565b156200183a57565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b6001600160a01b031615620018a757565b6040516303988b8160e61b8152600490fdfe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c634300081300334910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024988be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3bbdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a2646970667358221220c3706031b2b0850f076475ad9fc743eecd57e69b753f15309c07693c2bccf92c64736f6c63430008130033","sourceMap":"529:5756:113:-:0;;;;;;;1088:4:61;1080:13;;529:5756:113;;;;;;1080:13:61;529:5756:113;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60808060405260043610156200001457600080fd5b60003560e01c908163025313a214620013db5750806302c1d0b114620013b05780630a992e0c146200133f5780631459457a14620011bb5780631b71f0e4146200117257806329b6eca914620010d25780633101cfcb14620010325780633659cfe61462000dbb5780634f1ef2861462000af657806352d1902d1462000a335780635a2c8ace14620009a55780635c94e4d2146200097a5780635decae021462000931578063715018a614620008e157806377122d5614620008b65780638279c7db146200084a5780638da5cb5b1462000819578063987435be1462000712578063affed0e014620007f9578063b0d3713a14620007b0578063b5b3ca2c146200073d578063b8bed9011462000712578063beb331a314620002cb578063c4d66de8146200023b578063f2fde38b14620001a35763f5016b5e146200015857600080fd5b346200019e5760203660031901126200019e576001600160a01b036200017d62001401565b166000526066602052602060ff600160406000200154166040519015158152f35b600080fd5b346200019e5760203660031901126200019e57620001c062001401565b620001ca620014e6565b6001600160a01b03811615620001e757620001e59062001548565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b346200019e5760203660031901126200019e576200025862001401565b60ff60005460081c16156200027257620001e59062001548565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b346200019e576003196020368201126200019e576001600160401b03600435116200019e5761018081600435360301126200019e576040519061018082016001600160401b03811183821017620006e6576040526200032f60043560040162001418565b8252600435602401356001600160a01b03811681036200019e5760208301526004356044810135604084015260648101356060840152608481013560808401526200037d9060a40162001418565b60a08301526200039260c46004350162001418565b60c083015260043560e401356001600160401b0381116200019e57604090600435019182360301126200019e5760408051919082016001600160401b03811183821017620006e657604052600481013582526024810135906001600160401b0382116200019e5760046200040a9236920101620014c5565b602082015260e082015260043561010401356001600160a01b03811681036200019e5761010082015260043561012401356001600160401b0381116200019e576200045d906004369181350101620014c5565b610120820152600435610144013580151590036200019e576004356101448101356101408301526001600160401b0361016490910135116200019e57620004b036600480356101648101350101620014c5565b6101608201526065546000198114620006fc576001810160655560808201523060a0820152606854606954606a546001600160a01b03928316936200060e936200063893919291811691166200050562001799565b60408051633419635560e01b60208083019190915260806024830181905287516001600160a01b0390811660a485015282890151811660c48501528885015160e485015260608901516101048501529088015161012484015260a0880151811661014484015260c08801511661016483015260e0870151610180610184840152805161022484015201516102448201929092529687959293929091620005b19061026488019062001757565b6101008201516001600160a01b03166101a488015261012082015187820360a3199081016101c48a01529161016091620005ec919062001757565b9261014081015115156101e48a01520151908783030161020488015262001757565b604485019390935260648401526001600160a01b0316608483015203601f19810183528262001449565b6040519161041080840192906001600160401b03841185851017620006e65784936200067793604092620018ba87398152816020820152019062001757565b03906000f08015620006da5760209060018060a01b031680600052606682526001604060002001600160ff198254161790557fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2982604051838152a1604051908152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b346200019e5760003660031901126200019e576067546040516001600160a01b039091168152602090f35b346200019e5760403660031901126200019e577fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c60406200077d62001401565b602435906200078b620014e6565b60018060a01b03169081600052606660205280836000205582519182526020820152a1005b346200019e5760203660031901126200019e57620007cd62001401565b620007d7620014e6565b606a80546001600160a01b0319166001600160a01b0392909216919091179055005b346200019e5760003660031901126200019e576020606554604051908152f35b346200019e5760003660031901126200019e5760206200083862001799565b6040516001600160a01b039091168152f35b346200019e5760203660031901126200019e5760008051602062001d8a83398151915260206200087962001401565b62000883620014e6565b6200088e8162001896565b606780546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b346200019e5760003660031901126200019e57606a546040516001600160a01b039091168152602090f35b346200019e5760003660031901126200019e57620008fe620014e6565b603380546001600160a01b031981169091556000906001600160a01b031660008051602062001d4a8339815191528280a3005b346200019e5760203660031901126200019e576200094e62001401565b62000958620014e6565b606880546001600160a01b0319166001600160a01b0392909216919091179055005b346200019e5760003660031901126200019e576069546040516001600160a01b039091168152602090f35b346200019e5760403660031901126200019e57620009c262001401565b602435908115158092036200019e577fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f629160409162000a00620014e6565b60018060a01b0316908160005260666020526001836000200160ff1981541660ff831617905582519182526020820152a1005b346200019e5760003660031901126200019e577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300362000a9057602060405160008051602062001d0a8339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b60403660031901126200019e5762000b0d62001401565b6024356001600160401b0381116200019e57366023820112156200019e5762000b4190369060248160040135910162001489565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919062000b7c3084141562001580565b62000b9c60008051602062001d0a833981519152938285541614620015d1565b62000ba662001799565b813391160362000d925760008051602062001cca8339815191525460ff161562000bd857505050620001e59062001622565b8316604051926352d1902d60e01b84526020938481600481865afa6000918162000d5d575b5062000c4e5760405162461bcd60e51b815260048101869052602e602482015260008051602062001dea83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9392930362000d175762000c628462001622565b60008051602062001d6a833981519152600080a281511580159062000d0e575b62000c8957005b620001e5926000806040519462000ca0866200142d565b6027865260008051602062001dca83398151915285870152660819985a5b195960ca1b60408701528481519101845af4903d1562000d04573d62000ce4816200146d565b9062000cf4604051928362001449565b8152600081943d92013e620016b4565b60609250620016b4565b50600162000c82565b60405162461bcd60e51b8152600481018390526029602482015260008051602062001daa8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508581813d831162000d8a575b62000d78818362001449565b810103126200019e5751908762000bfd565b503d62000d6c565b60449062000d9f62001799565b60405163163678e960e01b815233600482015291166024820152fd5b346200019e576020806003193601126200019e5762000dd962001401565b6001600160a01b03917f0000000000000000000000000000000000000000000000000000000000000000831662000e133082141562001580565b62000e3360008051602062001d0a833981519152918583541614620015d1565b62000e3d62001799565b84339116036200102557604051828101949091906001600160401b03861183871017620006e657856040526000835260ff60008051602062001cca833981519152541660001462000e985750505050620001e5915062001622565b8492939416906040516352d1902d60e01b81528581600481865afa6000918162000ff0575b5062000f0e5760405162461bcd60e51b815260048101879052602e602482015260008051602062001dea83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9493940362000faa5762000f228262001622565b60008051602062001d6a833981519152600080a282511580159062000fa1575b62000f4957005b600080620001e5956040519562000f60876200142d565b6027875260008051602062001dca83398151915286880152660819985a5b195960ca1b60408801525190845af4903d1562000d04573d62000ce4816200146d565b50600062000f42565b60405162461bcd60e51b8152600481018490526029602482015260008051602062001daa8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d83116200101d575b6200100b818362001449565b810103126200019e5751908862000ebd565b503d62000fff565b60448462000d9f62001799565b346200019e5760203660031901126200019e576200104f62001401565b61010360005460ff8160081c161580620010c4575b6200106f9062001832565b61ffff19161760005562001082620014e6565b6001600160a01b03811615620001e7576200109d9062001548565b61ff00196000541660005560008051602062001d2a833981519152602060405160038152a1005b50600360ff82161062001064565b346200019e5760203660031901126200019e57620010ef62001401565b61010260005460ff8160081c16158062001164575b6200110f9062001832565b61ffff19161760005562001122620014e6565b6001600160a01b03811615620001e7576200113d9062001548565b61ff00196000541660005560008051602062001d2a833981519152602060405160028152a1005b50600260ff82161062001104565b346200019e5760203660031901126200019e576200118f62001401565b62001199620014e6565b606980546001600160a01b0319166001600160a01b0392909216919091179055005b346200019e5760a03660031901126200019e57620011d862001401565b6001600160a01b0390602435908282168083036200019e57604435918483168084036200019e576064358681168091036200019e57608435968716928388036200019e576000549760ff8960081c16159889809a62001331575b801562001318575b620012459062001832565b60ff1981166001176000558962001305575b5060ff60005460081c161562000272576200129d6020976200129d60008051602062001d8a8339815191529a62001292620012a39662001548565b600060655562001896565b62001896565b60018060a01b03199184836067541617606755826068541617606855816069541617606955606a541617606a55604051908152a1620012de57005b61ff00196000541660005560008051602062001d2a833981519152602060405160018152a1005b61ffff1916610101176000558962001257565b50303b1580156200123a575060ff81166001146200123a565b50600160ff82161062001232565b346200019e5760203660031901126200019e576001600160a01b036200136462001401565b1680600052606660205260ff6001604060002001541615620013985760005260666020526020604060002054604051908152f35b6024906040519063f5a6943d60e01b82526004820152fd5b346200019e5760003660031901126200019e576068546040516001600160a01b039091168152602090f35b346200019e5760003660031901126200019e576033546001600160a01b03168152602090f35b600435906001600160a01b03821682036200019e57565b35906001600160a01b03821682036200019e57565b606081019081106001600160401b03821117620006e657604052565b601f909101601f19168101906001600160401b03821190821017620006e657604052565b6001600160401b038111620006e657601f01601f191660200190565b92919262001497826200146d565b91620014a7604051938462001449565b8294818452818301116200019e578281602093846000960137010152565b9080601f830112156200019e57816020620014e39335910162001489565b90565b620014f062001799565b336001600160a01b03909116036200150457565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062001d4a833981519152600080a3565b156200158857565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001cea83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b15620015d957565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001cea83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b15620016595760008051602062001d0a83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b91929015620017195750815115620016ca575090565b3b15620016d45790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156200172d5750805190602001fd5b60405162461bcd60e51b8152602060048201529081906200175390602483019062001757565b0390fd5b919082519283825260005b84811062001784575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520162001762565b6033546001600160a01b0390811690813b620017b3575090565b604051638da5cb5b60e01b8152602081600481865afa918291600093620017e5575b5050620017e0575090565b905090565b602093919293813d821162001829575b81620018046020938362001449565b810103126200182557519182168203620018225750903880620017d5565b80fd5b5080fd5b3d9150620017f5565b156200183a57565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b6001600160a01b031615620018a757565b6040516303988b8160e61b8152600490fdfe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c634300081300334910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024988be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3bbdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a2646970667358221220c3706031b2b0850f076475ad9fc743eecd57e69b753f15309c07693c2bccf92c64736f6c63430008130033","sourceMap":"529:5756:113:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;-1:-1:-1;;;;;529:5756:113;;:::i;:::-;;;;5956:15;529:5756;;;689:66:57;529:5756:113;;;;5956:33;689:66:57;;529:5756:113;;;;;;;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;529:5756:113;;2423:22:42;529:5756:113;;2517:8:42;;;:::i;:::-;529:5756:113;;;;-1:-1:-1;;;529:5756:113;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:5756:113;;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;;;:::i;:::-;689:66:57;529:5756:113;;;;689:66:57;529:5756:113;;;499:12:102;;;:::i;529:5756:113:-;;;-1:-1:-1;;;529:5756:113;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:5756:113;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;4404:7;529:5756;-1:-1:-1;;529:5756:113;;;;;;;4404:7;529:5756;;;;;4455:4;529:5756;;;;4530:25;529:5756;4661:16;529:5756;4679:23;529:5756;-1:-1:-1;;;;;529:5756:113;;;;;;4570:155;;529:5756;;;;;;;4704:7;;:::i;:::-;529:5756;;;-1:-1:-1;;;529:5756:113;4570:155;;;;;;;529:5756;;4570:155;;529:5756;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4610:41;529:5756;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4610:41;;529:5756;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;;;;-1:-1:-1;529:5756:113;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;4570:155;-1:-1:-1;;4570:155:113;;;;;;:::i;:::-;529:5756;;;4492:243;;;;;;-1:-1:-1;;;;;4492:243:113;;;;;;;;;;529:5756;4492:243;529:5756;4492:243;;;;529:5756;;;;;;;;;;:::i;:::-;4492:243;;529:5756;4492:243;;;;;529:5756;;;;;;;;;;;4894:15;529:5756;;;;;;4894:49;529:5756;;;;;;;;;4965:44;529:5756;;;;;;4965:44;529:5756;;;;;;4492:243;529:5756;;689:66:57;529:5756:113;689:66:57;;;;;4492:243:113;529:5756;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;671:33;529:5756;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;5582:43;529:5756;;;:::i;:::-;;;1324:62:42;;;:::i;:::-;529:5756:113;;;;;;;;;;5518:15;529:5756;;;;;;;;;;;;;;;;5582:43;529:5756;;;;;;;-1:-1:-1;;529:5756:113;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2662:34:113;529:5756;;-1:-1:-1;;;;;;529:5756:113;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;;589:20;529:5756;;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;-1:-1:-1;;;;;;;;;;;529:5756:113;;;:::i;:::-;1324:62:42;;:::i;:::-;5172:15:113;;;:::i;:::-;5198:36;529:5756;;-1:-1:-1;;;;;;529:5756:113;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;5249:31;529:5756;;;;;;;-1:-1:-1;;529:5756:113;;;;793:38;529:5756;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;1324:62:42;;:::i;:::-;2779:6;529:5756:113;;-1:-1:-1;;;;;;529:5756:113;;;;;;;-1:-1:-1;;;;;529:5756:113;-1:-1:-1;;;;;;;;;;;529:5756:113;;2827:40:42;529:5756:113;;;;;;;-1:-1:-1;;529:5756:113;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2064:36:113;529:5756;;-1:-1:-1;;;;;;529:5756:113;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;756:31;529:5756;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;;;:::i;:::-;;;;;;;;;;;;5797:42;1324:62:42;529:5756:113;1324:62:42;;;:::i;:::-;529:5756:113;;;;;;;;;;5738:15;529:5756;;;;;;5738:33;529:5756;;;;;;;;;;;;;;;;;;;;5797:42;529:5756;;;;;;;-1:-1:-1;;529:5756:113;;;;2089:6:61;-1:-1:-1;;;;;529:5756:113;2080:4:61;2072:23;529:5756:113;;;;;-1:-1:-1;;;;;;;;;;;529:5756:113;;;;;;-1:-1:-1;;;529:5756:113;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:5756:113;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;;;:::i;:::-;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1654:6:61;529:5756:113;;;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;529:5756:113;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;529:5756:113;;1256:21:102;1252:94;;-1:-1:-1;;;;;;;;;;;689:66:57;;;;;;2993:17;;;;;;:::i;2906:504::-;529:5756:113;;;;689:66:57;;;;3046:52;;;;;;529:5756:113;3046:52:57;;;;529:5756:113;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;529:5756:113;;-1:-1:-1;;;3262:56:57;;529:5756:113;3262:56:57;;689:66;;;;529:5756:113;689:66:57;;529:5756:113;-1:-1:-1;;;;;;;;;;;529:5756:113;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;529:5756:113;1889:27:57;;529:5756:113;;2208:15:57;;;:28;;;3042:291;2204:112;;529:5756:113;2204:112:57;7307:69:73;529:5756:113;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;529:5756:113;;;;-1:-1:-1;;;529:5756:113;;;;7265:25:73;;;;;;;;;529:5756:113;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;7307:69:73;:::i;529:5756:113:-;;;-1:-1:-1;7307:69:73;:::i;2208:28:57:-;;529:5756:113;2208:28:57;;689:66;529:5756:113;;-1:-1:-1;;;689:66:57;;529:5756:113;689:66:57;;;;;;529:5756:113;689:66:57;;529:5756:113;-1:-1:-1;;;;;;;;;;;529:5756:113;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;;;;;;1252:94:102;529:5756:113;1327:7:102;;;:::i;:::-;529:5756:113;;-1:-1:-1;;;1300:35:102;;1267:10;529:5756:113;1300:35:102;;529:5756:113;;;;;;;1300:35:102;529:5756:113;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;529:5756:113;1654:6:61;529:5756:113;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;529:5756:113;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;529:5756:113;;1256:21:102;1252:94;;529:5756:113;;;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;689:66:57;-1:-1:-1;;;;;;;;;;;689:66:57;;2906:504;689:66;;;2993:17;;;;;;;;:::i;2906:504::-;529:5756:113;;;;;;;;689:66:57;;;3046:52;;;;529:5756:113;3046:52:57;;;;529:5756:113;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;529:5756:113;;-1:-1:-1;;;3262:56:57;;529:5756:113;3262:56:57;;689:66;;;;;;;529:5756:113;-1:-1:-1;;;;;;;;;;;529:5756:113;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;529:5756:113;1889:27:57;;529:5756:113;;2208:15:57;;;:28;;;3042:291;2204:112;;529:5756:113;2204:112:57;529:5756:113;;7307:69:73;529:5756:113;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;529:5756:113;;;;-1:-1:-1;;;529:5756:113;;;;7265:25:73;;;;;;529:5756:113;;;;;;;;:::i;2208:28:57:-;;529:5756:113;2208:28:57;;689:66;529:5756:113;;-1:-1:-1;;;689:66:57;;529:5756:113;689:66:57;;;;;;;;;529:5756:113;-1:-1:-1;;;;;;;;;;;529:5756:113;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;;;;;;1252:94:102;529:5756:113;1327:7:102;;;:::i;529:5756:113:-;;;;;;-1:-1:-1;;529:5756:113;;;;;;:::i;:::-;;;;689:66:57;529:5756:113;;;689:66:57;4881:14:44;:40;;;529:5756:113;4873:99:44;;;:::i;:::-;-1:-1:-1;;529:5756:113;;;;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;529:5756:113;;2423:22:42;529:5756:113;;2517:8:42;;;:::i;:::-;529:5756:113;;;;;;;-1:-1:-1;;;;;;;;;;;529:5756:113;;;;;;5091:20:44;529:5756:113;4881:40:44;-1:-1:-1;529:5756:113;689:66:57;;;4899:22:44;4881:40;;529:5756:113;;;;;;-1:-1:-1;;529:5756:113;;;;;;:::i;:::-;;;;689:66:57;529:5756:113;;;689:66:57;4881:14:44;:40;;;529:5756:113;4873:99:44;;;:::i;:::-;-1:-1:-1;;529:5756:113;;;;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;529:5756:113;;2423:22:42;529:5756:113;;2517:8:42;;;:::i;:::-;529:5756:113;;;;;;;-1:-1:-1;;;;;;;;;;;529:5756:113;;;4055:1;529:5756;;5091:20:44;529:5756:113;4881:40:44;-1:-1:-1;4055:1:113;689:66:57;;;4899:22:44;4881:40;;529:5756:113;;;;;;-1:-1:-1;;529:5756:113;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2357:27:113;529:5756;;-1:-1:-1;;;;;;529:5756:113;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;;;:::i;:::-;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;689:66:57;529:5756:113;;;689:66:57;3301:14:44;3347:34;;;;;;529:5756:113;3346:108:44;;;;529:5756:113;3325:201:44;;;:::i;:::-;-1:-1:-1;;529:5756:113;;;;;;;3562:65:44;;529:5756:113;;689:66:57;529:5756:113;;;;689:66:57;529:5756:113;;;3568:26;529:5756;499:12:102;3519:19:113;-1:-1:-1;;;;;;;;;;;499:12:102;;3624:24:113;499:12:102;;:::i;:::-;529:5756:113;3481:9;529:5756;3519:19;:::i;:::-;3568:26;:::i;3624:24::-;529:5756;;;;;;;;;3659:40;529:5756;;;3659:40;529:5756;;3709:54;529:5756;;;3709:54;529:5756;;3773:36;529:5756;;;3773:36;529:5756;3819:50;529:5756;;;3819:50;529:5756;;;;;;3884:35;3647:99:44;;529:5756:113;3647:99:44;529:5756:113;;;;;;;-1:-1:-1;;;;;;;;;;;529:5756:113;;;;;;3721:14:44;529:5756:113;3562:65:44;-1:-1:-1;;529:5756:113;;;;;3562:65:44;;;3346:108;3426:4;;1702:19:73;:23;3387:66:44;;3346:108;3387:66;-1:-1:-1;689:66:57;;;529:5756:113;3436:17:44;3346:108;;3347:34;689:66:57;529:5756:113;689:66:57;;;3365:16:44;3347:34;;529:5756:113;;;;;;-1:-1:-1;;529:5756:113;;;;-1:-1:-1;;;;;529:5756:113;;:::i;:::-;;;;;6101:15;529:5756;;689:66:57;529:5756:113;;;;6101:33;689:66:57;;6100:34:113;6096:100;;529:5756;;6101:15;529:5756;;;;;;;;;;;;;6096:100;529:5756;;;;6157:28;;;;;;529:5756;6157:28;;529:5756;6157:28;529:5756;;;;;;-1:-1:-1;;529:5756:113;;;;710:40;529:5756;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;;;;;-1:-1:-1;;529:5756:113;;;;1534:6:42;529:5756:113;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;:::o;:::-;;;-1:-1:-1;;;;;529:5756:113;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;:::o;:::-;4570:155;529:5756;;;-1:-1:-1;;529:5756:113;;;;-1:-1:-1;;;;;529:5756:113;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;529:5756:113;;;;4570:155;529:5756;-1:-1:-1;;529:5756:113;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;529:5756:113;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;1620:130:42:-;1683:7;;:::i;:::-;965:10:48;-1:-1:-1;;;;;529:5756:113;;;1683:23:42;529:5756:113;;1620:130:42:o;529:5756:113:-;;;;;;;;;;;;;;;;;;;;;;;;;2687:187:42;2779:6;529:5756:113;;-1:-1:-1;;;;;529:5756:113;;;-1:-1:-1;;;;;;529:5756:113;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;2827:40:42;2687:187::o;529:5756:113:-;;;;:::o;:::-;;;-1:-1:-1;;;529:5756:113;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;529:5756:113;;;;-1:-1:-1;;;529:5756:113;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;529:5756:113;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;529:5756:113;;;;-1:-1:-1;;;529:5756:113;;;;;;;1406:259:57;1702:19:73;;:23;529:5756:113;;-1:-1:-1;;;;;;;;;;;529:5756:113;;-1:-1:-1;;;;;;529:5756:113;-1:-1:-1;;;;;529:5756:113;;;;;;;;;1406:259:57:o;529:5756:113:-;;;-1:-1:-1;;;529:5756:113;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:5756:113;;;;;;;7671:628:73;;;;7875:418;;;529:5756:113;;;7906:22:73;7902:286;;8201:17;;:::o;7902:286::-;1702:19;:23;529:5756:113;;8201:17:73;:::o;529:5756:113:-;;;-1:-1:-1;;;529:5756:113;;;;;;;;;;;;;;;;;;;;7875:418:73;529:5756:113;;;;-1:-1:-1;8980:21:73;:17;;9152:142;;;;;;;8976:379;529:5756:113;;-1:-1:-1;;;9324:20:73;;529:5756:113;9324:20:73;;;529:5756:113;;;;;;;;;;;:::i;:::-;9324:20:73;;;529:5756:113;;;;;;;;;;;;;;;;;;;;;;;;;;;;4570:155;;;529:5756;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;633:544:102;1534:6:42;529:5756:113;-1:-1:-1;;;;;529:5756:113;;;;755:33:102;;1534:6:42;;870:19:102;;:::o;751:420::-;529:5756:113;;-1:-1:-1;;;924:40:102;;;529:5756:113;924:40:102;529:5756:113;924:40:102;;;;;;-1:-1:-1;924:40:102;;;751:420;-1:-1:-1;;920:241:102;;1127:19;;:::o;920:241::-;1008:13;;;:::o;924:40::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;529:5756:113;;;;;;;;;;;;924:40:102;;;;;;529:5756:113;;;;;;;924:40:102;;;-1:-1:-1;924:40:102;;529:5756:113;;;;:::o;:::-;;;-1:-1:-1;;;529:5756:113;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:5756:113;;;;;;;1664:141;-1:-1:-1;;;;;529:5756:113;1746:22;1742:56;;1664:141::o;1742:56::-;529:5756;;-1:-1:-1;;;1777:21:113;;;;","linkReferences":{},"immutableReferences":{"54869":[{"start":2632,"length":32},{"start":2891,"length":32},{"start":3556,"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","proxyOwner()":"025313a2","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\":\"proxyOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a\",\"dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol\":{\"keccak256\":\"0x5fbf85ca8e6c4f20cdc449e2f1298b6e9530678710a2f69f792e47dcd02fcc68\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://31c33494b50399a02ef1ed6144ad1dda55acd0be107dd46b6526eb8028d70268\",\"dweb:/ipfs/QmRF4w3UnZPveAMNxqgnSbK8G9PpPXJqWWnNMBNLAbQTyg\"]},\"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":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{},"viaIR":true},"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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4","urls":["bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a","dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol":{"keccak256":"0x5fbf85ca8e6c4f20cdc449e2f1298b6e9530678710a2f69f792e47dcd02fcc68","urls":["bzz-raw://31c33494b50399a02ef1ed6144ad1dda55acd0be107dd46b6526eb8028d70268","dweb:/ipfs/QmRF4w3UnZPveAMNxqgnSbK8G9PpPXJqWWnNMBNLAbQTyg"],"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":52287,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52290,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":52992,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52079,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52199,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":75161,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":75166,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)75156_storage)"},{"astId":75168,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":75170,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":75172,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":75174,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":75536,"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)75156_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)75156_storage"},"t_struct(CommunityInfo)75156_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":75153,"contract":"pkg/contracts/src/diamonds/facets/RegistryFactoryFacet.sol:RegistryFactoryFacet","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":75155,"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":75538,"exportedSymbols":{"Clone":[3002],"CommunityInfo":[75156],"ERC1967Proxy":[54318],"ProxyOwnableUpgrader":[71181],"RegistryCommunityInitializeParamsV0_0":[71352],"RegistryCommunityV0_0":[73556],"RegistryFactoryFacet":[75537]},"nodeType":"SourceUnit","src":"42:6244:113","nodes":[{"id":75142,"nodeType":"PragmaDirective","src":"42:24:113","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":75145,"nodeType":"ImportDirective","src":"68:136:113","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"@src/RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":75538,"sourceUnit":73557,"symbolAliases":[{"foreign":{"id":75143,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"81:21:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":75144,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71352,"src":"108:37:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75147,"nodeType":"ImportDirective","src":"205:67:113","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"@src/ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":75538,"sourceUnit":71182,"symbolAliases":[{"foreign":{"id":75146,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71181,"src":"213:20:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75149,"nodeType":"ImportDirective","src":"273:84:113","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":75538,"sourceUnit":54319,"symbolAliases":[{"foreign":{"id":75148,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54318,"src":"281:12:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75151,"nodeType":"ImportDirective","src":"358: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":75538,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":75150,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"366:5:113","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":75156,"nodeType":"StructDefinition","src":"425:57:113","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":75153,"mutability":"mutable","name":"fee","nameLocation":"460:3:113","nodeType":"VariableDeclaration","scope":75156,"src":"452:11:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75152,"name":"uint256","nodeType":"ElementaryTypeName","src":"452:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":75155,"mutability":"mutable","name":"valid","nameLocation":"474:5:113","nodeType":"VariableDeclaration","scope":75156,"src":"469:10:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":75154,"name":"bool","nodeType":"ElementaryTypeName","src":"469:4:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"432:13:113","scope":75538,"visibility":"public"},{"id":75537,"nodeType":"ContractDefinition","src":"529:5756:113","nodes":[{"id":75161,"nodeType":"VariableDeclaration","src":"589:20:113","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"604:5:113","scope":75537,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75160,"name":"uint256","nodeType":"ElementaryTypeName","src":"589:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":75166,"nodeType":"VariableDeclaration","src":"616:49:113","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"650:15:113","scope":75537,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$75156_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":75165,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":75162,"name":"address","nodeType":"ElementaryTypeName","src":"624:7:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"616:33:113","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$75156_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":75164,"nodeType":"UserDefinedTypeName","pathNode":{"id":75163,"name":"CommunityInfo","nameLocations":["635:13:113"],"nodeType":"IdentifierPath","referencedDeclaration":75156,"src":"635:13:113"},"referencedDeclaration":75156,"src":"635:13:113","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$75156_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":75168,"nodeType":"VariableDeclaration","src":"671:33:113","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"686:18:113","scope":75537,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75167,"name":"address","nodeType":"ElementaryTypeName","src":"671:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":75170,"nodeType":"VariableDeclaration","src":"710:40:113","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"725:25:113","scope":75537,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75169,"name":"address","nodeType":"ElementaryTypeName","src":"710:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":75172,"nodeType":"VariableDeclaration","src":"756:31:113","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"771:16:113","scope":75537,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75171,"name":"address","nodeType":"ElementaryTypeName","src":"756:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":75174,"nodeType":"VariableDeclaration","src":"793:38:113","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"808:23:113","scope":75537,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75173,"name":"address","nodeType":"ElementaryTypeName","src":"793:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":75178,"nodeType":"EventDefinition","src":"1004:46:113","nodes":[],"anonymous":false,"eventSelector":"bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d","name":"FeeReceiverSet","nameLocation":"1010:14:113","parameters":{"id":75177,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75176,"indexed":false,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"1033:15:113","nodeType":"VariableDeclaration","scope":75178,"src":"1025:23:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75175,"name":"address","nodeType":"ElementaryTypeName","src":"1025:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1024:25:113"}},{"id":75184,"nodeType":"EventDefinition","src":"1055:66:113","nodes":[],"anonymous":false,"eventSelector":"a1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c","name":"ProtocolFeeSet","nameLocation":"1061:14:113","parameters":{"id":75183,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75180,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1084:10:113","nodeType":"VariableDeclaration","scope":75184,"src":"1076:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75179,"name":"address","nodeType":"ElementaryTypeName","src":"1076:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75182,"indexed":false,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"1104:15:113","nodeType":"VariableDeclaration","scope":75184,"src":"1096:23:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75181,"name":"uint256","nodeType":"ElementaryTypeName","src":"1096:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1075:45:113"}},{"id":75188,"nodeType":"EventDefinition","src":"1126:51:113","nodes":[],"anonymous":false,"eventSelector":"b4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc29","name":"CommunityCreated","nameLocation":"1132:16:113","parameters":{"id":75187,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75186,"indexed":false,"mutability":"mutable","name":"_registryCommunity","nameLocation":"1157:18:113","nodeType":"VariableDeclaration","scope":75188,"src":"1149:26:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75185,"name":"address","nodeType":"ElementaryTypeName","src":"1149:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1148:28:113"}},{"id":75194,"nodeType":"EventDefinition","src":"1182:62:113","nodes":[],"anonymous":false,"eventSelector":"ecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f62","name":"CommunityValiditySet","nameLocation":"1188:20:113","parameters":{"id":75193,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75190,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1217:10:113","nodeType":"VariableDeclaration","scope":75194,"src":"1209:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75189,"name":"address","nodeType":"ElementaryTypeName","src":"1209:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75192,"indexed":false,"mutability":"mutable","name":"_isValid","nameLocation":"1234:8:113","nodeType":"VariableDeclaration","scope":75194,"src":"1229:13:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":75191,"name":"bool","nodeType":"ElementaryTypeName","src":"1229:4:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1208:35:113"}},{"id":75198,"nodeType":"ErrorDefinition","src":"1416:43:113","nodes":[],"errorSelector":"f5a6943d","name":"CommunityInvalid","nameLocation":"1422:16:113","parameters":{"id":75197,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75196,"mutability":"mutable","name":"_community","nameLocation":"1447:10:113","nodeType":"VariableDeclaration","scope":75198,"src":"1439:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75195,"name":"address","nodeType":"ElementaryTypeName","src":"1439:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1438:20:113"}},{"id":75200,"nodeType":"ErrorDefinition","src":"1464:28:113","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"1470:19:113","parameters":{"id":75199,"nodeType":"ParameterList","parameters":[],"src":"1489:2:113"}},{"id":75216,"nodeType":"FunctionDefinition","src":"1664:141:113","nodes":[],"body":{"id":75215,"nodeType":"Block","src":"1732:73:113","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":75210,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":75205,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75202,"src":"1746:8:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":75208,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1766:1:113","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":75207,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1758:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75206,"name":"address","nodeType":"ElementaryTypeName","src":"1758:7:113","typeDescriptions":{}}},"id":75209,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1758:10:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1746:22:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75214,"nodeType":"IfStatement","src":"1742:56:113","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":75211,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75200,"src":"1777:19:113","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":75212,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1777:21:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75213,"nodeType":"RevertStatement","src":"1770:28:113"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"1673:18:113","parameters":{"id":75203,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75202,"mutability":"mutable","name":"_address","nameLocation":"1700:8:113","nodeType":"VariableDeclaration","scope":75216,"src":"1692:16:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75201,"name":"address","nodeType":"ElementaryTypeName","src":"1692:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1691:18:113"},"returnParameters":{"id":75204,"nodeType":"ParameterList","parameters":[],"src":"1732:0:113"},"scope":75537,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":75229,"nodeType":"FunctionDefinition","src":"1979:128:113","nodes":[],"body":{"id":75228,"nodeType":"Block","src":"2054:53:113","nodes":[],"statements":[{"expression":{"id":75226,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75224,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75170,"src":"2064:25:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75225,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75219,"src":"2092:8:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2064:36:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75227,"nodeType":"ExpressionStatement","src":"2064:36:113"}]},"documentation":{"id":75217,"nodeType":"StructuredDocumentation","src":"1810:164:113","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":75222,"kind":"modifierInvocation","modifierName":{"id":75221,"name":"onlyOwner","nameLocations":["2044:9:113"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"2044:9:113"},"nodeType":"ModifierInvocation","src":"2044:9:113"}],"name":"setRegistryCommunityTemplate","nameLocation":"1988:28:113","parameters":{"id":75220,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75219,"mutability":"mutable","name":"template","nameLocation":"2025:8:113","nodeType":"VariableDeclaration","scope":75229,"src":"2017:16:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75218,"name":"address","nodeType":"ElementaryTypeName","src":"2017:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2016:18:113"},"returnParameters":{"id":75223,"nodeType":"ParameterList","parameters":[],"src":"2054:0:113"},"scope":75537,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":75242,"nodeType":"FunctionDefinition","src":"2281:110:113","nodes":[],"body":{"id":75241,"nodeType":"Block","src":"2347:44:113","nodes":[],"statements":[{"expression":{"id":75239,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75237,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75172,"src":"2357:16:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75238,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75232,"src":"2376:8:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2357:27:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75240,"nodeType":"ExpressionStatement","src":"2357:27:113"}]},"documentation":{"id":75230,"nodeType":"StructuredDocumentation","src":"2113:163:113","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":75235,"kind":"modifierInvocation","modifierName":{"id":75234,"name":"onlyOwner","nameLocations":["2337:9:113"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"2337:9:113"},"nodeType":"ModifierInvocation","src":"2337:9:113"}],"name":"setStrategyTemplate","nameLocation":"2290:19:113","parameters":{"id":75233,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75232,"mutability":"mutable","name":"template","nameLocation":"2318:8:113","nodeType":"VariableDeclaration","scope":75242,"src":"2310:16:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75231,"name":"address","nodeType":"ElementaryTypeName","src":"2310:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2309:18:113"},"returnParameters":{"id":75236,"nodeType":"ParameterList","parameters":[],"src":"2347:0:113"},"scope":75537,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":75255,"nodeType":"FunctionDefinition","src":"2579:124:113","nodes":[],"body":{"id":75254,"nodeType":"Block","src":"2652:51:113","nodes":[],"statements":[{"expression":{"id":75252,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75250,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75174,"src":"2662:23:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75251,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75245,"src":"2688:8:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2662:34:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75253,"nodeType":"ExpressionStatement","src":"2662:34:113"}]},"documentation":{"id":75243,"nodeType":"StructuredDocumentation","src":"2397:177:113","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":75248,"kind":"modifierInvocation","modifierName":{"id":75247,"name":"onlyOwner","nameLocations":["2642:9:113"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"2642:9:113"},"nodeType":"ModifierInvocation","src":"2642:9:113"}],"name":"setCollateralVaultTemplate","nameLocation":"2588:26:113","parameters":{"id":75246,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75245,"mutability":"mutable","name":"template","nameLocation":"2623:8:113","nodeType":"VariableDeclaration","scope":75255,"src":"2615:16:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75244,"name":"address","nodeType":"ElementaryTypeName","src":"2615:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2614:18:113"},"returnParameters":{"id":75249,"nodeType":"ParameterList","parameters":[],"src":"2652:0:113"},"scope":75537,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":75314,"nodeType":"FunctionDefinition","src":"3202:788:113","nodes":[],"body":{"id":75313,"nodeType":"Block","src":"3437:553:113","nodes":[],"statements":[{"expression":{"arguments":[{"id":75274,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75258,"src":"3464:6:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":75271,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"3447:5:113","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryFactoryFacet_$75537_$","typeString":"type(contract super RegistryFactoryFacet)"}},"id":75273,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3453:10:113","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":71108,"src":"3447:16:113","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":75275,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3447:24:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75276,"nodeType":"ExpressionStatement","src":"3447:24:113"},{"expression":{"id":75279,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75277,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75161,"src":"3481:5:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":75278,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3489:1:113","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"3481:9:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75280,"nodeType":"ExpressionStatement","src":"3481:9:113"},{"expression":{"arguments":[{"id":75282,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75260,"src":"3519:19:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75281,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75216,"src":"3500:18:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":75283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3500:39:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75284,"nodeType":"ExpressionStatement","src":"3500:39:113"},{"expression":{"arguments":[{"id":75286,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75262,"src":"3568:26:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75285,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75216,"src":"3549:18:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":75287,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3549:46:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75288,"nodeType":"ExpressionStatement","src":"3549:46:113"},{"expression":{"arguments":[{"id":75290,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75266,"src":"3624:24:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75289,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75216,"src":"3605:18:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":75291,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3605:44:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75292,"nodeType":"ExpressionStatement","src":"3605:44:113"},{"expression":{"id":75295,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75293,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75168,"src":"3659:18:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75294,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75260,"src":"3680:19:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3659:40:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75296,"nodeType":"ExpressionStatement","src":"3659:40:113"},{"expression":{"id":75299,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75297,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75170,"src":"3709:25:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75298,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75262,"src":"3737:26:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3709:54:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75300,"nodeType":"ExpressionStatement","src":"3709:54:113"},{"expression":{"id":75303,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75301,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75172,"src":"3773:16:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75302,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75264,"src":"3792:17:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3773:36:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75304,"nodeType":"ExpressionStatement","src":"3773:36:113"},{"expression":{"id":75307,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75305,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75174,"src":"3819:23:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75306,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75266,"src":"3845:24:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3819:50:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75308,"nodeType":"ExpressionStatement","src":"3819:50:113"},{"eventCall":{"arguments":[{"id":75310,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75260,"src":"3899:19:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75309,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75178,"src":"3884:14:113","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":75311,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3884:35:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75312,"nodeType":"EmitStatement","src":"3879:40:113"}]},"documentation":{"id":75256,"nodeType":"StructuredDocumentation","src":"2709:435:113","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":75269,"kind":"modifierInvocation","modifierName":{"id":75268,"name":"initializer","nameLocations":["3425:11:113"],"nodeType":"IdentifierPath","referencedDeclaration":52351,"src":"3425:11:113"},"nodeType":"ModifierInvocation","src":"3425:11:113"}],"name":"initialize","nameLocation":"3211:10:113","parameters":{"id":75267,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75258,"mutability":"mutable","name":"_owner","nameLocation":"3239:6:113","nodeType":"VariableDeclaration","scope":75314,"src":"3231:14:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75257,"name":"address","nodeType":"ElementaryTypeName","src":"3231:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75260,"mutability":"mutable","name":"_gardensFeeReceiver","nameLocation":"3263:19:113","nodeType":"VariableDeclaration","scope":75314,"src":"3255:27:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75259,"name":"address","nodeType":"ElementaryTypeName","src":"3255:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75262,"mutability":"mutable","name":"_registryCommunityTemplate","nameLocation":"3300:26:113","nodeType":"VariableDeclaration","scope":75314,"src":"3292:34:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75261,"name":"address","nodeType":"ElementaryTypeName","src":"3292:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75264,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"3344:17:113","nodeType":"VariableDeclaration","scope":75314,"src":"3336:25:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75263,"name":"address","nodeType":"ElementaryTypeName","src":"3336:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75266,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"3379:24:113","nodeType":"VariableDeclaration","scope":75314,"src":"3371:32:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75265,"name":"address","nodeType":"ElementaryTypeName","src":"3371:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3221:188:113"},"returnParameters":{"id":75270,"nodeType":"ParameterList","parameters":[],"src":"3437:0:113"},"scope":75537,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":75327,"nodeType":"FunctionDefinition","src":"3996:104:113","nodes":[],"body":{"id":75326,"nodeType":"Block","src":"4058:42:113","nodes":[],"statements":[{"expression":{"arguments":[{"id":75323,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75316,"src":"4086:6:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75322,"name":"transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52174,"src":"4068:17:113","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":75324,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4068:25:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75325,"nodeType":"ExpressionStatement","src":"4068:25:113"}]},"functionSelector":"29b6eca9","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":75319,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4055:1:113","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":75320,"kind":"modifierInvocation","modifierName":{"id":75318,"name":"reinitializer","nameLocations":["4041:13:113"],"nodeType":"IdentifierPath","referencedDeclaration":52384,"src":"4041:13:113"},"nodeType":"ModifierInvocation","src":"4041:16:113"}],"name":"initializeV2","nameLocation":"4005:12:113","parameters":{"id":75317,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75316,"mutability":"mutable","name":"_owner","nameLocation":"4026:6:113","nodeType":"VariableDeclaration","scope":75327,"src":"4018:14:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75315,"name":"address","nodeType":"ElementaryTypeName","src":"4018:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4017:16:113"},"returnParameters":{"id":75321,"nodeType":"ParameterList","parameters":[],"src":"4058:0:113"},"scope":75537,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":75340,"nodeType":"FunctionDefinition","src":"4106:104:113","nodes":[],"body":{"id":75339,"nodeType":"Block","src":"4168:42:113","nodes":[],"statements":[{"expression":{"arguments":[{"id":75336,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75329,"src":"4196:6:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75335,"name":"transferOwnership","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52174,"src":"4178:17:113","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":75337,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4178:25:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75338,"nodeType":"ExpressionStatement","src":"4178:25:113"}]},"functionSelector":"3101cfcb","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"33","id":75332,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4165:1:113","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"}],"id":75333,"kind":"modifierInvocation","modifierName":{"id":75331,"name":"reinitializer","nameLocations":["4151:13:113"],"nodeType":"IdentifierPath","referencedDeclaration":52384,"src":"4151:13:113"},"nodeType":"ModifierInvocation","src":"4151:16:113"}],"name":"initializeV3","nameLocation":"4115:12:113","parameters":{"id":75330,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75329,"mutability":"mutable","name":"_owner","nameLocation":"4136:6:113","nodeType":"VariableDeclaration","scope":75340,"src":"4128:14:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75328,"name":"address","nodeType":"ElementaryTypeName","src":"4128:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4127:16:113"},"returnParameters":{"id":75334,"nodeType":"ParameterList","parameters":[],"src":"4168:0:113"},"scope":75537,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":75423,"nodeType":"FunctionDefinition","src":"4216:843:113","nodes":[],"body":{"id":75422,"nodeType":"Block","src":"4378:681:113","nodes":[],"statements":[{"expression":{"id":75353,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75348,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75343,"src":"4388:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":75350,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4395:6:113","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":71336,"src":"4388:13:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75352,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"4404:7:113","subExpression":{"id":75351,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75161,"src":"4404:5:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4388:23:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75354,"nodeType":"ExpressionStatement","src":"4388:23:113"},{"expression":{"id":75362,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":75355,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75343,"src":"4421:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":75357,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4428:16:113","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":71338,"src":"4421:23:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":75360,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"4455:4:113","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryFacet_$75537","typeString":"contract RegistryFactoryFacet"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryFacet_$75537","typeString":"contract RegistryFactoryFacet"}],"id":75359,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4447:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75358,"name":"address","nodeType":"ElementaryTypeName","src":"4447:7:113","typeDescriptions":{}}},"id":75361,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4447:13:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4421:39:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75363,"nodeType":"ExpressionStatement","src":"4421:39:113"},{"assignments":[75366],"declarations":[{"constant":false,"id":75366,"mutability":"mutable","name":"proxy","nameLocation":"4484:5:113","nodeType":"VariableDeclaration","scope":75422,"src":"4471:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"},"typeName":{"id":75365,"nodeType":"UserDefinedTypeName","pathNode":{"id":75364,"name":"ERC1967Proxy","nameLocations":["4471:12:113"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"4471:12:113"},"referencedDeclaration":54318,"src":"4471:12:113","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":75386,"initialValue":{"arguments":[{"arguments":[{"id":75372,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75170,"src":"4530:25:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75371,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4522:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75370,"name":"address","nodeType":"ElementaryTypeName","src":"4522:7:113","typeDescriptions":{}}},"id":75373,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4522:34:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":75376,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"4610:21:113","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73556_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":75377,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4632:10:113","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":72051,"src":"4610:32:113","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":75378,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4643:8:113","memberName":"selector","nodeType":"MemberAccess","src":"4610:41:113","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":75379,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75343,"src":"4653:6:113","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":75380,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75172,"src":"4661:16:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75381,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75174,"src":"4679:23:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":75382,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[71159],"referencedDeclaration":71159,"src":"4704:5:113","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":75383,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4704:7:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":75374,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4570:3:113","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":75375,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4574:18:113","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"4570:22:113","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":75384,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4570:155:113","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":75369,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"4492:16:113","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$54318_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":75368,"nodeType":"UserDefinedTypeName","pathNode":{"id":75367,"name":"ERC1967Proxy","nameLocations":["4496:12:113"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"4496:12:113"},"referencedDeclaration":54318,"src":"4496:12:113","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}},"id":75385,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4492:243:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"4471:264:113"},{"assignments":[75389],"declarations":[{"constant":false,"id":75389,"mutability":"mutable","name":"registryCommunity","nameLocation":"4768:17:113","nodeType":"VariableDeclaration","scope":75422,"src":"4746:39:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":75388,"nodeType":"UserDefinedTypeName","pathNode":{"id":75387,"name":"RegistryCommunityV0_0","nameLocations":["4746:21:113"],"nodeType":"IdentifierPath","referencedDeclaration":73556,"src":"4746:21:113"},"referencedDeclaration":73556,"src":"4746:21:113","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":75399,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":75395,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75366,"src":"4826:5:113","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}],"id":75394,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4818:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75393,"name":"address","nodeType":"ElementaryTypeName","src":"4818:7:113","typeDescriptions":{}}},"id":75396,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4818:14:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75392,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4810:8:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":75391,"name":"address","nodeType":"ElementaryTypeName","src":"4810:8:113","stateMutability":"payable","typeDescriptions":{}}},"id":75397,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4810:23:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":75390,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"4788:21:113","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73556_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":75398,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4788:46:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"4746:88:113"},{"expression":{"id":75408,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":75400,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75166,"src":"4894:15:113","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$75156_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":75405,"indexExpression":{"arguments":[{"id":75403,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75389,"src":"4918:17:113","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":75402,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4910:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75401,"name":"address","nodeType":"ElementaryTypeName","src":"4910:7:113","typeDescriptions":{}}},"id":75404,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4910:26:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4894:43:113","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$75156_storage","typeString":"struct CommunityInfo storage ref"}},"id":75406,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4938:5:113","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":75155,"src":"4894:49:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":75407,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"4946:4:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"4894:56:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75409,"nodeType":"ExpressionStatement","src":"4894:56:113"},{"eventCall":{"arguments":[{"arguments":[{"id":75413,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75389,"src":"4990:17:113","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":75412,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4982:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75411,"name":"address","nodeType":"ElementaryTypeName","src":"4982:7:113","typeDescriptions":{}}},"id":75414,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4982:26:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75410,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75188,"src":"4965:16:113","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":75415,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4965:44:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75416,"nodeType":"EmitStatement","src":"4960:49:113"},{"expression":{"arguments":[{"id":75419,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75389,"src":"5034:17:113","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":75418,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5026:7:113","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":75417,"name":"address","nodeType":"ElementaryTypeName","src":"5026:7:113","typeDescriptions":{}}},"id":75420,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5026:26:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":75347,"id":75421,"nodeType":"Return","src":"5019:33:113"}]},"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"4225:14:113","parameters":{"id":75344,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75343,"mutability":"mutable","name":"params","nameLocation":"4285:6:113","nodeType":"VariableDeclaration","scope":75423,"src":"4240:51:113","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":75342,"nodeType":"UserDefinedTypeName","pathNode":{"id":75341,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["4240:37:113"],"nodeType":"IdentifierPath","referencedDeclaration":71352,"src":"4240:37:113"},"referencedDeclaration":71352,"src":"4240:37:113","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"4239:53:113"},"returnParameters":{"id":75347,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75346,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"4349:23:113","nodeType":"VariableDeclaration","scope":75423,"src":"4341:31:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75345,"name":"address","nodeType":"ElementaryTypeName","src":"4341:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4340:33:113"},"scope":75537,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":75443,"nodeType":"FunctionDefinition","src":"5065:222:113","nodes":[],"body":{"id":75442,"nodeType":"Block","src":"5143:144:113","nodes":[],"statements":[{"expression":{"arguments":[{"id":75431,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75425,"src":"5172:15:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75430,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75216,"src":"5153:18:113","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":75432,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5153:35:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75433,"nodeType":"ExpressionStatement","src":"5153:35:113"},{"expression":{"id":75436,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":75434,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75168,"src":"5198:18:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75435,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75425,"src":"5219:15:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"5198:36:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":75437,"nodeType":"ExpressionStatement","src":"5198:36:113"},{"eventCall":{"arguments":[{"id":75439,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75425,"src":"5264:15:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75438,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75178,"src":"5249:14:113","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":75440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5249:31:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75441,"nodeType":"EmitStatement","src":"5244:36:113"}]},"functionSelector":"8279c7db","implemented":true,"kind":"function","modifiers":[{"id":75428,"kind":"modifierInvocation","modifierName":{"id":75427,"name":"onlyOwner","nameLocations":["5133:9:113"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"5133:9:113"},"nodeType":"ModifierInvocation","src":"5133:9:113"}],"name":"setReceiverAddress","nameLocation":"5074:18:113","parameters":{"id":75426,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75425,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"5101:15:113","nodeType":"VariableDeclaration","scope":75443,"src":"5093:23:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75424,"name":"address","nodeType":"ElementaryTypeName","src":"5093:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5092:25:113"},"returnParameters":{"id":75429,"nodeType":"ParameterList","parameters":[],"src":"5143:0:113"},"scope":75537,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":75451,"nodeType":"FunctionDefinition","src":"5293:115:113","nodes":[],"body":{"id":75450,"nodeType":"Block","src":"5366:42:113","nodes":[],"statements":[{"expression":{"id":75448,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75168,"src":"5383:18:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":75447,"id":75449,"nodeType":"Return","src":"5376:25:113"}]},"functionSelector":"987435be","implemented":true,"kind":"function","modifiers":[],"name":"getGardensFeeReceiver","nameLocation":"5302:21:113","parameters":{"id":75444,"nodeType":"ParameterList","parameters":[],"src":"5323:2:113"},"returnParameters":{"id":75447,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75446,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75451,"src":"5357:7:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75445,"name":"address","nodeType":"ElementaryTypeName","src":"5357:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5356:9:113"},"scope":75537,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":75473,"nodeType":"FunctionDefinition","src":"5414:218:113","nodes":[],"body":{"id":75472,"nodeType":"Block","src":"5508:124:113","nodes":[],"statements":[{"expression":{"id":75465,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":75460,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75166,"src":"5518:15:113","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$75156_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":75462,"indexExpression":{"id":75461,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75453,"src":"5534:10:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5518:27:113","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$75156_storage","typeString":"struct CommunityInfo storage ref"}},"id":75463,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"5546:3:113","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":75153,"src":"5518:31:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75464,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75455,"src":"5552:15:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5518:49:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75466,"nodeType":"ExpressionStatement","src":"5518:49:113"},{"eventCall":{"arguments":[{"id":75468,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75453,"src":"5597:10:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75469,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75455,"src":"5609:15:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":75467,"name":"ProtocolFeeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75184,"src":"5582:14:113","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":75470,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5582:43:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75471,"nodeType":"EmitStatement","src":"5577:48:113"}]},"functionSelector":"b5b3ca2c","implemented":true,"kind":"function","modifiers":[{"id":75458,"kind":"modifierInvocation","modifierName":{"id":75457,"name":"onlyOwner","nameLocations":["5498:9:113"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"5498:9:113"},"nodeType":"ModifierInvocation","src":"5498:9:113"}],"name":"setProtocolFee","nameLocation":"5423:14:113","parameters":{"id":75456,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75453,"mutability":"mutable","name":"_community","nameLocation":"5446:10:113","nodeType":"VariableDeclaration","scope":75473,"src":"5438:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75452,"name":"address","nodeType":"ElementaryTypeName","src":"5438:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75455,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"5466:15:113","nodeType":"VariableDeclaration","scope":75473,"src":"5458:23:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75454,"name":"uint256","nodeType":"ElementaryTypeName","src":"5458:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5437:45:113"},"returnParameters":{"id":75459,"nodeType":"ParameterList","parameters":[],"src":"5508:0:113"},"scope":75537,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":75495,"nodeType":"FunctionDefinition","src":"5638:208:113","nodes":[],"body":{"id":75494,"nodeType":"Block","src":"5728:118:113","nodes":[],"statements":[{"expression":{"id":75487,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":75482,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75166,"src":"5738:15:113","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$75156_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":75484,"indexExpression":{"id":75483,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75475,"src":"5754:10:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5738:27:113","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$75156_storage","typeString":"struct CommunityInfo storage ref"}},"id":75485,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"5766:5:113","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":75155,"src":"5738:33:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":75486,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75477,"src":"5774:8:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"5738:44:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75488,"nodeType":"ExpressionStatement","src":"5738:44:113"},{"eventCall":{"arguments":[{"id":75490,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75475,"src":"5818:10:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":75491,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75477,"src":"5830:8:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":75489,"name":"CommunityValiditySet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75194,"src":"5797:20:113","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_bool_$returns$__$","typeString":"function (address,bool)"}},"id":75492,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5797:42:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75493,"nodeType":"EmitStatement","src":"5792:47:113"}]},"functionSelector":"5a2c8ace","implemented":true,"kind":"function","modifiers":[{"id":75480,"kind":"modifierInvocation","modifierName":{"id":75479,"name":"onlyOwner","nameLocations":["5718:9:113"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"5718:9:113"},"nodeType":"ModifierInvocation","src":"5718:9:113"}],"name":"setCommunityValidity","nameLocation":"5647:20:113","parameters":{"id":75478,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75475,"mutability":"mutable","name":"_community","nameLocation":"5676:10:113","nodeType":"VariableDeclaration","scope":75495,"src":"5668:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75474,"name":"address","nodeType":"ElementaryTypeName","src":"5668:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":75477,"mutability":"mutable","name":"_isValid","nameLocation":"5693:8:113","nodeType":"VariableDeclaration","scope":75495,"src":"5688:13:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":75476,"name":"bool","nodeType":"ElementaryTypeName","src":"5688:4:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5667:35:113"},"returnParameters":{"id":75481,"nodeType":"ParameterList","parameters":[],"src":"5728:0:113"},"scope":75537,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":75508,"nodeType":"FunctionDefinition","src":"5852:144:113","nodes":[],"body":{"id":75507,"nodeType":"Block","src":"5939:57:113","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":75502,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75166,"src":"5956:15:113","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$75156_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":75504,"indexExpression":{"id":75503,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75497,"src":"5972:10:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5956:27:113","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$75156_storage","typeString":"struct CommunityInfo storage ref"}},"id":75505,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5984:5:113","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":75155,"src":"5956:33:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":75501,"id":75506,"nodeType":"Return","src":"5949:40:113"}]},"functionSelector":"f5016b5e","implemented":true,"kind":"function","modifiers":[],"name":"getCommunityValidity","nameLocation":"5861:20:113","parameters":{"id":75498,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75497,"mutability":"mutable","name":"_community","nameLocation":"5890:10:113","nodeType":"VariableDeclaration","scope":75508,"src":"5882:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75496,"name":"address","nodeType":"ElementaryTypeName","src":"5882:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5881:20:113"},"returnParameters":{"id":75501,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75500,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75508,"src":"5933:4:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":75499,"name":"bool","nodeType":"ElementaryTypeName","src":"5933:4:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5932:6:113"},"scope":75537,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":75532,"nodeType":"FunctionDefinition","src":"6002:249:113","nodes":[],"body":{"id":75531,"nodeType":"Block","src":"6086:165:113","nodes":[],"statements":[{"condition":{"id":75519,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"6100:34:113","subExpression":{"expression":{"baseExpression":{"id":75515,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75166,"src":"6101:15:113","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$75156_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":75517,"indexExpression":{"id":75516,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75510,"src":"6117:10:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6101:27:113","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$75156_storage","typeString":"struct CommunityInfo storage ref"}},"id":75518,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"6129:5:113","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":75155,"src":"6101:33:113","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":75525,"nodeType":"IfStatement","src":"6096:100:113","trueBody":{"id":75524,"nodeType":"Block","src":"6136:60:113","statements":[{"errorCall":{"arguments":[{"id":75521,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75510,"src":"6174:10:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":75520,"name":"CommunityInvalid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75198,"src":"6157:16:113","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":75522,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6157:28:113","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":75523,"nodeType":"RevertStatement","src":"6150:35:113"}]}},{"expression":{"expression":{"baseExpression":{"id":75526,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75166,"src":"6213:15:113","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$75156_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":75528,"indexExpression":{"id":75527,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":75510,"src":"6229:10:113","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"6213:27:113","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$75156_storage","typeString":"struct CommunityInfo storage ref"}},"id":75529,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"6241:3:113","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":75153,"src":"6213:31:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":75514,"id":75530,"nodeType":"Return","src":"6206:38:113"}]},"functionSelector":"0a992e0c","implemented":true,"kind":"function","modifiers":[],"name":"getProtocolFee","nameLocation":"6011:14:113","parameters":{"id":75511,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75510,"mutability":"mutable","name":"_community","nameLocation":"6034:10:113","nodeType":"VariableDeclaration","scope":75532,"src":"6026:18:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":75509,"name":"address","nodeType":"ElementaryTypeName","src":"6026:7:113","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6025:20:113"},"returnParameters":{"id":75514,"nodeType":"ParameterList","parameters":[{"constant":false,"id":75513,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":75532,"src":"6077:7:113","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":75512,"name":"uint256","nodeType":"ElementaryTypeName","src":"6077:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"6076:9:113"},"scope":75537,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":75536,"nodeType":"VariableDeclaration","src":"6257:25:113","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"6277:5:113","scope":75537,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":75533,"name":"uint256","nodeType":"ElementaryTypeName","src":"6257:7:113","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":75535,"length":{"hexValue":"3530","id":75534,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6265:2:113","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"6257:11:113","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":75158,"name":"ProxyOwnableUpgrader","nameLocations":["562:20:113"],"nodeType":"IdentifierPath","referencedDeclaration":71181,"src":"562:20:113"},"id":75159,"nodeType":"InheritanceSpecifier","src":"562:20:113"}],"canonicalName":"RegistryFactoryFacet","contractDependencies":[54318],"contractKind":"contract","documentation":{"id":75157,"nodeType":"StructuredDocumentation","src":"483:45:113","text":"@custom:oz-upgrades-from RegistryFactory"},"fullyImplemented":true,"linearizedBaseContracts":[75537,71181,54969,54622,54271,54281,52200,52993,52449],"name":"RegistryFactoryFacet","nameLocation":"538:20:113","scope":75538,"usedErrors":[71096,75198,75200]}],"license":"AGPL-3.0-only"},"id":113} \ 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 28b031146..c8511fea7 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":"proxyOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"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":"0x60a080604052346100315730608052611d3290816100378239608051818181610a9701528181610b9a0152610e330152f35b600080fdfe60808060405260043610156200001457600080fd5b60003560e01c908163025313a214620013525750806302c1d0b114620013275780630a992e0c14620012b65780631459457a14620010ca5780631b71f0e414620010815780633659cfe61462000e0a5780634f1ef2861462000b4557806352d1902d1462000a825780635a2c8ace14620009f45780635c94e4d214620009c95780635decae021462000980578063715018a6146200093057806377122d5614620009055780638279c7db14620008995780638da5cb5b1462000868578063987435be1462000761578063affed0e01462000848578063b0d3713a14620007ff578063b5b3ca2c146200078c578063b8bed9011462000761578063beb331a31462000334578063c4d66de814620002a4578063f2fde38b146200020c578063f5016b5e14620001c65763ffa1ad74146200014c57600080fd5b34620001c1576000366003190112620001c15760408051908101906001600160401b03821181831017620001ab57620001a79160405260038152620302e360ec1b60208201526040519182916020835260208301906200145d565b0390f35b634e487b7160e01b600052604160045260246000fd5b600080fd5b34620001c1576020366003190112620001c1576001600160a01b03620001eb62001378565b166000526066602052602060ff600160406000200154166040519015158152f35b34620001c1576020366003190112620001c1576200022962001378565b620002336200149f565b6001600160a01b0381161562000250576200024e9062001501565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34620001c1576020366003190112620001c157620002c162001378565b60ff60005460081c1615620002db576200024e9062001501565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b34620001c157600319602036820112620001c1576001600160401b0360043511620001c1576101808160043536030112620001c1576040519061018082016001600160401b03811183821017620001ab57604052620003986004356004016200138f565b8252600435602401356001600160a01b0381168103620001c1576020830152600435604481013560408401526064810135606084015260848101356080840152620003e69060a4016200138f565b60a0830152620003fb60c4600435016200138f565b60c083015260043560e40135906001600160401b038211620001c157604090826004350136030112620001c15760408051919082018083116001600160401b0390911117620001ab57604082810190526004803582019081013583526001600160401b0360249091013511620001c1576200048690369060048035909101602481013501016200143c565b602082015260e082015260043561010401356001600160a01b0381168103620001c15761010082015260043561012401356001600160401b038111620001c157620004d99060043691813501016200143c565b61012082015260043561014401358015159003620001c1576004356101448101356101408301526001600160401b036101649091013511620001c1576200052c366004803561016481013501016200143c565b61016082015260655460001981146200074b576001810160655560808281019182523060a08401908152606854606954606a5460335460408051633419635560e01b602080830191909152602482019890985289516001600160a01b0390811660a4830152888b0151811660c4830152828b015160e483015260608b015161010483015298516101248201529551881661014487015260c0890151881661016487015260e08901516101806101848801528051610224880152909601516102448601969096529286169693956200069d9587959382169482169392909116916200067e9162000621906102648801906200145d565b6101008201516001600160a01b03166101a488015261012082015187820360a3199081016101c48a015291610160916200065c91906200145d565b9261014081015115156101e48a0152015190878303016102048801526200145d565b9260448501526064840152608483015203601f198101835282620013c0565b6040519161041080840192906001600160401b03841185851017620001ab578493620006dc93604092620017cd8739815281602082015201906200145d565b03906000f080156200073f5760209060018060a01b031680600052606682526001604060002001600160ff198254161790557fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2982604051838152a1604051908152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052601160045260246000fd5b34620001c1576000366003190112620001c1576067546040516001600160a01b039091168152602090f35b34620001c1576040366003190112620001c1577fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c6040620007cc62001378565b60243590620007da6200149f565b60018060a01b03169081600052606660205280836000205582519182526020820152a1005b34620001c1576020366003190112620001c1576200081c62001378565b620008266200149f565b606a80546001600160a01b0319166001600160a01b0392909216919091179055005b34620001c1576000366003190112620001c1576020606554604051908152f35b34620001c1576000366003190112620001c15760206200088762001710565b6040516001600160a01b039091168152f35b34620001c1576020366003190112620001c15760008051602062001c7d8339815191526020620008c862001378565b620008d26200149f565b620008dd81620017a9565b606780546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b34620001c1576000366003190112620001c157606a546040516001600160a01b039091168152602090f35b34620001c1576000366003190112620001c1576200094d6200149f565b603380546001600160a01b031981169091556000906001600160a01b031660008051602062001c3d8339815191528280a3005b34620001c1576020366003190112620001c1576200099d62001378565b620009a76200149f565b606880546001600160a01b0319166001600160a01b0392909216919091179055005b34620001c1576000366003190112620001c1576069546040516001600160a01b039091168152602090f35b34620001c1576040366003190112620001c15762000a1162001378565b60243590811515809203620001c1577fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f629160409162000a4f6200149f565b60018060a01b0316908160005260666020526001836000200160ff1981541660ff831617905582519182526020820152a1005b34620001c1576000366003190112620001c1577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300362000adf57602060405160008051602062001c1d8339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b6040366003190112620001c15762000b5c62001378565b6024356001600160401b038111620001c15736602382011215620001c15762000b9090369060248160040135910162001400565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919062000bcb3084141562001539565b62000beb60008051602062001c1d8339815191529382855416146200158a565b62000bf562001710565b813391160362000de15760008051602062001bdd8339815191525460ff161562000c27575050506200024e90620015db565b8316604051926352d1902d60e01b84526020938481600481865afa6000918162000dac575b5062000c9d5760405162461bcd60e51b815260048101869052602e602482015260008051602062001cdd83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9392930362000d665762000cb184620015db565b60008051602062001c5d833981519152600080a281511580159062000d5d575b62000cd857005b6200024e926000806040519462000cef86620013a4565b6027865260008051602062001cbd83398151915285870152660819985a5b195960ca1b60408701528481519101845af4903d1562000d53573d62000d3381620013e4565b9062000d436040519283620013c0565b8152600081943d92013e6200166d565b606092506200166d565b50600162000cd1565b60405162461bcd60e51b8152600481018390526029602482015260008051602062001c9d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508581813d831162000dd9575b62000dc78183620013c0565b81010312620001c15751908762000c4c565b503d62000dbb565b60449062000dee62001710565b60405163163678e960e01b815233600482015291166024820152fd5b34620001c157602080600319360112620001c15762000e2862001378565b6001600160a01b03917f0000000000000000000000000000000000000000000000000000000000000000831662000e623082141562001539565b62000e8260008051602062001c1d8339815191529185835416146200158a565b62000e8c62001710565b84339116036200107457604051828101949091906001600160401b03861183871017620001ab57856040526000835260ff60008051602062001bdd833981519152541660001462000ee757505050506200024e9150620015db565b8492939416906040516352d1902d60e01b81528581600481865afa600091816200103f575b5062000f5d5760405162461bcd60e51b815260048101879052602e602482015260008051602062001cdd83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9493940362000ff95762000f7182620015db565b60008051602062001c5d833981519152600080a282511580159062000ff0575b62000f9857005b6000806200024e956040519562000faf87620013a4565b6027875260008051602062001cbd83398151915286880152660819985a5b195960ca1b60408801525190845af4903d1562000d53573d62000d3381620013e4565b50600062000f91565b60405162461bcd60e51b8152600481018490526029602482015260008051602062001c9d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d83116200106c575b6200105a8183620013c0565b81010312620001c15751908862000f0c565b503d6200104e565b60448462000dee62001710565b34620001c1576020366003190112620001c1576200109e62001378565b620010a86200149f565b606980546001600160a01b0319166001600160a01b0392909216919091179055005b34620001c15760a0366003190112620001c157620010e762001378565b6001600160a01b039060243590828216808303620001c15760443591848316808403620001c157606435868116809103620001c15760843596871692838803620001c1576000549760ff8960081c16159889809a620012a8575b80156200128f575b15620012335760ff1981166001176000558962001220575b5060ff60005460081c1615620002db57620011a7602097620011a760008051602062001c7d8339815191529a6200119c620011ad9662001501565b6000606555620017a9565b620017a9565b60018060a01b03199184836067541617606755826068541617606855816069541617606955606a541617606a55604051908152a1620011e857005b61ff0019600054166000557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a1005b61ffff1916610101176000558962001161565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b158015620011495750600160ff82161462001149565b50600160ff82161062001141565b34620001c1576020366003190112620001c1576001600160a01b03620012db62001378565b1680600052606660205260ff60016040600020015416156200130f5760005260666020526020604060002054604051908152f35b6024906040519063f5a6943d60e01b82526004820152fd5b34620001c1576000366003190112620001c1576068546040516001600160a01b039091168152602090f35b34620001c1576000366003190112620001c1576033546001600160a01b03168152602090f35b600435906001600160a01b0382168203620001c157565b35906001600160a01b0382168203620001c157565b606081019081106001600160401b03821117620001ab57604052565b601f909101601f19168101906001600160401b03821190821017620001ab57604052565b6001600160401b038111620001ab57601f01601f191660200190565b9291926200140e82620013e4565b916200141e6040519384620013c0565b829481845281830111620001c1578281602093846000960137010152565b9080601f83011215620001c1578160206200145a9335910162001400565b90565b919082519283825260005b8481106200148a575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520162001468565b620014a962001710565b336001600160a01b0390911603620014bd57565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062001c3d833981519152600080a3565b156200154157565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001bfd83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b156200159257565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001bfd83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b15620016125760008051602062001c1d83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b91929015620016d2575081511562001683575090565b3b156200168d5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b825190915015620016e65750805190602001fd5b60405162461bcd60e51b8152602060048201529081906200170c9060248301906200145d565b0390fd5b6033546001600160a01b0390811690813b6200172a575090565b604051638da5cb5b60e01b8152602081600481865afa9182916000936200175c575b505062001757575090565b905090565b602093919293813d8211620017a0575b816200177b60209383620013c0565b810103126200179c575191821682036200179957509038806200174c565b80fd5b5080fd5b3d91506200176c565b6001600160a01b031615620017ba57565b6040516303988b8160e61b8152600490fdfe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c634300081300334910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3bbdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a26469706673582212204be01b29541f09577acfd12e816e65d0ed0e8863643786b0e6590124e7eb42e664736f6c63430008130033","sourceMap":"529:4653:104:-:0;;;;;;;1088:4:61;1080:13;;529:4653:104;;;;;;1080:13:61;529:4653:104;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60808060405260043610156200001457600080fd5b60003560e01c908163025313a214620013525750806302c1d0b114620013275780630a992e0c14620012b65780631459457a14620010ca5780631b71f0e414620010815780633659cfe61462000e0a5780634f1ef2861462000b4557806352d1902d1462000a825780635a2c8ace14620009f45780635c94e4d214620009c95780635decae021462000980578063715018a6146200093057806377122d5614620009055780638279c7db14620008995780638da5cb5b1462000868578063987435be1462000761578063affed0e01462000848578063b0d3713a14620007ff578063b5b3ca2c146200078c578063b8bed9011462000761578063beb331a31462000334578063c4d66de814620002a4578063f2fde38b146200020c578063f5016b5e14620001c65763ffa1ad74146200014c57600080fd5b34620001c1576000366003190112620001c15760408051908101906001600160401b03821181831017620001ab57620001a79160405260038152620302e360ec1b60208201526040519182916020835260208301906200145d565b0390f35b634e487b7160e01b600052604160045260246000fd5b600080fd5b34620001c1576020366003190112620001c1576001600160a01b03620001eb62001378565b166000526066602052602060ff600160406000200154166040519015158152f35b34620001c1576020366003190112620001c1576200022962001378565b620002336200149f565b6001600160a01b0381161562000250576200024e9062001501565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34620001c1576020366003190112620001c157620002c162001378565b60ff60005460081c1615620002db576200024e9062001501565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b34620001c157600319602036820112620001c1576001600160401b0360043511620001c1576101808160043536030112620001c1576040519061018082016001600160401b03811183821017620001ab57604052620003986004356004016200138f565b8252600435602401356001600160a01b0381168103620001c1576020830152600435604481013560408401526064810135606084015260848101356080840152620003e69060a4016200138f565b60a0830152620003fb60c4600435016200138f565b60c083015260043560e40135906001600160401b038211620001c157604090826004350136030112620001c15760408051919082018083116001600160401b0390911117620001ab57604082810190526004803582019081013583526001600160401b0360249091013511620001c1576200048690369060048035909101602481013501016200143c565b602082015260e082015260043561010401356001600160a01b0381168103620001c15761010082015260043561012401356001600160401b038111620001c157620004d99060043691813501016200143c565b61012082015260043561014401358015159003620001c1576004356101448101356101408301526001600160401b036101649091013511620001c1576200052c366004803561016481013501016200143c565b61016082015260655460001981146200074b576001810160655560808281019182523060a08401908152606854606954606a5460335460408051633419635560e01b602080830191909152602482019890985289516001600160a01b0390811660a4830152888b0151811660c4830152828b015160e483015260608b015161010483015298516101248201529551881661014487015260c0890151881661016487015260e08901516101806101848801528051610224880152909601516102448601969096529286169693956200069d9587959382169482169392909116916200067e9162000621906102648801906200145d565b6101008201516001600160a01b03166101a488015261012082015187820360a3199081016101c48a015291610160916200065c91906200145d565b9261014081015115156101e48a0152015190878303016102048801526200145d565b9260448501526064840152608483015203601f198101835282620013c0565b6040519161041080840192906001600160401b03841185851017620001ab578493620006dc93604092620017cd8739815281602082015201906200145d565b03906000f080156200073f5760209060018060a01b031680600052606682526001604060002001600160ff198254161790557fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2982604051838152a1604051908152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052601160045260246000fd5b34620001c1576000366003190112620001c1576067546040516001600160a01b039091168152602090f35b34620001c1576040366003190112620001c1577fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c6040620007cc62001378565b60243590620007da6200149f565b60018060a01b03169081600052606660205280836000205582519182526020820152a1005b34620001c1576020366003190112620001c1576200081c62001378565b620008266200149f565b606a80546001600160a01b0319166001600160a01b0392909216919091179055005b34620001c1576000366003190112620001c1576020606554604051908152f35b34620001c1576000366003190112620001c15760206200088762001710565b6040516001600160a01b039091168152f35b34620001c1576020366003190112620001c15760008051602062001c7d8339815191526020620008c862001378565b620008d26200149f565b620008dd81620017a9565b606780546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b34620001c1576000366003190112620001c157606a546040516001600160a01b039091168152602090f35b34620001c1576000366003190112620001c1576200094d6200149f565b603380546001600160a01b031981169091556000906001600160a01b031660008051602062001c3d8339815191528280a3005b34620001c1576020366003190112620001c1576200099d62001378565b620009a76200149f565b606880546001600160a01b0319166001600160a01b0392909216919091179055005b34620001c1576000366003190112620001c1576069546040516001600160a01b039091168152602090f35b34620001c1576040366003190112620001c15762000a1162001378565b60243590811515809203620001c1577fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f629160409162000a4f6200149f565b60018060a01b0316908160005260666020526001836000200160ff1981541660ff831617905582519182526020820152a1005b34620001c1576000366003190112620001c1577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300362000adf57602060405160008051602062001c1d8339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b6040366003190112620001c15762000b5c62001378565b6024356001600160401b038111620001c15736602382011215620001c15762000b9090369060248160040135910162001400565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919062000bcb3084141562001539565b62000beb60008051602062001c1d8339815191529382855416146200158a565b62000bf562001710565b813391160362000de15760008051602062001bdd8339815191525460ff161562000c27575050506200024e90620015db565b8316604051926352d1902d60e01b84526020938481600481865afa6000918162000dac575b5062000c9d5760405162461bcd60e51b815260048101869052602e602482015260008051602062001cdd83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9392930362000d665762000cb184620015db565b60008051602062001c5d833981519152600080a281511580159062000d5d575b62000cd857005b6200024e926000806040519462000cef86620013a4565b6027865260008051602062001cbd83398151915285870152660819985a5b195960ca1b60408701528481519101845af4903d1562000d53573d62000d3381620013e4565b9062000d436040519283620013c0565b8152600081943d92013e6200166d565b606092506200166d565b50600162000cd1565b60405162461bcd60e51b8152600481018390526029602482015260008051602062001c9d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508581813d831162000dd9575b62000dc78183620013c0565b81010312620001c15751908762000c4c565b503d62000dbb565b60449062000dee62001710565b60405163163678e960e01b815233600482015291166024820152fd5b34620001c157602080600319360112620001c15762000e2862001378565b6001600160a01b03917f0000000000000000000000000000000000000000000000000000000000000000831662000e623082141562001539565b62000e8260008051602062001c1d8339815191529185835416146200158a565b62000e8c62001710565b84339116036200107457604051828101949091906001600160401b03861183871017620001ab57856040526000835260ff60008051602062001bdd833981519152541660001462000ee757505050506200024e9150620015db565b8492939416906040516352d1902d60e01b81528581600481865afa600091816200103f575b5062000f5d5760405162461bcd60e51b815260048101879052602e602482015260008051602062001cdd83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9493940362000ff95762000f7182620015db565b60008051602062001c5d833981519152600080a282511580159062000ff0575b62000f9857005b6000806200024e956040519562000faf87620013a4565b6027875260008051602062001cbd83398151915286880152660819985a5b195960ca1b60408801525190845af4903d1562000d53573d62000d3381620013e4565b50600062000f91565b60405162461bcd60e51b8152600481018490526029602482015260008051602062001c9d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d83116200106c575b6200105a8183620013c0565b81010312620001c15751908862000f0c565b503d6200104e565b60448462000dee62001710565b34620001c1576020366003190112620001c1576200109e62001378565b620010a86200149f565b606980546001600160a01b0319166001600160a01b0392909216919091179055005b34620001c15760a0366003190112620001c157620010e762001378565b6001600160a01b039060243590828216808303620001c15760443591848316808403620001c157606435868116809103620001c15760843596871692838803620001c1576000549760ff8960081c16159889809a620012a8575b80156200128f575b15620012335760ff1981166001176000558962001220575b5060ff60005460081c1615620002db57620011a7602097620011a760008051602062001c7d8339815191529a6200119c620011ad9662001501565b6000606555620017a9565b620017a9565b60018060a01b03199184836067541617606755826068541617606855816069541617606955606a541617606a55604051908152a1620011e857005b61ff0019600054166000557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a1005b61ffff1916610101176000558962001161565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b158015620011495750600160ff82161462001149565b50600160ff82161062001141565b34620001c1576020366003190112620001c1576001600160a01b03620012db62001378565b1680600052606660205260ff60016040600020015416156200130f5760005260666020526020604060002054604051908152f35b6024906040519063f5a6943d60e01b82526004820152fd5b34620001c1576000366003190112620001c1576068546040516001600160a01b039091168152602090f35b34620001c1576000366003190112620001c1576033546001600160a01b03168152602090f35b600435906001600160a01b0382168203620001c157565b35906001600160a01b0382168203620001c157565b606081019081106001600160401b03821117620001ab57604052565b601f909101601f19168101906001600160401b03821190821017620001ab57604052565b6001600160401b038111620001ab57601f01601f191660200190565b9291926200140e82620013e4565b916200141e6040519384620013c0565b829481845281830111620001c1578281602093846000960137010152565b9080601f83011215620001c1578160206200145a9335910162001400565b90565b919082519283825260005b8481106200148a575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520162001468565b620014a962001710565b336001600160a01b0390911603620014bd57565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062001c3d833981519152600080a3565b156200154157565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001bfd83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b156200159257565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001bfd83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b15620016125760008051602062001c1d83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b91929015620016d2575081511562001683575090565b3b156200168d5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b825190915015620016e65750805190602001fd5b60405162461bcd60e51b8152602060048201529081906200170c9060248301906200145d565b0390fd5b6033546001600160a01b0390811690813b6200172a575090565b604051638da5cb5b60e01b8152602081600481865afa9182916000936200175c575b505062001757575090565b905090565b602093919293813d8211620017a0575b816200177b60209383620013c0565b810103126200179c575191821682036200179957509038806200174c565b80fd5b5080fd5b3d91506200176c565b6001600160a01b031615620017ba57565b6040516303988b8160e61b8152600490fdfe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c634300081300334910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3bbdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a26469706673582212204be01b29541f09577acfd12e816e65d0ed0e8863643786b0e6590124e7eb42e664736f6c63430008130033","sourceMap":"529:4653:104:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;;;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;-1:-1:-1;;;;;529:4653:104;;:::i;:::-;;;;4853:15;529:4653;;;689:66:57;529:4653:104;;;;4853:33;689:66:57;;529:4653:104;;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;529:4653:104;;2423:22:42;529:4653:104;;2517:8:42;;;:::i;:::-;529:4653:104;;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;;;:::i;:::-;689:66:57;529:4653:104;;;;689:66:57;529:4653:104;;;499:12:102;;;:::i;529:4653:104:-;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;529:4653:104;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;3232:7;529:4653;-1:-1:-1;;529:4653:104;;;;;;;3232:7;529:4653;;;;;;;;3283:4;529:4653;;;;;;3358:25;529:4653;3521:16;529:4653;3555:23;529:4653;1534:6:42;529:4653:104;;;;-1:-1:-1;;;529:4653:104;3398:224;;;;;;;529:4653;3398:224;;529:4653;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;529:4653:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3438:41;529:4653;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3398:224;;529:4653;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;;;;-1:-1:-1;529:4653:104;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;3398:224;;;;;;;;;:::i;:::-;529:4653;;;3320:312;;;;;;-1:-1:-1;;;;;3320:312:104;;;;;;;;;;529:4653;3320:312;529:4653;3320:312;;;;529:4653;;;;;;;;;;:::i;:::-;3320:312;;529:4653;3320:312;;;;;529:4653;;;;;;;;;;;3791:15;529:4653;;;;;;3791:49;529:4653;;;;;;;;;3862:44;529:4653;;;;;;3862:44;529:4653;;;;;;3320:312;529:4653;;689:66:57;529:4653:104;689:66:57;;;;;529:4653:104;;;;;;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;714:33;529:4653;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;4479:43;529:4653;;;:::i;:::-;;;1324:62:42;;;:::i;:::-;529:4653:104;;;;;;;;;;4415:15;529:4653;;;;;;;;;;;;;;;;4479:43;529:4653;;;;;;;-1:-1:-1;;529:4653:104;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2211:34:104;529:4653;;-1:-1:-1;;;;;;529:4653:104;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;;632:20;529:4653;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;-1:-1:-1;;;;;;;;;;;529:4653:104;;;:::i;:::-;1324:62:42;;:::i;:::-;4069:15:104;;;:::i;:::-;4095:36;529:4653;;-1:-1:-1;;;;;;529:4653:104;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;4146:31;529:4653;;;;;;;-1:-1:-1;;529:4653:104;;;;836:38;529:4653;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;1324:62:42;;:::i;:::-;2779:6;529:4653:104;;-1:-1:-1;;;;;;529:4653:104;;;;;;;-1:-1:-1;;;;;529:4653:104;-1:-1:-1;;;;;;;;;;;529:4653:104;;2827:40:42;529:4653:104;;;;;;;-1:-1:-1;;529:4653:104;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;1947:36:104;529:4653;;-1:-1:-1;;;;;;529:4653:104;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;799:31;529:4653;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;;;:::i;:::-;;;;;;;;;;;;4694:42;1324:62:42;529:4653:104;1324:62:42;;;:::i;:::-;529:4653:104;;;;;;;;;;4635:15;529:4653;;;;;;4635:33;529:4653;;;;;;;;;;;;;;;;;;;;4694:42;529:4653;;;;;;;-1:-1:-1;;529:4653:104;;;;2089:6:61;-1:-1:-1;;;;;529:4653:104;2080:4:61;2072:23;529:4653:104;;;;;-1:-1:-1;;;;;;;;;;;529:4653:104;;;;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;;;:::i;:::-;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1654:6:61;529:4653:104;;;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;529:4653:104;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;529:4653:104;;1256:21:102;1252:94;;-1:-1:-1;;;;;;;;;;;689:66:57;;;;;;2993:17;;;;;;:::i;2906:504::-;529:4653:104;;;;689:66:57;;;;3046:52;;;;;;529:4653:104;3046:52:57;;;;529:4653:104;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;529:4653:104;;-1:-1:-1;;;3262:56:57;;529:4653:104;3262:56:57;;689:66;;;;529:4653:104;689:66:57;;529:4653:104;-1:-1:-1;;;;;;;;;;;529:4653:104;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;529:4653:104;1889:27:57;;529:4653:104;;2208:15:57;;;:28;;;3042:291;2204:112;;529:4653:104;2204:112:57;7307:69:73;529:4653:104;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;529:4653:104;;;;-1:-1:-1;;;529:4653:104;;;;7265:25:73;;;;;;;;;529:4653:104;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;7307:69:73;:::i;529:4653:104:-;;;-1:-1:-1;7307:69:73;:::i;2208:28:57:-;;529:4653:104;2208:28:57;;689:66;529:4653:104;;-1:-1:-1;;;689:66:57;;529:4653:104;689:66:57;;;;;;529:4653:104;689:66:57;;529:4653:104;-1:-1:-1;;;;;;;;;;;529:4653:104;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;;;;;;1252:94:102;529:4653:104;1327:7:102;;;:::i;:::-;529:4653:104;;-1:-1:-1;;;1300:35:102;;1267:10;529:4653:104;1300:35:102;;529:4653:104;;;;;;;1300:35:102;529:4653:104;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;529:4653:104;1654:6:61;529:4653:104;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;529:4653:104;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;529:4653:104;;1256:21:102;1252:94;;529:4653:104;;;;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;689:66:57;-1:-1:-1;;;;;;;;;;;689:66:57;;2906:504;689:66;;;2993:17;;;;;;;;:::i;2906:504::-;529:4653:104;;;;;;;;689:66:57;;;3046:52;;;;529:4653:104;3046:52:57;;;;529:4653:104;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;529:4653:104;;-1:-1:-1;;;3262:56:57;;529:4653:104;3262:56:57;;689:66;;;;;;;529:4653:104;-1:-1:-1;;;;;;;;;;;529:4653:104;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;529:4653:104;1889:27:57;;529:4653:104;;2208:15:57;;;:28;;;3042:291;2204:112;;529:4653:104;2204:112:57;529:4653:104;;7307:69:73;529:4653:104;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;529:4653:104;;;;-1:-1:-1;;;529:4653:104;;;;7265:25:73;;;;;;529:4653:104;;;;;;;;:::i;2208:28:57:-;;529:4653:104;2208:28:57;;689:66;529:4653:104;;-1:-1:-1;;;689:66:57;;529:4653:104;689:66:57;;;;;;;;;529:4653:104;-1:-1:-1;;;;;;;;;;;529:4653:104;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;;;;;;1252:94:102;529:4653:104;1327:7:102;;;:::i;529:4653:104:-;;;;;;-1:-1:-1;;529:4653:104;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2080:27:104;529:4653;;-1:-1:-1;;;;;;529:4653:104;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;;;:::i;:::-;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;689:66:57;529:4653:104;;;689:66:57;3301:14:44;3347:34;;;;;;529:4653:104;3346:108:44;;;;529:4653:104;;;;-1:-1:-1;;529:4653:104;;;;;;;3562:65:44;;529:4653:104;;689:66:57;529:4653:104;;;;689:66:57;529:4653:104;;;2616:26;529:4653;499:12:102;2567:19:104;-1:-1:-1;;;;;;;;;;;499:12:102;;2672:24:104;499:12:102;;:::i;:::-;529:4653:104;2529:9;529:4653;2567:19;:::i;:::-;2616:26;:::i;2672:24::-;529:4653;;;;;;;;;2707:40;529:4653;;;2707:40;529:4653;;2757:54;529:4653;;;2757:54;529:4653;;2821:36;529:4653;;;2821:36;529:4653;2867:50;529:4653;;;2867:50;529:4653;;;;;;2932:35;3647:99:44;;529:4653:104;3647:99:44;529:4653:104;;;;;;;3721:14:44;529:4653:104;;;;;;3721:14:44;529:4653:104;3562:65:44;-1:-1:-1;;529:4653:104;;;;;3562:65:44;;;529:4653:104;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:4653:104;;;;;;;3346:108:44;3426:4;;1702:19:73;:23;3387:66:44;;3346:108;3387:66;689::57;529:4653:104;689:66:57;;;3436:17:44;3346:108;;3347:34;689:66:57;529:4653:104;689:66:57;;;3365:16:44;3347:34;;529:4653:104;;;;;;-1:-1:-1;;529:4653:104;;;;-1:-1:-1;;;;;529:4653:104;;:::i;:::-;;;;;4998:15;529:4653;;689:66:57;529:4653:104;;;;4998:33;689:66:57;;4997:34:104;4993:100;;529:4653;;4998:15;529:4653;;;;;;;;;;;;;4993:100;529:4653;;;;5054:28;;;;;;529:4653;5054:28;;529:4653;5054:28;529:4653;;;;;;-1:-1:-1;;529:4653:104;;;;753:40;529:4653;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;;;;;-1:-1:-1;;529:4653:104;;;;1534:6:42;529:4653:104;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;:::o;:::-;;;-1:-1:-1;;;;;529:4653:104;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;:::o;:::-;3398:224;529:4653;;;-1:-1:-1;;529:4653:104;;;;-1:-1:-1;;;;;529:4653:104;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;529:4653:104;;;;3398:224;529:4653;-1:-1:-1;;529:4653:104;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;529:4653:104;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;3398:224;;;529:4653;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;1620:130:42;1683:7;;:::i;:::-;965:10:48;-1:-1:-1;;;;;529:4653:104;;;1683:23:42;529:4653:104;;1620:130:42:o;529:4653:104:-;;;;;;;;;;;;;;;;;;;;;;;;;2687:187:42;2779:6;529:4653:104;;-1:-1:-1;;;;;529:4653:104;;;-1:-1:-1;;;;;;529:4653:104;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;2827:40:42;2687:187::o;529:4653:104:-;;;;:::o;:::-;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;529:4653:104;;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;529:4653:104;;;;-1:-1:-1;;;529:4653:104;;;;;;;1406:259:57;1702:19:73;;:23;529:4653:104;;-1:-1:-1;;;;;;;;;;;529:4653:104;;-1:-1:-1;;;;;;529:4653:104;-1:-1:-1;;;;;529:4653:104;;;;;;;;;1406:259:57:o;529:4653:104:-;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:4653:104;;;;;;;7671:628:73;;;;7875:418;;;529:4653:104;;;7906:22:73;7902:286;;8201:17;;:::o;7902:286::-;1702:19;:23;529:4653:104;;8201:17:73;:::o;529:4653:104:-;;;-1:-1:-1;;;529:4653:104;;;;;;;;;;;;;;;;;;;;7875:418:73;529:4653:104;;;;-1:-1:-1;8980:21:73;:17;;9152:142;;;;;;;8976:379;529:4653:104;;-1:-1:-1;;;9324:20:73;;529:4653:104;9324:20:73;;;529:4653:104;;;;;;;;;;;:::i;:::-;9324:20:73;;;633:544:102;1534:6:42;529:4653:104;-1:-1:-1;;;;;529:4653:104;;;;755:33:102;;1534:6:42;;870:19:102;;:::o;751:420::-;529:4653:104;;-1:-1:-1;;;924:40:102;;;529:4653:104;924:40:102;529:4653:104;924:40:102;;;;;;-1:-1:-1;924:40:102;;;751:420;-1:-1:-1;;920:241:102;;1127:19;;:::o;920:241::-;1008:13;;;:::o;924:40::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;529:4653:104;;;;;;;;;;;;924:40:102;;;;;;529:4653:104;;;;;;;924:40:102;;;-1:-1:-1;924:40:102;;1707:141:104;-1:-1:-1;;;;;529:4653:104;1789:22;1785:56;;1707:141::o;1785:56::-;529:4653;;-1:-1:-1;;;1820:21:104;;;;","linkReferences":{},"immutableReferences":{"54869":[{"start":2711,"length":32},{"start":2970,"length":32},{"start":3635,"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","proxyOwner()":"025313a2","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\":\"proxyOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda\",\"dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f\",\"dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9\"]},\"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":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{},"viaIR":true},"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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f","urls":["bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda","dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19","urls":["bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f","dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9"],"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":52287,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52290,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":52992,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52079,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52199,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":73300,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":73305,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)73292_storage)"},{"astId":73307,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":73309,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":73311,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":73313,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":73645,"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)73292_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)73292_storage"},"t_struct(CommunityInfo)73292_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":73289,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":73291,"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":73647,"exportedSymbols":{"Clone":[3002],"CommunityInfo":[73292],"ERC1967Proxy":[54318],"ProxyOwnableUpgrader":[71005],"RegistryCommunityInitializeParamsV0_0":[71072],"RegistryCommunityV0_0":[73276],"RegistryFactoryV0_0":[73646]},"nodeType":"SourceUnit","src":"42:5141:104","nodes":[{"id":73278,"nodeType":"PragmaDirective","src":"42:24:104","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":73281,"nodeType":"ImportDirective","src":"68:134:104","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":73647,"sourceUnit":73277,"symbolAliases":[{"foreign":{"id":73279,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73276,"src":"81:21:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":73280,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71072,"src":"108:37:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73283,"nodeType":"ImportDirective","src":"203:65:104","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"../ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":73647,"sourceUnit":71006,"symbolAliases":[{"foreign":{"id":73282,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71005,"src":"211:20:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73285,"nodeType":"ImportDirective","src":"269:84:104","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":73647,"sourceUnit":54319,"symbolAliases":[{"foreign":{"id":73284,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54318,"src":"277:12:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73287,"nodeType":"ImportDirective","src":"354: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":73647,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":73286,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"362:5:104","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73292,"nodeType":"StructDefinition","src":"421:57:104","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":73289,"mutability":"mutable","name":"fee","nameLocation":"456:3:104","nodeType":"VariableDeclaration","scope":73292,"src":"448:11:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73288,"name":"uint256","nodeType":"ElementaryTypeName","src":"448:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":73291,"mutability":"mutable","name":"valid","nameLocation":"470:5:104","nodeType":"VariableDeclaration","scope":73292,"src":"465:10:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73290,"name":"bool","nodeType":"ElementaryTypeName","src":"465:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"428:13:104","scope":73647,"visibility":"public"},{"id":73646,"nodeType":"ContractDefinition","src":"529:4653:104","nodes":[{"id":73298,"nodeType":"VariableDeclaration","src":"588:38:104","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"611:7:104","scope":73646,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":73296,"name":"string","nodeType":"ElementaryTypeName","src":"588:6:104","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":73297,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"621:5:104","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":73300,"nodeType":"VariableDeclaration","src":"632:20:104","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"647:5:104","scope":73646,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73299,"name":"uint256","nodeType":"ElementaryTypeName","src":"632:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":73305,"nodeType":"VariableDeclaration","src":"659:49:104","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"693:15:104","scope":73646,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73292_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":73304,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":73301,"name":"address","nodeType":"ElementaryTypeName","src":"667:7:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"659:33:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73292_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":73303,"nodeType":"UserDefinedTypeName","pathNode":{"id":73302,"name":"CommunityInfo","nameLocations":["678:13:104"],"nodeType":"IdentifierPath","referencedDeclaration":73292,"src":"678:13:104"},"referencedDeclaration":73292,"src":"678:13:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73292_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":73307,"nodeType":"VariableDeclaration","src":"714:33:104","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"729:18:104","scope":73646,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73306,"name":"address","nodeType":"ElementaryTypeName","src":"714:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73309,"nodeType":"VariableDeclaration","src":"753:40:104","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"768:25:104","scope":73646,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73308,"name":"address","nodeType":"ElementaryTypeName","src":"753:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73311,"nodeType":"VariableDeclaration","src":"799:31:104","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"814:16:104","scope":73646,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73310,"name":"address","nodeType":"ElementaryTypeName","src":"799:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73313,"nodeType":"VariableDeclaration","src":"836:38:104","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"851:23:104","scope":73646,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73312,"name":"address","nodeType":"ElementaryTypeName","src":"836:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73317,"nodeType":"EventDefinition","src":"1047:46:104","nodes":[],"anonymous":false,"eventSelector":"bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d","name":"FeeReceiverSet","nameLocation":"1053:14:104","parameters":{"id":73316,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73315,"indexed":false,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"1076:15:104","nodeType":"VariableDeclaration","scope":73317,"src":"1068:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73314,"name":"address","nodeType":"ElementaryTypeName","src":"1068:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1067:25:104"}},{"id":73323,"nodeType":"EventDefinition","src":"1098:66:104","nodes":[],"anonymous":false,"eventSelector":"a1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c","name":"ProtocolFeeSet","nameLocation":"1104:14:104","parameters":{"id":73322,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73319,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1127:10:104","nodeType":"VariableDeclaration","scope":73323,"src":"1119:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73318,"name":"address","nodeType":"ElementaryTypeName","src":"1119:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73321,"indexed":false,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"1147:15:104","nodeType":"VariableDeclaration","scope":73323,"src":"1139:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73320,"name":"uint256","nodeType":"ElementaryTypeName","src":"1139:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1118:45:104"}},{"id":73327,"nodeType":"EventDefinition","src":"1169:51:104","nodes":[],"anonymous":false,"eventSelector":"b4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc29","name":"CommunityCreated","nameLocation":"1175:16:104","parameters":{"id":73326,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73325,"indexed":false,"mutability":"mutable","name":"_registryCommunity","nameLocation":"1200:18:104","nodeType":"VariableDeclaration","scope":73327,"src":"1192:26:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73324,"name":"address","nodeType":"ElementaryTypeName","src":"1192:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1191:28:104"}},{"id":73333,"nodeType":"EventDefinition","src":"1225:62:104","nodes":[],"anonymous":false,"eventSelector":"ecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f62","name":"CommunityValiditySet","nameLocation":"1231:20:104","parameters":{"id":73332,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73329,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1260:10:104","nodeType":"VariableDeclaration","scope":73333,"src":"1252:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73328,"name":"address","nodeType":"ElementaryTypeName","src":"1252:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73331,"indexed":false,"mutability":"mutable","name":"_isValid","nameLocation":"1277:8:104","nodeType":"VariableDeclaration","scope":73333,"src":"1272:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73330,"name":"bool","nodeType":"ElementaryTypeName","src":"1272:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1251:35:104"}},{"id":73337,"nodeType":"ErrorDefinition","src":"1459:43:104","nodes":[],"errorSelector":"f5a6943d","name":"CommunityInvalid","nameLocation":"1465:16:104","parameters":{"id":73336,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73335,"mutability":"mutable","name":"_community","nameLocation":"1490:10:104","nodeType":"VariableDeclaration","scope":73337,"src":"1482:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73334,"name":"address","nodeType":"ElementaryTypeName","src":"1482:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1481:20:104"}},{"id":73339,"nodeType":"ErrorDefinition","src":"1507:28:104","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"1513:19:104","parameters":{"id":73338,"nodeType":"ParameterList","parameters":[],"src":"1532:2:104"}},{"id":73355,"nodeType":"FunctionDefinition","src":"1707:141:104","nodes":[],"body":{"id":73354,"nodeType":"Block","src":"1775:73:104","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":73349,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73344,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73341,"src":"1789:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":73347,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1809: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":73346,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1801:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73345,"name":"address","nodeType":"ElementaryTypeName","src":"1801:7:104","typeDescriptions":{}}},"id":73348,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1801:10:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1789:22:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73353,"nodeType":"IfStatement","src":"1785:56:104","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":73350,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73339,"src":"1820:19:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":73351,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1820:21:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73352,"nodeType":"RevertStatement","src":"1813:28:104"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"1716:18:104","parameters":{"id":73342,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73341,"mutability":"mutable","name":"_address","nameLocation":"1743:8:104","nodeType":"VariableDeclaration","scope":73355,"src":"1735:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73340,"name":"address","nodeType":"ElementaryTypeName","src":"1735:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1734:18:104"},"returnParameters":{"id":73343,"nodeType":"ParameterList","parameters":[],"src":"1775:0:104"},"scope":73646,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":73367,"nodeType":"FunctionDefinition","src":"1854:136:104","nodes":[],"body":{"id":73366,"nodeType":"Block","src":"1937:53:104","nodes":[],"statements":[{"expression":{"id":73364,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73362,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73309,"src":"1947:25:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73363,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73357,"src":"1975:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1947:36:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73365,"nodeType":"ExpressionStatement","src":"1947:36:104"}]},"functionSelector":"5decae02","implemented":true,"kind":"function","modifiers":[{"id":73360,"kind":"modifierInvocation","modifierName":{"id":73359,"name":"onlyOwner","nameLocations":["1927:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"1927:9:104"},"nodeType":"ModifierInvocation","src":"1927:9:104"}],"name":"setRegistryCommunityTemplate","nameLocation":"1863:28:104","parameters":{"id":73358,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73357,"mutability":"mutable","name":"template","nameLocation":"1900:8:104","nodeType":"VariableDeclaration","scope":73367,"src":"1892:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73356,"name":"address","nodeType":"ElementaryTypeName","src":"1892:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1891:18:104"},"returnParameters":{"id":73361,"nodeType":"ParameterList","parameters":[],"src":"1937:0:104"},"scope":73646,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":73379,"nodeType":"FunctionDefinition","src":"1996:118:104","nodes":[],"body":{"id":73378,"nodeType":"Block","src":"2070:44:104","nodes":[],"statements":[{"expression":{"id":73376,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73374,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73311,"src":"2080:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73375,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73369,"src":"2099:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2080:27:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73377,"nodeType":"ExpressionStatement","src":"2080:27:104"}]},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":73372,"kind":"modifierInvocation","modifierName":{"id":73371,"name":"onlyOwner","nameLocations":["2060:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"2060:9:104"},"nodeType":"ModifierInvocation","src":"2060:9:104"}],"name":"setStrategyTemplate","nameLocation":"2005:19:104","parameters":{"id":73370,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73369,"mutability":"mutable","name":"template","nameLocation":"2033:8:104","nodeType":"VariableDeclaration","scope":73379,"src":"2025:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73368,"name":"address","nodeType":"ElementaryTypeName","src":"2025:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2024:18:104"},"returnParameters":{"id":73373,"nodeType":"ParameterList","parameters":[],"src":"2070:0:104"},"scope":73646,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":73391,"nodeType":"FunctionDefinition","src":"2120:132:104","nodes":[],"body":{"id":73390,"nodeType":"Block","src":"2201:51:104","nodes":[],"statements":[{"expression":{"id":73388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73386,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73313,"src":"2211:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73387,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73381,"src":"2237:8:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2211:34:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73389,"nodeType":"ExpressionStatement","src":"2211:34:104"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":73384,"kind":"modifierInvocation","modifierName":{"id":73383,"name":"onlyOwner","nameLocations":["2191:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"2191:9:104"},"nodeType":"ModifierInvocation","src":"2191:9:104"}],"name":"setCollateralVaultTemplate","nameLocation":"2129:26:104","parameters":{"id":73382,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73381,"mutability":"mutable","name":"template","nameLocation":"2164:8:104","nodeType":"VariableDeclaration","scope":73391,"src":"2156:16:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73380,"name":"address","nodeType":"ElementaryTypeName","src":"2156:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2155:18:104"},"returnParameters":{"id":73385,"nodeType":"ParameterList","parameters":[],"src":"2201:0:104"},"scope":73646,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":73449,"nodeType":"FunctionDefinition","src":"2258:780:104","nodes":[],"body":{"id":73448,"nodeType":"Block","src":"2485:553:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":73409,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73393,"src":"2512:6:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":73406,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"2495:5:104","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryFactoryV0_0_$73646_$","typeString":"type(contract super RegistryFactoryV0_0)"}},"id":73408,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2501:10:104","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":70932,"src":"2495:16:104","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73410,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2495:24:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73411,"nodeType":"ExpressionStatement","src":"2495:24:104"},{"expression":{"id":73414,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73412,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73300,"src":"2529:5:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":73413,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2537:1:104","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2529:9:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73415,"nodeType":"ExpressionStatement","src":"2529:9:104"},{"expression":{"arguments":[{"id":73417,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73395,"src":"2567:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73416,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73355,"src":"2548:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73418,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2548:39:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73419,"nodeType":"ExpressionStatement","src":"2548:39:104"},{"expression":{"arguments":[{"id":73421,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73397,"src":"2616:26:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73420,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73355,"src":"2597:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73422,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2597:46:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73423,"nodeType":"ExpressionStatement","src":"2597:46:104"},{"expression":{"arguments":[{"id":73425,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73401,"src":"2672:24:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73424,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73355,"src":"2653:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73426,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2653:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73427,"nodeType":"ExpressionStatement","src":"2653:44:104"},{"expression":{"id":73430,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73428,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73307,"src":"2707:18:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73429,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73395,"src":"2728:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2707:40:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73431,"nodeType":"ExpressionStatement","src":"2707:40:104"},{"expression":{"id":73434,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73432,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73309,"src":"2757:25:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73433,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73397,"src":"2785:26:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2757:54:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73435,"nodeType":"ExpressionStatement","src":"2757:54:104"},{"expression":{"id":73438,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73436,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73311,"src":"2821:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73437,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73399,"src":"2840:17:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2821:36:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73439,"nodeType":"ExpressionStatement","src":"2821:36:104"},{"expression":{"id":73442,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73440,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73313,"src":"2867:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73441,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73401,"src":"2893:24:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2867:50:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73443,"nodeType":"ExpressionStatement","src":"2867:50:104"},{"eventCall":{"arguments":[{"id":73445,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73395,"src":"2947:19:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73444,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73317,"src":"2932:14:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73446,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2932:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73447,"nodeType":"EmitStatement","src":"2927:40:104"}]},"functionSelector":"1459457a","implemented":true,"kind":"function","modifiers":[{"id":73404,"kind":"modifierInvocation","modifierName":{"id":73403,"name":"initializer","nameLocations":["2473:11:104"],"nodeType":"IdentifierPath","referencedDeclaration":52351,"src":"2473:11:104"},"nodeType":"ModifierInvocation","src":"2473:11:104"}],"name":"initialize","nameLocation":"2267:10:104","parameters":{"id":73402,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73393,"mutability":"mutable","name":"_owner","nameLocation":"2295:6:104","nodeType":"VariableDeclaration","scope":73449,"src":"2287:14:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73392,"name":"address","nodeType":"ElementaryTypeName","src":"2287:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73395,"mutability":"mutable","name":"_gardensFeeReceiver","nameLocation":"2319:19:104","nodeType":"VariableDeclaration","scope":73449,"src":"2311:27:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73394,"name":"address","nodeType":"ElementaryTypeName","src":"2311:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73397,"mutability":"mutable","name":"_registryCommunityTemplate","nameLocation":"2356:26:104","nodeType":"VariableDeclaration","scope":73449,"src":"2348:34:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73396,"name":"address","nodeType":"ElementaryTypeName","src":"2348:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73399,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"2400:17:104","nodeType":"VariableDeclaration","scope":73449,"src":"2392:25:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73398,"name":"address","nodeType":"ElementaryTypeName","src":"2392:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73401,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"2435:24:104","nodeType":"VariableDeclaration","scope":73449,"src":"2427:32:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73400,"name":"address","nodeType":"ElementaryTypeName","src":"2427:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2277:188:104"},"returnParameters":{"id":73405,"nodeType":"ParameterList","parameters":[],"src":"2485:0:104"},"scope":73646,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":73532,"nodeType":"FunctionDefinition","src":"3044:912:104","nodes":[],"body":{"id":73531,"nodeType":"Block","src":"3206:750:104","nodes":[],"statements":[{"expression":{"id":73462,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":73457,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73452,"src":"3216:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":73459,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3223:6:104","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":71056,"src":"3216:13:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73461,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"3232:7:104","subExpression":{"id":73460,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73300,"src":"3232:5:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3216:23:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73463,"nodeType":"ExpressionStatement","src":"3216:23:104"},{"expression":{"id":73471,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":73464,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73452,"src":"3249:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":73466,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3256:16:104","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":71058,"src":"3249:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":73469,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3283:4:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$73646","typeString":"contract RegistryFactoryV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$73646","typeString":"contract RegistryFactoryV0_0"}],"id":73468,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3275:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73467,"name":"address","nodeType":"ElementaryTypeName","src":"3275:7:104","typeDescriptions":{}}},"id":73470,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3275:13:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3249:39:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73472,"nodeType":"ExpressionStatement","src":"3249:39:104"},{"assignments":[73475],"declarations":[{"constant":false,"id":73475,"mutability":"mutable","name":"proxy","nameLocation":"3312:5:104","nodeType":"VariableDeclaration","scope":73531,"src":"3299:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"},"typeName":{"id":73474,"nodeType":"UserDefinedTypeName","pathNode":{"id":73473,"name":"ERC1967Proxy","nameLocations":["3299:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"3299:12:104"},"referencedDeclaration":54318,"src":"3299:12:104","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":73495,"initialValue":{"arguments":[{"arguments":[{"id":73481,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73309,"src":"3358:25:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73480,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3350:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73479,"name":"address","nodeType":"ElementaryTypeName","src":"3350:7:104","typeDescriptions":{}}},"id":73482,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3350:34:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":73485,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73276,"src":"3438:21:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73276_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":73486,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3460:10:104","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":71771,"src":"3438:32:104","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":73487,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3471:8:104","memberName":"selector","nodeType":"MemberAccess","src":"3438:41:104","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":73488,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73452,"src":"3497:6:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":73489,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73311,"src":"3521:16:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73490,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73313,"src":"3555:23:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":73491,"name":"proxyOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70942,"src":"3596:10:104","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":73492,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3596:12:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":73483,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3398:3:104","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":73484,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3402:18:104","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"3398:22:104","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":73493,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3398:224: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":73478,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"3320:16:104","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$54318_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":73477,"nodeType":"UserDefinedTypeName","pathNode":{"id":73476,"name":"ERC1967Proxy","nameLocations":["3324:12:104"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"3324:12:104"},"referencedDeclaration":54318,"src":"3324:12:104","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}},"id":73494,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3320:312:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"3299:333:104"},{"assignments":[73498],"declarations":[{"constant":false,"id":73498,"mutability":"mutable","name":"registryCommunity","nameLocation":"3665:17:104","nodeType":"VariableDeclaration","scope":73531,"src":"3643:39:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":73497,"nodeType":"UserDefinedTypeName","pathNode":{"id":73496,"name":"RegistryCommunityV0_0","nameLocations":["3643:21:104"],"nodeType":"IdentifierPath","referencedDeclaration":73276,"src":"3643:21:104"},"referencedDeclaration":73276,"src":"3643:21:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":73508,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":73504,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73475,"src":"3723:5:104","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}],"id":73503,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3715:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73502,"name":"address","nodeType":"ElementaryTypeName","src":"3715:7:104","typeDescriptions":{}}},"id":73505,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3715:14:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73501,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3707:8:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":73500,"name":"address","nodeType":"ElementaryTypeName","src":"3707:8:104","stateMutability":"payable","typeDescriptions":{}}},"id":73506,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3707:23:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":73499,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73276,"src":"3685:21:104","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73276_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":73507,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3685:46:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"3643:88:104"},{"expression":{"id":73517,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73509,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73305,"src":"3791:15:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73292_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73514,"indexExpression":{"arguments":[{"id":73512,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73498,"src":"3815:17:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}],"id":73511,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3807:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73510,"name":"address","nodeType":"ElementaryTypeName","src":"3807:7:104","typeDescriptions":{}}},"id":73513,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3807:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3791:43:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73292_storage","typeString":"struct CommunityInfo storage ref"}},"id":73515,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3835:5:104","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":73291,"src":"3791:49:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":73516,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3843:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"3791:56:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73518,"nodeType":"ExpressionStatement","src":"3791:56:104"},{"eventCall":{"arguments":[{"arguments":[{"id":73522,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73498,"src":"3887:17:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}],"id":73521,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3879:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73520,"name":"address","nodeType":"ElementaryTypeName","src":"3879:7:104","typeDescriptions":{}}},"id":73523,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3879:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73519,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73327,"src":"3862:16:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73524,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3862:44:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73525,"nodeType":"EmitStatement","src":"3857:49:104"},{"expression":{"arguments":[{"id":73528,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73498,"src":"3931:17:104","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}],"id":73527,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3923:7:104","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73526,"name":"address","nodeType":"ElementaryTypeName","src":"3923:7:104","typeDescriptions":{}}},"id":73529,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3923:26:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":73456,"id":73530,"nodeType":"Return","src":"3916:33:104"}]},"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"3053:14:104","parameters":{"id":73453,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73452,"mutability":"mutable","name":"params","nameLocation":"3113:6:104","nodeType":"VariableDeclaration","scope":73532,"src":"3068:51:104","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":73451,"nodeType":"UserDefinedTypeName","pathNode":{"id":73450,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["3068:37:104"],"nodeType":"IdentifierPath","referencedDeclaration":71072,"src":"3068:37:104"},"referencedDeclaration":71072,"src":"3068:37:104","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"3067:53:104"},"returnParameters":{"id":73456,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73455,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"3177:23:104","nodeType":"VariableDeclaration","scope":73532,"src":"3169:31:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73454,"name":"address","nodeType":"ElementaryTypeName","src":"3169:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3168:33:104"},"scope":73646,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73552,"nodeType":"FunctionDefinition","src":"3962:222:104","nodes":[],"body":{"id":73551,"nodeType":"Block","src":"4040:144:104","nodes":[],"statements":[{"expression":{"arguments":[{"id":73540,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73534,"src":"4069:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73539,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73355,"src":"4050:18:104","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73541,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4050:35:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73542,"nodeType":"ExpressionStatement","src":"4050:35:104"},{"expression":{"id":73545,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73543,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73307,"src":"4095:18:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73544,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73534,"src":"4116:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4095:36:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73546,"nodeType":"ExpressionStatement","src":"4095:36:104"},{"eventCall":{"arguments":[{"id":73548,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73534,"src":"4161:15:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73547,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73317,"src":"4146:14:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73549,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4146:31:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73550,"nodeType":"EmitStatement","src":"4141:36:104"}]},"functionSelector":"8279c7db","implemented":true,"kind":"function","modifiers":[{"id":73537,"kind":"modifierInvocation","modifierName":{"id":73536,"name":"onlyOwner","nameLocations":["4030:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"4030:9:104"},"nodeType":"ModifierInvocation","src":"4030:9:104"}],"name":"setReceiverAddress","nameLocation":"3971:18:104","parameters":{"id":73535,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73534,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"3998:15:104","nodeType":"VariableDeclaration","scope":73552,"src":"3990:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73533,"name":"address","nodeType":"ElementaryTypeName","src":"3990:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3989:25:104"},"returnParameters":{"id":73538,"nodeType":"ParameterList","parameters":[],"src":"4040:0:104"},"scope":73646,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73560,"nodeType":"FunctionDefinition","src":"4190:115:104","nodes":[],"body":{"id":73559,"nodeType":"Block","src":"4263:42:104","nodes":[],"statements":[{"expression":{"id":73557,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73307,"src":"4280:18:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":73556,"id":73558,"nodeType":"Return","src":"4273:25:104"}]},"functionSelector":"987435be","implemented":true,"kind":"function","modifiers":[],"name":"getGardensFeeReceiver","nameLocation":"4199:21:104","parameters":{"id":73553,"nodeType":"ParameterList","parameters":[],"src":"4220:2:104"},"returnParameters":{"id":73556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73555,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":73560,"src":"4254:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73554,"name":"address","nodeType":"ElementaryTypeName","src":"4254:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4253:9:104"},"scope":73646,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":73582,"nodeType":"FunctionDefinition","src":"4311:218:104","nodes":[],"body":{"id":73581,"nodeType":"Block","src":"4405:124:104","nodes":[],"statements":[{"expression":{"id":73574,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73569,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73305,"src":"4415:15:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73292_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73571,"indexExpression":{"id":73570,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73562,"src":"4431:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4415:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73292_storage","typeString":"struct CommunityInfo storage ref"}},"id":73572,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4443:3:104","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":73289,"src":"4415:31:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73573,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73564,"src":"4449:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4415:49:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73575,"nodeType":"ExpressionStatement","src":"4415:49:104"},{"eventCall":{"arguments":[{"id":73577,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73562,"src":"4494:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73578,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73564,"src":"4506:15:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":73576,"name":"ProtocolFeeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73323,"src":"4479:14:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":73579,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4479:43:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73580,"nodeType":"EmitStatement","src":"4474:48:104"}]},"functionSelector":"b5b3ca2c","implemented":true,"kind":"function","modifiers":[{"id":73567,"kind":"modifierInvocation","modifierName":{"id":73566,"name":"onlyOwner","nameLocations":["4395:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"4395:9:104"},"nodeType":"ModifierInvocation","src":"4395:9:104"}],"name":"setProtocolFee","nameLocation":"4320:14:104","parameters":{"id":73565,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73562,"mutability":"mutable","name":"_community","nameLocation":"4343:10:104","nodeType":"VariableDeclaration","scope":73582,"src":"4335:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73561,"name":"address","nodeType":"ElementaryTypeName","src":"4335:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73564,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"4363:15:104","nodeType":"VariableDeclaration","scope":73582,"src":"4355:23:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73563,"name":"uint256","nodeType":"ElementaryTypeName","src":"4355:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4334:45:104"},"returnParameters":{"id":73568,"nodeType":"ParameterList","parameters":[],"src":"4405:0:104"},"scope":73646,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73604,"nodeType":"FunctionDefinition","src":"4535:208:104","nodes":[],"body":{"id":73603,"nodeType":"Block","src":"4625:118:104","nodes":[],"statements":[{"expression":{"id":73596,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73591,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73305,"src":"4635:15:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73292_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73593,"indexExpression":{"id":73592,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73584,"src":"4651:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4635:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73292_storage","typeString":"struct CommunityInfo storage ref"}},"id":73594,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4663:5:104","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":73291,"src":"4635:33:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73595,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73586,"src":"4671:8:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"4635:44:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73597,"nodeType":"ExpressionStatement","src":"4635:44:104"},{"eventCall":{"arguments":[{"id":73599,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73584,"src":"4715:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73600,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73586,"src":"4727:8:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":73598,"name":"CommunityValiditySet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73333,"src":"4694:20:104","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_bool_$returns$__$","typeString":"function (address,bool)"}},"id":73601,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4694:42:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73602,"nodeType":"EmitStatement","src":"4689:47:104"}]},"functionSelector":"5a2c8ace","implemented":true,"kind":"function","modifiers":[{"id":73589,"kind":"modifierInvocation","modifierName":{"id":73588,"name":"onlyOwner","nameLocations":["4615:9:104"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"4615:9:104"},"nodeType":"ModifierInvocation","src":"4615:9:104"}],"name":"setCommunityValidity","nameLocation":"4544:20:104","parameters":{"id":73587,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73584,"mutability":"mutable","name":"_community","nameLocation":"4573:10:104","nodeType":"VariableDeclaration","scope":73604,"src":"4565:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73583,"name":"address","nodeType":"ElementaryTypeName","src":"4565:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73586,"mutability":"mutable","name":"_isValid","nameLocation":"4590:8:104","nodeType":"VariableDeclaration","scope":73604,"src":"4585:13:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73585,"name":"bool","nodeType":"ElementaryTypeName","src":"4585:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4564:35:104"},"returnParameters":{"id":73590,"nodeType":"ParameterList","parameters":[],"src":"4625:0:104"},"scope":73646,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73617,"nodeType":"FunctionDefinition","src":"4749:144:104","nodes":[],"body":{"id":73616,"nodeType":"Block","src":"4836:57:104","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":73611,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73305,"src":"4853:15:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73292_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73613,"indexExpression":{"id":73612,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73606,"src":"4869:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4853:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73292_storage","typeString":"struct CommunityInfo storage ref"}},"id":73614,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4881:5:104","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":73291,"src":"4853:33:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":73610,"id":73615,"nodeType":"Return","src":"4846:40:104"}]},"functionSelector":"f5016b5e","implemented":true,"kind":"function","modifiers":[],"name":"getCommunityValidity","nameLocation":"4758:20:104","parameters":{"id":73607,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73606,"mutability":"mutable","name":"_community","nameLocation":"4787:10:104","nodeType":"VariableDeclaration","scope":73617,"src":"4779:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73605,"name":"address","nodeType":"ElementaryTypeName","src":"4779:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4778:20:104"},"returnParameters":{"id":73610,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73609,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":73617,"src":"4830:4:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73608,"name":"bool","nodeType":"ElementaryTypeName","src":"4830:4:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4829:6:104"},"scope":73646,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":73641,"nodeType":"FunctionDefinition","src":"4899:249:104","nodes":[],"body":{"id":73640,"nodeType":"Block","src":"4983:165:104","nodes":[],"statements":[{"condition":{"id":73628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"4997:34:104","subExpression":{"expression":{"baseExpression":{"id":73624,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73305,"src":"4998:15:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73292_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73626,"indexExpression":{"id":73625,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73619,"src":"5014:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4998:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73292_storage","typeString":"struct CommunityInfo storage ref"}},"id":73627,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5026:5:104","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":73291,"src":"4998:33:104","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73634,"nodeType":"IfStatement","src":"4993:100:104","trueBody":{"id":73633,"nodeType":"Block","src":"5033:60:104","statements":[{"errorCall":{"arguments":[{"id":73630,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73619,"src":"5071:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73629,"name":"CommunityInvalid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73337,"src":"5054:16:104","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5054:28:104","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73632,"nodeType":"RevertStatement","src":"5047:35:104"}]}},{"expression":{"expression":{"baseExpression":{"id":73635,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73305,"src":"5110:15:104","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73292_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73637,"indexExpression":{"id":73636,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73619,"src":"5126:10:104","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5110:27:104","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73292_storage","typeString":"struct CommunityInfo storage ref"}},"id":73638,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5138:3:104","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":73289,"src":"5110:31:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":73623,"id":73639,"nodeType":"Return","src":"5103:38:104"}]},"functionSelector":"0a992e0c","implemented":true,"kind":"function","modifiers":[],"name":"getProtocolFee","nameLocation":"4908:14:104","parameters":{"id":73620,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73619,"mutability":"mutable","name":"_community","nameLocation":"4931:10:104","nodeType":"VariableDeclaration","scope":73641,"src":"4923:18:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73618,"name":"address","nodeType":"ElementaryTypeName","src":"4923:7:104","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4922:20:104"},"returnParameters":{"id":73623,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73622,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":73641,"src":"4974:7:104","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73621,"name":"uint256","nodeType":"ElementaryTypeName","src":"4974:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4973:9:104"},"scope":73646,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":73645,"nodeType":"VariableDeclaration","src":"5154:25:104","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"5174:5:104","scope":73646,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73642,"name":"uint256","nodeType":"ElementaryTypeName","src":"5154:7:104","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73644,"length":{"hexValue":"3530","id":73643,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5162:2:104","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"5154:11:104","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":73294,"name":"ProxyOwnableUpgrader","nameLocations":["561:20:104"],"nodeType":"IdentifierPath","referencedDeclaration":71005,"src":"561:20:104"},"id":73295,"nodeType":"InheritanceSpecifier","src":"561:20:104"}],"canonicalName":"RegistryFactoryV0_0","contractDependencies":[54318],"contractKind":"contract","documentation":{"id":73293,"nodeType":"StructuredDocumentation","src":"480:49:104","text":"@custom:oz-upgrades-from RegistryFactoryV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[73646,71005,54969,54622,54271,54281,52200,52993,52449],"name":"RegistryFactoryV0_0","nameLocation":"538:19:104","scope":73647,"usedErrors":[70920,73337,73339]}],"license":"AGPL-3.0-only"},"id":104} \ No newline at end of file +{"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":"proxyOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"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":"0x60a080604052346100315730608052611d3290816100378239608051818181610a9701528181610b9a0152610e330152f35b600080fdfe60808060405260043610156200001457600080fd5b60003560e01c908163025313a214620013525750806302c1d0b114620013275780630a992e0c14620012b65780631459457a14620010ca5780631b71f0e414620010815780633659cfe61462000e0a5780634f1ef2861462000b4557806352d1902d1462000a825780635a2c8ace14620009f45780635c94e4d214620009c95780635decae021462000980578063715018a6146200093057806377122d5614620009055780638279c7db14620008995780638da5cb5b1462000868578063987435be1462000761578063affed0e01462000848578063b0d3713a14620007ff578063b5b3ca2c146200078c578063b8bed9011462000761578063beb331a31462000334578063c4d66de814620002a4578063f2fde38b146200020c578063f5016b5e14620001c65763ffa1ad74146200014c57600080fd5b34620001c1576000366003190112620001c15760408051908101906001600160401b03821181831017620001ab57620001a79160405260038152620302e360ec1b60208201526040519182916020835260208301906200145d565b0390f35b634e487b7160e01b600052604160045260246000fd5b600080fd5b34620001c1576020366003190112620001c1576001600160a01b03620001eb62001378565b166000526066602052602060ff600160406000200154166040519015158152f35b34620001c1576020366003190112620001c1576200022962001378565b620002336200149f565b6001600160a01b0381161562000250576200024e9062001501565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34620001c1576020366003190112620001c157620002c162001378565b60ff60005460081c1615620002db576200024e9062001501565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b34620001c157600319602036820112620001c1576001600160401b0360043511620001c1576101808160043536030112620001c1576040519061018082016001600160401b03811183821017620001ab57604052620003986004356004016200138f565b8252600435602401356001600160a01b0381168103620001c1576020830152600435604481013560408401526064810135606084015260848101356080840152620003e69060a4016200138f565b60a0830152620003fb60c4600435016200138f565b60c083015260043560e40135906001600160401b038211620001c157604090826004350136030112620001c15760408051919082018083116001600160401b0390911117620001ab57604082810190526004803582019081013583526001600160401b0360249091013511620001c1576200048690369060048035909101602481013501016200143c565b602082015260e082015260043561010401356001600160a01b0381168103620001c15761010082015260043561012401356001600160401b038111620001c157620004d99060043691813501016200143c565b61012082015260043561014401358015159003620001c1576004356101448101356101408301526001600160401b036101649091013511620001c1576200052c366004803561016481013501016200143c565b61016082015260655460001981146200074b576001810160655560808281019182523060a08401908152606854606954606a5460335460408051633419635560e01b602080830191909152602482019890985289516001600160a01b0390811660a4830152888b0151811660c4830152828b015160e483015260608b015161010483015298516101248201529551881661014487015260c0890151881661016487015260e08901516101806101848801528051610224880152909601516102448601969096529286169693956200069d9587959382169482169392909116916200067e9162000621906102648801906200145d565b6101008201516001600160a01b03166101a488015261012082015187820360a3199081016101c48a015291610160916200065c91906200145d565b9261014081015115156101e48a0152015190878303016102048801526200145d565b9260448501526064840152608483015203601f198101835282620013c0565b6040519161041080840192906001600160401b03841185851017620001ab578493620006dc93604092620017cd8739815281602082015201906200145d565b03906000f080156200073f5760209060018060a01b031680600052606682526001604060002001600160ff198254161790557fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2982604051838152a1604051908152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052601160045260246000fd5b34620001c1576000366003190112620001c1576067546040516001600160a01b039091168152602090f35b34620001c1576040366003190112620001c1577fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c6040620007cc62001378565b60243590620007da6200149f565b60018060a01b03169081600052606660205280836000205582519182526020820152a1005b34620001c1576020366003190112620001c1576200081c62001378565b620008266200149f565b606a80546001600160a01b0319166001600160a01b0392909216919091179055005b34620001c1576000366003190112620001c1576020606554604051908152f35b34620001c1576000366003190112620001c15760206200088762001710565b6040516001600160a01b039091168152f35b34620001c1576020366003190112620001c15760008051602062001c7d8339815191526020620008c862001378565b620008d26200149f565b620008dd81620017a9565b606780546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b34620001c1576000366003190112620001c157606a546040516001600160a01b039091168152602090f35b34620001c1576000366003190112620001c1576200094d6200149f565b603380546001600160a01b031981169091556000906001600160a01b031660008051602062001c3d8339815191528280a3005b34620001c1576020366003190112620001c1576200099d62001378565b620009a76200149f565b606880546001600160a01b0319166001600160a01b0392909216919091179055005b34620001c1576000366003190112620001c1576069546040516001600160a01b039091168152602090f35b34620001c1576040366003190112620001c15762000a1162001378565b60243590811515809203620001c1577fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f629160409162000a4f6200149f565b60018060a01b0316908160005260666020526001836000200160ff1981541660ff831617905582519182526020820152a1005b34620001c1576000366003190112620001c1577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300362000adf57602060405160008051602062001c1d8339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b6040366003190112620001c15762000b5c62001378565b6024356001600160401b038111620001c15736602382011215620001c15762000b9090369060248160040135910162001400565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919062000bcb3084141562001539565b62000beb60008051602062001c1d8339815191529382855416146200158a565b62000bf562001710565b813391160362000de15760008051602062001bdd8339815191525460ff161562000c27575050506200024e90620015db565b8316604051926352d1902d60e01b84526020938481600481865afa6000918162000dac575b5062000c9d5760405162461bcd60e51b815260048101869052602e602482015260008051602062001cdd83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9392930362000d665762000cb184620015db565b60008051602062001c5d833981519152600080a281511580159062000d5d575b62000cd857005b6200024e926000806040519462000cef86620013a4565b6027865260008051602062001cbd83398151915285870152660819985a5b195960ca1b60408701528481519101845af4903d1562000d53573d62000d3381620013e4565b9062000d436040519283620013c0565b8152600081943d92013e6200166d565b606092506200166d565b50600162000cd1565b60405162461bcd60e51b8152600481018390526029602482015260008051602062001c9d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508581813d831162000dd9575b62000dc78183620013c0565b81010312620001c15751908762000c4c565b503d62000dbb565b60449062000dee62001710565b60405163163678e960e01b815233600482015291166024820152fd5b34620001c157602080600319360112620001c15762000e2862001378565b6001600160a01b03917f0000000000000000000000000000000000000000000000000000000000000000831662000e623082141562001539565b62000e8260008051602062001c1d8339815191529185835416146200158a565b62000e8c62001710565b84339116036200107457604051828101949091906001600160401b03861183871017620001ab57856040526000835260ff60008051602062001bdd833981519152541660001462000ee757505050506200024e9150620015db565b8492939416906040516352d1902d60e01b81528581600481865afa600091816200103f575b5062000f5d5760405162461bcd60e51b815260048101879052602e602482015260008051602062001cdd83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9493940362000ff95762000f7182620015db565b60008051602062001c5d833981519152600080a282511580159062000ff0575b62000f9857005b6000806200024e956040519562000faf87620013a4565b6027875260008051602062001cbd83398151915286880152660819985a5b195960ca1b60408801525190845af4903d1562000d53573d62000d3381620013e4565b50600062000f91565b60405162461bcd60e51b8152600481018490526029602482015260008051602062001c9d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d83116200106c575b6200105a8183620013c0565b81010312620001c15751908862000f0c565b503d6200104e565b60448462000dee62001710565b34620001c1576020366003190112620001c1576200109e62001378565b620010a86200149f565b606980546001600160a01b0319166001600160a01b0392909216919091179055005b34620001c15760a0366003190112620001c157620010e762001378565b6001600160a01b039060243590828216808303620001c15760443591848316808403620001c157606435868116809103620001c15760843596871692838803620001c1576000549760ff8960081c16159889809a620012a8575b80156200128f575b15620012335760ff1981166001176000558962001220575b5060ff60005460081c1615620002db57620011a7602097620011a760008051602062001c7d8339815191529a6200119c620011ad9662001501565b6000606555620017a9565b620017a9565b60018060a01b03199184836067541617606755826068541617606855816069541617606955606a541617606a55604051908152a1620011e857005b61ff0019600054166000557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a1005b61ffff1916610101176000558962001161565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b158015620011495750600160ff82161462001149565b50600160ff82161062001141565b34620001c1576020366003190112620001c1576001600160a01b03620012db62001378565b1680600052606660205260ff60016040600020015416156200130f5760005260666020526020604060002054604051908152f35b6024906040519063f5a6943d60e01b82526004820152fd5b34620001c1576000366003190112620001c1576068546040516001600160a01b039091168152602090f35b34620001c1576000366003190112620001c1576033546001600160a01b03168152602090f35b600435906001600160a01b0382168203620001c157565b35906001600160a01b0382168203620001c157565b606081019081106001600160401b03821117620001ab57604052565b601f909101601f19168101906001600160401b03821190821017620001ab57604052565b6001600160401b038111620001ab57601f01601f191660200190565b9291926200140e82620013e4565b916200141e6040519384620013c0565b829481845281830111620001c1578281602093846000960137010152565b9080601f83011215620001c1578160206200145a9335910162001400565b90565b919082519283825260005b8481106200148a575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520162001468565b620014a962001710565b336001600160a01b0390911603620014bd57565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062001c3d833981519152600080a3565b156200154157565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001bfd83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b156200159257565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001bfd83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b15620016125760008051602062001c1d83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b91929015620016d2575081511562001683575090565b3b156200168d5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b825190915015620016e65750805190602001fd5b60405162461bcd60e51b8152602060048201529081906200170c9060248301906200145d565b0390fd5b6033546001600160a01b0390811690813b6200172a575090565b604051638da5cb5b60e01b8152602081600481865afa9182916000936200175c575b505062001757575090565b905090565b602093919293813d8211620017a0575b816200177b60209383620013c0565b810103126200179c575191821682036200179957509038806200174c565b80fd5b5080fd5b3d91506200176c565b6001600160a01b031615620017ba57565b6040516303988b8160e61b8152600490fdfe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c634300081300334910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3bbdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a26469706673582212205b4ad4994faa997ed5c8a41cc79c0e9a7b8bb350c308a4501f9c80e17fbf85a864736f6c63430008130033","sourceMap":"529:4653:105:-:0;;;;;;;1088:4:61;1080:13;;529:4653:105;;;;;;1080:13:61;529:4653:105;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60808060405260043610156200001457600080fd5b60003560e01c908163025313a214620013525750806302c1d0b114620013275780630a992e0c14620012b65780631459457a14620010ca5780631b71f0e414620010815780633659cfe61462000e0a5780634f1ef2861462000b4557806352d1902d1462000a825780635a2c8ace14620009f45780635c94e4d214620009c95780635decae021462000980578063715018a6146200093057806377122d5614620009055780638279c7db14620008995780638da5cb5b1462000868578063987435be1462000761578063affed0e01462000848578063b0d3713a14620007ff578063b5b3ca2c146200078c578063b8bed9011462000761578063beb331a31462000334578063c4d66de814620002a4578063f2fde38b146200020c578063f5016b5e14620001c65763ffa1ad74146200014c57600080fd5b34620001c1576000366003190112620001c15760408051908101906001600160401b03821181831017620001ab57620001a79160405260038152620302e360ec1b60208201526040519182916020835260208301906200145d565b0390f35b634e487b7160e01b600052604160045260246000fd5b600080fd5b34620001c1576020366003190112620001c1576001600160a01b03620001eb62001378565b166000526066602052602060ff600160406000200154166040519015158152f35b34620001c1576020366003190112620001c1576200022962001378565b620002336200149f565b6001600160a01b0381161562000250576200024e9062001501565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34620001c1576020366003190112620001c157620002c162001378565b60ff60005460081c1615620002db576200024e9062001501565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b34620001c157600319602036820112620001c1576001600160401b0360043511620001c1576101808160043536030112620001c1576040519061018082016001600160401b03811183821017620001ab57604052620003986004356004016200138f565b8252600435602401356001600160a01b0381168103620001c1576020830152600435604481013560408401526064810135606084015260848101356080840152620003e69060a4016200138f565b60a0830152620003fb60c4600435016200138f565b60c083015260043560e40135906001600160401b038211620001c157604090826004350136030112620001c15760408051919082018083116001600160401b0390911117620001ab57604082810190526004803582019081013583526001600160401b0360249091013511620001c1576200048690369060048035909101602481013501016200143c565b602082015260e082015260043561010401356001600160a01b0381168103620001c15761010082015260043561012401356001600160401b038111620001c157620004d99060043691813501016200143c565b61012082015260043561014401358015159003620001c1576004356101448101356101408301526001600160401b036101649091013511620001c1576200052c366004803561016481013501016200143c565b61016082015260655460001981146200074b576001810160655560808281019182523060a08401908152606854606954606a5460335460408051633419635560e01b602080830191909152602482019890985289516001600160a01b0390811660a4830152888b0151811660c4830152828b015160e483015260608b015161010483015298516101248201529551881661014487015260c0890151881661016487015260e08901516101806101848801528051610224880152909601516102448601969096529286169693956200069d9587959382169482169392909116916200067e9162000621906102648801906200145d565b6101008201516001600160a01b03166101a488015261012082015187820360a3199081016101c48a015291610160916200065c91906200145d565b9261014081015115156101e48a0152015190878303016102048801526200145d565b9260448501526064840152608483015203601f198101835282620013c0565b6040519161041080840192906001600160401b03841185851017620001ab578493620006dc93604092620017cd8739815281602082015201906200145d565b03906000f080156200073f5760209060018060a01b031680600052606682526001604060002001600160ff198254161790557fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2982604051838152a1604051908152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052601160045260246000fd5b34620001c1576000366003190112620001c1576067546040516001600160a01b039091168152602090f35b34620001c1576040366003190112620001c1577fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c6040620007cc62001378565b60243590620007da6200149f565b60018060a01b03169081600052606660205280836000205582519182526020820152a1005b34620001c1576020366003190112620001c1576200081c62001378565b620008266200149f565b606a80546001600160a01b0319166001600160a01b0392909216919091179055005b34620001c1576000366003190112620001c1576020606554604051908152f35b34620001c1576000366003190112620001c15760206200088762001710565b6040516001600160a01b039091168152f35b34620001c1576020366003190112620001c15760008051602062001c7d8339815191526020620008c862001378565b620008d26200149f565b620008dd81620017a9565b606780546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b34620001c1576000366003190112620001c157606a546040516001600160a01b039091168152602090f35b34620001c1576000366003190112620001c1576200094d6200149f565b603380546001600160a01b031981169091556000906001600160a01b031660008051602062001c3d8339815191528280a3005b34620001c1576020366003190112620001c1576200099d62001378565b620009a76200149f565b606880546001600160a01b0319166001600160a01b0392909216919091179055005b34620001c1576000366003190112620001c1576069546040516001600160a01b039091168152602090f35b34620001c1576040366003190112620001c15762000a1162001378565b60243590811515809203620001c1577fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f629160409162000a4f6200149f565b60018060a01b0316908160005260666020526001836000200160ff1981541660ff831617905582519182526020820152a1005b34620001c1576000366003190112620001c1577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300362000adf57602060405160008051602062001c1d8339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b6040366003190112620001c15762000b5c62001378565b6024356001600160401b038111620001c15736602382011215620001c15762000b9090369060248160040135910162001400565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919062000bcb3084141562001539565b62000beb60008051602062001c1d8339815191529382855416146200158a565b62000bf562001710565b813391160362000de15760008051602062001bdd8339815191525460ff161562000c27575050506200024e90620015db565b8316604051926352d1902d60e01b84526020938481600481865afa6000918162000dac575b5062000c9d5760405162461bcd60e51b815260048101869052602e602482015260008051602062001cdd83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9392930362000d665762000cb184620015db565b60008051602062001c5d833981519152600080a281511580159062000d5d575b62000cd857005b6200024e926000806040519462000cef86620013a4565b6027865260008051602062001cbd83398151915285870152660819985a5b195960ca1b60408701528481519101845af4903d1562000d53573d62000d3381620013e4565b9062000d436040519283620013c0565b8152600081943d92013e6200166d565b606092506200166d565b50600162000cd1565b60405162461bcd60e51b8152600481018390526029602482015260008051602062001c9d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508581813d831162000dd9575b62000dc78183620013c0565b81010312620001c15751908762000c4c565b503d62000dbb565b60449062000dee62001710565b60405163163678e960e01b815233600482015291166024820152fd5b34620001c157602080600319360112620001c15762000e2862001378565b6001600160a01b03917f0000000000000000000000000000000000000000000000000000000000000000831662000e623082141562001539565b62000e8260008051602062001c1d8339815191529185835416146200158a565b62000e8c62001710565b84339116036200107457604051828101949091906001600160401b03861183871017620001ab57856040526000835260ff60008051602062001bdd833981519152541660001462000ee757505050506200024e9150620015db565b8492939416906040516352d1902d60e01b81528581600481865afa600091816200103f575b5062000f5d5760405162461bcd60e51b815260048101879052602e602482015260008051602062001cdd83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9493940362000ff95762000f7182620015db565b60008051602062001c5d833981519152600080a282511580159062000ff0575b62000f9857005b6000806200024e956040519562000faf87620013a4565b6027875260008051602062001cbd83398151915286880152660819985a5b195960ca1b60408801525190845af4903d1562000d53573d62000d3381620013e4565b50600062000f91565b60405162461bcd60e51b8152600481018490526029602482015260008051602062001c9d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d83116200106c575b6200105a8183620013c0565b81010312620001c15751908862000f0c565b503d6200104e565b60448462000dee62001710565b34620001c1576020366003190112620001c1576200109e62001378565b620010a86200149f565b606980546001600160a01b0319166001600160a01b0392909216919091179055005b34620001c15760a0366003190112620001c157620010e762001378565b6001600160a01b039060243590828216808303620001c15760443591848316808403620001c157606435868116809103620001c15760843596871692838803620001c1576000549760ff8960081c16159889809a620012a8575b80156200128f575b15620012335760ff1981166001176000558962001220575b5060ff60005460081c1615620002db57620011a7602097620011a760008051602062001c7d8339815191529a6200119c620011ad9662001501565b6000606555620017a9565b620017a9565b60018060a01b03199184836067541617606755826068541617606855816069541617606955606a541617606a55604051908152a1620011e857005b61ff0019600054166000557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a1005b61ffff1916610101176000558962001161565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b158015620011495750600160ff82161462001149565b50600160ff82161062001141565b34620001c1576020366003190112620001c1576001600160a01b03620012db62001378565b1680600052606660205260ff60016040600020015416156200130f5760005260666020526020604060002054604051908152f35b6024906040519063f5a6943d60e01b82526004820152fd5b34620001c1576000366003190112620001c1576068546040516001600160a01b039091168152602090f35b34620001c1576000366003190112620001c1576033546001600160a01b03168152602090f35b600435906001600160a01b0382168203620001c157565b35906001600160a01b0382168203620001c157565b606081019081106001600160401b03821117620001ab57604052565b601f909101601f19168101906001600160401b03821190821017620001ab57604052565b6001600160401b038111620001ab57601f01601f191660200190565b9291926200140e82620013e4565b916200141e6040519384620013c0565b829481845281830111620001c1578281602093846000960137010152565b9080601f83011215620001c1578160206200145a9335910162001400565b90565b919082519283825260005b8481106200148a575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520162001468565b620014a962001710565b336001600160a01b0390911603620014bd57565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062001c3d833981519152600080a3565b156200154157565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001bfd83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b156200159257565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001bfd83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b15620016125760008051602062001c1d83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b91929015620016d2575081511562001683575090565b3b156200168d5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b825190915015620016e65750805190602001fd5b60405162461bcd60e51b8152602060048201529081906200170c9060248301906200145d565b0390fd5b6033546001600160a01b0390811690813b6200172a575090565b604051638da5cb5b60e01b8152602081600481865afa9182916000936200175c575b505062001757575090565b905090565b602093919293813d8211620017a0575b816200177b60209383620013c0565b810103126200179c575191821682036200179957509038806200174c565b80fd5b5080fd5b3d91506200176c565b6001600160a01b031615620017ba57565b6040516303988b8160e61b8152600490fdfe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c634300081300334910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3bbdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a26469706673582212205b4ad4994faa997ed5c8a41cc79c0e9a7b8bb350c308a4501f9c80e17fbf85a864736f6c63430008130033","sourceMap":"529:4653:105:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;;;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;-1:-1:-1;;;;;529:4653:105;;:::i;:::-;;;;4853:15;529:4653;;;689:66:57;529:4653:105;;;;4853:33;689:66:57;;529:4653:105;;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;529:4653:105;;2423:22:42;529:4653:105;;2517:8:42;;;:::i;:::-;529:4653:105;;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;;;:::i;:::-;689:66:57;529:4653:105;;;;689:66:57;529:4653:105;;;499:12:102;;;:::i;529:4653:105:-;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;529:4653:105;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;3232:7;529:4653;-1:-1:-1;;529:4653:105;;;;;;;3232:7;529:4653;;;;;;;;3283:4;529:4653;;;;;;3358:25;529:4653;3521:16;529:4653;3555:23;529:4653;1534:6:42;529:4653:105;;;;-1:-1:-1;;;529:4653:105;3398:224;;;;;;;529:4653;3398:224;;529:4653;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;529:4653:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3438:41;529:4653;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3398:224;;529:4653;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;;;;-1:-1:-1;529:4653:105;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;3398:224;;;;;;;;;:::i;:::-;529:4653;;;3320:312;;;;;;-1:-1:-1;;;;;3320:312:105;;;;;;;;;;529:4653;3320:312;529:4653;3320:312;;;;529:4653;;;;;;;;;;:::i;:::-;3320:312;;529:4653;3320:312;;;;;529:4653;;;;;;;;;;;3791:15;529:4653;;;;;;3791:49;529:4653;;;;;;;;;3862:44;529:4653;;;;;;3862:44;529:4653;;;;;;3320:312;529:4653;;689:66:57;529:4653:105;689:66:57;;;;;529:4653:105;;;;;;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;714:33;529:4653;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;4479:43;529:4653;;;:::i;:::-;;;1324:62:42;;;:::i;:::-;529:4653:105;;;;;;;;;;4415:15;529:4653;;;;;;;;;;;;;;;;4479:43;529:4653;;;;;;;-1:-1:-1;;529:4653:105;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2211:34:105;529:4653;;-1:-1:-1;;;;;;529:4653:105;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;;632:20;529:4653;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;-1:-1:-1;;;;;;;;;;;529:4653:105;;;:::i;:::-;1324:62:42;;:::i;:::-;4069:15:105;;;:::i;:::-;4095:36;529:4653;;-1:-1:-1;;;;;;529:4653:105;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;4146:31;529:4653;;;;;;;-1:-1:-1;;529:4653:105;;;;836:38;529:4653;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;1324:62:42;;:::i;:::-;2779:6;529:4653:105;;-1:-1:-1;;;;;;529:4653:105;;;;;;;-1:-1:-1;;;;;529:4653:105;-1:-1:-1;;;;;;;;;;;529:4653:105;;2827:40:42;529:4653:105;;;;;;;-1:-1:-1;;529:4653:105;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;1947:36:105;529:4653;;-1:-1:-1;;;;;;529:4653:105;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;799:31;529:4653;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;;;:::i;:::-;;;;;;;;;;;;4694:42;1324:62:42;529:4653:105;1324:62:42;;;:::i;:::-;529:4653:105;;;;;;;;;;4635:15;529:4653;;;;;;4635:33;529:4653;;;;;;;;;;;;;;;;;;;;4694:42;529:4653;;;;;;;-1:-1:-1;;529:4653:105;;;;2089:6:61;-1:-1:-1;;;;;529:4653:105;2080:4:61;2072:23;529:4653:105;;;;;-1:-1:-1;;;;;;;;;;;529:4653:105;;;;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;;;:::i;:::-;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1654:6:61;529:4653:105;;;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;529:4653:105;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;529:4653:105;;1256:21:102;1252:94;;-1:-1:-1;;;;;;;;;;;689:66:57;;;;;;2993:17;;;;;;:::i;2906:504::-;529:4653:105;;;;689:66:57;;;;3046:52;;;;;;529:4653:105;3046:52:57;;;;529:4653:105;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;529:4653:105;;-1:-1:-1;;;3262:56:57;;529:4653:105;3262:56:57;;689:66;;;;529:4653:105;689:66:57;;529:4653:105;-1:-1:-1;;;;;;;;;;;529:4653:105;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;529:4653:105;1889:27:57;;529:4653:105;;2208:15:57;;;:28;;;3042:291;2204:112;;529:4653:105;2204:112:57;7307:69:73;529:4653:105;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;529:4653:105;;;;-1:-1:-1;;;529:4653:105;;;;7265:25:73;;;;;;;;;529:4653:105;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;7307:69:73;:::i;529:4653:105:-;;;-1:-1:-1;7307:69:73;:::i;2208:28:57:-;;529:4653:105;2208:28:57;;689:66;529:4653:105;;-1:-1:-1;;;689:66:57;;529:4653:105;689:66:57;;;;;;529:4653:105;689:66:57;;529:4653:105;-1:-1:-1;;;;;;;;;;;529:4653:105;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;;;;;;1252:94:102;529:4653:105;1327:7:102;;;:::i;:::-;529:4653:105;;-1:-1:-1;;;1300:35:102;;1267:10;529:4653:105;1300:35:102;;529:4653:105;;;;;;;1300:35:102;529:4653:105;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;529:4653:105;1654:6:61;529:4653:105;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;529:4653:105;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;529:4653:105;;1256:21:102;1252:94;;529:4653:105;;;;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;689:66:57;-1:-1:-1;;;;;;;;;;;689:66:57;;2906:504;689:66;;;2993:17;;;;;;;;:::i;2906:504::-;529:4653:105;;;;;;;;689:66:57;;;3046:52;;;;529:4653:105;3046:52:57;;;;529:4653:105;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;529:4653:105;;-1:-1:-1;;;3262:56:57;;529:4653:105;3262:56:57;;689:66;;;;;;;529:4653:105;-1:-1:-1;;;;;;;;;;;529:4653:105;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;529:4653:105;1889:27:57;;529:4653:105;;2208:15:57;;;:28;;;3042:291;2204:112;;529:4653:105;2204:112:57;529:4653:105;;7307:69:73;529:4653:105;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;529:4653:105;;;;-1:-1:-1;;;529:4653:105;;;;7265:25:73;;;;;;529:4653:105;;;;;;;;:::i;2208:28:57:-;;529:4653:105;2208:28:57;;689:66;529:4653:105;;-1:-1:-1;;;689:66:57;;529:4653:105;689:66:57;;;;;;;;;529:4653:105;-1:-1:-1;;;;;;;;;;;529:4653:105;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;;;;;;1252:94:102;529:4653:105;1327:7:102;;;:::i;529:4653:105:-;;;;;;-1:-1:-1;;529:4653:105;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2080:27:105;529:4653;;-1:-1:-1;;;;;;529:4653:105;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;;;:::i;:::-;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;689:66:57;529:4653:105;;;689:66:57;3301:14:44;3347:34;;;;;;529:4653:105;3346:108:44;;;;529:4653:105;;;;-1:-1:-1;;529:4653:105;;;;;;;3562:65:44;;529:4653:105;;689:66:57;529:4653:105;;;;689:66:57;529:4653:105;;;2616:26;529:4653;499:12:102;2567:19:105;-1:-1:-1;;;;;;;;;;;499:12:102;;2672:24:105;499:12:102;;:::i;:::-;529:4653:105;2529:9;529:4653;2567:19;:::i;:::-;2616:26;:::i;2672:24::-;529:4653;;;;;;;;;2707:40;529:4653;;;2707:40;529:4653;;2757:54;529:4653;;;2757:54;529:4653;;2821:36;529:4653;;;2821:36;529:4653;2867:50;529:4653;;;2867:50;529:4653;;;;;;2932:35;3647:99:44;;529:4653:105;3647:99:44;529:4653:105;;;;;;;3721:14:44;529:4653:105;;;;;;3721:14:44;529:4653:105;3562:65:44;-1:-1:-1;;529:4653:105;;;;;3562:65:44;;;529:4653:105;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:4653:105;;;;;;;3346:108:44;3426:4;;1702:19:73;:23;3387:66:44;;3346:108;3387:66;689::57;529:4653:105;689:66:57;;;3436:17:44;3346:108;;3347:34;689:66:57;529:4653:105;689:66:57;;;3365:16:44;3347:34;;529:4653:105;;;;;;-1:-1:-1;;529:4653:105;;;;-1:-1:-1;;;;;529:4653:105;;:::i;:::-;;;;;4998:15;529:4653;;689:66:57;529:4653:105;;;;4998:33;689:66:57;;4997:34:105;4993:100;;529:4653;;4998:15;529:4653;;;;;;;;;;;;;4993:100;529:4653;;;;5054:28;;;;;;529:4653;5054:28;;529:4653;5054:28;529:4653;;;;;;-1:-1:-1;;529:4653:105;;;;753:40;529:4653;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;;;;;-1:-1:-1;;529:4653:105;;;;1534:6:42;529:4653:105;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;:::o;:::-;;;-1:-1:-1;;;;;529:4653:105;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;:::o;:::-;3398:224;529:4653;;;-1:-1:-1;;529:4653:105;;;;-1:-1:-1;;;;;529:4653:105;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;529:4653:105;;;;3398:224;529:4653;-1:-1:-1;;529:4653:105;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;529:4653:105;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;3398:224;;;529:4653;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;1620:130:42;1683:7;;:::i;:::-;965:10:48;-1:-1:-1;;;;;529:4653:105;;;1683:23:42;529:4653:105;;1620:130:42:o;529:4653:105:-;;;;;;;;;;;;;;;;;;;;;;;;;2687:187:42;2779:6;529:4653:105;;-1:-1:-1;;;;;529:4653:105;;;-1:-1:-1;;;;;;529:4653:105;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;2827:40:42;2687:187::o;529:4653:105:-;;;;:::o;:::-;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;529:4653:105;;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;529:4653:105;;;;-1:-1:-1;;;529:4653:105;;;;;;;1406:259:57;1702:19:73;;:23;529:4653:105;;-1:-1:-1;;;;;;;;;;;529:4653:105;;-1:-1:-1;;;;;;529:4653:105;-1:-1:-1;;;;;529:4653:105;;;;;;;;;1406:259:57:o;529:4653:105:-;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;;;;;;;;-1:-1:-1;;;529:4653:105;;;;;;;7671:628:73;;;;7875:418;;;529:4653:105;;;7906:22:73;7902:286;;8201:17;;:::o;7902:286::-;1702:19;:23;529:4653:105;;8201:17:73;:::o;529:4653:105:-;;;-1:-1:-1;;;529:4653:105;;;;;;;;;;;;;;;;;;;;7875:418:73;529:4653:105;;;;-1:-1:-1;8980:21:73;:17;;9152:142;;;;;;;8976:379;529:4653:105;;-1:-1:-1;;;9324:20:73;;529:4653:105;9324:20:73;;;529:4653:105;;;;;;;;;;;:::i;:::-;9324:20:73;;;633:544:102;1534:6:42;529:4653:105;-1:-1:-1;;;;;529:4653:105;;;;755:33:102;;1534:6:42;;870:19:102;;:::o;751:420::-;529:4653:105;;-1:-1:-1;;;924:40:102;;;529:4653:105;924:40:102;529:4653:105;924:40:102;;;;;;-1:-1:-1;924:40:102;;;751:420;-1:-1:-1;;920:241:102;;1127:19;;:::o;920:241::-;1008:13;;;:::o;924:40::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;529:4653:105;;;;;;;;;;;;924:40:102;;;;;;529:4653:105;;;;;;;924:40:102;;;-1:-1:-1;924:40:102;;1707:141:105;-1:-1:-1;;;;;529:4653:105;1789:22;1785:56;;1707:141::o;1785:56::-;529:4653;;-1:-1:-1;;;1820:21:105;;;;","linkReferences":{},"immutableReferences":{"54869":[{"start":2711,"length":32},{"start":2970,"length":32},{"start":3635,"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","proxyOwner()":"025313a2","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\":\"proxyOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a\",\"dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f\",\"dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9\"]},\"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":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{},"viaIR":true},"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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4","urls":["bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a","dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19","urls":["bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f","dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9"],"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":52287,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52290,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":52992,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52079,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52199,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":73580,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":73585,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)73572_storage)"},{"astId":73587,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":73589,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":73591,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":73593,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":73925,"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)73572_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)73572_storage"},"t_struct(CommunityInfo)73572_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":73569,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol:RegistryFactoryV0_0","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":73571,"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":73927,"exportedSymbols":{"Clone":[3002],"CommunityInfo":[73572],"ERC1967Proxy":[54318],"ProxyOwnableUpgrader":[71181],"RegistryCommunityInitializeParamsV0_0":[71352],"RegistryCommunityV0_0":[73556],"RegistryFactoryV0_0":[73926]},"nodeType":"SourceUnit","src":"42:5141:105","nodes":[{"id":73558,"nodeType":"PragmaDirective","src":"42:24:105","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":73561,"nodeType":"ImportDirective","src":"68:134:105","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":73927,"sourceUnit":73557,"symbolAliases":[{"foreign":{"id":73559,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"81:21:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":73560,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71352,"src":"108:37:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73563,"nodeType":"ImportDirective","src":"203:65:105","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"../ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":73927,"sourceUnit":71182,"symbolAliases":[{"foreign":{"id":73562,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71181,"src":"211:20:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73565,"nodeType":"ImportDirective","src":"269:84:105","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/ERC1967/ERC1967Proxy.sol","file":"@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol","nameLocation":"-1:-1:-1","scope":73927,"sourceUnit":54319,"symbolAliases":[{"foreign":{"id":73564,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54318,"src":"277:12:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73567,"nodeType":"ImportDirective","src":"354:65:105","nodes":[],"absolutePath":"lib/allo-v2/contracts/core/libraries/Clone.sol","file":"allo-v2-contracts/core/libraries/Clone.sol","nameLocation":"-1:-1:-1","scope":73927,"sourceUnit":3003,"symbolAliases":[{"foreign":{"id":73566,"name":"Clone","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3002,"src":"362:5:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73572,"nodeType":"StructDefinition","src":"421:57:105","nodes":[],"canonicalName":"CommunityInfo","members":[{"constant":false,"id":73569,"mutability":"mutable","name":"fee","nameLocation":"456:3:105","nodeType":"VariableDeclaration","scope":73572,"src":"448:11:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73568,"name":"uint256","nodeType":"ElementaryTypeName","src":"448:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":73571,"mutability":"mutable","name":"valid","nameLocation":"470:5:105","nodeType":"VariableDeclaration","scope":73572,"src":"465:10:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73570,"name":"bool","nodeType":"ElementaryTypeName","src":"465:4:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"name":"CommunityInfo","nameLocation":"428:13:105","scope":73927,"visibility":"public"},{"id":73926,"nodeType":"ContractDefinition","src":"529:4653:105","nodes":[{"id":73578,"nodeType":"VariableDeclaration","src":"588:38:105","nodes":[],"constant":true,"functionSelector":"ffa1ad74","mutability":"constant","name":"VERSION","nameLocation":"611:7:105","scope":73926,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":73576,"name":"string","nodeType":"ElementaryTypeName","src":"588:6:105","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":{"hexValue":"302e30","id":73577,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"621:5:105","typeDescriptions":{"typeIdentifier":"t_stringliteral_7be32719f3172a4c9a8d1f020e88b7d75f936a7394cfbfe03d409404e58cbdc3","typeString":"literal_string \"0.0\""},"value":"0.0"},"visibility":"public"},{"id":73580,"nodeType":"VariableDeclaration","src":"632:20:105","nodes":[],"constant":false,"functionSelector":"affed0e0","mutability":"mutable","name":"nonce","nameLocation":"647:5:105","scope":73926,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73579,"name":"uint256","nodeType":"ElementaryTypeName","src":"632:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"public"},{"id":73585,"nodeType":"VariableDeclaration","src":"659:49:105","nodes":[],"constant":false,"mutability":"mutable","name":"communityToInfo","nameLocation":"693:15:105","scope":73926,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73572_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"typeName":{"id":73584,"keyName":"","keyNameLocation":"-1:-1:-1","keyType":{"id":73581,"name":"address","nodeType":"ElementaryTypeName","src":"667:7:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"659:33:105","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73572_storage_$","typeString":"mapping(address => struct CommunityInfo)"},"valueName":"","valueNameLocation":"-1:-1:-1","valueType":{"id":73583,"nodeType":"UserDefinedTypeName","pathNode":{"id":73582,"name":"CommunityInfo","nameLocations":["678:13:105"],"nodeType":"IdentifierPath","referencedDeclaration":73572,"src":"678:13:105"},"referencedDeclaration":73572,"src":"678:13:105","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73572_storage_ptr","typeString":"struct CommunityInfo"}}},"visibility":"internal"},{"id":73587,"nodeType":"VariableDeclaration","src":"714:33:105","nodes":[],"constant":false,"functionSelector":"b8bed901","mutability":"mutable","name":"gardensFeeReceiver","nameLocation":"729:18:105","scope":73926,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73586,"name":"address","nodeType":"ElementaryTypeName","src":"714:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73589,"nodeType":"VariableDeclaration","src":"753:40:105","nodes":[],"constant":false,"functionSelector":"02c1d0b1","mutability":"mutable","name":"registryCommunityTemplate","nameLocation":"768:25:105","scope":73926,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73588,"name":"address","nodeType":"ElementaryTypeName","src":"753:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73591,"nodeType":"VariableDeclaration","src":"799:31:105","nodes":[],"constant":false,"functionSelector":"5c94e4d2","mutability":"mutable","name":"strategyTemplate","nameLocation":"814:16:105","scope":73926,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73590,"name":"address","nodeType":"ElementaryTypeName","src":"799:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73593,"nodeType":"VariableDeclaration","src":"836:38:105","nodes":[],"constant":false,"functionSelector":"77122d56","mutability":"mutable","name":"collateralVaultTemplate","nameLocation":"851:23:105","scope":73926,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73592,"name":"address","nodeType":"ElementaryTypeName","src":"836:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"public"},{"id":73597,"nodeType":"EventDefinition","src":"1047:46:105","nodes":[],"anonymous":false,"eventSelector":"bdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d","name":"FeeReceiverSet","nameLocation":"1053:14:105","parameters":{"id":73596,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73595,"indexed":false,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"1076:15:105","nodeType":"VariableDeclaration","scope":73597,"src":"1068:23:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73594,"name":"address","nodeType":"ElementaryTypeName","src":"1068:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1067:25:105"}},{"id":73603,"nodeType":"EventDefinition","src":"1098:66:105","nodes":[],"anonymous":false,"eventSelector":"a1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c","name":"ProtocolFeeSet","nameLocation":"1104:14:105","parameters":{"id":73602,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73599,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1127:10:105","nodeType":"VariableDeclaration","scope":73603,"src":"1119:18:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73598,"name":"address","nodeType":"ElementaryTypeName","src":"1119:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73601,"indexed":false,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"1147:15:105","nodeType":"VariableDeclaration","scope":73603,"src":"1139:23:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73600,"name":"uint256","nodeType":"ElementaryTypeName","src":"1139:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1118:45:105"}},{"id":73607,"nodeType":"EventDefinition","src":"1169:51:105","nodes":[],"anonymous":false,"eventSelector":"b4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc29","name":"CommunityCreated","nameLocation":"1175:16:105","parameters":{"id":73606,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73605,"indexed":false,"mutability":"mutable","name":"_registryCommunity","nameLocation":"1200:18:105","nodeType":"VariableDeclaration","scope":73607,"src":"1192:26:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73604,"name":"address","nodeType":"ElementaryTypeName","src":"1192:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1191:28:105"}},{"id":73613,"nodeType":"EventDefinition","src":"1225:62:105","nodes":[],"anonymous":false,"eventSelector":"ecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f62","name":"CommunityValiditySet","nameLocation":"1231:20:105","parameters":{"id":73612,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73609,"indexed":false,"mutability":"mutable","name":"_community","nameLocation":"1260:10:105","nodeType":"VariableDeclaration","scope":73613,"src":"1252:18:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73608,"name":"address","nodeType":"ElementaryTypeName","src":"1252:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73611,"indexed":false,"mutability":"mutable","name":"_isValid","nameLocation":"1277:8:105","nodeType":"VariableDeclaration","scope":73613,"src":"1272:13:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73610,"name":"bool","nodeType":"ElementaryTypeName","src":"1272:4:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"1251:35:105"}},{"id":73617,"nodeType":"ErrorDefinition","src":"1459:43:105","nodes":[],"errorSelector":"f5a6943d","name":"CommunityInvalid","nameLocation":"1465:16:105","parameters":{"id":73616,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73615,"mutability":"mutable","name":"_community","nameLocation":"1490:10:105","nodeType":"VariableDeclaration","scope":73617,"src":"1482:18:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73614,"name":"address","nodeType":"ElementaryTypeName","src":"1482:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1481:20:105"}},{"id":73619,"nodeType":"ErrorDefinition","src":"1507:28:105","nodes":[],"errorSelector":"e622e040","name":"AddressCannotBeZero","nameLocation":"1513:19:105","parameters":{"id":73618,"nodeType":"ParameterList","parameters":[],"src":"1532:2:105"}},{"id":73635,"nodeType":"FunctionDefinition","src":"1707:141:105","nodes":[],"body":{"id":73634,"nodeType":"Block","src":"1775:73:105","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":73629,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":73624,"name":"_address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73621,"src":"1789:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"arguments":[{"hexValue":"30","id":73627,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1809: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":73626,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1801:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73625,"name":"address","nodeType":"ElementaryTypeName","src":"1801:7:105","typeDescriptions":{}}},"id":73628,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1801:10:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1789:22:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73633,"nodeType":"IfStatement","src":"1785:56:105","trueBody":{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":73630,"name":"AddressCannotBeZero","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73619,"src":"1820:19:105","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":73631,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1820:21:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73632,"nodeType":"RevertStatement","src":"1813:28:105"}}]},"implemented":true,"kind":"function","modifiers":[],"name":"_revertZeroAddress","nameLocation":"1716:18:105","parameters":{"id":73622,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73621,"mutability":"mutable","name":"_address","nameLocation":"1743:8:105","nodeType":"VariableDeclaration","scope":73635,"src":"1735:16:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73620,"name":"address","nodeType":"ElementaryTypeName","src":"1735:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1734:18:105"},"returnParameters":{"id":73623,"nodeType":"ParameterList","parameters":[],"src":"1775:0:105"},"scope":73926,"stateMutability":"pure","virtual":true,"visibility":"internal"},{"id":73647,"nodeType":"FunctionDefinition","src":"1854:136:105","nodes":[],"body":{"id":73646,"nodeType":"Block","src":"1937:53:105","nodes":[],"statements":[{"expression":{"id":73644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73642,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73589,"src":"1947:25:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73643,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73637,"src":"1975:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"1947:36:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73645,"nodeType":"ExpressionStatement","src":"1947:36:105"}]},"functionSelector":"5decae02","implemented":true,"kind":"function","modifiers":[{"id":73640,"kind":"modifierInvocation","modifierName":{"id":73639,"name":"onlyOwner","nameLocations":["1927:9:105"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"1927:9:105"},"nodeType":"ModifierInvocation","src":"1927:9:105"}],"name":"setRegistryCommunityTemplate","nameLocation":"1863:28:105","parameters":{"id":73638,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73637,"mutability":"mutable","name":"template","nameLocation":"1900:8:105","nodeType":"VariableDeclaration","scope":73647,"src":"1892:16:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73636,"name":"address","nodeType":"ElementaryTypeName","src":"1892:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"1891:18:105"},"returnParameters":{"id":73641,"nodeType":"ParameterList","parameters":[],"src":"1937:0:105"},"scope":73926,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":73659,"nodeType":"FunctionDefinition","src":"1996:118:105","nodes":[],"body":{"id":73658,"nodeType":"Block","src":"2070:44:105","nodes":[],"statements":[{"expression":{"id":73656,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73654,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73591,"src":"2080:16:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73655,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73649,"src":"2099:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2080:27:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73657,"nodeType":"ExpressionStatement","src":"2080:27:105"}]},"functionSelector":"1b71f0e4","implemented":true,"kind":"function","modifiers":[{"id":73652,"kind":"modifierInvocation","modifierName":{"id":73651,"name":"onlyOwner","nameLocations":["2060:9:105"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"2060:9:105"},"nodeType":"ModifierInvocation","src":"2060:9:105"}],"name":"setStrategyTemplate","nameLocation":"2005:19:105","parameters":{"id":73650,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73649,"mutability":"mutable","name":"template","nameLocation":"2033:8:105","nodeType":"VariableDeclaration","scope":73659,"src":"2025:16:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73648,"name":"address","nodeType":"ElementaryTypeName","src":"2025:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2024:18:105"},"returnParameters":{"id":73653,"nodeType":"ParameterList","parameters":[],"src":"2070:0:105"},"scope":73926,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":73671,"nodeType":"FunctionDefinition","src":"2120:132:105","nodes":[],"body":{"id":73670,"nodeType":"Block","src":"2201:51:105","nodes":[],"statements":[{"expression":{"id":73668,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73666,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73593,"src":"2211:23:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73667,"name":"template","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73661,"src":"2237:8:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2211:34:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73669,"nodeType":"ExpressionStatement","src":"2211:34:105"}]},"functionSelector":"b0d3713a","implemented":true,"kind":"function","modifiers":[{"id":73664,"kind":"modifierInvocation","modifierName":{"id":73663,"name":"onlyOwner","nameLocations":["2191:9:105"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"2191:9:105"},"nodeType":"ModifierInvocation","src":"2191:9:105"}],"name":"setCollateralVaultTemplate","nameLocation":"2129:26:105","parameters":{"id":73662,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73661,"mutability":"mutable","name":"template","nameLocation":"2164:8:105","nodeType":"VariableDeclaration","scope":73671,"src":"2156:16:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73660,"name":"address","nodeType":"ElementaryTypeName","src":"2156:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2155:18:105"},"returnParameters":{"id":73665,"nodeType":"ParameterList","parameters":[],"src":"2201:0:105"},"scope":73926,"stateMutability":"nonpayable","virtual":true,"visibility":"external"},{"id":73729,"nodeType":"FunctionDefinition","src":"2258:780:105","nodes":[],"body":{"id":73728,"nodeType":"Block","src":"2485:553:105","nodes":[],"statements":[{"expression":{"arguments":[{"id":73689,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73673,"src":"2512:6:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":73686,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"2495:5:105","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_RegistryFactoryV0_0_$73926_$","typeString":"type(contract super RegistryFactoryV0_0)"}},"id":73688,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2501:10:105","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":71108,"src":"2495:16:105","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73690,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2495:24:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73691,"nodeType":"ExpressionStatement","src":"2495:24:105"},{"expression":{"id":73694,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73692,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73580,"src":"2529:5:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":73693,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2537:1:105","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2529:9:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73695,"nodeType":"ExpressionStatement","src":"2529:9:105"},{"expression":{"arguments":[{"id":73697,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73675,"src":"2567:19:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73696,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73635,"src":"2548:18:105","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73698,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2548:39:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73699,"nodeType":"ExpressionStatement","src":"2548:39:105"},{"expression":{"arguments":[{"id":73701,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73677,"src":"2616:26:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73700,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73635,"src":"2597:18:105","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73702,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2597:46:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73703,"nodeType":"ExpressionStatement","src":"2597:46:105"},{"expression":{"arguments":[{"id":73705,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73681,"src":"2672:24:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73704,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73635,"src":"2653:18:105","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73706,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2653:44:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73707,"nodeType":"ExpressionStatement","src":"2653:44:105"},{"expression":{"id":73710,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73708,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73587,"src":"2707:18:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73709,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73675,"src":"2728:19:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2707:40:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73711,"nodeType":"ExpressionStatement","src":"2707:40:105"},{"expression":{"id":73714,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73712,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73589,"src":"2757:25:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73713,"name":"_registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73677,"src":"2785:26:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2757:54:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73715,"nodeType":"ExpressionStatement","src":"2757:54:105"},{"expression":{"id":73718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73716,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73591,"src":"2821:16:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73717,"name":"_strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73679,"src":"2840:17:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2821:36:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73719,"nodeType":"ExpressionStatement","src":"2821:36:105"},{"expression":{"id":73722,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73720,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73593,"src":"2867:23:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73721,"name":"_collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73681,"src":"2893:24:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2867:50:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73723,"nodeType":"ExpressionStatement","src":"2867:50:105"},{"eventCall":{"arguments":[{"id":73725,"name":"_gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73675,"src":"2947:19:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73724,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73597,"src":"2932:14:105","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73726,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2932:35:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73727,"nodeType":"EmitStatement","src":"2927:40:105"}]},"functionSelector":"1459457a","implemented":true,"kind":"function","modifiers":[{"id":73684,"kind":"modifierInvocation","modifierName":{"id":73683,"name":"initializer","nameLocations":["2473:11:105"],"nodeType":"IdentifierPath","referencedDeclaration":52351,"src":"2473:11:105"},"nodeType":"ModifierInvocation","src":"2473:11:105"}],"name":"initialize","nameLocation":"2267:10:105","parameters":{"id":73682,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73673,"mutability":"mutable","name":"_owner","nameLocation":"2295:6:105","nodeType":"VariableDeclaration","scope":73729,"src":"2287:14:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73672,"name":"address","nodeType":"ElementaryTypeName","src":"2287:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73675,"mutability":"mutable","name":"_gardensFeeReceiver","nameLocation":"2319:19:105","nodeType":"VariableDeclaration","scope":73729,"src":"2311:27:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73674,"name":"address","nodeType":"ElementaryTypeName","src":"2311:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73677,"mutability":"mutable","name":"_registryCommunityTemplate","nameLocation":"2356:26:105","nodeType":"VariableDeclaration","scope":73729,"src":"2348:34:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73676,"name":"address","nodeType":"ElementaryTypeName","src":"2348:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73679,"mutability":"mutable","name":"_strategyTemplate","nameLocation":"2400:17:105","nodeType":"VariableDeclaration","scope":73729,"src":"2392:25:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73678,"name":"address","nodeType":"ElementaryTypeName","src":"2392:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73681,"mutability":"mutable","name":"_collateralVaultTemplate","nameLocation":"2435:24:105","nodeType":"VariableDeclaration","scope":73729,"src":"2427:32:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73680,"name":"address","nodeType":"ElementaryTypeName","src":"2427:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2277:188:105"},"returnParameters":{"id":73685,"nodeType":"ParameterList","parameters":[],"src":"2485:0:105"},"scope":73926,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":73812,"nodeType":"FunctionDefinition","src":"3044:912:105","nodes":[],"body":{"id":73811,"nodeType":"Block","src":"3206:750:105","nodes":[],"statements":[{"expression":{"id":73742,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":73737,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73732,"src":"3216:6:105","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":73739,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3223:6:105","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":71336,"src":"3216:13:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"3232:7:105","subExpression":{"id":73740,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73580,"src":"3232:5:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3216:23:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73743,"nodeType":"ExpressionStatement","src":"3216:23:105"},{"expression":{"id":73751,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":73744,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73732,"src":"3249:6:105","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":73746,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3256:16:105","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":71338,"src":"3249:23:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":73749,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3283:4:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$73926","typeString":"contract RegistryFactoryV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$73926","typeString":"contract RegistryFactoryV0_0"}],"id":73748,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3275:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73747,"name":"address","nodeType":"ElementaryTypeName","src":"3275:7:105","typeDescriptions":{}}},"id":73750,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3275:13:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3249:39:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73752,"nodeType":"ExpressionStatement","src":"3249:39:105"},{"assignments":[73755],"declarations":[{"constant":false,"id":73755,"mutability":"mutable","name":"proxy","nameLocation":"3312:5:105","nodeType":"VariableDeclaration","scope":73811,"src":"3299:18:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"},"typeName":{"id":73754,"nodeType":"UserDefinedTypeName","pathNode":{"id":73753,"name":"ERC1967Proxy","nameLocations":["3299:12:105"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"3299:12:105"},"referencedDeclaration":54318,"src":"3299:12:105","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":73775,"initialValue":{"arguments":[{"arguments":[{"id":73761,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73589,"src":"3358:25:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73760,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3350:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73759,"name":"address","nodeType":"ElementaryTypeName","src":"3350:7:105","typeDescriptions":{}}},"id":73762,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3350:34:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":73765,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"3438:21:105","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73556_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":73766,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3460:10:105","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":72051,"src":"3438:32:105","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":73767,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3471:8:105","memberName":"selector","nodeType":"MemberAccess","src":"3438:41:105","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":73768,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73732,"src":"3497:6:105","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":73769,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73591,"src":"3521:16:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73770,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73593,"src":"3555:23:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":73771,"name":"proxyOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71118,"src":"3596:10:105","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":73772,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3596:12:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":73763,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3398:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":73764,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3402:18:105","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"3398:22:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":73773,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3398:224: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":73758,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"3320:16:105","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$54318_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":73757,"nodeType":"UserDefinedTypeName","pathNode":{"id":73756,"name":"ERC1967Proxy","nameLocations":["3324:12:105"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"3324:12:105"},"referencedDeclaration":54318,"src":"3324:12:105","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}},"id":73774,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3320:312:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"3299:333:105"},{"assignments":[73778],"declarations":[{"constant":false,"id":73778,"mutability":"mutable","name":"registryCommunity","nameLocation":"3665:17:105","nodeType":"VariableDeclaration","scope":73811,"src":"3643:39:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":73777,"nodeType":"UserDefinedTypeName","pathNode":{"id":73776,"name":"RegistryCommunityV0_0","nameLocations":["3643:21:105"],"nodeType":"IdentifierPath","referencedDeclaration":73556,"src":"3643:21:105"},"referencedDeclaration":73556,"src":"3643:21:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":73788,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":73784,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73755,"src":"3723:5:105","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}],"id":73783,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3715:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73782,"name":"address","nodeType":"ElementaryTypeName","src":"3715:7:105","typeDescriptions":{}}},"id":73785,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3715:14:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73781,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3707:8:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":73780,"name":"address","nodeType":"ElementaryTypeName","src":"3707:8:105","stateMutability":"payable","typeDescriptions":{}}},"id":73786,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3707:23:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":73779,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"3685:21:105","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73556_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":73787,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3685:46:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"3643:88:105"},{"expression":{"id":73797,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73789,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73585,"src":"3791:15:105","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73572_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73794,"indexExpression":{"arguments":[{"id":73792,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73778,"src":"3815:17:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":73791,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3807:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73790,"name":"address","nodeType":"ElementaryTypeName","src":"3807:7:105","typeDescriptions":{}}},"id":73793,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3807:26:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3791:43:105","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73572_storage","typeString":"struct CommunityInfo storage ref"}},"id":73795,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"3835:5:105","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":73571,"src":"3791:49:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":73796,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"3843:4:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"3791:56:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73798,"nodeType":"ExpressionStatement","src":"3791:56:105"},{"eventCall":{"arguments":[{"arguments":[{"id":73802,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73778,"src":"3887:17:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":73801,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3879:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73800,"name":"address","nodeType":"ElementaryTypeName","src":"3879:7:105","typeDescriptions":{}}},"id":73803,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3879:26:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73799,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73607,"src":"3862:16:105","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73804,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3862:44:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73805,"nodeType":"EmitStatement","src":"3857:49:105"},{"expression":{"arguments":[{"id":73808,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73778,"src":"3931:17:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":73807,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3923:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73806,"name":"address","nodeType":"ElementaryTypeName","src":"3923:7:105","typeDescriptions":{}}},"id":73809,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3923:26:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":73736,"id":73810,"nodeType":"Return","src":"3916:33:105"}]},"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"3053:14:105","parameters":{"id":73733,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73732,"mutability":"mutable","name":"params","nameLocation":"3113:6:105","nodeType":"VariableDeclaration","scope":73812,"src":"3068:51:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":73731,"nodeType":"UserDefinedTypeName","pathNode":{"id":73730,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["3068:37:105"],"nodeType":"IdentifierPath","referencedDeclaration":71352,"src":"3068:37:105"},"referencedDeclaration":71352,"src":"3068:37:105","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"3067:53:105"},"returnParameters":{"id":73736,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73735,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"3177:23:105","nodeType":"VariableDeclaration","scope":73812,"src":"3169:31:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73734,"name":"address","nodeType":"ElementaryTypeName","src":"3169:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3168:33:105"},"scope":73926,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73832,"nodeType":"FunctionDefinition","src":"3962:222:105","nodes":[],"body":{"id":73831,"nodeType":"Block","src":"4040:144:105","nodes":[],"statements":[{"expression":{"arguments":[{"id":73820,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73814,"src":"4069:15:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73819,"name":"_revertZeroAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73635,"src":"4050:18:105","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73821,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4050:35:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73822,"nodeType":"ExpressionStatement","src":"4050:35:105"},{"expression":{"id":73825,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":73823,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73587,"src":"4095:18:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73824,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73814,"src":"4116:15:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"4095:36:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73826,"nodeType":"ExpressionStatement","src":"4095:36:105"},{"eventCall":{"arguments":[{"id":73828,"name":"_newFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73814,"src":"4161:15:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73827,"name":"FeeReceiverSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73597,"src":"4146:14:105","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73829,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4146:31:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73830,"nodeType":"EmitStatement","src":"4141:36:105"}]},"functionSelector":"8279c7db","implemented":true,"kind":"function","modifiers":[{"id":73817,"kind":"modifierInvocation","modifierName":{"id":73816,"name":"onlyOwner","nameLocations":["4030:9:105"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"4030:9:105"},"nodeType":"ModifierInvocation","src":"4030:9:105"}],"name":"setReceiverAddress","nameLocation":"3971:18:105","parameters":{"id":73815,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73814,"mutability":"mutable","name":"_newFeeReceiver","nameLocation":"3998:15:105","nodeType":"VariableDeclaration","scope":73832,"src":"3990:23:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73813,"name":"address","nodeType":"ElementaryTypeName","src":"3990:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3989:25:105"},"returnParameters":{"id":73818,"nodeType":"ParameterList","parameters":[],"src":"4040:0:105"},"scope":73926,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73840,"nodeType":"FunctionDefinition","src":"4190:115:105","nodes":[],"body":{"id":73839,"nodeType":"Block","src":"4263:42:105","nodes":[],"statements":[{"expression":{"id":73837,"name":"gardensFeeReceiver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73587,"src":"4280:18:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":73836,"id":73838,"nodeType":"Return","src":"4273:25:105"}]},"functionSelector":"987435be","implemented":true,"kind":"function","modifiers":[],"name":"getGardensFeeReceiver","nameLocation":"4199:21:105","parameters":{"id":73833,"nodeType":"ParameterList","parameters":[],"src":"4220:2:105"},"returnParameters":{"id":73836,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73835,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":73840,"src":"4254:7:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73834,"name":"address","nodeType":"ElementaryTypeName","src":"4254:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4253:9:105"},"scope":73926,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":73862,"nodeType":"FunctionDefinition","src":"4311:218:105","nodes":[],"body":{"id":73861,"nodeType":"Block","src":"4405:124:105","nodes":[],"statements":[{"expression":{"id":73854,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73849,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73585,"src":"4415:15:105","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73572_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73851,"indexExpression":{"id":73850,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73842,"src":"4431:10:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4415:27:105","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73572_storage","typeString":"struct CommunityInfo storage ref"}},"id":73852,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4443:3:105","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":73569,"src":"4415:31:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73853,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73844,"src":"4449:15:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4415:49:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73855,"nodeType":"ExpressionStatement","src":"4415:49:105"},{"eventCall":{"arguments":[{"id":73857,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73842,"src":"4494:10:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73858,"name":"_newProtocolFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73844,"src":"4506:15:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":73856,"name":"ProtocolFeeSet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73603,"src":"4479:14:105","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256)"}},"id":73859,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4479:43:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73860,"nodeType":"EmitStatement","src":"4474:48:105"}]},"functionSelector":"b5b3ca2c","implemented":true,"kind":"function","modifiers":[{"id":73847,"kind":"modifierInvocation","modifierName":{"id":73846,"name":"onlyOwner","nameLocations":["4395:9:105"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"4395:9:105"},"nodeType":"ModifierInvocation","src":"4395:9:105"}],"name":"setProtocolFee","nameLocation":"4320:14:105","parameters":{"id":73845,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73842,"mutability":"mutable","name":"_community","nameLocation":"4343:10:105","nodeType":"VariableDeclaration","scope":73862,"src":"4335:18:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73841,"name":"address","nodeType":"ElementaryTypeName","src":"4335:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73844,"mutability":"mutable","name":"_newProtocolFee","nameLocation":"4363:15:105","nodeType":"VariableDeclaration","scope":73862,"src":"4355:23:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73843,"name":"uint256","nodeType":"ElementaryTypeName","src":"4355:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4334:45:105"},"returnParameters":{"id":73848,"nodeType":"ParameterList","parameters":[],"src":"4405:0:105"},"scope":73926,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73884,"nodeType":"FunctionDefinition","src":"4535:208:105","nodes":[],"body":{"id":73883,"nodeType":"Block","src":"4625:118:105","nodes":[],"statements":[{"expression":{"id":73876,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73871,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73585,"src":"4635:15:105","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73572_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73873,"indexExpression":{"id":73872,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73864,"src":"4651:10:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4635:27:105","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73572_storage","typeString":"struct CommunityInfo storage ref"}},"id":73874,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4663:5:105","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":73571,"src":"4635:33:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73875,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73866,"src":"4671:8:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"4635:44:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73877,"nodeType":"ExpressionStatement","src":"4635:44:105"},{"eventCall":{"arguments":[{"id":73879,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73864,"src":"4715:10:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73880,"name":"_isValid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73866,"src":"4727:8:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_bool","typeString":"bool"}],"id":73878,"name":"CommunityValiditySet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73613,"src":"4694:20:105","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_bool_$returns$__$","typeString":"function (address,bool)"}},"id":73881,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4694:42:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73882,"nodeType":"EmitStatement","src":"4689:47:105"}]},"functionSelector":"5a2c8ace","implemented":true,"kind":"function","modifiers":[{"id":73869,"kind":"modifierInvocation","modifierName":{"id":73868,"name":"onlyOwner","nameLocations":["4615:9:105"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"4615:9:105"},"nodeType":"ModifierInvocation","src":"4615:9:105"}],"name":"setCommunityValidity","nameLocation":"4544:20:105","parameters":{"id":73867,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73864,"mutability":"mutable","name":"_community","nameLocation":"4573:10:105","nodeType":"VariableDeclaration","scope":73884,"src":"4565:18:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73863,"name":"address","nodeType":"ElementaryTypeName","src":"4565:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":73866,"mutability":"mutable","name":"_isValid","nameLocation":"4590:8:105","nodeType":"VariableDeclaration","scope":73884,"src":"4585:13:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73865,"name":"bool","nodeType":"ElementaryTypeName","src":"4585:4:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4564:35:105"},"returnParameters":{"id":73870,"nodeType":"ParameterList","parameters":[],"src":"4625:0:105"},"scope":73926,"stateMutability":"nonpayable","virtual":true,"visibility":"public"},{"id":73897,"nodeType":"FunctionDefinition","src":"4749:144:105","nodes":[],"body":{"id":73896,"nodeType":"Block","src":"4836:57:105","nodes":[],"statements":[{"expression":{"expression":{"baseExpression":{"id":73891,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73585,"src":"4853:15:105","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73572_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73893,"indexExpression":{"id":73892,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73886,"src":"4869:10:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4853:27:105","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73572_storage","typeString":"struct CommunityInfo storage ref"}},"id":73894,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4881:5:105","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":73571,"src":"4853:33:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":73890,"id":73895,"nodeType":"Return","src":"4846:40:105"}]},"functionSelector":"f5016b5e","implemented":true,"kind":"function","modifiers":[],"name":"getCommunityValidity","nameLocation":"4758:20:105","parameters":{"id":73887,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73886,"mutability":"mutable","name":"_community","nameLocation":"4787:10:105","nodeType":"VariableDeclaration","scope":73897,"src":"4779:18:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73885,"name":"address","nodeType":"ElementaryTypeName","src":"4779:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4778:20:105"},"returnParameters":{"id":73890,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73889,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":73897,"src":"4830:4:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":73888,"name":"bool","nodeType":"ElementaryTypeName","src":"4830:4:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"4829:6:105"},"scope":73926,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":73921,"nodeType":"FunctionDefinition","src":"4899:249:105","nodes":[],"body":{"id":73920,"nodeType":"Block","src":"4983:165:105","nodes":[],"statements":[{"condition":{"id":73908,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"4997:34:105","subExpression":{"expression":{"baseExpression":{"id":73904,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73585,"src":"4998:15:105","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73572_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73906,"indexExpression":{"id":73905,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73899,"src":"5014:10:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4998:27:105","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73572_storage","typeString":"struct CommunityInfo storage ref"}},"id":73907,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5026:5:105","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":73571,"src":"4998:33:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73914,"nodeType":"IfStatement","src":"4993:100:105","trueBody":{"id":73913,"nodeType":"Block","src":"5033:60:105","statements":[{"errorCall":{"arguments":[{"id":73910,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73899,"src":"5071:10:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73909,"name":"CommunityInvalid","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73617,"src":"5054:16:105","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$returns$__$","typeString":"function (address) pure"}},"id":73911,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5054:28:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73912,"nodeType":"RevertStatement","src":"5047:35:105"}]}},{"expression":{"expression":{"baseExpression":{"id":73915,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73585,"src":"5110:15:105","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73572_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73917,"indexExpression":{"id":73916,"name":"_community","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73899,"src":"5126:10:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5110:27:105","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73572_storage","typeString":"struct CommunityInfo storage ref"}},"id":73918,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5138:3:105","memberName":"fee","nodeType":"MemberAccess","referencedDeclaration":73569,"src":"5110:31:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":73903,"id":73919,"nodeType":"Return","src":"5103:38:105"}]},"functionSelector":"0a992e0c","implemented":true,"kind":"function","modifiers":[],"name":"getProtocolFee","nameLocation":"4908:14:105","parameters":{"id":73900,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73899,"mutability":"mutable","name":"_community","nameLocation":"4931:10:105","nodeType":"VariableDeclaration","scope":73921,"src":"4923:18:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73898,"name":"address","nodeType":"ElementaryTypeName","src":"4923:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4922:20:105"},"returnParameters":{"id":73903,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73902,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":73921,"src":"4974:7:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":73901,"name":"uint256","nodeType":"ElementaryTypeName","src":"4974:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4973:9:105"},"scope":73926,"stateMutability":"view","virtual":true,"visibility":"external"},{"id":73925,"nodeType":"VariableDeclaration","src":"5154:25:105","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"5174:5:105","scope":73926,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":73922,"name":"uint256","nodeType":"ElementaryTypeName","src":"5154:7:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73924,"length":{"hexValue":"3530","id":73923,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5162:2:105","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"5154:11:105","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":73574,"name":"ProxyOwnableUpgrader","nameLocations":["561:20:105"],"nodeType":"IdentifierPath","referencedDeclaration":71181,"src":"561:20:105"},"id":73575,"nodeType":"InheritanceSpecifier","src":"561:20:105"}],"canonicalName":"RegistryFactoryV0_0","contractDependencies":[54318],"contractKind":"contract","documentation":{"id":73573,"nodeType":"StructuredDocumentation","src":"480:49:105","text":"@custom:oz-upgrades-from RegistryFactoryV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[73926,71181,54969,54622,54271,54281,52200,52993,52449],"name":"RegistryFactoryV0_0","nameLocation":"538:19:105","scope":73927,"usedErrors":[71096,73617,73619]}],"license":"AGPL-3.0-only"},"id":105} \ 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 97a1e6312..b397f4fcd 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":"proxyOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"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":"0x60a080604052346100315730608052611dc290816100378239608051818181610b0b01528181610c0e0152610ea70152f35b600080fdfe60808060405260043610156200001457600080fd5b60003560e01c908163025313a2146200135e5750806302c1d0b114620013335780630a992e0c14620012c25780631459457a146200113e5780631b71f0e414620010f55780633659cfe61462000e7e5780634f1ef2861462000bb957806352d1902d1462000af65780635a2c8ace1462000a685780635c94e4d21462000a3d5780635cd8a76b14620009d95780635decae021462000990578063715018a6146200094057806377122d5614620009155780638279c7db14620008a95780638da5cb5b1462000878578063987435be1462000771578063affed0e01462000858578063b0d3713a146200080f578063b5b3ca2c146200079c578063b8bed9011462000771578063beb331a31462000340578063c4d66de814620002b0578063f2fde38b1462000218578063f5016b5e14620001d25763ffa1ad74146200015857600080fd5b34620001cd576000366003190112620001cd5760408051908101906001600160401b03821181831017620001b757620001b39160405260038152620302e360ec1b602082015260405191829160208352602083019062001469565b0390f35b634e487b7160e01b600052604160045260246000fd5b600080fd5b34620001cd576020366003190112620001cd576001600160a01b03620001f762001384565b166000526066602052602060ff600160406000200154166040519015158152f35b34620001cd576020366003190112620001cd576200023562001384565b6200023f620014ab565b6001600160a01b038116156200025c576200025a906200150d565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34620001cd576020366003190112620001cd57620002cd62001384565b60ff60005460081c1615620002e7576200025a906200150d565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b34620001cd57600319602036820112620001cd576001600160401b0360043511620001cd576101808160043536030112620001cd576040519061018082016001600160401b03811183821017620001b757604052620003a46004356004016200139b565b8252600435602401356001600160a01b0381168103620001cd576020830152600435604481013560408401526064810135606084015260848101356080840152620003f29060a4016200139b565b60a08301526200040760c4600435016200139b565b60c083015260043560e401356001600160401b038111620001cd5760409060043501918236030112620001cd5760408051919082016001600160401b03811183821017620001b757604052600481013582526024810135906001600160401b038211620001cd5760046200047f923692010162001448565b602082015260e082015260043561010401356001600160a01b0381168103620001cd5761010082015260043561012401356001600160401b038111620001cd57620004d290600436918135010162001448565b61012082015260043561014401358015159003620001cd576004356101448101356101408301526001600160401b036101649091013511620001cd57620005253660048035610164810135010162001448565b61016082015260655460001981146200075b576001810160655560808201523060a0820152606854606954606a546001600160a01b03928316936200068393620006ad93919291811691166200057a6200171c565b60408051633419635560e01b60208083019190915260806024830181905287516001600160a01b0390811660a485015282890151811660c48501528885015160e485015260608901516101048501529088015161012484015260a0880151811661014484015260c08801511661016483015260e0870151610180610184840152805161022484015201516102448201929092529687959293929091620006269061026488019062001469565b6101008201516001600160a01b03166101a488015261012082015187820360a3199081016101c48a0152916101609162000661919062001469565b9261014081015115156101e48a01520151908783030161020488015262001469565b604485019390935260648401526001600160a01b0316608483015203601f198101835282620013cc565b6040519161041080840192906001600160401b03841185851017620001b7578493620006ec936040926200183d87398152816020820152019062001469565b03906000f080156200074f5760209060018060a01b031680600052606682526001604060002001600160ff198254161790557fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2982604051838152a1604051908152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052601160045260246000fd5b34620001cd576000366003190112620001cd576067546040516001600160a01b039091168152602090f35b34620001cd576040366003190112620001cd577fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c6040620007dc62001384565b60243590620007ea620014ab565b60018060a01b03169081600052606660205280836000205582519182526020820152a1005b34620001cd576020366003190112620001cd576200082c62001384565b62000836620014ab565b606a80546001600160a01b0319166001600160a01b0392909216919091179055005b34620001cd576000366003190112620001cd576020606554604051908152f35b34620001cd576000366003190112620001cd576020620008976200171c565b6040516001600160a01b039091168152f35b34620001cd576020366003190112620001cd5760008051602062001d0d8339815191526020620008d862001384565b620008e2620014ab565b620008ed8162001819565b606780546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b34620001cd576000366003190112620001cd57606a546040516001600160a01b039091168152602090f35b34620001cd576000366003190112620001cd576200095d620014ab565b603380546001600160a01b031981169091556000906001600160a01b031660008051602062001ccd8339815191528280a3005b34620001cd576020366003190112620001cd57620009ad62001384565b620009b7620014ab565b606880546001600160a01b0319166001600160a01b0392909216919091179055005b34620001cd576000366003190112620001cd57600260005460ff8160081c16158062000a30575b62000a0b90620017b5565b61ffff19161760005560008051602062001cad833981519152602060405160028152a1005b5060ff8116821162000a00565b34620001cd576000366003190112620001cd576069546040516001600160a01b039091168152602090f35b34620001cd576040366003190112620001cd5762000a8562001384565b60243590811515809203620001cd577fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f629160409162000ac3620014ab565b60018060a01b0316908160005260666020526001836000200160ff1981541660ff831617905582519182526020820152a1005b34620001cd576000366003190112620001cd577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300362000b5357602060405160008051602062001c8d8339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b6040366003190112620001cd5762000bd062001384565b6024356001600160401b038111620001cd5736602382011215620001cd5762000c049036906024816004013591016200140c565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919062000c3f3084141562001545565b62000c5f60008051602062001c8d83398151915293828554161462001596565b62000c696200171c565b813391160362000e555760008051602062001c4d8339815191525460ff161562000c9b575050506200025a90620015e7565b8316604051926352d1902d60e01b84526020938481600481865afa6000918162000e20575b5062000d115760405162461bcd60e51b815260048101869052602e602482015260008051602062001d6d83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9392930362000dda5762000d2584620015e7565b60008051602062001ced833981519152600080a281511580159062000dd1575b62000d4c57005b6200025a926000806040519462000d6386620013b0565b6027865260008051602062001d4d83398151915285870152660819985a5b195960ca1b60408701528481519101845af4903d1562000dc7573d62000da781620013f0565b9062000db76040519283620013cc565b8152600081943d92013e62001679565b6060925062001679565b50600162000d45565b60405162461bcd60e51b8152600481018390526029602482015260008051602062001d2d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508581813d831162000e4d575b62000e3b8183620013cc565b81010312620001cd5751908762000cc0565b503d62000e2f565b60449062000e626200171c565b60405163163678e960e01b815233600482015291166024820152fd5b34620001cd57602080600319360112620001cd5762000e9c62001384565b6001600160a01b03917f0000000000000000000000000000000000000000000000000000000000000000831662000ed63082141562001545565b62000ef660008051602062001c8d83398151915291858354161462001596565b62000f006200171c565b8433911603620010e857604051828101949091906001600160401b03861183871017620001b757856040526000835260ff60008051602062001c4d833981519152541660001462000f5b57505050506200025a9150620015e7565b8492939416906040516352d1902d60e01b81528581600481865afa60009181620010b3575b5062000fd15760405162461bcd60e51b815260048101879052602e602482015260008051602062001d6d83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b949394036200106d5762000fe582620015e7565b60008051602062001ced833981519152600080a282511580159062001064575b6200100c57005b6000806200025a95604051956200102387620013b0565b6027875260008051602062001d4d83398151915286880152660819985a5b195960ca1b60408801525190845af4903d1562000dc7573d62000da781620013f0565b50600062001005565b60405162461bcd60e51b8152600481018490526029602482015260008051602062001d2d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d8311620010e0575b620010ce8183620013cc565b81010312620001cd5751908862000f80565b503d620010c2565b60448462000e626200171c565b34620001cd576020366003190112620001cd576200111262001384565b6200111c620014ab565b606980546001600160a01b0319166001600160a01b0392909216919091179055005b34620001cd5760a0366003190112620001cd576200115b62001384565b6001600160a01b039060243590828216808303620001cd5760443591848316808403620001cd57606435868116809103620001cd5760843596871692838803620001cd576000549760ff8960081c16159889809a620012b4575b80156200129b575b620011c890620017b5565b60ff1981166001176000558962001288575b5060ff60005460081c1615620002e757620012206020976200122060008051602062001d0d8339815191529a6200121562001226966200150d565b600060655562001819565b62001819565b60018060a01b03199184836067541617606755826068541617606855816069541617606955606a541617606a55604051908152a16200126157005b61ff00196000541660005560008051602062001cad833981519152602060405160018152a1005b61ffff19166101011760005589620011da565b50303b158015620011bd575060ff8116600114620011bd565b50600160ff821610620011b5565b34620001cd576020366003190112620001cd576001600160a01b03620012e762001384565b1680600052606660205260ff60016040600020015416156200131b5760005260666020526020604060002054604051908152f35b6024906040519063f5a6943d60e01b82526004820152fd5b34620001cd576000366003190112620001cd576068546040516001600160a01b039091168152602090f35b34620001cd576000366003190112620001cd576033546001600160a01b03168152602090f35b600435906001600160a01b0382168203620001cd57565b35906001600160a01b0382168203620001cd57565b606081019081106001600160401b03821117620001b757604052565b601f909101601f19168101906001600160401b03821190821017620001b757604052565b6001600160401b038111620001b757601f01601f191660200190565b9291926200141a82620013f0565b916200142a6040519384620013cc565b829481845281830111620001cd578281602093846000960137010152565b9080601f83011215620001cd5781602062001466933591016200140c565b90565b919082519283825260005b84811062001496575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520162001474565b620014b56200171c565b336001600160a01b0390911603620014c957565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062001ccd833981519152600080a3565b156200154d57565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001c6d83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b156200159e57565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001c6d83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b156200161e5760008051602062001c8d83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b91929015620016de57508151156200168f575090565b3b15620016995790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b825190915015620016f25750805190602001fd5b60405162461bcd60e51b8152602060048201529081906200171890602483019062001469565b0390fd5b6033546001600160a01b0390811690813b62001736575090565b604051638da5cb5b60e01b8152602081600481865afa91829160009362001768575b505062001763575090565b905090565b602093919293813d8211620017ac575b816200178760209383620013cc565b81010312620017a857519182168203620017a5575090388062001758565b80fd5b5080fd5b3d915062001778565b15620017bd57565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b6001600160a01b0316156200182a57565b6040516303988b8160e61b8152600490fdfe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c634300081300334910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024988be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3bbdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a2646970667358221220e355ecbc280967cdfc7c1ad1dcb447afc9c389ec7583f417cdb7c44b32b3f6d764736f6c63430008130033","sourceMap":"433:976:105:-:0;;;;;;;1088:4:61;1080:13;;433:976:105;;;;;;1080:13:61;433:976:105;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60808060405260043610156200001457600080fd5b60003560e01c908163025313a2146200135e5750806302c1d0b114620013335780630a992e0c14620012c25780631459457a146200113e5780631b71f0e414620010f55780633659cfe61462000e7e5780634f1ef2861462000bb957806352d1902d1462000af65780635a2c8ace1462000a685780635c94e4d21462000a3d5780635cd8a76b14620009d95780635decae021462000990578063715018a6146200094057806377122d5614620009155780638279c7db14620008a95780638da5cb5b1462000878578063987435be1462000771578063affed0e01462000858578063b0d3713a146200080f578063b5b3ca2c146200079c578063b8bed9011462000771578063beb331a31462000340578063c4d66de814620002b0578063f2fde38b1462000218578063f5016b5e14620001d25763ffa1ad74146200015857600080fd5b34620001cd576000366003190112620001cd5760408051908101906001600160401b03821181831017620001b757620001b39160405260038152620302e360ec1b602082015260405191829160208352602083019062001469565b0390f35b634e487b7160e01b600052604160045260246000fd5b600080fd5b34620001cd576020366003190112620001cd576001600160a01b03620001f762001384565b166000526066602052602060ff600160406000200154166040519015158152f35b34620001cd576020366003190112620001cd576200023562001384565b6200023f620014ab565b6001600160a01b038116156200025c576200025a906200150d565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34620001cd576020366003190112620001cd57620002cd62001384565b60ff60005460081c1615620002e7576200025a906200150d565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b34620001cd57600319602036820112620001cd576001600160401b0360043511620001cd576101808160043536030112620001cd576040519061018082016001600160401b03811183821017620001b757604052620003a46004356004016200139b565b8252600435602401356001600160a01b0381168103620001cd576020830152600435604481013560408401526064810135606084015260848101356080840152620003f29060a4016200139b565b60a08301526200040760c4600435016200139b565b60c083015260043560e401356001600160401b038111620001cd5760409060043501918236030112620001cd5760408051919082016001600160401b03811183821017620001b757604052600481013582526024810135906001600160401b038211620001cd5760046200047f923692010162001448565b602082015260e082015260043561010401356001600160a01b0381168103620001cd5761010082015260043561012401356001600160401b038111620001cd57620004d290600436918135010162001448565b61012082015260043561014401358015159003620001cd576004356101448101356101408301526001600160401b036101649091013511620001cd57620005253660048035610164810135010162001448565b61016082015260655460001981146200075b576001810160655560808201523060a0820152606854606954606a546001600160a01b03928316936200068393620006ad93919291811691166200057a6200171c565b60408051633419635560e01b60208083019190915260806024830181905287516001600160a01b0390811660a485015282890151811660c48501528885015160e485015260608901516101048501529088015161012484015260a0880151811661014484015260c08801511661016483015260e0870151610180610184840152805161022484015201516102448201929092529687959293929091620006269061026488019062001469565b6101008201516001600160a01b03166101a488015261012082015187820360a3199081016101c48a0152916101609162000661919062001469565b9261014081015115156101e48a01520151908783030161020488015262001469565b604485019390935260648401526001600160a01b0316608483015203601f198101835282620013cc565b6040519161041080840192906001600160401b03841185851017620001b7578493620006ec936040926200183d87398152816020820152019062001469565b03906000f080156200074f5760209060018060a01b031680600052606682526001604060002001600160ff198254161790557fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2982604051838152a1604051908152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052601160045260246000fd5b34620001cd576000366003190112620001cd576067546040516001600160a01b039091168152602090f35b34620001cd576040366003190112620001cd577fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c6040620007dc62001384565b60243590620007ea620014ab565b60018060a01b03169081600052606660205280836000205582519182526020820152a1005b34620001cd576020366003190112620001cd576200082c62001384565b62000836620014ab565b606a80546001600160a01b0319166001600160a01b0392909216919091179055005b34620001cd576000366003190112620001cd576020606554604051908152f35b34620001cd576000366003190112620001cd576020620008976200171c565b6040516001600160a01b039091168152f35b34620001cd576020366003190112620001cd5760008051602062001d0d8339815191526020620008d862001384565b620008e2620014ab565b620008ed8162001819565b606780546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b34620001cd576000366003190112620001cd57606a546040516001600160a01b039091168152602090f35b34620001cd576000366003190112620001cd576200095d620014ab565b603380546001600160a01b031981169091556000906001600160a01b031660008051602062001ccd8339815191528280a3005b34620001cd576020366003190112620001cd57620009ad62001384565b620009b7620014ab565b606880546001600160a01b0319166001600160a01b0392909216919091179055005b34620001cd576000366003190112620001cd57600260005460ff8160081c16158062000a30575b62000a0b90620017b5565b61ffff19161760005560008051602062001cad833981519152602060405160028152a1005b5060ff8116821162000a00565b34620001cd576000366003190112620001cd576069546040516001600160a01b039091168152602090f35b34620001cd576040366003190112620001cd5762000a8562001384565b60243590811515809203620001cd577fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f629160409162000ac3620014ab565b60018060a01b0316908160005260666020526001836000200160ff1981541660ff831617905582519182526020820152a1005b34620001cd576000366003190112620001cd577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300362000b5357602060405160008051602062001c8d8339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b6040366003190112620001cd5762000bd062001384565b6024356001600160401b038111620001cd5736602382011215620001cd5762000c049036906024816004013591016200140c565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919062000c3f3084141562001545565b62000c5f60008051602062001c8d83398151915293828554161462001596565b62000c696200171c565b813391160362000e555760008051602062001c4d8339815191525460ff161562000c9b575050506200025a90620015e7565b8316604051926352d1902d60e01b84526020938481600481865afa6000918162000e20575b5062000d115760405162461bcd60e51b815260048101869052602e602482015260008051602062001d6d83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9392930362000dda5762000d2584620015e7565b60008051602062001ced833981519152600080a281511580159062000dd1575b62000d4c57005b6200025a926000806040519462000d6386620013b0565b6027865260008051602062001d4d83398151915285870152660819985a5b195960ca1b60408701528481519101845af4903d1562000dc7573d62000da781620013f0565b9062000db76040519283620013cc565b8152600081943d92013e62001679565b6060925062001679565b50600162000d45565b60405162461bcd60e51b8152600481018390526029602482015260008051602062001d2d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508581813d831162000e4d575b62000e3b8183620013cc565b81010312620001cd5751908762000cc0565b503d62000e2f565b60449062000e626200171c565b60405163163678e960e01b815233600482015291166024820152fd5b34620001cd57602080600319360112620001cd5762000e9c62001384565b6001600160a01b03917f0000000000000000000000000000000000000000000000000000000000000000831662000ed63082141562001545565b62000ef660008051602062001c8d83398151915291858354161462001596565b62000f006200171c565b8433911603620010e857604051828101949091906001600160401b03861183871017620001b757856040526000835260ff60008051602062001c4d833981519152541660001462000f5b57505050506200025a9150620015e7565b8492939416906040516352d1902d60e01b81528581600481865afa60009181620010b3575b5062000fd15760405162461bcd60e51b815260048101879052602e602482015260008051602062001d6d83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b949394036200106d5762000fe582620015e7565b60008051602062001ced833981519152600080a282511580159062001064575b6200100c57005b6000806200025a95604051956200102387620013b0565b6027875260008051602062001d4d83398151915286880152660819985a5b195960ca1b60408801525190845af4903d1562000dc7573d62000da781620013f0565b50600062001005565b60405162461bcd60e51b8152600481018490526029602482015260008051602062001d2d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d8311620010e0575b620010ce8183620013cc565b81010312620001cd5751908862000f80565b503d620010c2565b60448462000e626200171c565b34620001cd576020366003190112620001cd576200111262001384565b6200111c620014ab565b606980546001600160a01b0319166001600160a01b0392909216919091179055005b34620001cd5760a0366003190112620001cd576200115b62001384565b6001600160a01b039060243590828216808303620001cd5760443591848316808403620001cd57606435868116809103620001cd5760843596871692838803620001cd576000549760ff8960081c16159889809a620012b4575b80156200129b575b620011c890620017b5565b60ff1981166001176000558962001288575b5060ff60005460081c1615620002e757620012206020976200122060008051602062001d0d8339815191529a6200121562001226966200150d565b600060655562001819565b62001819565b60018060a01b03199184836067541617606755826068541617606855816069541617606955606a541617606a55604051908152a16200126157005b61ff00196000541660005560008051602062001cad833981519152602060405160018152a1005b61ffff19166101011760005589620011da565b50303b158015620011bd575060ff8116600114620011bd565b50600160ff821610620011b5565b34620001cd576020366003190112620001cd576001600160a01b03620012e762001384565b1680600052606660205260ff60016040600020015416156200131b5760005260666020526020604060002054604051908152f35b6024906040519063f5a6943d60e01b82526004820152fd5b34620001cd576000366003190112620001cd576068546040516001600160a01b039091168152602090f35b34620001cd576000366003190112620001cd576033546001600160a01b03168152602090f35b600435906001600160a01b0382168203620001cd57565b35906001600160a01b0382168203620001cd57565b606081019081106001600160401b03821117620001b757604052565b601f909101601f19168101906001600160401b03821190821017620001b757604052565b6001600160401b038111620001b757601f01601f191660200190565b9291926200141a82620013f0565b916200142a6040519384620013cc565b829481845281830111620001cd578281602093846000960137010152565b9080601f83011215620001cd5781602062001466933591016200140c565b90565b919082519283825260005b84811062001496575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520162001474565b620014b56200171c565b336001600160a01b0390911603620014c957565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062001ccd833981519152600080a3565b156200154d57565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001c6d83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b156200159e57565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001c6d83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b156200161e5760008051602062001c8d83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b91929015620016de57508151156200168f575090565b3b15620016995790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b825190915015620016f25750805190602001fd5b60405162461bcd60e51b8152602060048201529081906200171890602483019062001469565b0390fd5b6033546001600160a01b0390811690813b62001736575090565b604051638da5cb5b60e01b8152602081600481865afa91829160009362001768575b505062001763575090565b905090565b602093919293813d8211620017ac575b816200178760209383620013cc565b81010312620017a857519182168203620017a5575090388062001758565b80fd5b5080fd5b3d915062001778565b15620017bd57565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b6001600160a01b0316156200182a57565b6040516303988b8160e61b8152600490fdfe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c634300081300334910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024988be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3bbdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a2646970667358221220e355ecbc280967cdfc7c1ad1dcb447afc9c389ec7583f417cdb7c44b32b3f6d764736f6c63430008130033","sourceMap":"433:976:105:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;-1:-1:-1;;;433:976:105;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;-1:-1:-1;;;;;433:976:105;;:::i;:::-;;;;4853:15:104;433:976:105;;;689:66:57;433:976:105;;;;4853:33:104;689:66:57;;433:976:105;;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;433:976:105;;2423:22:42;433:976:105;;2517:8:42;;;:::i;:::-;433:976:105;;;;-1:-1:-1;;;433:976:105;;;;;;;;;;;;;;;;;-1:-1:-1;;;433:976:105;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;;;:::i;:::-;689:66:57;433:976:105;;;;689:66:57;433:976:105;;;499:12:102;;;:::i;433:976:105:-;;;-1:-1:-1;;;433:976:105;;;;;;;;;;;;;;;;;-1:-1:-1;;;433:976:105;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;752:7;433:976;-1:-1:-1;;433:976:105;;;;;;;752:7;433:976;;;;;803:4;433:976;;;;878:25;433:976;1009:16;433:976;1027:23;433:976;-1:-1:-1;;;;;433:976:105;;;;;;918:155;;433:976;;;;;;;1052:7;;:::i;:::-;433:976;;;-1:-1:-1;;;433:976:105;918:155;;;;;;;433:976;;918:155;;433:976;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;958:41;433:976;;;;;;;;;;;;;;;;;;;;;;;;;;;;;958:41;;433:976;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;;;;-1:-1:-1;433:976:105;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;918:155;-1:-1:-1;;918:155:105;;;;;;:::i;:::-;433:976;;;840:243;;;;;;-1:-1:-1;;;;;840:243:105;;;;;;;;;;433:976;840:243;433:976;840:243;;;;433:976;;;;;;;;;;:::i;:::-;840:243;;433:976;840:243;;;;;433:976;;;;;;;;;;;1242:15;433:976;;;;;;1242:49;433:976;;;;;;;;;1313:44;433:976;;;;;;1313:44;433:976;;;;;;840:243;433:976;;689:66:57;433:976:105;689:66:57;;;;;433:976:105;;;;;;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;714:33:104;433:976:105;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;4479:43:104;433:976:105;;;:::i;:::-;;;1324:62:42;;;:::i;:::-;433:976:105;;;;;;;;;;4415:15:104;433:976:105;;;;;;;;;;;;;;;;4479:43:104;433:976:105;;;;;;;-1:-1:-1;;433:976:105;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2211:34:104;433:976:105;;-1:-1:-1;;;;;;433:976:105;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;;632:20:104;433:976:105;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;-1:-1:-1;;;;;;;;;;;433:976:105;;;:::i;:::-;1324:62:42;;:::i;:::-;4069:15:104;;;:::i;:::-;4095:36;433:976:105;;-1:-1:-1;;;;;;433:976:105;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;4146:31:104;433:976:105;;;;;;;-1:-1:-1;;433:976:105;;;;836:38:104;433:976:105;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;1324:62:42;;:::i;:::-;2779:6;433:976:105;;-1:-1:-1;;;;;;433:976:105;;;;;;;-1:-1:-1;;;;;433:976:105;-1:-1:-1;;;;;;;;;;;433:976:105;;2827:40:42;433:976:105;;;;;;;-1:-1:-1;;433:976:105;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;1947:36:104;433:976:105;;-1:-1:-1;;;;;;433:976:105;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;536:1;433:976;;689:66:57;433:976:105;;;689:66:57;4881:14:44;:40;;;433:976:105;4873:99:44;;;:::i;:::-;433:976:105;;;;;;-1:-1:-1;;;;;;;;;;;433:976:105;;;536:1;433:976;;5091:20:44;433:976:105;4881:40:44;-1:-1:-1;689:66:57;;;4899:22:44;-1:-1:-1;4881:40:44;;433:976:105;;;;;;-1:-1:-1;;433:976:105;;;;799:31:104;433:976:105;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;;;:::i;:::-;;;;;;;;;;;;4694:42:104;1324:62:42;433:976:105;1324:62:42;;;:::i;:::-;433:976:105;;;;;;;;;;4635:15:104;433:976:105;;;;;;4635:33:104;433:976:105;;;;;;;;;;;;;;;;;;;;4694:42:104;433:976:105;;;;;;;-1:-1:-1;;433:976:105;;;;2089:6:61;-1:-1:-1;;;;;433:976:105;2080:4:61;2072:23;433:976:105;;;;;-1:-1:-1;;;;;;;;;;;433:976:105;;;;;;-1:-1:-1;;;433:976:105;;;;;;;;;;;;;;;;;-1:-1:-1;;;433:976:105;;;;;;;;;;-1:-1:-1;;433:976:105;;;;;;:::i;:::-;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1654:6:61;433:976:105;;;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;433:976:105;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;433:976:105;;1256:21:102;1252:94;;-1:-1:-1;;;;;;;;;;;689:66:57;;;;;;2993:17;;;;;;:::i;2906:504::-;433:976:105;;;;689:66:57;;;;3046:52;;;;;;433:976:105;3046:52:57;;;;433:976:105;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;433:976:105;;-1:-1:-1;;;3262:56:57;;433:976:105;3262:56:57;;689:66;;;;433:976:105;689:66:57;;433:976:105;-1:-1:-1;;;;;;;;;;;433:976:105;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;433:976:105;1889:27:57;;433:976:105;;2208:15:57;;;:28;;;3042:291;2204:112;;433:976:105;2204:112:57;7307:69:73;433:976:105;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;433:976:105;;;;-1:-1:-1;;;433:976:105;;;;7265:25:73;;;;;;;;;433:976:105;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;7307:69:73;:::i;433:976:105:-;;;-1:-1:-1;7307:69:73;:::i;2208:28:57:-;;433:976:105;2208:28:57;;689:66;433:976:105;;-1:-1:-1;;;689:66:57;;433:976:105;689:66:57;;;;;;433:976:105;689:66:57;;433:976:105;-1:-1:-1;;;;;;;;;;;433:976:105;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;;;;;;1252:94:102;433:976:105;1327:7:102;;;:::i;:::-;433:976:105;;-1:-1:-1;;;1300:35:102;;1267:10;433:976:105;1300:35:102;;433:976:105;;;;;;;1300:35:102;433:976:105;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;433:976:105;1654:6:61;433:976:105;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;433:976:105;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;433:976:105;;1256:21:102;1252:94;;433:976:105;;;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;689:66:57;-1:-1:-1;;;;;;;;;;;689:66:57;;2906:504;689:66;;;2993:17;;;;;;;;:::i;2906:504::-;433:976:105;;;;;;;;689:66:57;;;3046:52;;;;433:976:105;3046:52:57;;;;433:976:105;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;433:976:105;;-1:-1:-1;;;3262:56:57;;433:976:105;3262:56:57;;689:66;;;;;;;433:976:105;-1:-1:-1;;;;;;;;;;;433:976:105;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;433:976:105;1889:27:57;;433:976:105;;2208:15:57;;;:28;;;3042:291;2204:112;;433:976:105;2204:112:57;433:976:105;;7307:69:73;433:976:105;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;433:976:105;;;;-1:-1:-1;;;433:976:105;;;;7265:25:73;;;;;;433:976:105;;;;;;;;:::i;2208:28:57:-;;433:976:105;2208:28:57;;689:66;433:976:105;;-1:-1:-1;;;689:66:57;;433:976:105;689:66:57;;;;;;;;;433:976:105;-1:-1:-1;;;;;;;;;;;433:976:105;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;;;;;;1252:94:102;433:976:105;1327:7:102;;;:::i;433:976:105:-;;;;;;-1:-1:-1;;433:976:105;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2080:27:104;433:976:105;;-1:-1:-1;;;;;;433:976:105;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;;;:::i;:::-;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;689:66:57;433:976:105;;;689:66:57;3301:14:44;3347:34;;;;;;433:976:105;3346:108:44;;;;433:976:105;3325:201:44;;;:::i;:::-;-1:-1:-1;;433:976:105;;;;;;;3562:65:44;;433:976:105;;689:66:57;433:976:105;;;;689:66:57;433:976:105;;;2616:26:104;433:976:105;499:12:102;2567:19:104;-1:-1:-1;;;;;;;;;;;499:12:102;;2672:24:104;499:12:102;;:::i;:::-;433:976:105;2529:9:104;433:976:105;2567:19:104;:::i;:::-;2616:26;:::i;2672:24::-;433:976:105;;;;;;;;;2707:40:104;433:976:105;;;2707:40:104;433:976:105;;2757:54:104;433:976:105;;;2757:54:104;433:976:105;;2821:36:104;433:976:105;;;2821:36:104;433:976:105;2867:50:104;433:976:105;;;2867:50:104;433:976:105;;;;;;2932:35:104;3647:99:44;;433:976:105;3647:99:44;433:976:105;;;;;;;-1:-1:-1;;;;;;;;;;;433:976:105;;;;;;3721:14:44;433:976:105;3562:65:44;-1:-1:-1;;433:976:105;;;;;3562:65:44;;;3346:108;3426:4;;1702:19:73;:23;3387:66:44;;3346:108;3387:66;-1:-1:-1;689:66:57;;;433:976:105;3436:17:44;3346:108;;3347:34;689:66:57;433:976:105;689:66:57;;;3365:16:44;3347:34;;433:976:105;;;;;;-1:-1:-1;;433:976:105;;;;-1:-1:-1;;;;;433:976:105;;:::i;:::-;;;;;4998:15:104;433:976:105;;689:66:57;433:976:105;;;;4998:33:104;689:66:57;;4997:34:104;4993:100;;433:976:105;;4998:15:104;433:976:105;;;;;;;;;;;;;4993:100:104;433:976:105;;;;5054:28:104;;;;;;433:976:105;5054:28:104;;433:976:105;5054:28:104;433:976:105;;;;;;-1:-1:-1;;433:976:105;;;;753:40:104;433:976:105;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;;;;;-1:-1:-1;;433:976:105;;;;1534:6:42;433:976:105;-1:-1:-1;;;;;433:976:105;;;;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;:::o;:::-;;;-1:-1:-1;;;;;433:976:105;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;433:976:105;;;;;;;:::o;:::-;918:155;433:976;;;-1:-1:-1;;433:976:105;;;;-1:-1:-1;;;;;433:976:105;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;433:976:105;;;;918:155;433:976;-1:-1:-1;;433:976:105;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;433:976:105;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;918:155;;;433:976;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;1620:130:42;1683:7;;:::i;:::-;965:10:48;-1:-1:-1;;;;;433:976:105;;;1683:23:42;433:976:105;;1620:130:42:o;433:976:105:-;;;;;;;;;;;;;;;;;;;;;;;;;2687:187:42;2779:6;433:976:105;;-1:-1:-1;;;;;433:976:105;;;-1:-1:-1;;;;;;433:976:105;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;2827:40:42;2687:187::o;433:976:105:-;;;;:::o;:::-;;;-1:-1:-1;;;433:976:105;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;433:976:105;;;;-1:-1:-1;;;433:976:105;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;433:976:105;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;433:976:105;;;;-1:-1:-1;;;433:976:105;;;;;;;1406:259:57;1702:19:73;;:23;433:976:105;;-1:-1:-1;;;;;;;;;;;433:976:105;;-1:-1:-1;;;;;;433:976:105;-1:-1:-1;;;;;433:976:105;;;;;;;;;1406:259:57:o;433:976:105:-;;;-1:-1:-1;;;433:976:105;;;;;;;;;;;;;;;;;-1:-1:-1;;;433:976:105;;;;;;;7671:628:73;;;;7875:418;;;433:976:105;;;7906:22:73;7902:286;;8201:17;;:::o;7902:286::-;1702:19;:23;433:976:105;;8201:17:73;:::o;433:976:105:-;;;-1:-1:-1;;;433:976:105;;;;;;;;;;;;;;;;;;;;7875:418:73;433:976:105;;;;-1:-1:-1;8980:21:73;:17;;9152:142;;;;;;;8976:379;433:976:105;;-1:-1:-1;;;9324:20:73;;433:976:105;9324:20:73;;;433:976:105;;;;;;;;;;;:::i;:::-;9324:20:73;;;633:544:102;1534:6:42;433:976:105;-1:-1:-1;;;;;433:976:105;;;;755:33:102;;1534:6:42;;870:19:102;;:::o;751:420::-;433:976:105;;-1:-1:-1;;;924:40:102;;;433:976:105;924:40:102;433:976:105;924:40:102;;;;;;-1:-1:-1;924:40:102;;;751:420;-1:-1:-1;;920:241:102;;1127:19;;:::o;920:241::-;1008:13;;;:::o;924:40::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;433:976:105;;;;;;;;;;;;924:40:102;;;;;;433:976:105;;;;;;;924:40:102;;;-1:-1:-1;924:40:102;;433:976:105;;;;:::o;:::-;;;-1:-1:-1;;;433:976:105;;;;;;;;;;;;;;;;;-1:-1:-1;;;433:976:105;;;;;;;1707:141:104;-1:-1:-1;;;;;433:976:105;1789:22:104;1785:56;;1707:141::o;1785:56::-;433:976:105;;-1:-1:-1;;;1820:21:104;;;;","linkReferences":{},"immutableReferences":{"54869":[{"start":2827,"length":32},{"start":3086,"length":32},{"start":3751,"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","proxyOwner()":"025313a2","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\":\"proxyOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda\",\"dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f\",\"dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol\":{\"keccak256\":\"0x8cdd8c12149d04ad06e90e32ff7e81f6724c4d9998de8ad1179b74298581e4bf\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://12615c9c0d9db4927cfcc0c9feea6137eea0a113734979a265be564de4e2c26a\",\"dweb:/ipfs/QmSs1YbQyBRkEPg8qLnFJY2iAnsST6PaRec91BXjKxT6kh\"]},\"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":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{},"viaIR":true},"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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f","urls":["bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda","dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19","urls":["bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f","dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol":{"keccak256":"0x8cdd8c12149d04ad06e90e32ff7e81f6724c4d9998de8ad1179b74298581e4bf","urls":["bzz-raw://12615c9c0d9db4927cfcc0c9feea6137eea0a113734979a265be564de4e2c26a","dweb:/ipfs/QmSs1YbQyBRkEPg8qLnFJY2iAnsST6PaRec91BXjKxT6kh"],"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":52287,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52290,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":52992,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52079,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52199,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":73300,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":73305,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)73292_storage)"},{"astId":73307,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":73309,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":73311,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":73313,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":73645,"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)73292_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)73292_storage"},"t_struct(CommunityInfo)73292_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":73289,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":73291,"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":73752,"exportedSymbols":{"ERC1967Proxy":[54318],"RegistryCommunityInitializeParamsV0_0":[71072],"RegistryCommunityV0_0":[73276],"RegistryFactoryV0_0":[73646],"RegistryFactoryV0_1":[73751]},"nodeType":"SourceUnit","src":"42:1368:105","nodes":[{"id":73648,"nodeType":"PragmaDirective","src":"42:24:105","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":73651,"nodeType":"ImportDirective","src":"68:93:105","nodes":[],"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","file":"../RegistryFactory/RegistryFactoryV0_0.sol","nameLocation":"-1:-1:-1","scope":73752,"sourceUnit":73647,"symbolAliases":[{"foreign":{"id":73649,"name":"RegistryFactoryV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73646,"src":"76:19:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":73650,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54318,"src":"97:12:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73654,"nodeType":"ImportDirective","src":"162:134:105","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":73752,"sourceUnit":73277,"symbolAliases":[{"foreign":{"id":73652,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71072,"src":"175:37:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":73653,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73276,"src":"218:21:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73656,"nodeType":"ImportDirective","src":"297:85:105","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":73752,"sourceUnit":73277,"symbolAliases":[{"foreign":{"id":73655,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73276,"src":"305:21:105","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73751,"nodeType":"ContractDefinition","src":"433:976:105","nodes":[{"id":73666,"nodeType":"FunctionDefinition","src":"491:50:105","nodes":[],"body":{"id":73665,"nodeType":"Block","src":"539:2:105","nodes":[],"statements":[]},"functionSelector":"5cd8a76b","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":73662,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"536:1:105","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":73663,"kind":"modifierInvocation","modifierName":{"id":73661,"name":"reinitializer","nameLocations":["522:13:105"],"nodeType":"IdentifierPath","referencedDeclaration":52384,"src":"522:13:105"},"nodeType":"ModifierInvocation","src":"522:16:105"}],"name":"initializeV2","nameLocation":"500:12:105","parameters":{"id":73660,"nodeType":"ParameterList","parameters":[],"src":"512:2:105"},"returnParameters":{"id":73664,"nodeType":"ParameterList","parameters":[],"src":"539:0:105"},"scope":73751,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":73750,"nodeType":"FunctionDefinition","src":"547:860:105","nodes":[],"body":{"id":73749,"nodeType":"Block","src":"726:681:105","nodes":[],"statements":[{"expression":{"id":73680,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":73675,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73669,"src":"736:6:105","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":73677,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"743:6:105","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":71056,"src":"736:13:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73679,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"752:7:105","subExpression":{"id":73678,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73300,"src":"752:5:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"736:23:105","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73681,"nodeType":"ExpressionStatement","src":"736:23:105"},{"expression":{"id":73689,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":73682,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73669,"src":"769:6:105","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":73684,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"776:16:105","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":71058,"src":"769:23:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":73687,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"803:4:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_1_$73751","typeString":"contract RegistryFactoryV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryV0_1_$73751","typeString":"contract RegistryFactoryV0_1"}],"id":73686,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"795:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73685,"name":"address","nodeType":"ElementaryTypeName","src":"795:7:105","typeDescriptions":{}}},"id":73688,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"795:13:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"769:39:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73690,"nodeType":"ExpressionStatement","src":"769:39:105"},{"assignments":[73693],"declarations":[{"constant":false,"id":73693,"mutability":"mutable","name":"proxy","nameLocation":"832:5:105","nodeType":"VariableDeclaration","scope":73749,"src":"819:18:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"},"typeName":{"id":73692,"nodeType":"UserDefinedTypeName","pathNode":{"id":73691,"name":"ERC1967Proxy","nameLocations":["819:12:105"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"819:12:105"},"referencedDeclaration":54318,"src":"819:12:105","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":73713,"initialValue":{"arguments":[{"arguments":[{"id":73699,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73309,"src":"878:25:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73698,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"870:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73697,"name":"address","nodeType":"ElementaryTypeName","src":"870:7:105","typeDescriptions":{}}},"id":73700,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"870:34:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":73703,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73276,"src":"958:21:105","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73276_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":73704,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"980:10:105","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":71771,"src":"958:32:105","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":73705,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"991:8:105","memberName":"selector","nodeType":"MemberAccess","src":"958:41:105","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":73706,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73669,"src":"1001:6:105","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":73707,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73311,"src":"1009:16:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73708,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73313,"src":"1027:23:105","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":73709,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[70983],"referencedDeclaration":70983,"src":"1052:5:105","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":73710,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1052:7:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":73701,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"918:3:105","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":73702,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"922:18:105","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"918:22:105","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":73711,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"918:155: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":73696,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"840:16:105","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$54318_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":73695,"nodeType":"UserDefinedTypeName","pathNode":{"id":73694,"name":"ERC1967Proxy","nameLocations":["844:12:105"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"844:12:105"},"referencedDeclaration":54318,"src":"844:12:105","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}},"id":73712,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"840:243:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"819:264:105"},{"assignments":[73716],"declarations":[{"constant":false,"id":73716,"mutability":"mutable","name":"registryCommunity","nameLocation":"1116:17:105","nodeType":"VariableDeclaration","scope":73749,"src":"1094:39:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":73715,"nodeType":"UserDefinedTypeName","pathNode":{"id":73714,"name":"RegistryCommunityV0_0","nameLocations":["1094:21:105"],"nodeType":"IdentifierPath","referencedDeclaration":73276,"src":"1094:21:105"},"referencedDeclaration":73276,"src":"1094:21:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":73726,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":73722,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73693,"src":"1174:5:105","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}],"id":73721,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1166:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73720,"name":"address","nodeType":"ElementaryTypeName","src":"1166:7:105","typeDescriptions":{}}},"id":73723,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1166:14:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73719,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1158:8:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":73718,"name":"address","nodeType":"ElementaryTypeName","src":"1158:8:105","stateMutability":"payable","typeDescriptions":{}}},"id":73724,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1158:23:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":73717,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73276,"src":"1136:21:105","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73276_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":73725,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1136:46:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"1094:88:105"},{"expression":{"id":73735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":73727,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73305,"src":"1242:15:105","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73292_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":73732,"indexExpression":{"arguments":[{"id":73730,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73716,"src":"1266:17:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}],"id":73729,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1258:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73728,"name":"address","nodeType":"ElementaryTypeName","src":"1258:7:105","typeDescriptions":{}}},"id":73731,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1258:26:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1242:43:105","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73292_storage","typeString":"struct CommunityInfo storage ref"}},"id":73733,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1286:5:105","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":73291,"src":"1242:49:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":73734,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"1294:4:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"1242:56:105","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":73736,"nodeType":"ExpressionStatement","src":"1242:56:105"},{"eventCall":{"arguments":[{"arguments":[{"id":73740,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73716,"src":"1338:17:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}],"id":73739,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1330:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73738,"name":"address","nodeType":"ElementaryTypeName","src":"1330:7:105","typeDescriptions":{}}},"id":73741,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1330:26:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73737,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73327,"src":"1313:16:105","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":73742,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1313:44:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":73743,"nodeType":"EmitStatement","src":"1308:49:105"},{"expression":{"arguments":[{"id":73746,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73716,"src":"1382:17:105","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73276","typeString":"contract RegistryCommunityV0_0"}],"id":73745,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1374:7:105","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73744,"name":"address","nodeType":"ElementaryTypeName","src":"1374:7:105","typeDescriptions":{}}},"id":73747,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1374:26:105","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":73674,"id":73748,"nodeType":"Return","src":"1367:33:105"}]},"baseFunctions":[73532],"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"556:14:105","overrides":{"id":73671,"nodeType":"OverrideSpecifier","overrides":[],"src":"663:8:105"},"parameters":{"id":73670,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73669,"mutability":"mutable","name":"params","nameLocation":"616:6:105","nodeType":"VariableDeclaration","scope":73750,"src":"571:51:105","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":73668,"nodeType":"UserDefinedTypeName","pathNode":{"id":73667,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["571:37:105"],"nodeType":"IdentifierPath","referencedDeclaration":71072,"src":"571:37:105"},"referencedDeclaration":71072,"src":"571:37:105","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71072_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"570:53:105"},"returnParameters":{"id":73674,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73673,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"697:23:105","nodeType":"VariableDeclaration","scope":73750,"src":"689:31:105","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73672,"name":"address","nodeType":"ElementaryTypeName","src":"689:7:105","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"688:33:105"},"scope":73751,"stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":73658,"name":"RegistryFactoryV0_0","nameLocations":["465:19:105"],"nodeType":"IdentifierPath","referencedDeclaration":73646,"src":"465:19:105"},"id":73659,"nodeType":"InheritanceSpecifier","src":"465:19:105"}],"canonicalName":"RegistryFactoryV0_1","contractDependencies":[54318],"contractKind":"contract","documentation":{"id":73657,"nodeType":"StructuredDocumentation","src":"384:49:105","text":"@custom:oz-upgrades-from RegistryFactoryV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[73751,73646,71005,54969,54622,54271,54281,52200,52993,52449],"name":"RegistryFactoryV0_1","nameLocation":"442:19:105","scope":73752,"usedErrors":[70920,73337,73339]}],"license":"AGPL-3.0-only"},"id":105} \ No newline at end of file +{"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":"proxyOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"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":"0x60a080604052346100315730608052611dc290816100378239608051818181610b0b01528181610c0e0152610ea70152f35b600080fdfe60808060405260043610156200001457600080fd5b60003560e01c908163025313a2146200135e5750806302c1d0b114620013335780630a992e0c14620012c25780631459457a146200113e5780631b71f0e414620010f55780633659cfe61462000e7e5780634f1ef2861462000bb957806352d1902d1462000af65780635a2c8ace1462000a685780635c94e4d21462000a3d5780635cd8a76b14620009d95780635decae021462000990578063715018a6146200094057806377122d5614620009155780638279c7db14620008a95780638da5cb5b1462000878578063987435be1462000771578063affed0e01462000858578063b0d3713a146200080f578063b5b3ca2c146200079c578063b8bed9011462000771578063beb331a31462000340578063c4d66de814620002b0578063f2fde38b1462000218578063f5016b5e14620001d25763ffa1ad74146200015857600080fd5b34620001cd576000366003190112620001cd5760408051908101906001600160401b03821181831017620001b757620001b39160405260038152620302e360ec1b602082015260405191829160208352602083019062001469565b0390f35b634e487b7160e01b600052604160045260246000fd5b600080fd5b34620001cd576020366003190112620001cd576001600160a01b03620001f762001384565b166000526066602052602060ff600160406000200154166040519015158152f35b34620001cd576020366003190112620001cd576200023562001384565b6200023f620014ab565b6001600160a01b038116156200025c576200025a906200150d565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34620001cd576020366003190112620001cd57620002cd62001384565b60ff60005460081c1615620002e7576200025a906200150d565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b34620001cd57600319602036820112620001cd576001600160401b0360043511620001cd576101808160043536030112620001cd576040519061018082016001600160401b03811183821017620001b757604052620003a46004356004016200139b565b8252600435602401356001600160a01b0381168103620001cd576020830152600435604481013560408401526064810135606084015260848101356080840152620003f29060a4016200139b565b60a08301526200040760c4600435016200139b565b60c083015260043560e401356001600160401b038111620001cd5760409060043501918236030112620001cd5760408051919082016001600160401b03811183821017620001b757604052600481013582526024810135906001600160401b038211620001cd5760046200047f923692010162001448565b602082015260e082015260043561010401356001600160a01b0381168103620001cd5761010082015260043561012401356001600160401b038111620001cd57620004d290600436918135010162001448565b61012082015260043561014401358015159003620001cd576004356101448101356101408301526001600160401b036101649091013511620001cd57620005253660048035610164810135010162001448565b61016082015260655460001981146200075b576001810160655560808201523060a0820152606854606954606a546001600160a01b03928316936200068393620006ad93919291811691166200057a6200171c565b60408051633419635560e01b60208083019190915260806024830181905287516001600160a01b0390811660a485015282890151811660c48501528885015160e485015260608901516101048501529088015161012484015260a0880151811661014484015260c08801511661016483015260e0870151610180610184840152805161022484015201516102448201929092529687959293929091620006269061026488019062001469565b6101008201516001600160a01b03166101a488015261012082015187820360a3199081016101c48a0152916101609162000661919062001469565b9261014081015115156101e48a01520151908783030161020488015262001469565b604485019390935260648401526001600160a01b0316608483015203601f198101835282620013cc565b6040519161041080840192906001600160401b03841185851017620001b7578493620006ec936040926200183d87398152816020820152019062001469565b03906000f080156200074f5760209060018060a01b031680600052606682526001604060002001600160ff198254161790557fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2982604051838152a1604051908152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052601160045260246000fd5b34620001cd576000366003190112620001cd576067546040516001600160a01b039091168152602090f35b34620001cd576040366003190112620001cd577fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c6040620007dc62001384565b60243590620007ea620014ab565b60018060a01b03169081600052606660205280836000205582519182526020820152a1005b34620001cd576020366003190112620001cd576200082c62001384565b62000836620014ab565b606a80546001600160a01b0319166001600160a01b0392909216919091179055005b34620001cd576000366003190112620001cd576020606554604051908152f35b34620001cd576000366003190112620001cd576020620008976200171c565b6040516001600160a01b039091168152f35b34620001cd576020366003190112620001cd5760008051602062001d0d8339815191526020620008d862001384565b620008e2620014ab565b620008ed8162001819565b606780546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b34620001cd576000366003190112620001cd57606a546040516001600160a01b039091168152602090f35b34620001cd576000366003190112620001cd576200095d620014ab565b603380546001600160a01b031981169091556000906001600160a01b031660008051602062001ccd8339815191528280a3005b34620001cd576020366003190112620001cd57620009ad62001384565b620009b7620014ab565b606880546001600160a01b0319166001600160a01b0392909216919091179055005b34620001cd576000366003190112620001cd57600260005460ff8160081c16158062000a30575b62000a0b90620017b5565b61ffff19161760005560008051602062001cad833981519152602060405160028152a1005b5060ff8116821162000a00565b34620001cd576000366003190112620001cd576069546040516001600160a01b039091168152602090f35b34620001cd576040366003190112620001cd5762000a8562001384565b60243590811515809203620001cd577fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f629160409162000ac3620014ab565b60018060a01b0316908160005260666020526001836000200160ff1981541660ff831617905582519182526020820152a1005b34620001cd576000366003190112620001cd577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300362000b5357602060405160008051602062001c8d8339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b6040366003190112620001cd5762000bd062001384565b6024356001600160401b038111620001cd5736602382011215620001cd5762000c049036906024816004013591016200140c565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919062000c3f3084141562001545565b62000c5f60008051602062001c8d83398151915293828554161462001596565b62000c696200171c565b813391160362000e555760008051602062001c4d8339815191525460ff161562000c9b575050506200025a90620015e7565b8316604051926352d1902d60e01b84526020938481600481865afa6000918162000e20575b5062000d115760405162461bcd60e51b815260048101869052602e602482015260008051602062001d6d83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9392930362000dda5762000d2584620015e7565b60008051602062001ced833981519152600080a281511580159062000dd1575b62000d4c57005b6200025a926000806040519462000d6386620013b0565b6027865260008051602062001d4d83398151915285870152660819985a5b195960ca1b60408701528481519101845af4903d1562000dc7573d62000da781620013f0565b9062000db76040519283620013cc565b8152600081943d92013e62001679565b6060925062001679565b50600162000d45565b60405162461bcd60e51b8152600481018390526029602482015260008051602062001d2d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508581813d831162000e4d575b62000e3b8183620013cc565b81010312620001cd5751908762000cc0565b503d62000e2f565b60449062000e626200171c565b60405163163678e960e01b815233600482015291166024820152fd5b34620001cd57602080600319360112620001cd5762000e9c62001384565b6001600160a01b03917f0000000000000000000000000000000000000000000000000000000000000000831662000ed63082141562001545565b62000ef660008051602062001c8d83398151915291858354161462001596565b62000f006200171c565b8433911603620010e857604051828101949091906001600160401b03861183871017620001b757856040526000835260ff60008051602062001c4d833981519152541660001462000f5b57505050506200025a9150620015e7565b8492939416906040516352d1902d60e01b81528581600481865afa60009181620010b3575b5062000fd15760405162461bcd60e51b815260048101879052602e602482015260008051602062001d6d83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b949394036200106d5762000fe582620015e7565b60008051602062001ced833981519152600080a282511580159062001064575b6200100c57005b6000806200025a95604051956200102387620013b0565b6027875260008051602062001d4d83398151915286880152660819985a5b195960ca1b60408801525190845af4903d1562000dc7573d62000da781620013f0565b50600062001005565b60405162461bcd60e51b8152600481018490526029602482015260008051602062001d2d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d8311620010e0575b620010ce8183620013cc565b81010312620001cd5751908862000f80565b503d620010c2565b60448462000e626200171c565b34620001cd576020366003190112620001cd576200111262001384565b6200111c620014ab565b606980546001600160a01b0319166001600160a01b0392909216919091179055005b34620001cd5760a0366003190112620001cd576200115b62001384565b6001600160a01b039060243590828216808303620001cd5760443591848316808403620001cd57606435868116809103620001cd5760843596871692838803620001cd576000549760ff8960081c16159889809a620012b4575b80156200129b575b620011c890620017b5565b60ff1981166001176000558962001288575b5060ff60005460081c1615620002e757620012206020976200122060008051602062001d0d8339815191529a6200121562001226966200150d565b600060655562001819565b62001819565b60018060a01b03199184836067541617606755826068541617606855816069541617606955606a541617606a55604051908152a16200126157005b61ff00196000541660005560008051602062001cad833981519152602060405160018152a1005b61ffff19166101011760005589620011da565b50303b158015620011bd575060ff8116600114620011bd565b50600160ff821610620011b5565b34620001cd576020366003190112620001cd576001600160a01b03620012e762001384565b1680600052606660205260ff60016040600020015416156200131b5760005260666020526020604060002054604051908152f35b6024906040519063f5a6943d60e01b82526004820152fd5b34620001cd576000366003190112620001cd576068546040516001600160a01b039091168152602090f35b34620001cd576000366003190112620001cd576033546001600160a01b03168152602090f35b600435906001600160a01b0382168203620001cd57565b35906001600160a01b0382168203620001cd57565b606081019081106001600160401b03821117620001b757604052565b601f909101601f19168101906001600160401b03821190821017620001b757604052565b6001600160401b038111620001b757601f01601f191660200190565b9291926200141a82620013f0565b916200142a6040519384620013cc565b829481845281830111620001cd578281602093846000960137010152565b9080601f83011215620001cd5781602062001466933591016200140c565b90565b919082519283825260005b84811062001496575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520162001474565b620014b56200171c565b336001600160a01b0390911603620014c957565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062001ccd833981519152600080a3565b156200154d57565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001c6d83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b156200159e57565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001c6d83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b156200161e5760008051602062001c8d83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b91929015620016de57508151156200168f575090565b3b15620016995790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b825190915015620016f25750805190602001fd5b60405162461bcd60e51b8152602060048201529081906200171890602483019062001469565b0390fd5b6033546001600160a01b0390811690813b62001736575090565b604051638da5cb5b60e01b8152602081600481865afa91829160009362001768575b505062001763575090565b905090565b602093919293813d8211620017ac575b816200178760209383620013cc565b81010312620017a857519182168203620017a5575090388062001758565b80fd5b5080fd5b3d915062001778565b15620017bd57565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b6001600160a01b0316156200182a57565b6040516303988b8160e61b8152600490fdfe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c634300081300334910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024988be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3bbdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a2646970667358221220b7dfc58d407bb250b71386062b17d9a4ce4d10bf6905d8ebcc8104599603ab1d64736f6c63430008130033","sourceMap":"433:976:106:-:0;;;;;;;1088:4:61;1080:13;;433:976:106;;;;;;1080:13:61;433:976:106;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x60808060405260043610156200001457600080fd5b60003560e01c908163025313a2146200135e5750806302c1d0b114620013335780630a992e0c14620012c25780631459457a146200113e5780631b71f0e414620010f55780633659cfe61462000e7e5780634f1ef2861462000bb957806352d1902d1462000af65780635a2c8ace1462000a685780635c94e4d21462000a3d5780635cd8a76b14620009d95780635decae021462000990578063715018a6146200094057806377122d5614620009155780638279c7db14620008a95780638da5cb5b1462000878578063987435be1462000771578063affed0e01462000858578063b0d3713a146200080f578063b5b3ca2c146200079c578063b8bed9011462000771578063beb331a31462000340578063c4d66de814620002b0578063f2fde38b1462000218578063f5016b5e14620001d25763ffa1ad74146200015857600080fd5b34620001cd576000366003190112620001cd5760408051908101906001600160401b03821181831017620001b757620001b39160405260038152620302e360ec1b602082015260405191829160208352602083019062001469565b0390f35b634e487b7160e01b600052604160045260246000fd5b600080fd5b34620001cd576020366003190112620001cd576001600160a01b03620001f762001384565b166000526066602052602060ff600160406000200154166040519015158152f35b34620001cd576020366003190112620001cd576200023562001384565b6200023f620014ab565b6001600160a01b038116156200025c576200025a906200150d565b005b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34620001cd576020366003190112620001cd57620002cd62001384565b60ff60005460081c1615620002e7576200025a906200150d565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b34620001cd57600319602036820112620001cd576001600160401b0360043511620001cd576101808160043536030112620001cd576040519061018082016001600160401b03811183821017620001b757604052620003a46004356004016200139b565b8252600435602401356001600160a01b0381168103620001cd576020830152600435604481013560408401526064810135606084015260848101356080840152620003f29060a4016200139b565b60a08301526200040760c4600435016200139b565b60c083015260043560e401356001600160401b038111620001cd5760409060043501918236030112620001cd5760408051919082016001600160401b03811183821017620001b757604052600481013582526024810135906001600160401b038211620001cd5760046200047f923692010162001448565b602082015260e082015260043561010401356001600160a01b0381168103620001cd5761010082015260043561012401356001600160401b038111620001cd57620004d290600436918135010162001448565b61012082015260043561014401358015159003620001cd576004356101448101356101408301526001600160401b036101649091013511620001cd57620005253660048035610164810135010162001448565b61016082015260655460001981146200075b576001810160655560808201523060a0820152606854606954606a546001600160a01b03928316936200068393620006ad93919291811691166200057a6200171c565b60408051633419635560e01b60208083019190915260806024830181905287516001600160a01b0390811660a485015282890151811660c48501528885015160e485015260608901516101048501529088015161012484015260a0880151811661014484015260c08801511661016483015260e0870151610180610184840152805161022484015201516102448201929092529687959293929091620006269061026488019062001469565b6101008201516001600160a01b03166101a488015261012082015187820360a3199081016101c48a0152916101609162000661919062001469565b9261014081015115156101e48a01520151908783030161020488015262001469565b604485019390935260648401526001600160a01b0316608483015203601f198101835282620013cc565b6040519161041080840192906001600160401b03841185851017620001b7578493620006ec936040926200183d87398152816020820152019062001469565b03906000f080156200074f5760209060018060a01b031680600052606682526001604060002001600160ff198254161790557fb4108a188495a1a681cdc0750af164011025a1773b41e93ff3e628adc037dc2982604051838152a1604051908152f35b6040513d6000823e3d90fd5b634e487b7160e01b600052601160045260246000fd5b34620001cd576000366003190112620001cd576067546040516001600160a01b039091168152602090f35b34620001cd576040366003190112620001cd577fa1ee82e4f177a8017f33ddddac05b7ceab1de9d46f7195e15e8aa2e8b88f3b1c6040620007dc62001384565b60243590620007ea620014ab565b60018060a01b03169081600052606660205280836000205582519182526020820152a1005b34620001cd576020366003190112620001cd576200082c62001384565b62000836620014ab565b606a80546001600160a01b0319166001600160a01b0392909216919091179055005b34620001cd576000366003190112620001cd576020606554604051908152f35b34620001cd576000366003190112620001cd576020620008976200171c565b6040516001600160a01b039091168152f35b34620001cd576020366003190112620001cd5760008051602062001d0d8339815191526020620008d862001384565b620008e2620014ab565b620008ed8162001819565b606780546001600160a01b0319166001600160a01b03929092169182179055604051908152a1005b34620001cd576000366003190112620001cd57606a546040516001600160a01b039091168152602090f35b34620001cd576000366003190112620001cd576200095d620014ab565b603380546001600160a01b031981169091556000906001600160a01b031660008051602062001ccd8339815191528280a3005b34620001cd576020366003190112620001cd57620009ad62001384565b620009b7620014ab565b606880546001600160a01b0319166001600160a01b0392909216919091179055005b34620001cd576000366003190112620001cd57600260005460ff8160081c16158062000a30575b62000a0b90620017b5565b61ffff19161760005560008051602062001cad833981519152602060405160028152a1005b5060ff8116821162000a00565b34620001cd576000366003190112620001cd576069546040516001600160a01b039091168152602090f35b34620001cd576040366003190112620001cd5762000a8562001384565b60243590811515809203620001cd577fecdcd3502799a6c41864ea2682236184e876f63e10f8d56c7768a3d501e89f629160409162000ac3620014ab565b60018060a01b0316908160005260666020526001836000200160ff1981541660ff831617905582519182526020820152a1005b34620001cd576000366003190112620001cd577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316300362000b5357602060405160008051602062001c8d8339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b6040366003190112620001cd5762000bd062001384565b6024356001600160401b038111620001cd5736602382011215620001cd5762000c049036906024816004013591016200140c565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116919062000c3f3084141562001545565b62000c5f60008051602062001c8d83398151915293828554161462001596565b62000c696200171c565b813391160362000e555760008051602062001c4d8339815191525460ff161562000c9b575050506200025a90620015e7565b8316604051926352d1902d60e01b84526020938481600481865afa6000918162000e20575b5062000d115760405162461bcd60e51b815260048101869052602e602482015260008051602062001d6d83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9392930362000dda5762000d2584620015e7565b60008051602062001ced833981519152600080a281511580159062000dd1575b62000d4c57005b6200025a926000806040519462000d6386620013b0565b6027865260008051602062001d4d83398151915285870152660819985a5b195960ca1b60408701528481519101845af4903d1562000dc7573d62000da781620013f0565b9062000db76040519283620013cc565b8152600081943d92013e62001679565b6060925062001679565b50600162000d45565b60405162461bcd60e51b8152600481018390526029602482015260008051602062001d2d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508581813d831162000e4d575b62000e3b8183620013cc565b81010312620001cd5751908762000cc0565b503d62000e2f565b60449062000e626200171c565b60405163163678e960e01b815233600482015291166024820152fd5b34620001cd57602080600319360112620001cd5762000e9c62001384565b6001600160a01b03917f0000000000000000000000000000000000000000000000000000000000000000831662000ed63082141562001545565b62000ef660008051602062001c8d83398151915291858354161462001596565b62000f006200171c565b8433911603620010e857604051828101949091906001600160401b03861183871017620001b757856040526000835260ff60008051602062001c4d833981519152541660001462000f5b57505050506200025a9150620015e7565b8492939416906040516352d1902d60e01b81528581600481865afa60009181620010b3575b5062000fd15760405162461bcd60e51b815260048101879052602e602482015260008051602062001d6d83398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b949394036200106d5762000fe582620015e7565b60008051602062001ced833981519152600080a282511580159062001064575b6200100c57005b6000806200025a95604051956200102387620013b0565b6027875260008051602062001d4d83398151915286880152660819985a5b195960ca1b60408801525190845af4903d1562000dc7573d62000da781620013f0565b50600062001005565b60405162461bcd60e51b8152600481018490526029602482015260008051602062001d2d8339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d8311620010e0575b620010ce8183620013cc565b81010312620001cd5751908862000f80565b503d620010c2565b60448462000e626200171c565b34620001cd576020366003190112620001cd576200111262001384565b6200111c620014ab565b606980546001600160a01b0319166001600160a01b0392909216919091179055005b34620001cd5760a0366003190112620001cd576200115b62001384565b6001600160a01b039060243590828216808303620001cd5760443591848316808403620001cd57606435868116809103620001cd5760843596871692838803620001cd576000549760ff8960081c16159889809a620012b4575b80156200129b575b620011c890620017b5565b60ff1981166001176000558962001288575b5060ff60005460081c1615620002e757620012206020976200122060008051602062001d0d8339815191529a6200121562001226966200150d565b600060655562001819565b62001819565b60018060a01b03199184836067541617606755826068541617606855816069541617606955606a541617606a55604051908152a16200126157005b61ff00196000541660005560008051602062001cad833981519152602060405160018152a1005b61ffff19166101011760005589620011da565b50303b158015620011bd575060ff8116600114620011bd565b50600160ff821610620011b5565b34620001cd576020366003190112620001cd576001600160a01b03620012e762001384565b1680600052606660205260ff60016040600020015416156200131b5760005260666020526020604060002054604051908152f35b6024906040519063f5a6943d60e01b82526004820152fd5b34620001cd576000366003190112620001cd576068546040516001600160a01b039091168152602090f35b34620001cd576000366003190112620001cd576033546001600160a01b03168152602090f35b600435906001600160a01b0382168203620001cd57565b35906001600160a01b0382168203620001cd57565b606081019081106001600160401b03821117620001b757604052565b601f909101601f19168101906001600160401b03821190821017620001b757604052565b6001600160401b038111620001b757601f01601f191660200190565b9291926200141a82620013f0565b916200142a6040519384620013cc565b829481845281830111620001cd578281602093846000960137010152565b9080601f83011215620001cd5781602062001466933591016200140c565b90565b919082519283825260005b84811062001496575050826000602080949584010152601f8019910116010190565b60208183018101518483018201520162001474565b620014b56200171c565b336001600160a01b0390911603620014c957565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062001ccd833981519152600080a3565b156200154d57565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001c6d83398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b156200159e57565b60405162461bcd60e51b815260206004820152602c602482015260008051602062001c6d83398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b156200161e5760008051602062001c8d83398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b91929015620016de57508151156200168f575090565b3b15620016995790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b825190915015620016f25750805190602001fd5b60405162461bcd60e51b8152602060048201529081906200171890602483019062001469565b0390fd5b6033546001600160a01b0390811690813b62001736575090565b604051638da5cb5b60e01b8152602081600481865afa91829160009362001768575b505062001763575090565b905090565b602093919293813d8211620017ac575b816200178760209383620013cc565b81010312620017a857519182168203620017a5575090388062001758565b80fd5b5080fd5b3d915062001778565b15620017bd57565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b6001600160a01b0316156200182a57565b6040516303988b8160e61b8152600490fdfe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c634300081300334910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024988be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3bbdf37c276f641820b141429d245add2552b4118c0866e5a78638e3de5ef18d9d45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a2646970667358221220b7dfc58d407bb250b71386062b17d9a4ce4d10bf6905d8ebcc8104599603ab1d64736f6c63430008130033","sourceMap":"433:976:106:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;-1:-1:-1;;;433:976:106;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;-1:-1:-1;;;;;433:976:106;;:::i;:::-;;;;4853:15:105;433:976:106;;;689:66:57;433:976:106;;;;4853:33:105;689:66:57;;433:976:106;;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;433:976:106;;2423:22:42;433:976:106;;2517:8:42;;;:::i;:::-;433:976:106;;;;-1:-1:-1;;;433:976:106;;;;;;;;;;;;;;;;;-1:-1:-1;;;433:976:106;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;;;:::i;:::-;689:66:57;433:976:106;;;;689:66:57;433:976:106;;;499:12:102;;;:::i;433:976:106:-;;;-1:-1:-1;;;433:976:106;;;;;;;;;;;;;;;;;-1:-1:-1;;;433:976:106;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;752:7;433:976;-1:-1:-1;;433:976:106;;;;;;;752:7;433:976;;;;;803:4;433:976;;;;878:25;433:976;1009:16;433:976;1027:23;433:976;-1:-1:-1;;;;;433:976:106;;;;;;918:155;;433:976;;;;;;;1052:7;;:::i;:::-;433:976;;;-1:-1:-1;;;433:976:106;918:155;;;;;;;433:976;;918:155;;433:976;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;958:41;433:976;;;;;;;;;;;;;;;;;;;;;;;;;;;;;958:41;;433:976;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;;;;-1:-1:-1;433:976:106;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;918:155;-1:-1:-1;;918:155:106;;;;;;:::i;:::-;433:976;;;840:243;;;;;;-1:-1:-1;;;;;840:243:106;;;;;;;;;;433:976;840:243;433:976;840:243;;;;433:976;;;;;;;;;;:::i;:::-;840:243;;433:976;840:243;;;;;433:976;;;;;;;;;;;1242:15;433:976;;;;;;1242:49;433:976;;;;;;;;;1313:44;433:976;;;;;;1313:44;433:976;;;;;;840:243;433:976;;689:66:57;433:976:106;689:66:57;;;;;433:976:106;;;;;;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;714:33:105;433:976:106;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;4479:43:105;433:976:106;;;:::i;:::-;;;1324:62:42;;;:::i;:::-;433:976:106;;;;;;;;;;4415:15:105;433:976:106;;;;;;;;;;;;;;;;4479:43:105;433:976:106;;;;;;;-1:-1:-1;;433:976:106;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2211:34:105;433:976:106;;-1:-1:-1;;;;;;433:976:106;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;;632:20:105;433:976:106;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;-1:-1:-1;;;;;;;;;;;433:976:106;;;:::i;:::-;1324:62:42;;:::i;:::-;4069:15:105;;;:::i;:::-;4095:36;433:976:106;;-1:-1:-1;;;;;;433:976:106;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;4146:31:105;433:976:106;;;;;;;-1:-1:-1;;433:976:106;;;;836:38:105;433:976:106;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;1324:62:42;;:::i;:::-;2779:6;433:976:106;;-1:-1:-1;;;;;;433:976:106;;;;;;;-1:-1:-1;;;;;433:976:106;-1:-1:-1;;;;;;;;;;;433:976:106;;2827:40:42;433:976:106;;;;;;;-1:-1:-1;;433:976:106;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;1947:36:105;433:976:106;;-1:-1:-1;;;;;;433:976:106;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;536:1;433:976;;689:66:57;433:976:106;;;689:66:57;4881:14:44;:40;;;433:976:106;4873:99:44;;;:::i;:::-;433:976:106;;;;;;-1:-1:-1;;;;;;;;;;;433:976:106;;;536:1;433:976;;5091:20:44;433:976:106;4881:40:44;-1:-1:-1;689:66:57;;;4899:22:44;-1:-1:-1;4881:40:44;;433:976:106;;;;;;-1:-1:-1;;433:976:106;;;;799:31:105;433:976:106;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;;;:::i;:::-;;;;;;;;;;;;4694:42:105;1324:62:42;433:976:106;1324:62:42;;;:::i;:::-;433:976:106;;;;;;;;;;4635:15:105;433:976:106;;;;;;4635:33:105;433:976:106;;;;;;;;;;;;;;;;;;;;4694:42:105;433:976:106;;;;;;;-1:-1:-1;;433:976:106;;;;2089:6:61;-1:-1:-1;;;;;433:976:106;2080:4:61;2072:23;433:976:106;;;;;-1:-1:-1;;;;;;;;;;;433:976:106;;;;;;-1:-1:-1;;;433:976:106;;;;;;;;;;;;;;;;;-1:-1:-1;;;433:976:106;;;;;;;;;;-1:-1:-1;;433:976:106;;;;;;:::i;:::-;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1654:6:61;433:976:106;;;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;433:976:106;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;433:976:106;;1256:21:102;1252:94;;-1:-1:-1;;;;;;;;;;;689:66:57;;;;;;2993:17;;;;;;:::i;2906:504::-;433:976:106;;;;689:66:57;;;;3046:52;;;;;;433:976:106;3046:52:57;;;;433:976:106;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;433:976:106;;-1:-1:-1;;;3262:56:57;;433:976:106;3262:56:57;;689:66;;;;433:976:106;689:66:57;;433:976:106;-1:-1:-1;;;;;;;;;;;433:976:106;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;433:976:106;1889:27:57;;433:976:106;;2208:15:57;;;:28;;;3042:291;2204:112;;433:976:106;2204:112:57;7307:69:73;433:976:106;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;433:976:106;;;;-1:-1:-1;;;433:976:106;;;;7265:25:73;;;;;;;;;433:976:106;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;7307:69:73;:::i;433:976:106:-;;;-1:-1:-1;7307:69:73;:::i;2208:28:57:-;;433:976:106;2208:28:57;;689:66;433:976:106;;-1:-1:-1;;;689:66:57;;433:976:106;689:66:57;;;;;;433:976:106;689:66:57;;433:976:106;-1:-1:-1;;;;;;;;;;;433:976:106;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;;;;;;1252:94:102;433:976:106;1327:7:102;;;:::i;:::-;433:976:106;;-1:-1:-1;;;1300:35:102;;1267:10;433:976:106;1300:35:102;;433:976:106;;;;;;;1300:35:102;433:976:106;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;433:976:106;1654:6:61;433:976:106;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;433:976:106;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;433:976:106;;1256:21:102;1252:94;;433:976:106;;;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;689:66:57;-1:-1:-1;;;;;;;;;;;689:66:57;;2906:504;689:66;;;2993:17;;;;;;;;:::i;2906:504::-;433:976:106;;;;;;;;689:66:57;;;3046:52;;;;433:976:106;3046:52:57;;;;433:976:106;;3046:52:57;;;2906:504;-1:-1:-1;3042:291:57;;433:976:106;;-1:-1:-1;;;3262:56:57;;433:976:106;3262:56:57;;689:66;;;;;;;433:976:106;-1:-1:-1;;;;;;;;;;;433:976:106;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;433:976:106;1889:27:57;;433:976:106;;2208:15:57;;;:28;;;3042:291;2204:112;;433:976:106;2204:112:57;433:976:106;;7307:69:73;433:976:106;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;433:976:106;;;;-1:-1:-1;;;433:976:106;;;;7265:25:73;;;;;;433:976:106;;;;;;;;:::i;2208:28:57:-;;433:976:106;2208:28:57;;689:66;433:976:106;;-1:-1:-1;;;689:66:57;;433:976:106;689:66:57;;;;;;;;;433:976:106;-1:-1:-1;;;;;;;;;;;433:976:106;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;;;;;;1252:94:102;433:976:106;1327:7:102;;;:::i;433:976:106:-;;;;;;-1:-1:-1;;433:976:106;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;2080:27:105;433:976:106;;-1:-1:-1;;;;;;433:976:106;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;;;:::i;:::-;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;689:66:57;433:976:106;;;689:66:57;3301:14:44;3347:34;;;;;;433:976:106;3346:108:44;;;;433:976:106;3325:201:44;;;:::i;:::-;-1:-1:-1;;433:976:106;;;;;;;3562:65:44;;433:976:106;;689:66:57;433:976:106;;;;689:66:57;433:976:106;;;2616:26:105;433:976:106;499:12:102;2567:19:105;-1:-1:-1;;;;;;;;;;;499:12:102;;2672:24:105;499:12:102;;:::i;:::-;433:976:106;2529:9:105;433:976:106;2567:19:105;:::i;:::-;2616:26;:::i;2672:24::-;433:976:106;;;;;;;;;2707:40:105;433:976:106;;;2707:40:105;433:976:106;;2757:54:105;433:976:106;;;2757:54:105;433:976:106;;2821:36:105;433:976:106;;;2821:36:105;433:976:106;2867:50:105;433:976:106;;;2867:50:105;433:976:106;;;;;;2932:35:105;3647:99:44;;433:976:106;3647:99:44;433:976:106;;;;;;;-1:-1:-1;;;;;;;;;;;433:976:106;;;;;;3721:14:44;433:976:106;3562:65:44;-1:-1:-1;;433:976:106;;;;;3562:65:44;;;3346:108;3426:4;;1702:19:73;:23;3387:66:44;;3346:108;3387:66;-1:-1:-1;689:66:57;;;433:976:106;3436:17:44;3346:108;;3347:34;689:66:57;433:976:106;689:66:57;;;3365:16:44;3347:34;;433:976:106;;;;;;-1:-1:-1;;433:976:106;;;;-1:-1:-1;;;;;433:976:106;;:::i;:::-;;;;;4998:15:105;433:976:106;;689:66:57;433:976:106;;;;4998:33:105;689:66:57;;4997:34:105;4993:100;;433:976:106;;4998:15:105;433:976:106;;;;;;;;;;;;;4993:100:105;433:976:106;;;;5054:28:105;;;;;;433:976:106;5054:28:105;;433:976:106;5054:28:105;433:976:106;;;;;;-1:-1:-1;;433:976:106;;;;753:40:105;433:976:106;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;;;;;-1:-1:-1;;433:976:106;;;;1534:6:42;433:976:106;-1:-1:-1;;;;;433:976:106;;;;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;:::o;:::-;;;-1:-1:-1;;;;;433:976:106;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;433:976:106;;;;;;;:::o;:::-;918:155;433:976;;;-1:-1:-1;;433:976:106;;;;-1:-1:-1;;;;;433:976:106;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;433:976:106;;;;918:155;433:976;-1:-1:-1;;433:976:106;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;433:976:106;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;918:155;;;433:976;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;1620:130:42;1683:7;;:::i;:::-;965:10:48;-1:-1:-1;;;;;433:976:106;;;1683:23:42;433:976:106;;1620:130:42:o;433:976:106:-;;;;;;;;;;;;;;;;;;;;;;;;;2687:187:42;2779:6;433:976:106;;-1:-1:-1;;;;;433:976:106;;;-1:-1:-1;;;;;;433:976:106;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;2827:40:42;2687:187::o;433:976:106:-;;;;:::o;:::-;;;-1:-1:-1;;;433:976:106;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;433:976:106;;;;-1:-1:-1;;;433:976:106;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;433:976:106;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;433:976:106;;;;-1:-1:-1;;;433:976:106;;;;;;;1406:259:57;1702:19:73;;:23;433:976:106;;-1:-1:-1;;;;;;;;;;;433:976:106;;-1:-1:-1;;;;;;433:976:106;-1:-1:-1;;;;;433:976:106;;;;;;;;;1406:259:57:o;433:976:106:-;;;-1:-1:-1;;;433:976:106;;;;;;;;;;;;;;;;;-1:-1:-1;;;433:976:106;;;;;;;7671:628:73;;;;7875:418;;;433:976:106;;;7906:22:73;7902:286;;8201:17;;:::o;7902:286::-;1702:19;:23;433:976:106;;8201:17:73;:::o;433:976:106:-;;;-1:-1:-1;;;433:976:106;;;;;;;;;;;;;;;;;;;;7875:418:73;433:976:106;;;;-1:-1:-1;8980:21:73;:17;;9152:142;;;;;;;8976:379;433:976:106;;-1:-1:-1;;;9324:20:73;;433:976:106;9324:20:73;;;433:976:106;;;;;;;;;;;:::i;:::-;9324:20:73;;;633:544:102;1534:6:42;433:976:106;-1:-1:-1;;;;;433:976:106;;;;755:33:102;;1534:6:42;;870:19:102;;:::o;751:420::-;433:976:106;;-1:-1:-1;;;924:40:102;;;433:976:106;924:40:102;433:976:106;924:40:102;;;;;;-1:-1:-1;924:40:102;;;751:420;-1:-1:-1;;920:241:102;;1127:19;;:::o;920:241::-;1008:13;;;:::o;924:40::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;433:976:106;;;;;;;;;;;;924:40:102;;;;;;433:976:106;;;;;;;924:40:102;;;-1:-1:-1;924:40:102;;433:976:106;;;;:::o;:::-;;;-1:-1:-1;;;433:976:106;;;;;;;;;;;;;;;;;-1:-1:-1;;;433:976:106;;;;;;;1707:141:105;-1:-1:-1;;;;;433:976:106;1789:22:105;1785:56;;1707:141::o;1785:56::-;433:976:106;;-1:-1:-1;;;1820:21:105;;;;","linkReferences":{},"immutableReferences":{"54869":[{"start":2827,"length":32},{"start":3086,"length":32},{"start":3751,"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","proxyOwner()":"025313a2","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\":\"proxyOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a\",\"dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f\",\"dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol\":{\"keccak256\":\"0x8cdd8c12149d04ad06e90e32ff7e81f6724c4d9998de8ad1179b74298581e4bf\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://12615c9c0d9db4927cfcc0c9feea6137eea0a113734979a265be564de4e2c26a\",\"dweb:/ipfs/QmSs1YbQyBRkEPg8qLnFJY2iAnsST6PaRec91BXjKxT6kh\"]},\"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":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{},"viaIR":true},"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":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x0474b0c3bcc9c487b5ee9f4722d226126f1e979876a09df0974a4b02def597c4","urls":["bzz-raw://732b5fb2dd0416c8221288bdc6b762509a02597631696a938b07c69225db7a8a","dweb:/ipfs/QmPcTRHsoTttc1MNZxNSLE5AUDgWofzEJk5qMshuuFSdFy"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19","urls":["bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f","dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol":{"keccak256":"0x8cdd8c12149d04ad06e90e32ff7e81f6724c4d9998de8ad1179b74298581e4bf","urls":["bzz-raw://12615c9c0d9db4927cfcc0c9feea6137eea0a113734979a265be564de4e2c26a","dweb:/ipfs/QmSs1YbQyBRkEPg8qLnFJY2iAnsST6PaRec91BXjKxT6kh"],"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":52287,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52290,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":52992,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52079,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52199,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":73580,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"nonce","offset":0,"slot":"101","type":"t_uint256"},{"astId":73585,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"communityToInfo","offset":0,"slot":"102","type":"t_mapping(t_address,t_struct(CommunityInfo)73572_storage)"},{"astId":73587,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"gardensFeeReceiver","offset":0,"slot":"103","type":"t_address"},{"astId":73589,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"registryCommunityTemplate","offset":0,"slot":"104","type":"t_address"},{"astId":73591,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"strategyTemplate","offset":0,"slot":"105","type":"t_address"},{"astId":73593,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"collateralVaultTemplate","offset":0,"slot":"106","type":"t_address"},{"astId":73925,"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)73572_storage)":{"encoding":"mapping","key":"t_address","label":"mapping(address => struct CommunityInfo)","numberOfBytes":"32","value":"t_struct(CommunityInfo)73572_storage"},"t_struct(CommunityInfo)73572_storage":{"encoding":"inplace","label":"struct CommunityInfo","numberOfBytes":"64","members":[{"astId":73569,"contract":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_1.sol:RegistryFactoryV0_1","label":"fee","offset":0,"slot":"0","type":"t_uint256"},{"astId":73571,"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":74032,"exportedSymbols":{"ERC1967Proxy":[54318],"RegistryCommunityInitializeParamsV0_0":[71352],"RegistryCommunityV0_0":[73556],"RegistryFactoryV0_0":[73926],"RegistryFactoryV0_1":[74031]},"nodeType":"SourceUnit","src":"42:1368:106","nodes":[{"id":73928,"nodeType":"PragmaDirective","src":"42:24:106","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":73931,"nodeType":"ImportDirective","src":"68:93:106","nodes":[],"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","file":"../RegistryFactory/RegistryFactoryV0_0.sol","nameLocation":"-1:-1:-1","scope":74032,"sourceUnit":73927,"symbolAliases":[{"foreign":{"id":73929,"name":"RegistryFactoryV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73926,"src":"76:19:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":73930,"name":"ERC1967Proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54318,"src":"97:12:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73934,"nodeType":"ImportDirective","src":"162:134:106","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":74032,"sourceUnit":73557,"symbolAliases":[{"foreign":{"id":73932,"name":"RegistryCommunityInitializeParamsV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71352,"src":"175:37:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"},{"foreign":{"id":73933,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"218:21:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":73936,"nodeType":"ImportDirective","src":"297:85:106","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":74032,"sourceUnit":73557,"symbolAliases":[{"foreign":{"id":73935,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"305:21:106","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74031,"nodeType":"ContractDefinition","src":"433:976:106","nodes":[{"id":73946,"nodeType":"FunctionDefinition","src":"491:50:106","nodes":[],"body":{"id":73945,"nodeType":"Block","src":"539:2:106","nodes":[],"statements":[]},"functionSelector":"5cd8a76b","implemented":true,"kind":"function","modifiers":[{"arguments":[{"hexValue":"32","id":73942,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"536:1:106","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"}],"id":73943,"kind":"modifierInvocation","modifierName":{"id":73941,"name":"reinitializer","nameLocations":["522:13:106"],"nodeType":"IdentifierPath","referencedDeclaration":52384,"src":"522:13:106"},"nodeType":"ModifierInvocation","src":"522:16:106"}],"name":"initializeV2","nameLocation":"500:12:106","parameters":{"id":73940,"nodeType":"ParameterList","parameters":[],"src":"512:2:106"},"returnParameters":{"id":73944,"nodeType":"ParameterList","parameters":[],"src":"539:0:106"},"scope":74031,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":74030,"nodeType":"FunctionDefinition","src":"547:860:106","nodes":[],"body":{"id":74029,"nodeType":"Block","src":"726:681:106","nodes":[],"statements":[{"expression":{"id":73960,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":73955,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73949,"src":"736:6:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":73957,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"743:6:106","memberName":"_nonce","nodeType":"MemberAccess","referencedDeclaration":71336,"src":"736:13:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":73959,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"752:7:106","subExpression":{"id":73958,"name":"nonce","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73580,"src":"752:5:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"736:23:106","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":73961,"nodeType":"ExpressionStatement","src":"736:23:106"},{"expression":{"id":73969,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":73962,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73949,"src":"769:6:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},"id":73964,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"776:16:106","memberName":"_registryFactory","nodeType":"MemberAccess","referencedDeclaration":71338,"src":"769:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"id":73967,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"803:4:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_1_$74031","typeString":"contract RegistryFactoryV0_1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryFactoryV0_1_$74031","typeString":"contract RegistryFactoryV0_1"}],"id":73966,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"795:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73965,"name":"address","nodeType":"ElementaryTypeName","src":"795:7:106","typeDescriptions":{}}},"id":73968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"795:13:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"769:39:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":73970,"nodeType":"ExpressionStatement","src":"769:39:106"},{"assignments":[73973],"declarations":[{"constant":false,"id":73973,"mutability":"mutable","name":"proxy","nameLocation":"832:5:106","nodeType":"VariableDeclaration","scope":74029,"src":"819:18:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"},"typeName":{"id":73972,"nodeType":"UserDefinedTypeName","pathNode":{"id":73971,"name":"ERC1967Proxy","nameLocations":["819:12:106"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"819:12:106"},"referencedDeclaration":54318,"src":"819:12:106","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}},"visibility":"internal"}],"id":73993,"initialValue":{"arguments":[{"arguments":[{"id":73979,"name":"registryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73589,"src":"878:25:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73978,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"870:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":73977,"name":"address","nodeType":"ElementaryTypeName","src":"870:7:106","typeDescriptions":{}}},"id":73980,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"870:34:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[{"expression":{"expression":{"id":73983,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"958:21:106","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73556_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":73984,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"980:10:106","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":72051,"src":"958:32:106","typeDescriptions":{"typeIdentifier":"t_function_declaration_nonpayable$_t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr_$_t_address_$_t_address_$_t_address_$returns$__$","typeString":"function RegistryCommunityV0_0.initialize(struct RegistryCommunityInitializeParamsV0_0 memory,address,address,address)"}},"id":73985,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"991:8:106","memberName":"selector","nodeType":"MemberAccess","src":"958:41:106","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":73986,"name":"params","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73949,"src":"1001:6:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"}},{"id":73987,"name":"strategyTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73591,"src":"1009:16:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":73988,"name":"collateralVaultTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73593,"src":"1027:23:106","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"arguments":[],"expression":{"argumentTypes":[],"id":73989,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[71159],"referencedDeclaration":71159,"src":"1052:5:106","typeDescriptions":{"typeIdentifier":"t_function_internal_view$__$returns$_t_address_$","typeString":"function () view returns (address)"}},"id":73990,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1052:7:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0 memory"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":73981,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"918:3:106","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":73982,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"922:18:106","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"918:22:106","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":73991,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"918:155: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":73976,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"840:16:106","typeDescriptions":{"typeIdentifier":"t_function_creation_payable$_t_address_$_t_bytes_memory_ptr_$returns$_t_contract$_ERC1967Proxy_$54318_$","typeString":"function (address,bytes memory) payable returns (contract ERC1967Proxy)"},"typeName":{"id":73975,"nodeType":"UserDefinedTypeName","pathNode":{"id":73974,"name":"ERC1967Proxy","nameLocations":["844:12:106"],"nodeType":"IdentifierPath","referencedDeclaration":54318,"src":"844:12:106"},"referencedDeclaration":54318,"src":"844:12:106","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}},"id":73992,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"840:243:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}},"nodeType":"VariableDeclarationStatement","src":"819:264:106"},{"assignments":[73996],"declarations":[{"constant":false,"id":73996,"mutability":"mutable","name":"registryCommunity","nameLocation":"1116:17:106","nodeType":"VariableDeclaration","scope":74029,"src":"1094:39:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":73995,"nodeType":"UserDefinedTypeName","pathNode":{"id":73994,"name":"RegistryCommunityV0_0","nameLocations":["1094:21:106"],"nodeType":"IdentifierPath","referencedDeclaration":73556,"src":"1094:21:106"},"referencedDeclaration":73556,"src":"1094:21:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":74006,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":74002,"name":"proxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73973,"src":"1174:5:106","typeDescriptions":{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ERC1967Proxy_$54318","typeString":"contract ERC1967Proxy"}],"id":74001,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1166:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74000,"name":"address","nodeType":"ElementaryTypeName","src":"1166:7:106","typeDescriptions":{}}},"id":74003,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1166:14:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":73999,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1158:8:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":73998,"name":"address","nodeType":"ElementaryTypeName","src":"1158:8:106","stateMutability":"payable","typeDescriptions":{}}},"id":74004,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1158:23:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":73997,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73556,"src":"1136:21:106","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73556_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":74005,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1136:46:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"1094:88:106"},{"expression":{"id":74015,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"baseExpression":{"id":74007,"name":"communityToInfo","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73585,"src":"1242:15:106","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_struct$_CommunityInfo_$73572_storage_$","typeString":"mapping(address => struct CommunityInfo storage ref)"}},"id":74012,"indexExpression":{"arguments":[{"id":74010,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73996,"src":"1266:17:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":74009,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1258:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74008,"name":"address","nodeType":"ElementaryTypeName","src":"1258:7:106","typeDescriptions":{}}},"id":74011,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1258:26:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"1242:43:106","typeDescriptions":{"typeIdentifier":"t_struct$_CommunityInfo_$73572_storage","typeString":"struct CommunityInfo storage ref"}},"id":74013,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"1286:5:106","memberName":"valid","nodeType":"MemberAccess","referencedDeclaration":73571,"src":"1242:49:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"74727565","id":74014,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"1294:4:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"true"},"src":"1242:56:106","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74016,"nodeType":"ExpressionStatement","src":"1242:56:106"},{"eventCall":{"arguments":[{"arguments":[{"id":74020,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73996,"src":"1338:17:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":74019,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1330:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74018,"name":"address","nodeType":"ElementaryTypeName","src":"1330:7:106","typeDescriptions":{}}},"id":74021,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1330:26:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74017,"name":"CommunityCreated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73607,"src":"1313:16:106","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74022,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1313:44:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74023,"nodeType":"EmitStatement","src":"1308:49:106"},{"expression":{"arguments":[{"id":74026,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73996,"src":"1382:17:106","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73556","typeString":"contract RegistryCommunityV0_0"}],"id":74025,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1374:7:106","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":74024,"name":"address","nodeType":"ElementaryTypeName","src":"1374:7:106","typeDescriptions":{}}},"id":74027,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1374:26:106","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"functionReturnParameters":73954,"id":74028,"nodeType":"Return","src":"1367:33:106"}]},"baseFunctions":[73812],"functionSelector":"beb331a3","implemented":true,"kind":"function","modifiers":[],"name":"createRegistry","nameLocation":"556:14:106","overrides":{"id":73951,"nodeType":"OverrideSpecifier","overrides":[],"src":"663:8:106"},"parameters":{"id":73950,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73949,"mutability":"mutable","name":"params","nameLocation":"616:6:106","nodeType":"VariableDeclaration","scope":74030,"src":"571:51:106","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_memory_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"},"typeName":{"id":73948,"nodeType":"UserDefinedTypeName","pathNode":{"id":73947,"name":"RegistryCommunityInitializeParamsV0_0","nameLocations":["571:37:106"],"nodeType":"IdentifierPath","referencedDeclaration":71352,"src":"571:37:106"},"referencedDeclaration":71352,"src":"571:37:106","typeDescriptions":{"typeIdentifier":"t_struct$_RegistryCommunityInitializeParamsV0_0_$71352_storage_ptr","typeString":"struct RegistryCommunityInitializeParamsV0_0"}},"visibility":"internal"}],"src":"570:53:106"},"returnParameters":{"id":73954,"nodeType":"ParameterList","parameters":[{"constant":false,"id":73953,"mutability":"mutable","name":"_createdRegistryAddress","nameLocation":"697:23:106","nodeType":"VariableDeclaration","scope":74030,"src":"689:31:106","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":73952,"name":"address","nodeType":"ElementaryTypeName","src":"689:7:106","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"688:33:106"},"scope":74031,"stateMutability":"nonpayable","virtual":true,"visibility":"public"}],"abstract":false,"baseContracts":[{"baseName":{"id":73938,"name":"RegistryFactoryV0_0","nameLocations":["465:19:106"],"nodeType":"IdentifierPath","referencedDeclaration":73926,"src":"465:19:106"},"id":73939,"nodeType":"InheritanceSpecifier","src":"465:19:106"}],"canonicalName":"RegistryFactoryV0_1","contractDependencies":[54318],"contractKind":"contract","documentation":{"id":73937,"nodeType":"StructuredDocumentation","src":"384:49:106","text":"@custom:oz-upgrades-from RegistryFactoryV0_0"},"fullyImplemented":true,"linearizedBaseContracts":[74031,73926,71181,54969,54622,54271,54281,52200,52993,52449],"name":"RegistryFactoryV0_1","nameLocation":"442:19:106","scope":74032,"usedErrors":[71096,73617,73619]}],"license":"AGPL-3.0-only"},"id":106} \ No newline at end of file diff --git a/pkg/contracts/out/SafeArbitrator.sol/SafeArbitrator.json b/pkg/contracts/out/SafeArbitrator.sol/SafeArbitrator.json index c63cb0adb..963ec1805 100644 --- a/pkg/contracts/out/SafeArbitrator.sol/SafeArbitrator.json +++ b/pkg/contracts/out/SafeArbitrator.sol/SafeArbitrator.json @@ -1 +1 @@ -{"abi":[{"type":"function","name":"arbitrableTribunalSafe","inputs":[{"name":"arbitrable","type":"address","internalType":"address"}],"outputs":[{"name":"safe","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"arbitrationCost","inputs":[{"name":"","type":"bytes","internalType":"bytes"},{"name":"","type":"address","internalType":"contract IERC20"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"arbitrationCost","inputs":[{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"fee","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"createDispute","inputs":[{"name":"_choices","type":"uint256","internalType":"uint256"},{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"disputeID","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"createDispute","inputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"bytes","internalType":"bytes"},{"name":"","type":"address","internalType":"contract IERC20"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"currentRuling","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"ruling","type":"uint256","internalType":"uint256"},{"name":"tied","type":"bool","internalType":"bool"},{"name":"overridden","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"disputes","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"arbitrated","type":"address","internalType":"contract IArbitrable"},{"name":"arbitratorExtraData","type":"bytes","internalType":"bytes"},{"name":"choices","type":"uint256","internalType":"uint256"},{"name":"arbitrationFee","type":"uint256","internalType":"uint256"},{"name":"ruling","type":"uint256","internalType":"uint256"},{"name":"status","type":"uint8","internalType":"enum SafeArbitrator.DisputeStatus"}],"stateMutability":"view"},{"type":"function","name":"executeRuling","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"},{"name":"_ruling","type":"uint256","internalType":"uint256"},{"name":"_arbitrable","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":"_arbitrationFee","type":"uint256","internalType":"uint256"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"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":"proxyOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"registerSafe","inputs":[{"name":"_safe","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setArbitrationFee","inputs":[{"name":"_arbitrationFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"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":"AcceptedFeeToken","inputs":[{"name":"_token","type":"address","indexed":true,"internalType":"contract IERC20"},{"name":"_accepted","type":"bool","indexed":true,"internalType":"bool"}],"anonymous":false},{"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":"ArbitrationFeeUpdated","inputs":[{"name":"_newArbitrationFee","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":"DisputeCreation","inputs":[{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_arbitrable","type":"address","indexed":true,"internalType":"contract IArbitrable"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"NewCurrencyRate","inputs":[{"name":"_feeToken","type":"address","indexed":true,"internalType":"contract IERC20"},{"name":"_rateInEth","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"_rateDecimals","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":"Ruling","inputs":[{"name":"_arbitrable","type":"address","indexed":true,"internalType":"contract IArbitrable"},{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_ruling","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SafeArbitratorInitialized","inputs":[{"name":"_arbitrationFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SafeRegistered","inputs":[{"name":"_arbitrable","type":"address","indexed":true,"internalType":"address"},{"name":"_safe","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":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"DisputeAlreadySolved","inputs":[]},{"type":"error","name":"InvalidRuling","inputs":[]},{"type":"error","name":"NotEnoughArbitrationFees","inputs":[]},{"type":"error","name":"OnlySafe","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"safe","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a060405230608052348015601357600080fd5b50608051611aae61004b600039600081816103c80152818161041101528181610499015281816104d901526105550152611aae6000f3fe6080604052600436106100e45760003560e01c8063025313a2146100e95780631c3db16d1461011457806326a0754c146101515780633659cfe6146101875780634f1ef286146101a957806352d1902d146101bc578063564a565d146101df5780635ea7b4fc14610211578063715018a6146102315780637a1d37561461024657806388d5b732146102665780638da5cb5b14610286578063c13517e11461029b578063c4d66de8146102ae578063d98493f6146102ce578063da35a26f146102ee578063f2fde38b1461030e578063f6506db41461032e578063f7434ea914610349575b600080fd5b3480156100f557600080fd5b506100fe61036c565b60405161010b9190611381565b60405180910390f35b34801561012057600080fd5b5061013461012f366004611395565b610385565b60408051938452911515602084015215159082015260600161010b565b34801561015d57600080fd5b506100fe61016c3660046113c3565b6099602052600090815260409020546001600160a01b031681565b34801561019357600080fd5b506101a76101a23660046113c3565b6103be565b005b6101a76101b73660046113f6565b61048f565b3480156101c857600080fd5b506101d1610548565b60405190815260200161010b565b3480156101eb57600080fd5b506101ff6101fa366004611395565b6105f6565b60405161010b9695949392919061151f565b34801561021d57600080fd5b506101a761022c366004611395565b6106d4565b34801561023d57600080fd5b506101a7610717565b34801561025257600080fd5b506101a7610261366004611586565b61072b565b34801561027257600080fd5b506101a76102813660046113c3565b610964565b34801561029257600080fd5b506100fe6109c7565b6101d16102a9366004611607565b610a5c565b3480156102ba57600080fd5b506101a76102c93660046113c3565b610bd4565b3480156102da57600080fd5b506101d16102e9366004611652565b610c04565b3480156102fa57600080fd5b506101a761030936600461169d565b610c3f565b34801561031a57600080fd5b506101a76103293660046113c3565b610d9a565b34801561033a57600080fd5b506101d16102e93660046116cd565b34801561035557600080fd5b506101d1610364366004611733565b505060975490565b60006103806033546001600160a01b031690565b905090565b6000806000806098858154811061039e5761039e611774565b600091825260208220600460069092020101549690955085945092505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361040f5760405162461bcd60e51b81526004016104069061178a565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610441610e07565b6001600160a01b0316146104675760405162461bcd60e51b8152600401610406906117c4565b61047081610e23565b6040805160008082526020820190925261048c91839190610e5e565b50565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036104d75760405162461bcd60e51b81526004016104069061178a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610509610e07565b6001600160a01b03161461052f5760405162461bcd60e51b8152600401610406906117c4565b61053882610e23565b61054482826001610e5e565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146105e35760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610406565b50600080516020611a3283398151915290565b6098818154811061060657600080fd5b6000918252602090912060069091020180546001820180546001600160a01b03909216935090610635906117fe565b80601f0160208091040260200160405190810160405280929190818152602001828054610661906117fe565b80156106ae5780601f10610683576101008083540402835291602001916106ae565b820191906000526020600020905b81548152906001019060200180831161069157829003601f168201915b505050506002830154600384015460048501546005909501549394919390925060ff1686565b6106dc610fc9565b60978190556040518181527fb1484c2bf00d94a00783b6081ebc5f5d02be4675f6eb8cf4c0c95bfe5a3f06ed9060200160405180910390a150565b61071f610fc9565b6107296000611028565b565b6001600160a01b0380821660009081526099602052604090205482911633036109265760006098858154811061076357610763611774565b906000526020600020906006020190508060020154841115610798576040516309efd47960e41b815260040160405180910390fd5b6001600582015460ff1660018111156107b3576107b3611509565b036107d15760405163bda17d9560e01b815260040160405180910390fd5b6004810184905560058101805460ff19166001179055600381015460405160009133918381818185875af1925050503d806000811461082c576040519150601f19603f3d011682016040523d82523d6000602084013e610831565b606091505b50509050806108745760405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b6044820152606401610406565b815460048084015460405163188d362b60e11b815291820189905260248201526001600160a01b039091169063311a6c5690604401600060405180830381600087803b1580156108c357600080fd5b505af11580156108d7573d6000803e3d6000fd5b5050505085846001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161091791815260200190565b60405180910390a3505061095e565b6001600160a01b038082166000908152609960205260409081902054905163d0774c9960e01b81526104069233921690600401611838565b50505050565b336000818152609960205260409081902080546001600160a01b0319166001600160a01b038516179055517f2b87bb26d58aa2d56b59c2b23a53a6959f68d4547492bda44fb5e68b0fa38b3f906109bc908490611381565b60405180910390a250565b60006109d161036c565b6001600160a01b03163b6000036109ea5761038061036c565b6109f261036c565b6001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610a4b575060408051601f3d908101601f19168201909252610a4891810190611852565b60015b610a575761038061036c565b919050565b6000610a6661107a565b609754341015610a895760405163e4216b3160e01b815260040160405180910390fd5b609880549050905060986040518060c00160405280336001600160a01b0316815260200185858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525093855250505060208201889052346040830152606082018190526080909101528154600180820184556000938452602093849020835160069093020180546001600160a01b0319166001600160a01b03909316929092178255928201519192909190820190610b4e90826118bf565b5060408201516002820155606082015160038201556080820151600482015560a082015160058201805460ff191660018381811115610b8f57610b8f611509565b02179055505060405133915082907f141dfc18aa6a56fc816f44f0e9e2f1ebc92b15ab167770e17db5b084c10ed99590600090a3610bcd6001606555565b9392505050565b600054610100900460ff16610bfb5760405162461bcd60e51b81526004016104069061197e565b61048c81611028565b60405162461bcd60e51b815260206004820152600d60248201526c139bdd081cdd5c1c1bdc9d1959609a1b6044820152600090606401610406565b600054610100900460ff1615808015610c5f5750600054600160ff909116105b80610c805750610c6e306110d3565b158015610c80575060005460ff166001145b610ce35760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610406565b6000805460ff191660011790558015610d06576000805461ff0019166101001790555b610d0f82610bd4565b610d176110e2565b60978390556040518381527fc05490fc8f8e095831ea3823f005dd0661528380328aa5c3b7348a45244223be9060200160405180910390a18015610d95576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610da2610fc9565b6001600160a01b038116610bfb5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610406565b600080516020611a32833981519152546001600160a01b031690565b33610e2c6109c7565b6001600160a01b03161461048c5733610e436109c7565b60405163163678e960e01b8152600401610406929190611838565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610e9157610d9583611111565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610eeb575060408051601f3d908101601f19168201909252610ee8918101906119c9565b60015b610f4e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610406565b600080516020611a328339815191528114610fbd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610406565b50610d958383836111ab565b33610fd26109c7565b6001600160a01b0316146107295760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610406565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6002606554036110cc5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610406565b6002606555565b6001600160a01b03163b151590565b600054610100900460ff166111095760405162461bcd60e51b81526004016104069061197e565b6107296111d0565b61111a816110d3565b61117c5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610406565b600080516020611a3283398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6111b483611200565b6000825111806111c15750805b15610d955761095e8383611240565b600054610100900460ff166111f75760405162461bcd60e51b81526004016104069061197e565b61072933611028565b61120981611111565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060610bcd8383604051806060016040528060278152602001611a52602791396060600080856001600160a01b03168560405161127d91906119e2565b600060405180830381855af49150503d80600081146112b8576040519150601f19603f3d011682016040523d82523d6000602084013e6112bd565b606091505b50915091506112ce868383876112d8565b9695505050505050565b6060831561134557825160000361133e576112f2856110d3565b61133e5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610406565b508161134f565b61134f8383611357565b949350505050565b8151156113675781518083602001fd5b8060405162461bcd60e51b815260040161040691906119fe565b6001600160a01b0391909116815260200190565b6000602082840312156113a757600080fd5b5035919050565b6001600160a01b038116811461048c57600080fd5b6000602082840312156113d557600080fd5b8135610bcd816113ae565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561140957600080fd5b8235611414816113ae565b915060208301356001600160401b038082111561143057600080fd5b818501915085601f83011261144457600080fd5b813581811115611456576114566113e0565b604051601f8201601f19908116603f0116810190838211818310171561147e5761147e6113e0565b8160405282815288602084870101111561149757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156114d45781810151838201526020016114bc565b50506000910152565b600081518084526114f58160208601602086016114b9565b601f01601f19169290920160200192915050565b634e487b7160e01b600052602160045260246000fd5b6001600160a01b038716815260c060208201819052600090611543908301886114dd565b90508560408301528460608301528360808301526002831061157557634e487b7160e01b600052602160045260246000fd5b8260a0830152979650505050505050565b60008060006060848603121561159b57600080fd5b833592506020840135915060408401356115b4816113ae565b809150509250925092565b60008083601f8401126115d157600080fd5b5081356001600160401b038111156115e857600080fd5b60208301915083602082850101111561160057600080fd5b9250929050565b60008060006040848603121561161c57600080fd5b8335925060208401356001600160401b0381111561163957600080fd5b611645868287016115bf565b9497909650939450505050565b60008060006040848603121561166757600080fd5b83356001600160401b0381111561167d57600080fd5b611689868287016115bf565b90945092505060208401356115b4816113ae565b600080604083850312156116b057600080fd5b8235915060208301356116c2816113ae565b809150509250929050565b6000806000806000608086880312156116e557600080fd5b8535945060208601356001600160401b0381111561170257600080fd5b61170e888289016115bf565b9095509350506040860135611722816113ae565b949793965091946060013592915050565b6000806020838503121561174657600080fd5b82356001600160401b0381111561175c57600080fd5b611768858286016115bf565b90969095509350505050565b634e487b7160e01b600052603260045260246000fd5b6020808252602c90820152600080516020611a1283398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020611a1283398151915260408201526b6163746976652070726f787960a01b606082015260800190565b600181811c9082168061181257607f821691505b60208210810361183257634e487b7160e01b600052602260045260246000fd5b50919050565b6001600160a01b0392831681529116602082015260400190565b60006020828403121561186457600080fd5b8151610bcd816113ae565b601f821115610d95576000816000526020600020601f850160051c810160208610156118985750805b601f850160051c820191505b818110156118b7578281556001016118a4565b505050505050565b81516001600160401b038111156118d8576118d86113e0565b6118ec816118e684546117fe565b8461186f565b602080601f83116001811461192157600084156119095750858301515b600019600386901b1c1916600185901b1785556118b7565b600085815260208120601f198616915b8281101561195057888601518255948401946001909101908401611931565b508582101561196e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6000602082840312156119db57600080fd5b5051919050565b600082516119f48184602087016114b9565b9190910192915050565b602081526000610bcd60208301846114dd56fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122093ff14cdadcd594e41ed959f961b15bf1f4d5b2383f1807dc01d965ded2149b864736f6c63430008190033","sourceMap":"774:5230:1:-:0;;;1088:4:13;1045:48;;774:5230:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x6080604052600436106100e45760003560e01c8063025313a2146100e95780631c3db16d1461011457806326a0754c146101515780633659cfe6146101875780634f1ef286146101a957806352d1902d146101bc578063564a565d146101df5780635ea7b4fc14610211578063715018a6146102315780637a1d37561461024657806388d5b732146102665780638da5cb5b14610286578063c13517e11461029b578063c4d66de8146102ae578063d98493f6146102ce578063da35a26f146102ee578063f2fde38b1461030e578063f6506db41461032e578063f7434ea914610349575b600080fd5b3480156100f557600080fd5b506100fe61036c565b60405161010b9190611381565b60405180910390f35b34801561012057600080fd5b5061013461012f366004611395565b610385565b60408051938452911515602084015215159082015260600161010b565b34801561015d57600080fd5b506100fe61016c3660046113c3565b6099602052600090815260409020546001600160a01b031681565b34801561019357600080fd5b506101a76101a23660046113c3565b6103be565b005b6101a76101b73660046113f6565b61048f565b3480156101c857600080fd5b506101d1610548565b60405190815260200161010b565b3480156101eb57600080fd5b506101ff6101fa366004611395565b6105f6565b60405161010b9695949392919061151f565b34801561021d57600080fd5b506101a761022c366004611395565b6106d4565b34801561023d57600080fd5b506101a7610717565b34801561025257600080fd5b506101a7610261366004611586565b61072b565b34801561027257600080fd5b506101a76102813660046113c3565b610964565b34801561029257600080fd5b506100fe6109c7565b6101d16102a9366004611607565b610a5c565b3480156102ba57600080fd5b506101a76102c93660046113c3565b610bd4565b3480156102da57600080fd5b506101d16102e9366004611652565b610c04565b3480156102fa57600080fd5b506101a761030936600461169d565b610c3f565b34801561031a57600080fd5b506101a76103293660046113c3565b610d9a565b34801561033a57600080fd5b506101d16102e93660046116cd565b34801561035557600080fd5b506101d1610364366004611733565b505060975490565b60006103806033546001600160a01b031690565b905090565b6000806000806098858154811061039e5761039e611774565b600091825260208220600460069092020101549690955085945092505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361040f5760405162461bcd60e51b81526004016104069061178a565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610441610e07565b6001600160a01b0316146104675760405162461bcd60e51b8152600401610406906117c4565b61047081610e23565b6040805160008082526020820190925261048c91839190610e5e565b50565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036104d75760405162461bcd60e51b81526004016104069061178a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610509610e07565b6001600160a01b03161461052f5760405162461bcd60e51b8152600401610406906117c4565b61053882610e23565b61054482826001610e5e565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146105e35760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608401610406565b50600080516020611a3283398151915290565b6098818154811061060657600080fd5b6000918252602090912060069091020180546001820180546001600160a01b03909216935090610635906117fe565b80601f0160208091040260200160405190810160405280929190818152602001828054610661906117fe565b80156106ae5780601f10610683576101008083540402835291602001916106ae565b820191906000526020600020905b81548152906001019060200180831161069157829003601f168201915b505050506002830154600384015460048501546005909501549394919390925060ff1686565b6106dc610fc9565b60978190556040518181527fb1484c2bf00d94a00783b6081ebc5f5d02be4675f6eb8cf4c0c95bfe5a3f06ed9060200160405180910390a150565b61071f610fc9565b6107296000611028565b565b6001600160a01b0380821660009081526099602052604090205482911633036109265760006098858154811061076357610763611774565b906000526020600020906006020190508060020154841115610798576040516309efd47960e41b815260040160405180910390fd5b6001600582015460ff1660018111156107b3576107b3611509565b036107d15760405163bda17d9560e01b815260040160405180910390fd5b6004810184905560058101805460ff19166001179055600381015460405160009133918381818185875af1925050503d806000811461082c576040519150601f19603f3d011682016040523d82523d6000602084013e610831565b606091505b50509050806108745760405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b6044820152606401610406565b815460048084015460405163188d362b60e11b815291820189905260248201526001600160a01b039091169063311a6c5690604401600060405180830381600087803b1580156108c357600080fd5b505af11580156108d7573d6000803e3d6000fd5b5050505085846001600160a01b03167f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e756222768760405161091791815260200190565b60405180910390a3505061095e565b6001600160a01b038082166000908152609960205260409081902054905163d0774c9960e01b81526104069233921690600401611838565b50505050565b336000818152609960205260409081902080546001600160a01b0319166001600160a01b038516179055517f2b87bb26d58aa2d56b59c2b23a53a6959f68d4547492bda44fb5e68b0fa38b3f906109bc908490611381565b60405180910390a250565b60006109d161036c565b6001600160a01b03163b6000036109ea5761038061036c565b6109f261036c565b6001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610a4b575060408051601f3d908101601f19168201909252610a4891810190611852565b60015b610a575761038061036c565b919050565b6000610a6661107a565b609754341015610a895760405163e4216b3160e01b815260040160405180910390fd5b609880549050905060986040518060c00160405280336001600160a01b0316815260200185858080601f016020809104026020016040519081016040528093929190818152602001838380828437600092018290525093855250505060208201889052346040830152606082018190526080909101528154600180820184556000938452602093849020835160069093020180546001600160a01b0319166001600160a01b03909316929092178255928201519192909190820190610b4e90826118bf565b5060408201516002820155606082015160038201556080820151600482015560a082015160058201805460ff191660018381811115610b8f57610b8f611509565b02179055505060405133915082907f141dfc18aa6a56fc816f44f0e9e2f1ebc92b15ab167770e17db5b084c10ed99590600090a3610bcd6001606555565b9392505050565b600054610100900460ff16610bfb5760405162461bcd60e51b81526004016104069061197e565b61048c81611028565b60405162461bcd60e51b815260206004820152600d60248201526c139bdd081cdd5c1c1bdc9d1959609a1b6044820152600090606401610406565b600054610100900460ff1615808015610c5f5750600054600160ff909116105b80610c805750610c6e306110d3565b158015610c80575060005460ff166001145b610ce35760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610406565b6000805460ff191660011790558015610d06576000805461ff0019166101001790555b610d0f82610bd4565b610d176110e2565b60978390556040518381527fc05490fc8f8e095831ea3823f005dd0661528380328aa5c3b7348a45244223be9060200160405180910390a18015610d95576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b610da2610fc9565b6001600160a01b038116610bfb5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610406565b600080516020611a32833981519152546001600160a01b031690565b33610e2c6109c7565b6001600160a01b03161461048c5733610e436109c7565b60405163163678e960e01b8152600401610406929190611838565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610e9157610d9583611111565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610eeb575060408051601f3d908101601f19168201909252610ee8918101906119c9565b60015b610f4e5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610406565b600080516020611a328339815191528114610fbd5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610406565b50610d958383836111ab565b33610fd26109c7565b6001600160a01b0316146107295760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610406565b603380546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6002606554036110cc5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610406565b6002606555565b6001600160a01b03163b151590565b600054610100900460ff166111095760405162461bcd60e51b81526004016104069061197e565b6107296111d0565b61111a816110d3565b61117c5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610406565b600080516020611a3283398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b6111b483611200565b6000825111806111c15750805b15610d955761095e8383611240565b600054610100900460ff166111f75760405162461bcd60e51b81526004016104069061197e565b61072933611028565b61120981611111565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b6060610bcd8383604051806060016040528060278152602001611a52602791396060600080856001600160a01b03168560405161127d91906119e2565b600060405180830381855af49150503d80600081146112b8576040519150601f19603f3d011682016040523d82523d6000602084013e6112bd565b606091505b50915091506112ce868383876112d8565b9695505050505050565b6060831561134557825160000361133e576112f2856110d3565b61133e5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610406565b508161134f565b61134f8383611357565b949350505050565b8151156113675781518083602001fd5b8060405162461bcd60e51b815260040161040691906119fe565b6001600160a01b0391909116815260200190565b6000602082840312156113a757600080fd5b5035919050565b6001600160a01b038116811461048c57600080fd5b6000602082840312156113d557600080fd5b8135610bcd816113ae565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561140957600080fd5b8235611414816113ae565b915060208301356001600160401b038082111561143057600080fd5b818501915085601f83011261144457600080fd5b813581811115611456576114566113e0565b604051601f8201601f19908116603f0116810190838211818310171561147e5761147e6113e0565b8160405282815288602084870101111561149757600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b60005b838110156114d45781810151838201526020016114bc565b50506000910152565b600081518084526114f58160208601602086016114b9565b601f01601f19169290920160200192915050565b634e487b7160e01b600052602160045260246000fd5b6001600160a01b038716815260c060208201819052600090611543908301886114dd565b90508560408301528460608301528360808301526002831061157557634e487b7160e01b600052602160045260246000fd5b8260a0830152979650505050505050565b60008060006060848603121561159b57600080fd5b833592506020840135915060408401356115b4816113ae565b809150509250925092565b60008083601f8401126115d157600080fd5b5081356001600160401b038111156115e857600080fd5b60208301915083602082850101111561160057600080fd5b9250929050565b60008060006040848603121561161c57600080fd5b8335925060208401356001600160401b0381111561163957600080fd5b611645868287016115bf565b9497909650939450505050565b60008060006040848603121561166757600080fd5b83356001600160401b0381111561167d57600080fd5b611689868287016115bf565b90945092505060208401356115b4816113ae565b600080604083850312156116b057600080fd5b8235915060208301356116c2816113ae565b809150509250929050565b6000806000806000608086880312156116e557600080fd5b8535945060208601356001600160401b0381111561170257600080fd5b61170e888289016115bf565b9095509350506040860135611722816113ae565b949793965091946060013592915050565b6000806020838503121561174657600080fd5b82356001600160401b0381111561175c57600080fd5b611768858286016115bf565b90969095509350505050565b634e487b7160e01b600052603260045260246000fd5b6020808252602c90820152600080516020611a1283398151915260408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c90820152600080516020611a1283398151915260408201526b6163746976652070726f787960a01b606082015260800190565b600181811c9082168061181257607f821691505b60208210810361183257634e487b7160e01b600052602260045260246000fd5b50919050565b6001600160a01b0392831681529116602082015260400190565b60006020828403121561186457600080fd5b8151610bcd816113ae565b601f821115610d95576000816000526020600020601f850160051c810160208610156118985750805b601f850160051c820191505b818110156118b7578281556001016118a4565b505050505050565b81516001600160401b038111156118d8576118d86113e0565b6118ec816118e684546117fe565b8461186f565b602080601f83116001811461192157600084156119095750858301515b600019600386901b1c1916600185901b1785556118b7565b600085815260208120601f198616915b8281101561195057888601518255948401946001909101908401611931565b508582101561196e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b6000602082840312156119db57600080fd5b5051919050565b600082516119f48184602087016114b9565b9190910192915050565b602081526000610bcd60208301846114dd56fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a264697066735822122093ff14cdadcd594e41ed959f961b15bf1f4d5b2383f1807dc01d965ded2149b864736f6c63430008190033","sourceMap":"774:5230:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;525:102:0;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5710:260:1;;;;;;;;;;-1:-1:-1;5710:260:1;;;;;:::i;:::-;;:::i;:::-;;;;597:25:17;;;665:14;;658:22;653:2;638:18;;631:50;724:14;717:22;697:18;;;690:50;585:2;570:18;5710:260:1;407:339:17;1938:73:1;;;;;;;;;;-1:-1:-1;1938:73:1;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;1938:73:1;;;3143:195:13;;;;;;;;;;-1:-1:-1;3143:195:13;;;;;:::i;:::-;;:::i;:::-;;3657:220;;;;;;:::i;:::-;;:::i;2762:131::-;;;;;;;;;;;;;:::i;:::-;;;2478:25:17;;;2466:2;2451:18;2762:131:13;2332:177:17;1852:31:1;;;;;;;;;;-1:-1:-1;1852:31:1;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;:::i;2892:173::-;;;;;;;;;;-1:-1:-1;2892:173:1;;;;;:::i;:::-;;:::i;2085:101:4:-;;;;;;;;;;;;;:::i;4566:720:1:-;;;;;;;;;;-1:-1:-1;4566:720:1;;;;;:::i;:::-;;:::i;3071:153::-;;;;;;;;;;-1:-1:-1;3071:153:1;;;;;:::i;:::-;;:::i;633:544:0:-;;;;;;;;;;;;;:::i;3262:732:1:-;;;;;;:::i;:::-;;:::i;404:115:0:-;;;;;;;;;;-1:-1:-1;404:115:0;;;;;:::i;:::-;;:::i;5500:204:1:-;;;;;;;;;;-1:-1:-1;5500:204:1;;;;;:::i;:::-;;:::i;2508:246::-;;;;;;;;;;-1:-1:-1;2508:246:1;;;;;:::i;:::-;;:::i;2335:198:4:-;;;;;;;;;;-1:-1:-1;2335:198:4;;;;;:::i;:::-;;:::i;4032:241:1:-;;;;;;;;;;-1:-1:-1;4032:241:1;;;;;:::i;5324:138::-;;;;;;;;;;-1:-1:-1;5324:138:1;;;;;:::i;:::-;-1:-1:-1;;5441:14:1;;;5324:138;525:102:0;568:7;594:26;1534:6:4;;-1:-1:-1;;;;;1534:6:4;;1462:85;594:26:0;587:33;;525:102;:::o;5710:260:1:-;5774:14;5790:9;5801:15;5828:29;5860:8;5869:10;5860:20;;;;;;;;:::i;:::-;;;;;;;;5899:14;5860:20;;;;;5899:14;;;5860:20;;-1:-1:-1;5860:20:1;;-1:-1:-1;5710:260:1;-1:-1:-1;;;5710:260:1:o;3143:195:13:-;-1:-1:-1;;;;;1654:6:13;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:13;;;;;;;:::i;:::-;;;;;;;;;1751:6;-1:-1:-1;;;;;1727:30:13;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:13;;1719:87;;;;-1:-1:-1;;;1719:87:13;;;;;;;:::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:13;1637:23;1645:4;1637:23;1629:80;;;;-1:-1:-1;;;1629:80:13;;;;;;;:::i;:::-;1751:6;-1:-1:-1;;;;;1727:30:13;:20;:18;:20::i;:::-;-1:-1:-1;;;;;1727:30:13;;1719:87;;;;-1:-1:-1;;;1719:87:13;;;;;;;:::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:13;2072:23;;2064:92;;;;-1:-1:-1;;;2064:92:13;;8533:2:17;2064:92:13;;;8515:21:17;8572:2;8552:18;;;8545:30;8611:34;8591:18;;;8584:62;-1:-1:-1;;;8662:18:17;;;8655:54;8726:19;;2064:92:13;8331:420:17;2064:92:13;-1:-1:-1;;;;;;;;;;;;2762:131:13;:::o;1852:31:1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1852:31:1;;;;-1:-1:-1;1852:31:1;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;1852:31:1;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1852:31:1;;;:::o;2892:173::-;1355:13:4;:11;:13::i;:::-;2973:14:1::1;:32:::0;;;3020:38:::1;::::0;2478:25:17;;;3020:38:1::1;::::0;2466:2:17;2451:18;3020:38:1::1;;;;;;;2892:173:::0;:::o;2085:101:4:-;1355:13;:11;:13::i;:::-;2149:30:::1;2176:1;2149:18;:30::i;:::-;2085:101::o:0;4566:720:1:-;-1:-1:-1;;;;;2285:35:1;;;;;;;:22;:35;;;;;;4665:11;;2285:35;2271:10;:49;2267:176;;4688:29:::1;4720:8;4729:10;4720:20;;;;;;;;:::i;:::-;;;;;;;;;;;4688:52;;4765:7;:15;;;4755:7;:25;4751:78;;;4803:15;;-1:-1:-1::0;;;4803:15:1::1;;;;;;;;;;;4751:78;4860:20;4842:14;::::0;::::1;::::0;::::1;;::::0;:38;::::1;;;;;;:::i;:::-;::::0;4838:98:::1;;4903:22;;-1:-1:-1::0;;;4903:22:1::1;;;;;;;;;;;4838:98;4946:14;::::0;::::1;:24:::0;;;4980:14:::1;::::0;::::1;:37:::0;;-1:-1:-1;;4980:37:1::1;4997:20;4980:37;::::0;;5078:22:::1;::::0;::::1;::::0;5046:59:::1;::::0;-1:-1:-1;;5054:10:1::1;::::0;-1:-1:-1;5046:59:1;-1:-1:-1;5046:59:1;5078:22;5054:10;5046:59:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5028:77;;;5123:7;5115:35;;;::::0;-1:-1:-1;;;5115:35:1;;9553:2:17;5115:35:1::1;::::0;::::1;9535:21:17::0;9592:2;9572:18;;;9565:30;-1:-1:-1;;;9611:18:17;;;9604:45;9666:18;;5115:35:1::1;9351:339:17::0;5115:35:1::1;5160:18:::0;;5196:14:::1;::::0;;::::1;::::0;5160:51:::1;::::0;-1:-1:-1;;;5160:51:1;;;;::::1;9869:25:17::0;;;9910:18;;;9903:34;-1:-1:-1;;;;;5160:18:1;;::::1;::::0;:23:::1;::::0;9842:18:17;;5160:51:1::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;5259:10;5245:11;-1:-1:-1::0;;;;;5226:53:1::1;;5271:7;5226:53;;;;2478:25:17::0;;2466:2;2451:18;;2332:177;5226:53:1::1;;;;;;;;4678:608;;2267:176:::0;;;-1:-1:-1;;;;;2396:35:1;;;;;;;:22;:35;;;;;;;;2375:57;;-1:-1:-1;;;2375:57:1;;;;2384:10;;2396:35;;2375:57;;;:::i;2267:176::-;4566:720;;;;:::o;3071:153::-;3150:10;3127:34;;;;:22;:34;;;;;;;:42;;-1:-1:-1;;;;;;3127:42:1;-1:-1:-1;;;;;3127:42:1;;;;;3184:33;;;;;3127:42;;3184:33;:::i;:::-;;;;;;;;3071:153;:::o;633:544:0:-;680:7;763:12;:10;:12::i;:::-;-1:-1:-1;;;;;755:33:0;;792:1;755:38;751:420;;877:12;:10;:12::i;751:420::-;943:12;:10;:12::i;:::-;-1:-1:-1;;;;;924:38:0;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;924:40:0;;;;;;;;-1:-1:-1;;924:40:0;;;;;;;;;;;;:::i;:::-;;;920:241;;1134:12;:10;:12::i;920:241::-;1015:6;633:544;-1:-1:-1;633:544:0:o;3262:732:1:-;3418:17;2526:21:6;:19;:21::i;:::-;5441:14:1;;3455:9:::1;:39;3451:103;;;3517:26;;-1:-1:-1::0;;;3517:26:1::1;;;;;;;;;;;3451:103;3575:8;:15;;;;3563:27;;3600:8;3627:283;;;;;;;;3683:10;-1:-1:-1::0;;;;;3627:283:1::1;;;;;3733:10;;3627:283;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;::::0;;;-1:-1:-1;3627:283:1;;;-1:-1:-1;;;3627:283:1::1;::::0;::::1;::::0;;;3812:9:::1;3627:283:::0;;;;;;;;;;;;;;;3600:320;;::::1;::::0;;::::1;::::0;;-1:-1:-1;3600:320:1;;;::::1;::::0;;;;;;::::1;::::0;;::::1;;::::0;;-1:-1:-1;;;;;;3600:320:1::1;-1:-1:-1::0;;;;;3600:320:1;;::::1;::::0;;;::::1;::::0;;;;::::1;::::0;;;;;;;::::1;::::0;::::1;::::0;;::::1;:::i;:::-;-1:-1:-1::0;3600:320:1::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;::::1;::::0;;-1:-1:-1;;3600:320:1::1;::::0;;;;::::1;;;;;;:::i;:::-;;;::::0;;-1:-1:-1;;3936:51:1::1;::::0;3975:10:::1;::::0;-1:-1:-1;3952:9:1;;3936:51:::1;::::0;;;::::1;2568:20:6::0;1808:1;3074:7;:22;2894:209;2568:20;3262:732:1;;;;;:::o;404:115:0:-;5374:13:5;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:5;;;;;;;:::i;:::-;480:32:0::1;499:12;480:18;:32::i;5500:204:1:-:0;5674:23;;-1:-1:-1;;;5674:23:1;;13316:2:17;5674:23:1;;;13298:21:17;13355:2;13335:18;;;13328:30;-1:-1:-1;;;13374:18:17;;;13367:43;5641:7:1;;13427:18:17;;5674:23:1;13114:337:17;2508:246:1;3279:19:5;3302:13;;;;;;3301:14;;3347:34;;;;-1:-1:-1;3365:12:5;;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:5;;;;;:17;3387:66;3325:201;;;;-1:-1:-1;;;3325:201:5;;13658:2:17;3325:201:5;;;13640:21:17;13697:2;13677:18;;;13670:30;13736:34;13716:18;;;13709:62;-1:-1:-1;;;13787:18:17;;;13780:44;13841:19;;3325:201:5;13456:410:17;3325:201:5;3536:12;:16;;-1:-1:-1;;3536:16:5;3551:1;3536:16;;;3562:65;;;;3596:13;:20;;-1:-1:-1;;3596:20:5;;;;;3562:65;2598:24:1::1;2615:6;2598:16;:24::i;:::-;2632:16;:14;:16::i;:::-;2658:14;:32:::0;;;2705:42:::1;::::0;2478:25:17;;;2705:42:1::1;::::0;2466:2:17;2451:18;2705:42:1::1;;;;;;;3651:14:5::0;3647:99;;;3697:5;3681:21;;-1:-1:-1;;3681:21:5;;;3721:14;;-1:-1:-1;14023:36:17;;3721:14:5;;14011:2:17;13996:18;3721:14:5;;;;;;;3647:99;3269:483;2508:246:1;;:::o;2335:198:4:-;1355:13;:11;:13::i;:::-;-1:-1:-1;;;;;2423:22:4;::::1;2415:73;;;::::0;-1:-1:-1;;;2415:73:4;;14272:2:17;2415:73:4::1;::::0;::::1;14254:21:17::0;14311:2;14291:18;;;14284:30;14350:34;14330:18;;;14323:62;-1:-1:-1;;;14401:18:17;;;14394:36;14447:19;;2415:73:4::1;14070:402:17::0;1175:140:11;-1:-1:-1;;;;;;;;;;;1254:54:11;-1:-1:-1;;;;;1254:54:11;;1175:140::o;1183:169:0:-;1267:10;1256:7;:5;:7::i;:::-;-1:-1:-1;;;;;1256:21:0;;1252:94;;1315:10;1327:7;:5;:7::i;:::-;1300:35;;-1:-1:-1;;;1300:35:0;;;;;;;;;:::i;2494:922:11:-;689:66;2910:48;;;2906:504;;;2974:37;2993:17;2974:18;:37::i;2906:504::-;3064:17;-1:-1:-1;;;;;3046:50:11;;:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3046:52:11;;;;;;;;-1:-1:-1;;3046:52:11;;;;;;;;;;;;:::i;:::-;;;3042:291;;3262:56;;-1:-1:-1;;;3262:56:11;;14868:2:17;3262:56:11;;;14850:21:17;14907:2;14887:18;;;14880:30;14946:34;14926:18;;;14919:62;-1:-1:-1;;;14997:18:17;;;14990:44;15051:19;;3262:56:11;14666:410:17;3042:291:11;-1:-1:-1;;;;;;;;;;;3148:28:11;;3140:82;;;;-1:-1:-1;;;3140:82:11;;15283:2:17;3140:82:11;;;15265:21:17;15322:2;15302:18;;;15295:30;15361:34;15341:18;;;15334:62;-1:-1:-1;;;15412:18:17;;;15405:39;15461:19;;3140:82:11;15081:405:17;3140:82:11;3099:138;3346:53;3364:17;3383:4;3389:9;3346:17;:53::i;1620:130:4:-;965:10:8;1683:7:4;:5;:7::i;:::-;-1:-1:-1;;;;;1683:23:4;;1675:68;;;;-1:-1:-1;;;1675:68:4;;15693:2:17;1675:68:4;;;15675:21:17;;;15712:18;;;15705:30;15771:34;15751:18;;;15744:62;15823:18;;1675:68:4;15491:356:17;2687:187:4;2779:6;;;-1:-1:-1;;;;;2795:17:4;;;-1:-1:-1;;;;;;2795:17:4;;;;;;;2827:40;;2779:6;;;2795:17;2779:6;;2827:40;;2760:16;;2827:40;2750:124;2687:187;:::o;2601:287:6:-;1851:1;2733:7;;:19;2725:63;;;;-1:-1:-1;;;2725:63:6;;16054:2:17;2725:63:6;;;16036:21:17;16093:2;16073:18;;;16066:30;16132:33;16112:18;;;16105:61;16183:18;;2725:63:6;15852:355:17;2725:63:6;1851:1;2863:7;:18;2601:287::o;1423:320:7:-;-1:-1:-1;;;;;1713:19:7;;:23;;;1423:320::o;1024:95:4:-;5374:13:5;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:5;;;;;;;:::i;:::-;1086:26:4::1;:24;:26::i;1406:259:11:-:0;1487:37;1506:17;1487:18;:37::i;:::-;1479:95;;;;-1:-1:-1;;;1479:95:11;;16414:2:17;1479:95:11;;;16396:21:17;16453:2;16433:18;;;16426:30;16492:34;16472:18;;;16465:62;-1:-1:-1;;;16543:18:17;;;16536:43;16596:19;;1479:95:11;16212:409:17;1479:95:11;-1:-1:-1;;;;;;;;;;;1584:74:11;;-1:-1:-1;;;;;;1584:74:11;-1:-1:-1;;;;;1584:74:11;;;;;;;;;;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;1125:111:4:-;5374:13:5;;;;;;;5366:69;;;;-1:-1:-1;;;5366:69:5;;;;;;;:::i;:::-;1197:32:4::1;965:10:8::0;1197:18:4::1;:32::i;1771:152:11:-:0;1837:37;1856:17;1837:18;:37::i;:::-;1889:27;;-1:-1:-1;;;;;1889:27:11;;;;;;;;1771:152;:::o;6674:198:15:-;6757:12;6788:77;6809:6;6817:4;6788:77;;;;;;;;;;;;;;;;;7199:12;7224;7238:23;7265:6;-1:-1:-1;;;;;7265:19:15;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:15: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:15;;17120:2:17;8113:60:15;;;17102:21:17;17159:2;17139:18;;;17132:30;17198:31;17178:18;;;17171:59;17247:18;;8113:60:15;16918:353:17;8113:60:15;-1:-1:-1;8208:10:15;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:15;;;;;;;;:::i;14:203:17:-;-1:-1:-1;;;;;178:32:17;;;;160:51;;148:2;133:18;;14:203::o;222:180::-;281:6;334:2;322:9;313:7;309:23;305:32;302:52;;;350:1;347;340:12;302:52;-1:-1:-1;373:23:17;;222:180;-1:-1:-1;222:180:17:o;751:131::-;-1:-1:-1;;;;;826:31:17;;816:42;;806:70;;872:1;869;862:12;887:247;946:6;999:2;987:9;978:7;974:23;970:32;967:52;;;1015:1;1012;1005:12;967:52;1054:9;1041:23;1073:31;1098:5;1073:31;:::i;1139:127::-;1200:10;1195:3;1191:20;1188:1;1181:31;1231:4;1228:1;1221:15;1255:4;1252:1;1245:15;1271:1056;1348:6;1356;1409:2;1397:9;1388:7;1384:23;1380:32;1377:52;;;1425:1;1422;1415:12;1377:52;1464:9;1451:23;1483:31;1508:5;1483:31;:::i;:::-;1533:5;-1:-1:-1;1589:2:17;1574:18;;1561:32;-1:-1:-1;;;;;1642:14:17;;;1639:34;;;1669:1;1666;1659:12;1639:34;1707:6;1696:9;1692:22;1682:32;;1752:7;1745:4;1741:2;1737:13;1733:27;1723:55;;1774:1;1771;1764:12;1723:55;1810:2;1797:16;1832:2;1828;1825:10;1822:36;;;1838:18;;:::i;:::-;1913:2;1907:9;1881:2;1967:13;;-1:-1:-1;;1963:22:17;;;1987:2;1959:31;1955:40;1943:53;;;2011:18;;;2031:22;;;2008:46;2005:72;;;2057:18;;:::i;:::-;2097:10;2093:2;2086:22;2132:2;2124:6;2117:18;2172:7;2167:2;2162;2158;2154:11;2150:20;2147:33;2144:53;;;2193:1;2190;2183:12;2144:53;2249:2;2244;2240;2236:11;2231:2;2223:6;2219:15;2206:46;2294:1;2289:2;2284;2276:6;2272:15;2268:24;2261:35;2315:6;2305:16;;;;;;;1271:1056;;;;;:::o;2514:250::-;2599:1;2609:113;2623:6;2620:1;2617:13;2609:113;;;2699:11;;;2693:18;2680:11;;;2673:39;2645:2;2638:10;2609:113;;;-1:-1:-1;;2756:1:17;2738:16;;2731:27;2514:250::o;2769:270::-;2810:3;2848:5;2842:12;2875:6;2870:3;2863:19;2891:76;2960:6;2953:4;2948:3;2944:14;2937:4;2930:5;2926:16;2891:76;:::i;:::-;3021:2;3000:15;-1:-1:-1;;2996:29:17;2987:39;;;;3028:4;2983:50;;2769:270;-1:-1:-1;;2769:270:17:o;3044:127::-;3105:10;3100:3;3096:20;3093:1;3086:31;3136:4;3133:1;3126:15;3160:4;3157:1;3150:15;3176:789;-1:-1:-1;;;;;3497:32:17;;3479:51;;3566:3;3561:2;3546:18;;3539:31;;;-1:-1:-1;;3587:45:17;;3612:19;;3604:6;3587:45;:::i;:::-;3579:53;;3668:6;3663:2;3652:9;3648:18;3641:34;3711:6;3706:2;3695:9;3691:18;3684:34;3755:6;3749:3;3738:9;3734:19;3727:35;3792:1;3784:6;3781:13;3771:144;;3837:10;3832:3;3828:20;3825:1;3818:31;3872:4;3869:1;3862:15;3900:4;3897:1;3890:15;3771:144;3952:6;3946:3;3935:9;3931:19;3924:35;3176:789;;;;;;;;;:::o;3970:383::-;4047:6;4055;4063;4116:2;4104:9;4095:7;4091:23;4087:32;4084:52;;;4132:1;4129;4122:12;4084:52;4168:9;4155:23;4145:33;;4225:2;4214:9;4210:18;4197:32;4187:42;;4279:2;4268:9;4264:18;4251:32;4292:31;4317:5;4292:31;:::i;:::-;4342:5;4332:15;;;3970:383;;;;;:::o;4358:347::-;4409:8;4419:6;4473:3;4466:4;4458:6;4454:17;4450:27;4440:55;;4491:1;4488;4481:12;4440:55;-1:-1:-1;4514:20:17;;-1:-1:-1;;;;;4546:30:17;;4543:50;;;4589:1;4586;4579:12;4543:50;4626:4;4618:6;4614:17;4602:29;;4678:3;4671:4;4662:6;4654;4650:19;4646:30;4643:39;4640:59;;;4695:1;4692;4685:12;4640:59;4358:347;;;;;:::o;4710:477::-;4789:6;4797;4805;4858:2;4846:9;4837:7;4833:23;4829:32;4826:52;;;4874:1;4871;4864:12;4826:52;4897:23;;;-1:-1:-1;4971:2:17;4956:18;;4943:32;-1:-1:-1;;;;;4987:30:17;;4984:50;;;5030:1;5027;5020:12;4984:50;5069:58;5119:7;5110:6;5099:9;5095:22;5069:58;:::i;:::-;4710:477;;5146:8;;-1:-1:-1;5043:84:17;;-1:-1:-1;;;;4710:477:17:o;5374:559::-;5468:6;5476;5484;5537:2;5525:9;5516:7;5512:23;5508:32;5505:52;;;5553:1;5550;5543:12;5505:52;5580:23;;-1:-1:-1;;;;;5615:30:17;;5612:50;;;5658:1;5655;5648:12;5612:50;5697:58;5747:7;5738:6;5727:9;5723:22;5697:58;:::i;:::-;5774:8;;-1:-1:-1;5671:84:17;-1:-1:-1;;5859:2:17;5844:18;;5831:32;5872:31;5831:32;5872:31;:::i;5938:315::-;6006:6;6014;6067:2;6055:9;6046:7;6042:23;6038:32;6035:52;;;6083:1;6080;6073:12;6035:52;6119:9;6106:23;6096:33;;6179:2;6168:9;6164:18;6151:32;6192:31;6217:5;6192:31;:::i;:::-;6242:5;6232:15;;;5938:315;;;;;:::o;6258:696::-;6370:6;6378;6386;6394;6402;6455:3;6443:9;6434:7;6430:23;6426:33;6423:53;;;6472:1;6469;6462:12;6423:53;6495:23;;;-1:-1:-1;6569:2:17;6554:18;;6541:32;-1:-1:-1;;;;;6585:30:17;;6582:50;;;6628:1;6625;6618:12;6582:50;6667:58;6717:7;6708:6;6697:9;6693:22;6667:58;:::i;:::-;6744:8;;-1:-1:-1;6641:84:17;-1:-1:-1;;6829:2:17;6814:18;;6801:32;6842:31;6801:32;6842:31;:::i;:::-;6258:696;;;;-1:-1:-1;6258:696:17;;6944:2;6929:18;6916:32;;6258:696;-1:-1:-1;;6258:696:17:o;6959:409::-;7029:6;7037;7090:2;7078:9;7069:7;7065:23;7061:32;7058:52;;;7106:1;7103;7096:12;7058:52;7133:23;;-1:-1:-1;;;;;7168:30:17;;7165:50;;;7211:1;7208;7201:12;7165:50;7250:58;7300:7;7291:6;7280:9;7276:22;7250:58;:::i;:::-;7327:8;;7224:84;;-1:-1:-1;6959:409:17;-1:-1:-1;;;;6959:409:17:o;7373:127::-;7434:10;7429:3;7425:20;7422:1;7415:31;7465:4;7462:1;7455:15;7489:4;7486:1;7479:15;7505:408;7707:2;7689:21;;;7746:2;7726:18;;;7719:30;-1:-1:-1;;;;;;;;;;;7780:2:17;7765:18;;7758:62;-1:-1:-1;;;7851:2:17;7836:18;;7829:42;7903:3;7888:19;;7505:408::o;7918:::-;8120:2;8102:21;;;8159:2;8139:18;;;8132:30;-1:-1:-1;;;;;;;;;;;8193:2:17;8178:18;;8171:62;-1:-1:-1;;;8264:2:17;8249:18;;8242:42;8316:3;8301:19;;7918:408::o;8756:380::-;8835:1;8831:12;;;;8878;;;8899:61;;8953:4;8945:6;8941:17;8931:27;;8899:61;9006:2;8998:6;8995:14;8975:18;8972:38;8969:161;;9052:10;9047:3;9043:20;9040:1;9033:31;9087:4;9084:1;9077:15;9115:4;9112:1;9105:15;8969:161;;8756:380;;;:::o;9948:304::-;-1:-1:-1;;;;;10178:15:17;;;10160:34;;10230:15;;10225:2;10210:18;;10203:43;10110:2;10095:18;;9948:304::o;10257:251::-;10327:6;10380:2;10368:9;10359:7;10355:23;10351:32;10348:52;;;10396:1;10393;10386:12;10348:52;10428:9;10422:16;10447:31;10472:5;10447:31;:::i;10638:542::-;10739:2;10734:3;10731:11;10728:446;;;10775:1;10799:5;10796:1;10789:16;10843:4;10840:1;10830:18;10913:2;10901:10;10897:19;10894:1;10890:27;10884:4;10880:38;10949:4;10937:10;10934:20;10931:47;;;-1:-1:-1;10972:4:17;10931:47;11027:2;11022:3;11018:12;11015:1;11011:20;11005:4;11001:31;10991:41;;11082:82;11100:2;11093:5;11090:13;11082:82;;;11145:17;;;11126:1;11115:13;11082:82;;;11086:3;;;10638:542;;;:::o;11356:1341::-;11474:10;;-1:-1:-1;;;;;11496:30:17;;11493:56;;;11529:18;;:::i;:::-;11558:96;11647:6;11607:38;11639:4;11633:11;11607:38;:::i;:::-;11601:4;11558:96;:::i;:::-;11709:4;;11766:2;11755:14;;11783:1;11778:662;;;;12484:1;12501:6;12498:89;;;-1:-1:-1;12553:19:17;;;12547:26;12498:89;-1:-1:-1;;11313:1:17;11309:11;;;11305:24;11301:29;11291:40;11337:1;11333:11;;;11288:57;12600:81;;11748:943;;11778:662;10585:1;10578:14;;;10622:4;10609:18;;-1:-1:-1;;11814:20:17;;;11931:236;11945:7;11942:1;11939:14;11931:236;;;12034:19;;;12028:26;12013:42;;12126:27;;;;12094:1;12082:14;;;;11961:19;;11931:236;;;11935:3;12195:6;12186:7;12183:19;12180:201;;;12256:19;;;12250:26;-1:-1:-1;;12339:1:17;12335:14;;;12351:3;12331:24;12327:37;12323:42;12308:58;12293:74;;12180:201;-1:-1:-1;;;;;12427:1:17;12411:14;;;12407:22;12394:36;;-1:-1:-1;11356:1341:17:o;12702:407::-;12904:2;12886:21;;;12943:2;12923:18;;;12916:30;12982:34;12977:2;12962:18;;12955:62;-1:-1:-1;;;13048:2:17;13033:18;;13026:41;13099:3;13084:19;;12702:407::o;14477:184::-;14547:6;14600:2;14588:9;14579:7;14575:23;14571:32;14568:52;;;14616:1;14613;14606:12;14568:52;-1:-1:-1;14639:16:17;;14477:184;-1:-1:-1;14477:184:17:o;16626:287::-;16755:3;16793:6;16787:13;16809:66;16868:6;16863:3;16856:4;16848:6;16844:17;16809:66;:::i;:::-;16891:16;;;;;16626:287;-1:-1:-1;;16626:287:17:o;17276:219::-;17425:2;17414:9;17407:21;17388:4;17445:44;17485:2;17474:9;17470:18;17462:6;17445:44;:::i","linkReferences":{},"immutableReferences":{"1766":[{"start":968,"length":32},{"start":1041,"length":32},{"start":1177,"length":32},{"start":1241,"length":32},{"start":1365,"length":32}]}},"methodIdentifiers":{"arbitrableTribunalSafe(address)":"26a0754c","arbitrationCost(bytes)":"f7434ea9","arbitrationCost(bytes,address)":"d98493f6","createDispute(uint256,bytes)":"c13517e1","createDispute(uint256,bytes,address,uint256)":"f6506db4","currentRuling(uint256)":"1c3db16d","disputes(uint256)":"564a565d","executeRuling(uint256,uint256,address)":"7a1d3756","initialize(address)":"c4d66de8","initialize(uint256,address)":"da35a26f","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","proxyOwner()":"025313a2","registerSafe(address)":"88d5b732","renounceOwnership()":"715018a6","setArbitrationFee(uint256)":"5ea7b4fc","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.25+commit.b61c2a91\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DisputeAlreadySolved\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidRuling\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotEnoughArbitrationFees\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"safe\",\"type\":\"address\"}],\"name\":\"OnlySafe\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IERC20\",\"name\":\"_token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bool\",\"name\":\"_accepted\",\"type\":\"bool\"}],\"name\":\"AcceptedFeeToken\",\"type\":\"event\"},{\"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\":\"uint256\",\"name\":\"_newArbitrationFee\",\"type\":\"uint256\"}],\"name\":\"ArbitrationFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"contract IArbitrable\",\"name\":\"_arbitrable\",\"type\":\"address\"}],\"name\":\"DisputeCreation\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IERC20\",\"name\":\"_feeToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"_rateInEth\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"_rateDecimals\",\"type\":\"uint8\"}],\"name\":\"NewCurrencyRate\",\"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\":true,\"internalType\":\"contract IArbitrable\",\"name\":\"_arbitrable\",\"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\":\"uint256\",\"name\":\"_arbitrationFee\",\"type\":\"uint256\"}],\"name\":\"SafeArbitratorInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_arbitrable\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"SafeRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"arbitrable\",\"type\":\"address\"}],\"name\":\"arbitrableTribunalSafe\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"safe\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"arbitrationCost\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"arbitrationCost\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_choices\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"createDispute\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeID\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"createDispute\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"}],\"name\":\"currentRuling\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"ruling\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"tied\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"overridden\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"disputes\",\"outputs\":[{\"internalType\":\"contract IArbitrable\",\"name\":\"arbitrated\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"arbitratorExtraData\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"choices\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrationFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"ruling\",\"type\":\"uint256\"},{\"internalType\":\"enum SafeArbitrator.DisputeStatus\",\"name\":\"status\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_arbitrable\",\"type\":\"address\"}],\"name\":\"executeRuling\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_arbitrationFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":\"proxyOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"registerSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_arbitrationFee\",\"type\":\"uint256\"}],\"name\":\"setArbitrationFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":{\"details\":\"This is an arbitrator middleware that will allow a safe to decide on the result of disputes.\",\"events\":{\"AcceptedFeeToken(address,bool)\":{\"details\":\"To be emitted when an ERC20 token is added or removed as a method to pay fees.\",\"params\":{\"_accepted\":\"Whether the token is accepted or not.\",\"_token\":\"The ERC20 token.\"}},\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"DisputeCreation(uint256,address)\":{\"details\":\"To be emitted when a dispute is created.\",\"params\":{\"_arbitrable\":\"The contract which created the dispute.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\"}},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"NewCurrencyRate(address,uint64,uint8)\":{\"details\":\"To be emitted when the fee for a particular ERC20 token is updated.\",\"params\":{\"_feeToken\":\"The ERC20 token.\",\"_rateDecimals\":\"The new decimals of the fee token rate.\",\"_rateInEth\":\"The new rate of the fee token in ETH.\"}},\"Ruling(address,uint256,uint256)\":{\"details\":\"To be raised when a ruling is given.\",\"params\":{\"_arbitrable\":\"The arbitrable receiving 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\":{\"arbitrationCost(bytes)\":{\"details\":\"Compute the cost of arbitration denominated in the native currency, typically ETH. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\"},\"returns\":{\"fee\":\"The arbitration cost in ETH.\"}},\"arbitrationCost(bytes,address)\":{\"details\":\"Compute the cost of arbitration denominated in `_feeToken`. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\",\"_feeToken\":\"The ERC20 token used to pay fees.\"},\"returns\":{\"_0\":\"The arbitration cost in `_feeToken`.\"}},\"createDispute(uint256,bytes)\":{\"details\":\"Create a dispute and pay for the fees in the native currency, typically ETH. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\",\"_numberOfChoices\":\"The number of choices the arbitrator can choose from in this dispute.\"},\"returns\":{\"disputeID\":\"The identifier of the dispute created.\"}},\"createDispute(uint256,bytes,address,uint256)\":{\"details\":\"Create a dispute and pay for the fees in a supported ERC20 token. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\",\"_feeAmount\":\"Amount of the ERC20 token used to pay fees.\",\"_feeToken\":\"The ERC20 token used to pay fees.\",\"_numberOfChoices\":\"The number of choices the arbitrator can choose from in this dispute.\"},\"returns\":{\"_0\":\"The identifier of the dispute created.\"}},\"currentRuling(uint256)\":{\"details\":\"Gets the current ruling of a specified dispute.\",\"params\":{\"_disputeID\":\"The ID of the dispute.\"},\"returns\":{\"overridden\":\"Whether the ruling was overridden by appeal funding or not.\",\"ruling\":\"The current ruling.\",\"tied\":\"Whether it's a tie or not.\"}},\"executeRuling(uint256,uint256,address)\":{\"details\":\"Give a ruling to a dispute.\",\"params\":{\"_arbitrable\":\"Address of the arbitrable that the safe rules for\\\".\",\"_disputeID\":\"ID of the dispute to rule.\",\"_ruling\":\"Ruling given by the arbitrator. Note that 0 means that arbitrator chose \\\"Refused to rule\\\".\"}},\"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.\"},\"registerSafe(address)\":{\"details\":\"Authorize the safe to execute a ruling on the source contract.<\",\"params\":{\"_safe\":\"that acts as the Tribunal safe that can rule disputes from the source Strategy.\"}},\"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.\"},\"setArbitrationFee(uint256)\":{\"details\":\"Set the arbitration fee. Only callable by the owner.\",\"params\":{\"_arbitrationFee\":\"Amount to be paid for arbitration.\"}},\"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.\"}},\"title\":\"Safe Arbitrator\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol\":\"SafeArbitrator\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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\":{\"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol\":{\"keccak256\":\"0xc725d683ef1b5d978e79dfc887996a5348e2f0264abe228a84d63460aa141f71\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://51ec050f375c048649b23d56118a402f2116ad430eaf9f57442c5f8a020da860\",\"dweb:/ipfs/QmdJyCfviijA9e2pJ1kdPQoZVy8iPfumFmSnfaxhuL5R12\"]},\"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrable.sol\":{\"keccak256\":\"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508\",\"dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r\"]},\"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrator.sol\":{\"keccak256\":\"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d\",\"dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R\"]},\"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/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/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/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"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/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.25+commit.b61c2a91"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"DisputeAlreadySolved"},{"inputs":[],"type":"error","name":"InvalidRuling"},{"inputs":[],"type":"error","name":"NotEnoughArbitrationFees"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"safe","type":"address"}],"type":"error","name":"OnlySafe"},{"inputs":[{"internalType":"contract IERC20","name":"_token","type":"address","indexed":true},{"internalType":"bool","name":"_accepted","type":"bool","indexed":true}],"type":"event","name":"AcceptedFeeToken","anonymous":false},{"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":"uint256","name":"_newArbitrationFee","type":"uint256","indexed":false}],"type":"event","name":"ArbitrationFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256","indexed":true},{"internalType":"contract IArbitrable","name":"_arbitrable","type":"address","indexed":true}],"type":"event","name":"DisputeCreation","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"contract IERC20","name":"_feeToken","type":"address","indexed":true},{"internalType":"uint64","name":"_rateInEth","type":"uint64","indexed":false},{"internalType":"uint8","name":"_rateDecimals","type":"uint8","indexed":false}],"type":"event","name":"NewCurrencyRate","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":"contract IArbitrable","name":"_arbitrable","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":"uint256","name":"_arbitrationFee","type":"uint256","indexed":false}],"type":"event","name":"SafeArbitratorInitialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_arbitrable","type":"address","indexed":true},{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"SafeRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"arbitrable","type":"address"}],"stateMutability":"view","type":"function","name":"arbitrableTribunalSafe","outputs":[{"internalType":"address","name":"safe","type":"address"}]},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"pure","type":"function","name":"arbitrationCost","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function","name":"arbitrationCost","outputs":[{"internalType":"uint256","name":"fee","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_choices","type":"uint256"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"createDispute","outputs":[{"internalType":"uint256","name":"disputeID","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"contract IERC20","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function","name":"createDispute","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"}],"stateMutability":"view","type":"function","name":"currentRuling","outputs":[{"internalType":"uint256","name":"ruling","type":"uint256"},{"internalType":"bool","name":"tied","type":"bool"},{"internalType":"bool","name":"overridden","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"disputes","outputs":[{"internalType":"contract IArbitrable","name":"arbitrated","type":"address"},{"internalType":"bytes","name":"arbitratorExtraData","type":"bytes"},{"internalType":"uint256","name":"choices","type":"uint256"},{"internalType":"uint256","name":"arbitrationFee","type":"uint256"},{"internalType":"uint256","name":"ruling","type":"uint256"},{"internalType":"enum SafeArbitrator.DisputeStatus","name":"status","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"},{"internalType":"uint256","name":"_ruling","type":"uint256"},{"internalType":"address","name":"_arbitrable","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"executeRuling"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"uint256","name":"_arbitrationFee","type":"uint256"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"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":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"registerSafe"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"uint256","name":"_arbitrationFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setArbitrationFee"},{"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":{"arbitrationCost(bytes)":{"details":"Compute the cost of arbitration denominated in the native currency, typically ETH. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes)."},"returns":{"fee":"The arbitration cost in ETH."}},"arbitrationCost(bytes,address)":{"details":"Compute the cost of arbitration denominated in `_feeToken`. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).","_feeToken":"The ERC20 token used to pay fees."},"returns":{"_0":"The arbitration cost in `_feeToken`."}},"createDispute(uint256,bytes)":{"details":"Create a dispute and pay for the fees in the native currency, typically ETH. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).","_numberOfChoices":"The number of choices the arbitrator can choose from in this dispute."},"returns":{"disputeID":"The identifier of the dispute created."}},"createDispute(uint256,bytes,address,uint256)":{"details":"Create a dispute and pay for the fees in a supported ERC20 token. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).","_feeAmount":"Amount of the ERC20 token used to pay fees.","_feeToken":"The ERC20 token used to pay fees.","_numberOfChoices":"The number of choices the arbitrator can choose from in this dispute."},"returns":{"_0":"The identifier of the dispute created."}},"currentRuling(uint256)":{"details":"Gets the current ruling of a specified dispute.","params":{"_disputeID":"The ID of the dispute."},"returns":{"overridden":"Whether the ruling was overridden by appeal funding or not.","ruling":"The current ruling.","tied":"Whether it's a tie or not."}},"executeRuling(uint256,uint256,address)":{"details":"Give a ruling to a dispute.","params":{"_arbitrable":"Address of the arbitrable that the safe rules for\".","_disputeID":"ID of the dispute to rule.","_ruling":"Ruling given by the arbitrator. Note that 0 means that arbitrator chose \"Refused to rule\"."}},"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."},"registerSafe(address)":{"details":"Authorize the safe to execute a ruling on the source contract.<","params":{"_safe":"that acts as the Tribunal safe that can rule disputes from the source Strategy."}},"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."},"setArbitrationFee(uint256)":{"details":"Set the arbitration fee. Only callable by the owner.","params":{"_arbitrationFee":"Amount to be paid for arbitration."}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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":{"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol":"SafeArbitrator"},"evmVersion":"paris","libraries":{}},"sources":{"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol":{"keccak256":"0xc725d683ef1b5d978e79dfc887996a5348e2f0264abe228a84d63460aa141f71","urls":["bzz-raw://51ec050f375c048649b23d56118a402f2116ad430eaf9f57442c5f8a020da860","dweb:/ipfs/QmdJyCfviijA9e2pJ1kdPQoZVy8iPfumFmSnfaxhuL5R12"],"license":"MIT"},"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrable.sol":{"keccak256":"0x62f583c799ab885f04092c780ca25ca58383e34981427c82be73c70f8cc6ca52","urls":["bzz-raw://7226cc99e84cb741d69b82d3cd25536d2f9ee5afc58b8c613d9f41e6e48b2508","dweb:/ipfs/QmPwhRBYXx4EtqX3rPdD5ZRqYTWocFbSmkLtPRHWp7at6r"],"license":"MIT"},"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrator.sol":{"keccak256":"0x741edd3cc24c59d165594e94f9ddda46b1fbbc54a9e1f9274de3c2eac37d6e2c","urls":["bzz-raw://63c18e7bebae0b43502a0f78632d8e02845dc6b4d63c81ba54b4a4c164d2401d","dweb:/ipfs/QmXjrXvxSBTv1muAM5JL7B2UhpwvGpMbtygfUmYTVNMv2R"],"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/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/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/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"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/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"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/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"}},"version":1},"storageLayout":{"storage":[{"astId":777,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":780,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":1404,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":649,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":769,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":954,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":1023,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":157,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"arbitrationFee","offset":0,"slot":"151","type":"t_uint256"},{"astId":161,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"disputes","offset":0,"slot":"152","type":"t_array(t_struct(DisputeStruct)155_storage)dyn_storage"},{"astId":165,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"arbitrableTribunalSafe","offset":0,"slot":"153","type":"t_mapping(t_address,t_address)"},{"astId":495,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"__gap","offset":0,"slot":"154","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_struct(DisputeStruct)155_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct SafeArbitrator.DisputeStruct[]","numberOfBytes":"32","base":"t_struct(DisputeStruct)155_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_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"},"t_contract(IArbitrable)533":{"encoding":"inplace","label":"contract IArbitrable","numberOfBytes":"20"},"t_enum(DisputeStatus)140":{"encoding":"inplace","label":"enum SafeArbitrator.DisputeStatus","numberOfBytes":"1"},"t_mapping(t_address,t_address)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address)","numberOfBytes":"32","value":"t_address"},"t_struct(DisputeStruct)155_storage":{"encoding":"inplace","label":"struct SafeArbitrator.DisputeStruct","numberOfBytes":"192","members":[{"astId":143,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"arbitrated","offset":0,"slot":"0","type":"t_contract(IArbitrable)533"},{"astId":145,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"arbitratorExtraData","offset":0,"slot":"1","type":"t_bytes_storage"},{"astId":147,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"choices","offset":0,"slot":"2","type":"t_uint256"},{"astId":149,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"arbitrationFee","offset":0,"slot":"3","type":"t_uint256"},{"astId":151,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"ruling","offset":0,"slot":"4","type":"t_uint256"},{"astId":154,"contract":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"status","offset":0,"slot":"5","type":"t_enum(DisputeStatus)140"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/SafeArbitrator.sol","id":497,"exportedSymbols":{"IArbitrable":[533],"IArbitrator":[637],"IERC20":[1944],"OwnableUpgradeable":[770],"ProxyOwnableUpgrader":[100],"ReentrancyGuardUpgradeable":[1024],"SafeArbitrator":[496],"UUPSUpgradeable":[1866]},"nodeType":"SourceUnit","src":"33:5972:1","nodes":[{"id":102,"nodeType":"PragmaDirective","src":"33:24:1","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":104,"nodeType":"ImportDirective","src":"59:64:1","nodes":[],"absolutePath":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"./ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":497,"sourceUnit":101,"symbolAliases":[{"foreign":{"id":103,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":100,"src":"67:20:1","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":106,"nodeType":"ImportDirective","src":"124:70:1","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"@openzeppelin/contracts/token/ERC20/IERC20.sol","nameLocation":"-1:-1:-1","scope":497,"sourceUnit":1945,"symbolAliases":[{"foreign":{"id":105,"name":"IERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1944,"src":"132:6:1","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":108,"nodeType":"ImportDirective","src":"195:88:1","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":497,"sourceUnit":1867,"symbolAliases":[{"foreign":{"id":107,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1866,"src":"203:15:1","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":110,"nodeType":"ImportDirective","src":"284:110:1","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":497,"sourceUnit":771,"symbolAliases":[{"foreign":{"id":109,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":770,"src":"292:18:1","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":112,"nodeType":"ImportDirective","src":"395:132:1","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/security/ReentrancyGuardUpgradeable.sol","nameLocation":"-1:-1:-1","scope":497,"sourceUnit":1025,"symbolAliases":[{"foreign":{"id":111,"name":"ReentrancyGuardUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":1024,"src":"403:26:1","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":114,"nodeType":"ImportDirective","src":"528:57:1","nodes":[],"absolutePath":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrable.sol","file":"./interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":497,"sourceUnit":534,"symbolAliases":[{"foreign":{"id":113,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":533,"src":"536:11:1","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":116,"nodeType":"ImportDirective","src":"586:57:1","nodes":[],"absolutePath":"/home/corantin/Documents/GitHub/gardens-v2/main/pkg/contracts/src/interfaces/IArbitrator.sol","file":"./interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":497,"sourceUnit":638,"symbolAliases":[{"foreign":{"id":115,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":637,"src":"594:11:1","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":496,"nodeType":"ContractDefinition","src":"774:5230:1","nodes":[{"id":127,"nodeType":"EventDefinition","src":"869:56:1","nodes":[],"anonymous":false,"eventSelector":"b1484c2bf00d94a00783b6081ebc5f5d02be4675f6eb8cf4c0c95bfe5a3f06ed","name":"ArbitrationFeeUpdated","nameLocation":"875:21:1","parameters":{"id":126,"nodeType":"ParameterList","parameters":[{"constant":false,"id":125,"indexed":false,"mutability":"mutable","name":"_newArbitrationFee","nameLocation":"905:18:1","nodeType":"VariableDeclaration","scope":127,"src":"897:26:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":124,"name":"uint256","nodeType":"ElementaryTypeName","src":"897:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"896:28:1"}},{"id":133,"nodeType":"EventDefinition","src":"930:65:1","nodes":[],"anonymous":false,"eventSelector":"2b87bb26d58aa2d56b59c2b23a53a6959f68d4547492bda44fb5e68b0fa38b3f","name":"SafeRegistered","nameLocation":"936:14:1","parameters":{"id":132,"nodeType":"ParameterList","parameters":[{"constant":false,"id":129,"indexed":true,"mutability":"mutable","name":"_arbitrable","nameLocation":"967:11:1","nodeType":"VariableDeclaration","scope":133,"src":"951:27:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":128,"name":"address","nodeType":"ElementaryTypeName","src":"951:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":131,"indexed":false,"mutability":"mutable","name":"_safe","nameLocation":"988:5:1","nodeType":"VariableDeclaration","scope":133,"src":"980:13:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":130,"name":"address","nodeType":"ElementaryTypeName","src":"980:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"950:44:1"}},{"id":137,"nodeType":"EventDefinition","src":"1000:57:1","nodes":[],"anonymous":false,"eventSelector":"c05490fc8f8e095831ea3823f005dd0661528380328aa5c3b7348a45244223be","name":"SafeArbitratorInitialized","nameLocation":"1006:25:1","parameters":{"id":136,"nodeType":"ParameterList","parameters":[{"constant":false,"id":135,"indexed":false,"mutability":"mutable","name":"_arbitrationFee","nameLocation":"1040:15:1","nodeType":"VariableDeclaration","scope":137,"src":"1032:23:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":134,"name":"uint256","nodeType":"ElementaryTypeName","src":"1032:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1031:25:1"}},{"id":140,"nodeType":"EnumDefinition","src":"1063:144:1","nodes":[],"canonicalName":"SafeArbitrator.DisputeStatus","members":[{"id":138,"name":"Waiting","nameLocation":"1092:7:1","nodeType":"EnumValue","src":"1092:7:1"},{"id":139,"name":"Solved","nameLocation":"1166:6:1","nodeType":"EnumValue","src":"1166:6:1"}],"name":"DisputeStatus","nameLocation":"1068:13:1"},{"id":155,"nodeType":"StructDefinition","src":"1213:509:1","nodes":[],"canonicalName":"SafeArbitrator.DisputeStruct","members":[{"constant":false,"id":143,"mutability":"mutable","name":"arbitrated","nameLocation":"1256:10:1","nodeType":"VariableDeclaration","scope":155,"src":"1244:22:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"},"typeName":{"id":142,"nodeType":"UserDefinedTypeName","pathNode":{"id":141,"name":"IArbitrable","nameLocations":["1244:11:1"],"nodeType":"IdentifierPath","referencedDeclaration":533,"src":"1244:11:1"},"referencedDeclaration":533,"src":"1244:11:1","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"}},"visibility":"internal"},{"constant":false,"id":145,"mutability":"mutable","name":"arbitratorExtraData","nameLocation":"1325:19:1","nodeType":"VariableDeclaration","scope":155,"src":"1319:25:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"},"typeName":{"id":144,"name":"bytes","nodeType":"ElementaryTypeName","src":"1319:5:1","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":147,"mutability":"mutable","name":"choices","nameLocation":"1396:7:1","nodeType":"VariableDeclaration","scope":155,"src":"1388:15:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":146,"name":"uint256","nodeType":"ElementaryTypeName","src":"1388:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":149,"mutability":"mutable","name":"arbitrationFee","nameLocation":"1478:14:1","nodeType":"VariableDeclaration","scope":155,"src":"1470:22:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":148,"name":"uint256","nodeType":"ElementaryTypeName","src":"1470:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":151,"mutability":"mutable","name":"ruling","nameLocation":"1608:6:1","nodeType":"VariableDeclaration","scope":155,"src":"1600:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":150,"name":"uint256","nodeType":"ElementaryTypeName","src":"1600:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":154,"mutability":"mutable","name":"status","nameLocation":"1673:6:1","nodeType":"VariableDeclaration","scope":155,"src":"1659:20:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$140","typeString":"enum SafeArbitrator.DisputeStatus"},"typeName":{"id":153,"nodeType":"UserDefinedTypeName","pathNode":{"id":152,"name":"DisputeStatus","nameLocations":["1659:13:1"],"nodeType":"IdentifierPath","referencedDeclaration":140,"src":"1659:13:1"},"referencedDeclaration":140,"src":"1659:13:1","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$140","typeString":"enum SafeArbitrator.DisputeStatus"}},"visibility":"internal"}],"name":"DisputeStruct","nameLocation":"1220:13:1","scope":496,"visibility":"public"},{"id":157,"nodeType":"VariableDeclaration","src":"1728:30:1","nodes":[],"constant":false,"mutability":"mutable","name":"arbitrationFee","nameLocation":"1744:14:1","scope":496,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":156,"name":"uint256","nodeType":"ElementaryTypeName","src":"1728:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"private"},{"id":161,"nodeType":"VariableDeclaration","src":"1852:31:1","nodes":[],"constant":false,"functionSelector":"564a565d","mutability":"mutable","name":"disputes","nameLocation":"1875:8:1","scope":496,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_DisputeStruct_$155_storage_$dyn_storage","typeString":"struct SafeArbitrator.DisputeStruct[]"},"typeName":{"baseType":{"id":159,"nodeType":"UserDefinedTypeName","pathNode":{"id":158,"name":"DisputeStruct","nameLocations":["1852:13:1"],"nodeType":"IdentifierPath","referencedDeclaration":155,"src":"1852:13:1"},"referencedDeclaration":155,"src":"1852:13:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct"}},"id":160,"nodeType":"ArrayTypeName","src":"1852:15:1","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_DisputeStruct_$155_storage_$dyn_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct[]"}},"visibility":"public"},{"id":165,"nodeType":"VariableDeclaration","src":"1938:73:1","nodes":[],"constant":false,"functionSelector":"26a0754c","mutability":"mutable","name":"arbitrableTribunalSafe","nameLocation":"1989:22:1","scope":496,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_address_$","typeString":"mapping(address => address)"},"typeName":{"id":164,"keyName":"arbitrable","keyNameLocation":"1954:10:1","keyType":{"id":162,"name":"address","nodeType":"ElementaryTypeName","src":"1946:7:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"1938:43:1","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_address_$","typeString":"mapping(address => address)"},"valueName":"safe","valueNameLocation":"1976:4:1","valueType":{"id":163,"name":"address","nodeType":"ElementaryTypeName","src":"1968:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},"visibility":"public"},{"id":171,"nodeType":"ErrorDefinition","src":"2068:45:1","nodes":[],"errorSelector":"d0774c99","name":"OnlySafe","nameLocation":"2074:8:1","parameters":{"id":170,"nodeType":"ParameterList","parameters":[{"constant":false,"id":167,"mutability":"mutable","name":"sender","nameLocation":"2091:6:1","nodeType":"VariableDeclaration","scope":171,"src":"2083:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":166,"name":"address","nodeType":"ElementaryTypeName","src":"2083:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":169,"mutability":"mutable","name":"safe","nameLocation":"2107:4:1","nodeType":"VariableDeclaration","scope":171,"src":"2099:12:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":168,"name":"address","nodeType":"ElementaryTypeName","src":"2099:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2082:30:1"}},{"id":173,"nodeType":"ErrorDefinition","src":"2118:33:1","nodes":[],"errorSelector":"e4216b31","name":"NotEnoughArbitrationFees","nameLocation":"2124:24:1","parameters":{"id":172,"nodeType":"ParameterList","parameters":[],"src":"2148:2:1"}},{"id":175,"nodeType":"ErrorDefinition","src":"2156:22:1","nodes":[],"errorSelector":"9efd4790","name":"InvalidRuling","nameLocation":"2162:13:1","parameters":{"id":174,"nodeType":"ParameterList","parameters":[],"src":"2175:2:1"}},{"id":177,"nodeType":"ErrorDefinition","src":"2183:29:1","nodes":[],"errorSelector":"bda17d95","name":"DisputeAlreadySolved","nameLocation":"2189:20:1","parameters":{"id":176,"nodeType":"ParameterList","parameters":[],"src":"2209:2:1"}},{"id":200,"nodeType":"ModifierDefinition","src":"2218:231:1","nodes":[],"body":{"id":199,"nodeType":"Block","src":"2257:192:1","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":186,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":181,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"2271:3:1","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2275:6:1","memberName":"sender","nodeType":"MemberAccess","src":"2271:10:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"baseExpression":{"id":183,"name":"arbitrableTribunalSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":165,"src":"2285:22:1","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_address_$","typeString":"mapping(address => address)"}},"id":185,"indexExpression":{"id":184,"name":"_arbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":179,"src":"2308:11:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2285:35:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2271:49:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":197,"nodeType":"Block","src":"2354:89:1","statements":[{"errorCall":{"arguments":[{"expression":{"id":190,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"2384:3:1","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":191,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2388:6:1","memberName":"sender","nodeType":"MemberAccess","src":"2384:10:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"baseExpression":{"id":192,"name":"arbitrableTribunalSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":165,"src":"2396:22:1","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_address_$","typeString":"mapping(address => address)"}},"id":194,"indexExpression":{"id":193,"name":"_arbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":179,"src":"2419:11:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2396:35:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":189,"name":"OnlySafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":171,"src":"2375:8:1","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":195,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2375:57:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":196,"nodeType":"RevertStatement","src":"2368:64:1"}]},"id":198,"nodeType":"IfStatement","src":"2267:176:1","trueBody":{"id":188,"nodeType":"Block","src":"2322:26:1","statements":[{"id":187,"nodeType":"PlaceholderStatement","src":"2336:1:1"}]}}]},"name":"onlySafe","nameLocation":"2227:8:1","parameters":{"id":180,"nodeType":"ParameterList","parameters":[{"constant":false,"id":179,"mutability":"mutable","name":"_arbitrable","nameLocation":"2244:11:1","nodeType":"VariableDeclaration","scope":200,"src":"2236:19:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":178,"name":"address","nodeType":"ElementaryTypeName","src":"2236:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2235:21:1"},"virtual":false,"visibility":"internal"},{"id":227,"nodeType":"FunctionDefinition","src":"2508:246:1","nodes":[],"body":{"id":226,"nodeType":"Block","src":"2588:166:1","nodes":[],"statements":[{"expression":{"arguments":[{"id":212,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":204,"src":"2615:6:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":209,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"2598:5:1","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_SafeArbitrator_$496_$","typeString":"type(contract super SafeArbitrator)"}},"id":211,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2604:10:1","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":27,"src":"2598:16:1","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":213,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2598:24:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":214,"nodeType":"ExpressionStatement","src":"2598:24:1"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":215,"name":"__Ownable_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":665,"src":"2632:14:1","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":216,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2632:16:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":217,"nodeType":"ExpressionStatement","src":"2632:16:1"},{"expression":{"id":220,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":218,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":157,"src":"2658:14:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":219,"name":"_arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":202,"src":"2675:15:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2658:32:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":221,"nodeType":"ExpressionStatement","src":"2658:32:1"},{"eventCall":{"arguments":[{"id":223,"name":"_arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":202,"src":"2731:15:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":222,"name":"SafeArbitratorInitialized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":137,"src":"2705:25:1","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":224,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2705:42:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":225,"nodeType":"EmitStatement","src":"2700:47:1"}]},"functionSelector":"da35a26f","implemented":true,"kind":"function","modifiers":[{"id":207,"kind":"modifierInvocation","modifierName":{"id":206,"name":"initializer","nameLocations":["2576:11:1"],"nodeType":"IdentifierPath","referencedDeclaration":841,"src":"2576:11:1"},"nodeType":"ModifierInvocation","src":"2576:11:1"}],"name":"initialize","nameLocation":"2517:10:1","parameters":{"id":205,"nodeType":"ParameterList","parameters":[{"constant":false,"id":202,"mutability":"mutable","name":"_arbitrationFee","nameLocation":"2536:15:1","nodeType":"VariableDeclaration","scope":227,"src":"2528:23:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":201,"name":"uint256","nodeType":"ElementaryTypeName","src":"2528:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":204,"mutability":"mutable","name":"_owner","nameLocation":"2561:6:1","nodeType":"VariableDeclaration","scope":227,"src":"2553:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":203,"name":"address","nodeType":"ElementaryTypeName","src":"2553:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2527:41:1"},"returnParameters":{"id":208,"nodeType":"ParameterList","parameters":[],"src":"2588:0:1"},"scope":496,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":244,"nodeType":"FunctionDefinition","src":"2892:173:1","nodes":[],"body":{"id":243,"nodeType":"Block","src":"2963:102:1","nodes":[],"statements":[{"expression":{"id":237,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":235,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":157,"src":"2973:14:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":236,"name":"_arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":230,"src":"2990:15:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2973:32:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":238,"nodeType":"ExpressionStatement","src":"2973:32:1"},{"eventCall":{"arguments":[{"id":240,"name":"_arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":230,"src":"3042:15:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":239,"name":"ArbitrationFeeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":127,"src":"3020:21:1","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":241,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3020:38:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":242,"nodeType":"EmitStatement","src":"3015:43:1"}]},"documentation":{"id":228,"nodeType":"StructuredDocumentation","src":"2760:127:1","text":"@dev Set the arbitration fee. Only callable by the owner.\n @param _arbitrationFee Amount to be paid for arbitration."},"functionSelector":"5ea7b4fc","implemented":true,"kind":"function","modifiers":[{"id":233,"kind":"modifierInvocation","modifierName":{"id":232,"name":"onlyOwner","nameLocations":["2953:9:1"],"nodeType":"IdentifierPath","referencedDeclaration":684,"src":"2953:9:1"},"nodeType":"ModifierInvocation","src":"2953:9:1"}],"name":"setArbitrationFee","nameLocation":"2901:17:1","parameters":{"id":231,"nodeType":"ParameterList","parameters":[{"constant":false,"id":230,"mutability":"mutable","name":"_arbitrationFee","nameLocation":"2927:15:1","nodeType":"VariableDeclaration","scope":244,"src":"2919:23:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":229,"name":"uint256","nodeType":"ElementaryTypeName","src":"2919:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2918:25:1"},"returnParameters":{"id":234,"nodeType":"ParameterList","parameters":[],"src":"2963:0:1"},"scope":496,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":263,"nodeType":"FunctionDefinition","src":"3071:153:1","nodes":[],"body":{"id":262,"nodeType":"Block","src":"3117:107:1","nodes":[],"statements":[{"expression":{"id":254,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":249,"name":"arbitrableTribunalSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":165,"src":"3127:22:1","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_address_$","typeString":"mapping(address => address)"}},"id":252,"indexExpression":{"expression":{"id":250,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3150:3:1","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":251,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3154:6:1","memberName":"sender","nodeType":"MemberAccess","src":"3150:10:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3127:34:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":253,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":246,"src":"3164:5:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3127:42:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":255,"nodeType":"ExpressionStatement","src":"3127:42:1"},{"eventCall":{"arguments":[{"expression":{"id":257,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3199:3:1","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":258,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3203:6:1","memberName":"sender","nodeType":"MemberAccess","src":"3199:10:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":259,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":246,"src":"3211:5:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":256,"name":"SafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":133,"src":"3184:14:1","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":260,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3184:33:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":261,"nodeType":"EmitStatement","src":"3179:38:1"}]},"baseFunctions":[636],"functionSelector":"88d5b732","implemented":true,"kind":"function","modifiers":[],"name":"registerSafe","nameLocation":"3080:12:1","parameters":{"id":247,"nodeType":"ParameterList","parameters":[{"constant":false,"id":246,"mutability":"mutable","name":"_safe","nameLocation":"3101:5:1","nodeType":"VariableDeclaration","scope":263,"src":"3093:13:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":245,"name":"address","nodeType":"ElementaryTypeName","src":"3093:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3092:15:1"},"returnParameters":{"id":248,"nodeType":"ParameterList","parameters":[],"src":"3117:0:1"},"scope":496,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":319,"nodeType":"FunctionDefinition","src":"3262:732:1","nodes":[],"body":{"id":318,"nodeType":"Block","src":"3441:553:1","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":281,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":276,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3455:3:1","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":277,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3459:5:1","memberName":"value","nodeType":"MemberAccess","src":"3455:9:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"arguments":[{"id":279,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":268,"src":"3483:10:1","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"id":278,"name":"arbitrationCost","nodeType":"Identifier","overloadedDeclarations":[442,459],"referencedDeclaration":442,"src":"3467:15:1","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes_calldata_ptr_$returns$_t_uint256_$","typeString":"function (bytes calldata) view returns (uint256)"}},"id":280,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3467:27:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3455:39:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":286,"nodeType":"IfStatement","src":"3451:103:1","trueBody":{"id":285,"nodeType":"Block","src":"3496:58:1","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":282,"name":"NotEnoughArbitrationFees","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":173,"src":"3517:24:1","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":283,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3517:26:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":284,"nodeType":"RevertStatement","src":"3510:33:1"}]}},{"expression":{"id":290,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":287,"name":"disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":274,"src":"3563:9:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":288,"name":"disputes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":161,"src":"3575:8:1","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_DisputeStruct_$155_storage_$dyn_storage","typeString":"struct SafeArbitrator.DisputeStruct storage ref[] storage ref"}},"id":289,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3584:6:1","memberName":"length","nodeType":"MemberAccess","src":"3575:15:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3563:27:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":291,"nodeType":"ExpressionStatement","src":"3563:27:1"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"expression":{"id":297,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3683:3:1","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":298,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3687:6:1","memberName":"sender","nodeType":"MemberAccess","src":"3683:10:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":296,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":533,"src":"3671:11:1","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IArbitrable_$533_$","typeString":"type(contract IArbitrable)"}},"id":299,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3671:23:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"}},{"id":300,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":268,"src":"3733:10:1","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}},{"id":301,"name":"_choices","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":266,"src":"3770:8:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":302,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3812:3:1","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":303,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3816:5:1","memberName":"value","nodeType":"MemberAccess","src":"3812:9:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":304,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3847:1:1","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":305,"name":"DisputeStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":140,"src":"3874:13:1","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_DisputeStatus_$140_$","typeString":"type(enum SafeArbitrator.DisputeStatus)"}},"id":306,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3888:7:1","memberName":"Waiting","nodeType":"MemberAccess","referencedDeclaration":138,"src":"3874:21:1","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$140","typeString":"enum SafeArbitrator.DisputeStatus"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_enum$_DisputeStatus_$140","typeString":"enum SafeArbitrator.DisputeStatus"}],"id":295,"name":"DisputeStruct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":155,"src":"3627:13:1","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_DisputeStruct_$155_storage_ptr_$","typeString":"type(struct SafeArbitrator.DisputeStruct storage pointer)"}},"id":307,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["3659:10:1","3712:19:1","3761:7:1","3796:14:1","3839:6:1","3866:6:1"],"names":["arbitrated","arbitratorExtraData","choices","arbitrationFee","ruling","status"],"nodeType":"FunctionCall","src":"3627:283:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_memory_ptr","typeString":"struct SafeArbitrator.DisputeStruct memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_DisputeStruct_$155_memory_ptr","typeString":"struct SafeArbitrator.DisputeStruct memory"}],"expression":{"id":292,"name":"disputes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":161,"src":"3600:8:1","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_DisputeStruct_$155_storage_$dyn_storage","typeString":"struct SafeArbitrator.DisputeStruct storage ref[] storage ref"}},"id":294,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3609:4:1","memberName":"push","nodeType":"MemberAccess","src":"3600:13:1","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_struct$_DisputeStruct_$155_storage_$dyn_storage_ptr_$_t_struct$_DisputeStruct_$155_storage_$returns$__$attached_to$_t_array$_t_struct$_DisputeStruct_$155_storage_$dyn_storage_ptr_$","typeString":"function (struct SafeArbitrator.DisputeStruct storage ref[] storage pointer,struct SafeArbitrator.DisputeStruct storage ref)"}},"id":308,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3600:320:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":309,"nodeType":"ExpressionStatement","src":"3600:320:1"},{"eventCall":{"arguments":[{"id":311,"name":"disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":274,"src":"3952:9:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"arguments":[{"expression":{"id":313,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3975:3:1","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3979:6:1","memberName":"sender","nodeType":"MemberAccess","src":"3975:10:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":312,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":533,"src":"3963:11:1","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IArbitrable_$533_$","typeString":"type(contract IArbitrable)"}},"id":315,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3963:23:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"}],"id":310,"name":"DisputeCreation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":546,"src":"3936:15:1","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrable_$533_$returns$__$","typeString":"function (uint256,contract IArbitrable)"}},"id":316,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3936:51:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":317,"nodeType":"EmitStatement","src":"3931:56:1"}]},"baseFunctions":[584],"documentation":{"id":264,"nodeType":"StructuredDocumentation","src":"3230:27:1","text":"@inheritdoc IArbitrator"},"functionSelector":"c13517e1","implemented":true,"kind":"function","modifiers":[{"id":272,"kind":"modifierInvocation","modifierName":{"id":271,"name":"nonReentrant","nameLocations":["3388:12:1"],"nodeType":"IdentifierPath","referencedDeclaration":984,"src":"3388:12:1"},"nodeType":"ModifierInvocation","src":"3388:12:1"}],"name":"createDispute","nameLocation":"3271:13:1","overrides":{"id":270,"nodeType":"OverrideSpecifier","overrides":[],"src":"3371:8:1"},"parameters":{"id":269,"nodeType":"ParameterList","parameters":[{"constant":false,"id":266,"mutability":"mutable","name":"_choices","nameLocation":"3293:8:1","nodeType":"VariableDeclaration","scope":319,"src":"3285:16:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":265,"name":"uint256","nodeType":"ElementaryTypeName","src":"3285:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":268,"mutability":"mutable","name":"_extraData","nameLocation":"3318:10:1","nodeType":"VariableDeclaration","scope":319,"src":"3303:25:1","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":267,"name":"bytes","nodeType":"ElementaryTypeName","src":"3303:5:1","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"3284:45:1"},"returnParameters":{"id":275,"nodeType":"ParameterList","parameters":[{"constant":false,"id":274,"mutability":"mutable","name":"disputeID","nameLocation":"3426:9:1","nodeType":"VariableDeclaration","scope":319,"src":"3418:17:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":273,"name":"uint256","nodeType":"ElementaryTypeName","src":"3418:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3417:19:1"},"scope":496,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":340,"nodeType":"FunctionDefinition","src":"4032:241:1","nodes":[],"body":{"id":339,"nodeType":"Block","src":"4233:40:1","nodes":[],"statements":[{"expression":{"arguments":[{"hexValue":"4e6f7420737570706f72746564","id":336,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4250:15:1","typeDescriptions":{"typeIdentifier":"t_stringliteral_e5b7c22b986abeee436d3f29779441c97ce367faa95f4de1bae94ece3817df25","typeString":"literal_string \"Not supported\""},"value":"Not supported"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e5b7c22b986abeee436d3f29779441c97ce367faa95f4de1bae94ece3817df25","typeString":"literal_string \"Not supported\""}],"id":335,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"4243:6:1","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":337,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4243:23:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":338,"nodeType":"ExpressionStatement","src":"4243:23:1"}]},"baseFunctions":[599],"documentation":{"id":320,"nodeType":"StructuredDocumentation","src":"4000:27:1","text":"@inheritdoc IArbitrator"},"functionSelector":"f6506db4","implemented":true,"kind":"function","modifiers":[],"name":"createDispute","nameLocation":"4041:13:1","overrides":{"id":331,"nodeType":"OverrideSpecifier","overrides":[],"src":"4206:8:1"},"parameters":{"id":330,"nodeType":"ParameterList","parameters":[{"constant":false,"id":322,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":340,"src":"4064:7:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":321,"name":"uint256","nodeType":"ElementaryTypeName","src":"4064:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":324,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":340,"src":"4094:14:1","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":323,"name":"bytes","nodeType":"ElementaryTypeName","src":"4094:5:1","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":327,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":340,"src":"4133:6:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$1944","typeString":"contract IERC20"},"typeName":{"id":326,"nodeType":"UserDefinedTypeName","pathNode":{"id":325,"name":"IERC20","nameLocations":["4133:6:1"],"nodeType":"IdentifierPath","referencedDeclaration":1944,"src":"4133:6:1"},"referencedDeclaration":1944,"src":"4133:6:1","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$1944","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":329,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":340,"src":"4163:7:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":328,"name":"uint256","nodeType":"ElementaryTypeName","src":"4163:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4054:137:1"},"returnParameters":{"id":334,"nodeType":"ParameterList","parameters":[{"constant":false,"id":333,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":340,"src":"4224:7:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":332,"name":"uint256","nodeType":"ElementaryTypeName","src":"4224:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4223:9:1"},"scope":496,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":430,"nodeType":"FunctionDefinition","src":"4566:720:1","nodes":[],"body":{"id":429,"nodeType":"Block","src":"4678:608:1","nodes":[],"statements":[{"assignments":[355],"declarations":[{"constant":false,"id":355,"mutability":"mutable","name":"dispute","nameLocation":"4710:7:1","nodeType":"VariableDeclaration","scope":429,"src":"4688:29:1","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct"},"typeName":{"id":354,"nodeType":"UserDefinedTypeName","pathNode":{"id":353,"name":"DisputeStruct","nameLocations":["4688:13:1"],"nodeType":"IdentifierPath","referencedDeclaration":155,"src":"4688:13:1"},"referencedDeclaration":155,"src":"4688:13:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct"}},"visibility":"internal"}],"id":359,"initialValue":{"baseExpression":{"id":356,"name":"disputes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":161,"src":"4720:8:1","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_DisputeStruct_$155_storage_$dyn_storage","typeString":"struct SafeArbitrator.DisputeStruct storage ref[] storage ref"}},"id":358,"indexExpression":{"id":357,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":343,"src":"4729:10:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4720:20:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage","typeString":"struct SafeArbitrator.DisputeStruct storage ref"}},"nodeType":"VariableDeclarationStatement","src":"4688:52:1"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":363,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":360,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":345,"src":"4755:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":361,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":355,"src":"4765:7:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":362,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4773:7:1","memberName":"choices","nodeType":"MemberAccess","referencedDeclaration":147,"src":"4765:15:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4755:25:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":368,"nodeType":"IfStatement","src":"4751:78:1","trueBody":{"id":367,"nodeType":"Block","src":"4782:47:1","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":364,"name":"InvalidRuling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":175,"src":"4803:13:1","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":365,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4803:15:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":366,"nodeType":"RevertStatement","src":"4796:22:1"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_DisputeStatus_$140","typeString":"enum SafeArbitrator.DisputeStatus"},"id":373,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":369,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":355,"src":"4842:7:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":370,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4850:6:1","memberName":"status","nodeType":"MemberAccess","referencedDeclaration":154,"src":"4842:14:1","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$140","typeString":"enum SafeArbitrator.DisputeStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":371,"name":"DisputeStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":140,"src":"4860:13:1","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_DisputeStatus_$140_$","typeString":"type(enum SafeArbitrator.DisputeStatus)"}},"id":372,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4874:6:1","memberName":"Solved","nodeType":"MemberAccess","referencedDeclaration":139,"src":"4860:20:1","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$140","typeString":"enum SafeArbitrator.DisputeStatus"}},"src":"4842:38:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":378,"nodeType":"IfStatement","src":"4838:98:1","trueBody":{"id":377,"nodeType":"Block","src":"4882:54:1","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":374,"name":"DisputeAlreadySolved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":177,"src":"4903:20:1","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":375,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4903:22:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":376,"nodeType":"RevertStatement","src":"4896:29:1"}]}},{"expression":{"id":383,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":379,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":355,"src":"4946:7:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":381,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4954:6:1","memberName":"ruling","nodeType":"MemberAccess","referencedDeclaration":151,"src":"4946:14:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":382,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":345,"src":"4963:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4946:24:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":384,"nodeType":"ExpressionStatement","src":"4946:24:1"},{"expression":{"id":390,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":385,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":355,"src":"4980:7:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":387,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4988:6:1","memberName":"status","nodeType":"MemberAccess","referencedDeclaration":154,"src":"4980:14:1","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$140","typeString":"enum SafeArbitrator.DisputeStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":388,"name":"DisputeStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":140,"src":"4997:13:1","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_DisputeStatus_$140_$","typeString":"type(enum SafeArbitrator.DisputeStatus)"}},"id":389,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5011:6:1","memberName":"Solved","nodeType":"MemberAccess","referencedDeclaration":139,"src":"4997:20:1","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$140","typeString":"enum SafeArbitrator.DisputeStatus"}},"src":"4980:37:1","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$140","typeString":"enum SafeArbitrator.DisputeStatus"}},"id":391,"nodeType":"ExpressionStatement","src":"4980:37:1"},{"assignments":[393,null],"declarations":[{"constant":false,"id":393,"mutability":"mutable","name":"success","nameLocation":"5034:7:1","nodeType":"VariableDeclaration","scope":429,"src":"5029:12:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":392,"name":"bool","nodeType":"ElementaryTypeName","src":"5029:4:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},null],"id":405,"initialValue":{"arguments":[{"hexValue":"","id":403,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5102:2:1","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"arguments":[{"expression":{"id":396,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"5054:3:1","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":397,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5058:6:1","memberName":"sender","nodeType":"MemberAccess","src":"5054:10:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":395,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5046:8:1","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":394,"name":"address","nodeType":"ElementaryTypeName","src":"5046:8:1","stateMutability":"payable","typeDescriptions":{}}},"id":398,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5046:19:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":399,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5066:4:1","memberName":"call","nodeType":"MemberAccess","src":"5046:24:1","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":402,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":400,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":355,"src":"5078:7:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":401,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5086:14:1","memberName":"arbitrationFee","nodeType":"MemberAccess","referencedDeclaration":149,"src":"5078:22:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"5046:55:1","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":404,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5046:59:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"5028:77:1"},{"expression":{"arguments":[{"id":407,"name":"success","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":393,"src":"5123:7:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5472616e73666572206661696c6564","id":408,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5132:17:1","typeDescriptions":{"typeIdentifier":"t_stringliteral_25adaa6d082ce15f901e0d8a3d393e7462ef9edf2e6bc8321fa14d1615b6fc51","typeString":"literal_string \"Transfer failed\""},"value":"Transfer failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_25adaa6d082ce15f901e0d8a3d393e7462ef9edf2e6bc8321fa14d1615b6fc51","typeString":"literal_string \"Transfer failed\""}],"id":406,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5115:7:1","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":409,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5115:35:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":410,"nodeType":"ExpressionStatement","src":"5115:35:1"},{"expression":{"arguments":[{"id":416,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":343,"src":"5184:10:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":417,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":355,"src":"5196:7:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":418,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5204:6:1","memberName":"ruling","nodeType":"MemberAccess","referencedDeclaration":151,"src":"5196:14:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"expression":{"id":411,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":355,"src":"5160:7:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":414,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5168:10:1","memberName":"arbitrated","nodeType":"MemberAccess","referencedDeclaration":143,"src":"5160:18:1","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"}},"id":415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5179:4:1","memberName":"rule","nodeType":"MemberAccess","referencedDeclaration":532,"src":"5160:23:1","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) external"}},"id":419,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5160:51:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":420,"nodeType":"ExpressionStatement","src":"5160:51:1"},{"eventCall":{"arguments":[{"arguments":[{"id":423,"name":"_arbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":347,"src":"5245:11:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":422,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":533,"src":"5233:11:1","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IArbitrable_$533_$","typeString":"type(contract IArbitrable)"}},"id":424,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5233:24:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"}},{"id":425,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":343,"src":"5259:10:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":426,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":345,"src":"5271:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrable_$533","typeString":"contract IArbitrable"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":421,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":556,"src":"5226:6:1","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrable_$533_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrable,uint256,uint256)"}},"id":427,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5226:53:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":428,"nodeType":"EmitStatement","src":"5221:58:1"}]},"documentation":{"id":341,"nodeType":"StructuredDocumentation","src":"4279:282:1","text":"@dev Give a ruling to a dispute.\n @param _disputeID ID of the dispute to rule.\n @param _ruling Ruling given by the arbitrator. Note that 0 means that arbitrator chose \"Refused to rule\".\n @param _arbitrable Address of the arbitrable that the safe rules for\"."},"functionSelector":"7a1d3756","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":350,"name":"_arbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":347,"src":"4665:11:1","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":351,"kind":"modifierInvocation","modifierName":{"id":349,"name":"onlySafe","nameLocations":["4656:8:1"],"nodeType":"IdentifierPath","referencedDeclaration":200,"src":"4656:8:1"},"nodeType":"ModifierInvocation","src":"4656:21:1"}],"name":"executeRuling","nameLocation":"4575:13:1","parameters":{"id":348,"nodeType":"ParameterList","parameters":[{"constant":false,"id":343,"mutability":"mutable","name":"_disputeID","nameLocation":"4597:10:1","nodeType":"VariableDeclaration","scope":430,"src":"4589:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":342,"name":"uint256","nodeType":"ElementaryTypeName","src":"4589:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":345,"mutability":"mutable","name":"_ruling","nameLocation":"4617:7:1","nodeType":"VariableDeclaration","scope":430,"src":"4609:15:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":344,"name":"uint256","nodeType":"ElementaryTypeName","src":"4609:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":347,"mutability":"mutable","name":"_arbitrable","nameLocation":"4634:11:1","nodeType":"VariableDeclaration","scope":430,"src":"4626:19:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":346,"name":"address","nodeType":"ElementaryTypeName","src":"4626:7:1","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4588:58:1"},"returnParameters":{"id":352,"nodeType":"ParameterList","parameters":[],"src":"4678:0:1"},"scope":496,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":442,"nodeType":"FunctionDefinition","src":"5324:138:1","nodes":[],"body":{"id":441,"nodeType":"Block","src":"5424:38:1","nodes":[],"statements":[{"expression":{"id":439,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":157,"src":"5441:14:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":438,"id":440,"nodeType":"Return","src":"5434:21:1"}]},"baseFunctions":[607],"documentation":{"id":431,"nodeType":"StructuredDocumentation","src":"5292:27:1","text":"@inheritdoc IArbitrator"},"functionSelector":"f7434ea9","implemented":true,"kind":"function","modifiers":[],"name":"arbitrationCost","nameLocation":"5333:15:1","overrides":{"id":435,"nodeType":"OverrideSpecifier","overrides":[],"src":"5393:8:1"},"parameters":{"id":434,"nodeType":"ParameterList","parameters":[{"constant":false,"id":433,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":442,"src":"5349:14:1","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":432,"name":"bytes","nodeType":"ElementaryTypeName","src":"5349:5:1","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"5348:32:1"},"returnParameters":{"id":438,"nodeType":"ParameterList","parameters":[{"constant":false,"id":437,"mutability":"mutable","name":"fee","nameLocation":"5419:3:1","nodeType":"VariableDeclaration","scope":442,"src":"5411:11:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":436,"name":"uint256","nodeType":"ElementaryTypeName","src":"5411:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5410:13:1"},"scope":496,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":459,"nodeType":"FunctionDefinition","src":"5500:204:1","nodes":[],"body":{"id":458,"nodeType":"Block","src":"5664:40:1","nodes":[],"statements":[{"expression":{"arguments":[{"hexValue":"4e6f7420737570706f72746564","id":455,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5681:15:1","typeDescriptions":{"typeIdentifier":"t_stringliteral_e5b7c22b986abeee436d3f29779441c97ce367faa95f4de1bae94ece3817df25","typeString":"literal_string \"Not supported\""},"value":"Not supported"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e5b7c22b986abeee436d3f29779441c97ce367faa95f4de1bae94ece3817df25","typeString":"literal_string \"Not supported\""}],"id":454,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"5674:6:1","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":456,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5674:23:1","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":457,"nodeType":"ExpressionStatement","src":"5674:23:1"}]},"baseFunctions":[618],"documentation":{"id":443,"nodeType":"StructuredDocumentation","src":"5468:27:1","text":"@inheritdoc IArbitrator"},"functionSelector":"d98493f6","implemented":true,"kind":"function","modifiers":[],"name":"arbitrationCost","nameLocation":"5509:15:1","overrides":{"id":450,"nodeType":"OverrideSpecifier","overrides":[],"src":"5615:8:1"},"parameters":{"id":449,"nodeType":"ParameterList","parameters":[{"constant":false,"id":445,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":459,"src":"5525:14:1","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":444,"name":"bytes","nodeType":"ElementaryTypeName","src":"5525:5:1","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":448,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":459,"src":"5556:6:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$1944","typeString":"contract IERC20"},"typeName":{"id":447,"nodeType":"UserDefinedTypeName","pathNode":{"id":446,"name":"IERC20","nameLocations":["5556:6:1"],"nodeType":"IdentifierPath","referencedDeclaration":1944,"src":"5556:6:1"},"referencedDeclaration":1944,"src":"5556:6:1","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$1944","typeString":"contract IERC20"}},"visibility":"internal"}],"src":"5524:54:1"},"returnParameters":{"id":453,"nodeType":"ParameterList","parameters":[{"constant":false,"id":452,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":459,"src":"5641:7:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":451,"name":"uint256","nodeType":"ElementaryTypeName","src":"5641:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5640:19:1"},"scope":496,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":491,"nodeType":"FunctionDefinition","src":"5710:260:1","nodes":[],"body":{"id":490,"nodeType":"Block","src":"5818:152:1","nodes":[],"statements":[{"assignments":[472],"declarations":[{"constant":false,"id":472,"mutability":"mutable","name":"dispute","nameLocation":"5850:7:1","nodeType":"VariableDeclaration","scope":490,"src":"5828:29:1","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct"},"typeName":{"id":471,"nodeType":"UserDefinedTypeName","pathNode":{"id":470,"name":"DisputeStruct","nameLocations":["5828:13:1"],"nodeType":"IdentifierPath","referencedDeclaration":155,"src":"5828:13:1"},"referencedDeclaration":155,"src":"5828:13:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct"}},"visibility":"internal"}],"id":476,"initialValue":{"baseExpression":{"id":473,"name":"disputes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":161,"src":"5860:8:1","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_DisputeStruct_$155_storage_$dyn_storage","typeString":"struct SafeArbitrator.DisputeStruct storage ref[] storage ref"}},"id":475,"indexExpression":{"id":474,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":461,"src":"5869:10:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5860:20:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage","typeString":"struct SafeArbitrator.DisputeStruct storage ref"}},"nodeType":"VariableDeclarationStatement","src":"5828:52:1"},{"expression":{"id":480,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":477,"name":"ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":464,"src":"5890:6:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":478,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":472,"src":"5899:7:1","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$155_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":479,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5907:6:1","memberName":"ruling","nodeType":"MemberAccess","referencedDeclaration":151,"src":"5899:14:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5890:23:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":481,"nodeType":"ExpressionStatement","src":"5890:23:1"},{"expression":{"id":484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":482,"name":"tied","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":466,"src":"5923:4:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":483,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5930:5:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"5923:12:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":485,"nodeType":"ExpressionStatement","src":"5923:12:1"},{"expression":{"id":488,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":486,"name":"overridden","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":468,"src":"5945:10:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":487,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5958:5:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"5945:18:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":489,"nodeType":"ExpressionStatement","src":"5945:18:1"}]},"baseFunctions":[630],"functionSelector":"1c3db16d","implemented":true,"kind":"function","modifiers":[],"name":"currentRuling","nameLocation":"5719:13:1","parameters":{"id":462,"nodeType":"ParameterList","parameters":[{"constant":false,"id":461,"mutability":"mutable","name":"_disputeID","nameLocation":"5741:10:1","nodeType":"VariableDeclaration","scope":491,"src":"5733:18:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":460,"name":"uint256","nodeType":"ElementaryTypeName","src":"5733:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5732:20:1"},"returnParameters":{"id":469,"nodeType":"ParameterList","parameters":[{"constant":false,"id":464,"mutability":"mutable","name":"ruling","nameLocation":"5782:6:1","nodeType":"VariableDeclaration","scope":491,"src":"5774:14:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":463,"name":"uint256","nodeType":"ElementaryTypeName","src":"5774:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":466,"mutability":"mutable","name":"tied","nameLocation":"5795:4:1","nodeType":"VariableDeclaration","scope":491,"src":"5790:9:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":465,"name":"bool","nodeType":"ElementaryTypeName","src":"5790:4:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":468,"mutability":"mutable","name":"overridden","nameLocation":"5806:10:1","nodeType":"VariableDeclaration","scope":491,"src":"5801:15:1","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":467,"name":"bool","nodeType":"ElementaryTypeName","src":"5801:4:1","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5773:44:1"},"scope":496,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":495,"nodeType":"VariableDeclaration","src":"5976:25:1","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"5996:5:1","scope":496,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":492,"name":"uint256","nodeType":"ElementaryTypeName","src":"5976:7:1","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":494,"length":{"hexValue":"3530","id":493,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5984:2:1","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"5976:11:1","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":118,"name":"IArbitrator","nameLocations":["801:11:1"],"nodeType":"IdentifierPath","referencedDeclaration":637,"src":"801:11:1"},"id":119,"nodeType":"InheritanceSpecifier","src":"801:11:1"},{"baseName":{"id":120,"name":"ProxyOwnableUpgrader","nameLocations":["814:20:1"],"nodeType":"IdentifierPath","referencedDeclaration":100,"src":"814:20:1"},"id":121,"nodeType":"InheritanceSpecifier","src":"814:20:1"},{"baseName":{"id":122,"name":"ReentrancyGuardUpgradeable","nameLocations":["836:26:1"],"nodeType":"IdentifierPath","referencedDeclaration":1024,"src":"836:26:1"},"id":123,"nodeType":"InheritanceSpecifier","src":"836:26:1"}],"canonicalName":"SafeArbitrator","contractDependencies":[],"contractKind":"contract","documentation":{"id":117,"nodeType":"StructuredDocumentation","src":"645:129:1","text":"@title Safe Arbitrator\n @dev This is an arbitrator middleware that will allow a safe to decide on the result of disputes."},"fullyImplemented":true,"linearizedBaseContracts":[496,1024,100,1866,1740,1426,1436,770,1405,939,637],"name":"SafeArbitrator","nameLocation":"783:14:1","scope":497,"usedErrors":[15,171,173,175,177],"usedEvents":[127,133,137,546,556,564,574,655,785,1413,1420,1425]}],"license":"MIT"},"id":1} \ No newline at end of file +{"abi":[{"type":"function","name":"arbitrableTribunalSafe","inputs":[{"name":"arbitrable","type":"address","internalType":"address"}],"outputs":[{"name":"safe","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"arbitrationCost","inputs":[{"name":"","type":"bytes","internalType":"bytes"},{"name":"","type":"address","internalType":"contract IERC20"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"arbitrationCost","inputs":[{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"fee","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"createDispute","inputs":[{"name":"_choices","type":"uint256","internalType":"uint256"},{"name":"_extraData","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"disputeID","type":"uint256","internalType":"uint256"}],"stateMutability":"payable"},{"type":"function","name":"createDispute","inputs":[{"name":"","type":"uint256","internalType":"uint256"},{"name":"","type":"bytes","internalType":"bytes"},{"name":"","type":"address","internalType":"contract IERC20"},{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"currentRuling","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"ruling","type":"uint256","internalType":"uint256"},{"name":"tied","type":"bool","internalType":"bool"},{"name":"overridden","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"disputes","inputs":[{"name":"","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"arbitrated","type":"address","internalType":"contract IArbitrable"},{"name":"arbitratorExtraData","type":"bytes","internalType":"bytes"},{"name":"choices","type":"uint256","internalType":"uint256"},{"name":"arbitrationFee","type":"uint256","internalType":"uint256"},{"name":"ruling","type":"uint256","internalType":"uint256"},{"name":"status","type":"uint8","internalType":"enum SafeArbitrator.DisputeStatus"}],"stateMutability":"view"},{"type":"function","name":"executeRuling","inputs":[{"name":"_disputeID","type":"uint256","internalType":"uint256"},{"name":"_ruling","type":"uint256","internalType":"uint256"},{"name":"_arbitrable","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":"_arbitrationFee","type":"uint256","internalType":"uint256"},{"name":"_owner","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"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":"proxyOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"registerSafe","inputs":[{"name":"_safe","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"renounceOwnership","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setArbitrationFee","inputs":[{"name":"_arbitrationFee","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"nonpayable"},{"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":"AcceptedFeeToken","inputs":[{"name":"_token","type":"address","indexed":true,"internalType":"contract IERC20"},{"name":"_accepted","type":"bool","indexed":true,"internalType":"bool"}],"anonymous":false},{"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":"ArbitrationFeeUpdated","inputs":[{"name":"_newArbitrationFee","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":"DisputeCreation","inputs":[{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_arbitrable","type":"address","indexed":true,"internalType":"contract IArbitrable"}],"anonymous":false},{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint8","indexed":false,"internalType":"uint8"}],"anonymous":false},{"type":"event","name":"NewCurrencyRate","inputs":[{"name":"_feeToken","type":"address","indexed":true,"internalType":"contract IERC20"},{"name":"_rateInEth","type":"uint64","indexed":false,"internalType":"uint64"},{"name":"_rateDecimals","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":"Ruling","inputs":[{"name":"_arbitrable","type":"address","indexed":true,"internalType":"contract IArbitrable"},{"name":"_disputeID","type":"uint256","indexed":true,"internalType":"uint256"},{"name":"_ruling","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SafeArbitratorInitialized","inputs":[{"name":"_arbitrationFee","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"SafeRegistered","inputs":[{"name":"_arbitrable","type":"address","indexed":true,"internalType":"address"},{"name":"_safe","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":"CallerNotOwner","inputs":[{"name":"_caller","type":"address","internalType":"address"},{"name":"_owner","type":"address","internalType":"address"}]},{"type":"error","name":"DisputeAlreadySolved","inputs":[]},{"type":"error","name":"InvalidRuling","inputs":[]},{"type":"error","name":"NotEnoughArbitrationFees","inputs":[]},{"type":"error","name":"OnlySafe","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"safe","type":"address","internalType":"address"}]}],"bytecode":{"object":"0x60a08060405234610031573060805261184590816100378239608051818181610b7801528181610c730152610ec60152f35b600080fdfe608080604052600436101561001357600080fd5b600090813560e01c908163025313a214611173575080631c3db16d1461113b57806326a0754c146110ff5780633659cfe614610ea15780634f1ef28614610c2457806352d1902d14610b65578063564a565d14610a255780635ea7b4fc146109d7578063715018a61461098c5780637a1d3756146107af57806388d5b7321461073c5780638da5cb5b1461070f578063c13517e1146103f9578063c4d66de8146103cc578063d98493f614610391578063da35a26f1461020a578063f2fde38b14610179578063f6506db4146101385763f7434ea9146100f257600080fd5b34610135576020366003190112610135576004356001600160401b0381116101315761012290369060040161131e565b50506020609754604051908152f35b5080fd5b80fd5b5034610135576080366003190112610135576024356001600160401b0381116101315761016990369060040161131e565b50506101736111b3565b506116da565b503461013557602036600319011261013557610193611198565b61019b61134b565b6001600160a01b038116156101b6576101b3906113aa565b80f35b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b5034610135576040366003190112610135576004356102276111c9565b82549060ff8260081c161592838094610384575b801561036d575b15610311576102956020927fc05490fc8f8e095831ea3823f005dd0661528380328aa5c3b7348a45244223be9486600160ff198316178955610300575b5061029060ff885460081c166115d8565b6113aa565b6102ae60ff865460081c166102a9816115d8565b6115d8565b6102b7336113aa565b80609755604051908152a16102c95780f35b61ff001981541681557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a180f35b61ffff19166101011787553861027f565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b1580156102425750600160ff841614610242565b50600160ff84161061023b565b5034610135576040366003190112610135576004356001600160401b038111610131576103c290369060040161131e565b50506101736111c9565b5034610135576020366003190112610135576101b36103e9611198565b61029060ff845460081c166115d8565b506040366003190112610135576001600160401b03906024358281116101315761042790369060040161131e565b90926002606554146106ca57600260655560975434106106b857609854916040519460c0860191868310848411176106a25761046a926040523387523691611238565b906020850191825260043560408601523460608601528360808601528360a0860152600160401b83101561068e57600183016098556104a88361126f565b92909261067a57855183546001600160a01b0319166001600160a01b0391909116178355518051918211610666576104e360018401546112a4565b601f8111610622575b50602090601f83116001146105b057918060a0949260059488926105a5575b50508160011b916000199060031b1c19161760018201555b604086015160028201556060860151600382015560808601516004820155019301519260028410156105915760209360ff8019835416911617905560405191817f141dfc18aa6a56fc816f44f0e9e2f1ebc92b15ab167770e17db5b084c10ed995339280a360016065558152f35b634e487b7160e01b83526021600452602483fd5b01519050388061050b565b906001840186526020862091865b601f198516811061060a57509260a0949260019260059583601f198116106105f1575b505050811b016001820155610523565b015160001960f88460031b161c191690553880806105e1565b919260206001819286850151815501940192016105be565b60018401865260208620601f840160051c81016020851061065f575b601f830160051c820181106106545750506104ec565b87815560010161063e565b508061063e565b634e487b7160e01b85526041600452602485fd5b634e487b7160e01b85526004859052602485fd5b634e487b7160e01b84526041600452602484fd5b634e487b7160e01b600052604160045260246000fd5b60405163e4216b3160e01b8152600490fd5b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b5034610135578060031936011261013557602061072a611638565b6040516001600160a01b039091168152f35b503461013557602036600319011261013557610756611198565b3380835260996020908152604080852080546001600160a01b0319166001600160a01b0390951694851790555192835290917f2b87bb26d58aa2d56b59c2b23a53a6959f68d4547492bda44fb5e68b0fa38b3f9190a280f35b5034610135576060366003190112610135576004356001600160a01b03602435816107d86111b3565b169182855260996020528060408620541680331460001461096a57506107fd8461126f565b50906002820154831161095857600582019081549160ff8316600281101561094457600114610932576001600485019386855560ff1916179055868080806003870154335af161084b61150f565b50156108fb5786925416905490803b156108f75760448392604051948593849263188d362b60e11b84528a600485015260248401525af180156108ec576108bc575b5060207f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e7562227691604051908152a380f35b9093906001600160401b0381116108d85760405292602061088d565b634e487b7160e01b82526041600452602482fd5b6040513d87823e3d90fd5b8280fd5b60405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b6044820152606490fd5b60405163bda17d9560e01b8152600490fd5b634e487b7160e01b89526021600452602489fd5b6040516309efd47960e41b8152600490fd5b60405163d0774c9960e01b81529081906109889033600484016116c0565b0390fd5b50346101355780600319360112610135576109a561134b565b603380546001600160a01b0319811690915581906001600160a01b03166000805160206117708339815191528280a380f35b5034610135576020366003190112610135577fb1484c2bf00d94a00783b6081ebc5f5d02be4675f6eb8cf4c0c95bfe5a3f06ed6020600435610a1761134b565b80609755604051908152a180f35b503461013557602080600319360112610131576004356098548110156108f757610a4e9061126f565b5060018060a01b038154169160019182810160405180948790835493610a73856112a4565b94858552878382169182600014610b43575050600114610b07575b5050610a9c925003846111fa565b600281015492610ace60038301549160c060ff60056004870154960154169560405198895288015260c08701906112de565b936040860152606085015260808401526002811015610af35782935060a08301520390f35b634e487b7160e01b84526021600452602484fd5b86925089528189209089915b858310610b2b575050610a9c93508201013880610a8e565b8054838a018501528894508793909201918101610b13565b9250935050610a9c94915060ff191682840152151560051b8201013880610a8e565b50346101355780600319360112610135577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610bbe5760206040516000805160206117508339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b50604036600319011261013557610c39611198565b6024356001600160401b0381116108f757366023820112156108f757610c69903690602481600401359101611238565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116929190610ca3308514156113e1565b610cc0600080516020611750833981519152948286541614611430565b610cc8611638565b8133911603610e7c576000805160206117108339815191525460ff1615610cf55750506101b3915061147f565b82919216604051936352d1902d60e01b85526020948581600481865afa879181610e49575b50610d695760405162461bcd60e51b815260048101879052602e60248201526000805160206117f083398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b94939403610e0457610d7a8261147f565b6000805160206117908339815191528580a283835115801590610dfc575b610da4575b5050505080f35b80610df29460405194610db6866111df565b602786526000805160206117d083398151915281870152660819985a5b195960ca1b604087015281519101845af4610dec61150f565b9161153f565b5038808083610d9d565b506001610d98565b60405162461bcd60e51b815260048101849052602960248201526000805160206117b08339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d8311610e75575b610e6181836111fa565b81010312610e7157519038610d1a565b8780fd5b503d610e57565b610988610e87611638565b60405163163678e960e01b815291829133600484016116c0565b50346101355760208060031936011261013157610ebc611198565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116610ef3308214156113e1565b610f10600080516020611750833981519152918383541614611430565b610f18611638565b8233911603610e7c57604051848101929091906001600160401b038411838510176110eb578360405286835260ff6000805160206117108339815191525416600014610f6c57505050506101b3915061147f565b84939416906040516352d1902d60e01b81528681600481865afa8891816110b8575b50610fdd5760405162461bcd60e51b815260048101889052602e60248201526000805160206117f083398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9594950361107357908591610ff18461147f565b6000805160206117908339815191528380a280511580159061106c575b61101b575b505050505080f35b6110619482916000805160206117d08339815191526040519661103d886111df565b60278852870152660819985a5b195960ca1b60408701525190845af4610dec61150f565b503880808381611013565b508161100e565b60405162461bcd60e51b815260048101859052602960248201526000805160206117b08339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508781813d83116110e4575b6110d081836111fa565b810103126110e057519038610f8e565b8880fd5b503d6110c6565b634e487b7160e01b87526041600452602487fd5b5034610135576020366003190112610135576020906001600160a01b039060409082611129611198565b16815260998452205416604051908152f35b503461013557602036600319011261013557606090600461115c813561126f565b500154906040519182528060208301526040820152f35b9050346101315781600319360112610131576033546001600160a01b03168152602090f35b600435906001600160a01b03821682036111ae57565b600080fd5b604435906001600160a01b03821682036111ae57565b602435906001600160a01b03821682036111ae57565b606081019081106001600160401b038211176106a257604052565b601f909101601f19168101906001600160401b038211908210176106a257604052565b6001600160401b0381116106a257601f01601f191660200190565b9291926112448261121d565b9161125260405193846111fa565b8294818452818301116111ae578281602093846000960137010152565b60985481101561128e5760986000526006602060002091020190600090565b634e487b7160e01b600052603260045260246000fd5b90600182811c921680156112d4575b60208310146112be57565b634e487b7160e01b600052602260045260246000fd5b91607f16916112b3565b919082519283825260005b84811061130a575050826000602080949584010152601f8019910116010190565b6020818301810151848301820152016112e9565b9181601f840112156111ae578235916001600160401b0383116111ae57602083818601950101116111ae57565b611353611638565b336001600160a01b039091160361136657565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b031982168117909255909116600080516020611770833981519152600080a3565b156113e857565b60405162461bcd60e51b815260206004820152602c602482015260008051602061173083398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b1561143757565b60405162461bcd60e51b815260206004820152602c602482015260008051602061173083398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b156114b45760008051602061175083398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b3d1561153a573d906115208261121d565b9161152e60405193846111fa565b82523d6000602084013e565b606090565b919290156115a15750815115611553575090565b3b1561155c5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156115b45750805190602001fd5b60405162461bcd60e51b8152602060048201529081906109889060248301906112de565b156115df57565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b6033546001600160a01b0390811690813b611651575090565b604051638da5cb5b60e01b8152602081600481865afa918291600093611681575b505061167c575090565b905090565b602093919293813d82116116b8575b8161169d602093836111fa565b81010312610131575191821682036101355750903880611672565b3d9150611690565b6001600160a01b0391821681529116602082015260400190565b60405162461bcd60e51b815260206004820152600d60248201526c139bdd081cdd5c1c1bdc9d1959609a1b6044820152606490fdfe4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a2646970667358221220682e6f4b37f25e1eef570e88bdd8faa12bd4a907f5c35258e7c445db1902002264736f6c63430008130033","sourceMap":"774:5230:107:-:0;;;;;;;1088:4:61;1080:13;;774:5230:107;;;;;;1080:13:61;774:5230:107;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608080604052600436101561001357600080fd5b600090813560e01c908163025313a214611173575080631c3db16d1461113b57806326a0754c146110ff5780633659cfe614610ea15780634f1ef28614610c2457806352d1902d14610b65578063564a565d14610a255780635ea7b4fc146109d7578063715018a61461098c5780637a1d3756146107af57806388d5b7321461073c5780638da5cb5b1461070f578063c13517e1146103f9578063c4d66de8146103cc578063d98493f614610391578063da35a26f1461020a578063f2fde38b14610179578063f6506db4146101385763f7434ea9146100f257600080fd5b34610135576020366003190112610135576004356001600160401b0381116101315761012290369060040161131e565b50506020609754604051908152f35b5080fd5b80fd5b5034610135576080366003190112610135576024356001600160401b0381116101315761016990369060040161131e565b50506101736111b3565b506116da565b503461013557602036600319011261013557610193611198565b61019b61134b565b6001600160a01b038116156101b6576101b3906113aa565b80f35b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b5034610135576040366003190112610135576004356102276111c9565b82549060ff8260081c161592838094610384575b801561036d575b15610311576102956020927fc05490fc8f8e095831ea3823f005dd0661528380328aa5c3b7348a45244223be9486600160ff198316178955610300575b5061029060ff885460081c166115d8565b6113aa565b6102ae60ff865460081c166102a9816115d8565b6115d8565b6102b7336113aa565b80609755604051908152a16102c95780f35b61ff001981541681557f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb3847402498602060405160018152a180f35b61ffff19166101011787553861027f565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b50303b1580156102425750600160ff841614610242565b50600160ff84161061023b565b5034610135576040366003190112610135576004356001600160401b038111610131576103c290369060040161131e565b50506101736111c9565b5034610135576020366003190112610135576101b36103e9611198565b61029060ff845460081c166115d8565b506040366003190112610135576001600160401b03906024358281116101315761042790369060040161131e565b90926002606554146106ca57600260655560975434106106b857609854916040519460c0860191868310848411176106a25761046a926040523387523691611238565b906020850191825260043560408601523460608601528360808601528360a0860152600160401b83101561068e57600183016098556104a88361126f565b92909261067a57855183546001600160a01b0319166001600160a01b0391909116178355518051918211610666576104e360018401546112a4565b601f8111610622575b50602090601f83116001146105b057918060a0949260059488926105a5575b50508160011b916000199060031b1c19161760018201555b604086015160028201556060860151600382015560808601516004820155019301519260028410156105915760209360ff8019835416911617905560405191817f141dfc18aa6a56fc816f44f0e9e2f1ebc92b15ab167770e17db5b084c10ed995339280a360016065558152f35b634e487b7160e01b83526021600452602483fd5b01519050388061050b565b906001840186526020862091865b601f198516811061060a57509260a0949260019260059583601f198116106105f1575b505050811b016001820155610523565b015160001960f88460031b161c191690553880806105e1565b919260206001819286850151815501940192016105be565b60018401865260208620601f840160051c81016020851061065f575b601f830160051c820181106106545750506104ec565b87815560010161063e565b508061063e565b634e487b7160e01b85526041600452602485fd5b634e487b7160e01b85526004859052602485fd5b634e487b7160e01b84526041600452602484fd5b634e487b7160e01b600052604160045260246000fd5b60405163e4216b3160e01b8152600490fd5b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b5034610135578060031936011261013557602061072a611638565b6040516001600160a01b039091168152f35b503461013557602036600319011261013557610756611198565b3380835260996020908152604080852080546001600160a01b0319166001600160a01b0390951694851790555192835290917f2b87bb26d58aa2d56b59c2b23a53a6959f68d4547492bda44fb5e68b0fa38b3f9190a280f35b5034610135576060366003190112610135576004356001600160a01b03602435816107d86111b3565b169182855260996020528060408620541680331460001461096a57506107fd8461126f565b50906002820154831161095857600582019081549160ff8316600281101561094457600114610932576001600485019386855560ff1916179055868080806003870154335af161084b61150f565b50156108fb5786925416905490803b156108f75760448392604051948593849263188d362b60e11b84528a600485015260248401525af180156108ec576108bc575b5060207f394027a5fa6e098a1191094d1719d6929b9abc535fcc0c8f448d6a4e7562227691604051908152a380f35b9093906001600160401b0381116108d85760405292602061088d565b634e487b7160e01b82526041600452602482fd5b6040513d87823e3d90fd5b8280fd5b60405162461bcd60e51b815260206004820152600f60248201526e151c985b9cd9995c8819985a5b1959608a1b6044820152606490fd5b60405163bda17d9560e01b8152600490fd5b634e487b7160e01b89526021600452602489fd5b6040516309efd47960e41b8152600490fd5b60405163d0774c9960e01b81529081906109889033600484016116c0565b0390fd5b50346101355780600319360112610135576109a561134b565b603380546001600160a01b0319811690915581906001600160a01b03166000805160206117708339815191528280a380f35b5034610135576020366003190112610135577fb1484c2bf00d94a00783b6081ebc5f5d02be4675f6eb8cf4c0c95bfe5a3f06ed6020600435610a1761134b565b80609755604051908152a180f35b503461013557602080600319360112610131576004356098548110156108f757610a4e9061126f565b5060018060a01b038154169160019182810160405180948790835493610a73856112a4565b94858552878382169182600014610b43575050600114610b07575b5050610a9c925003846111fa565b600281015492610ace60038301549160c060ff60056004870154960154169560405198895288015260c08701906112de565b936040860152606085015260808401526002811015610af35782935060a08301520390f35b634e487b7160e01b84526021600452602484fd5b86925089528189209089915b858310610b2b575050610a9c93508201013880610a8e565b8054838a018501528894508793909201918101610b13565b9250935050610a9c94915060ff191682840152151560051b8201013880610a8e565b50346101355780600319360112610135577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003610bbe5760206040516000805160206117508339815191528152f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b50604036600319011261013557610c39611198565b6024356001600160401b0381116108f757366023820112156108f757610c69903690602481600401359101611238565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116929190610ca3308514156113e1565b610cc0600080516020611750833981519152948286541614611430565b610cc8611638565b8133911603610e7c576000805160206117108339815191525460ff1615610cf55750506101b3915061147f565b82919216604051936352d1902d60e01b85526020948581600481865afa879181610e49575b50610d695760405162461bcd60e51b815260048101879052602e60248201526000805160206117f083398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b94939403610e0457610d7a8261147f565b6000805160206117908339815191528580a283835115801590610dfc575b610da4575b5050505080f35b80610df29460405194610db6866111df565b602786526000805160206117d083398151915281870152660819985a5b195960ca1b604087015281519101845af4610dec61150f565b9161153f565b5038808083610d9d565b506001610d98565b60405162461bcd60e51b815260048101849052602960248201526000805160206117b08339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508681813d8311610e75575b610e6181836111fa565b81010312610e7157519038610d1a565b8780fd5b503d610e57565b610988610e87611638565b60405163163678e960e01b815291829133600484016116c0565b50346101355760208060031936011261013157610ebc611198565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116610ef3308214156113e1565b610f10600080516020611750833981519152918383541614611430565b610f18611638565b8233911603610e7c57604051848101929091906001600160401b038411838510176110eb578360405286835260ff6000805160206117108339815191525416600014610f6c57505050506101b3915061147f565b84939416906040516352d1902d60e01b81528681600481865afa8891816110b8575b50610fdd5760405162461bcd60e51b815260048101889052602e60248201526000805160206117f083398151915260448201526d6f6e206973206e6f74205555505360901b6064820152608490fd5b9594950361107357908591610ff18461147f565b6000805160206117908339815191528380a280511580159061106c575b61101b575b505050505080f35b6110619482916000805160206117d08339815191526040519661103d886111df565b60278852870152660819985a5b195960ca1b60408701525190845af4610dec61150f565b503880808381611013565b508161100e565b60405162461bcd60e51b815260048101859052602960248201526000805160206117b08339815191526044820152681a58589b195555525160ba1b6064820152608490fd5b9091508781813d83116110e4575b6110d081836111fa565b810103126110e057519038610f8e565b8880fd5b503d6110c6565b634e487b7160e01b87526041600452602487fd5b5034610135576020366003190112610135576020906001600160a01b039060409082611129611198565b16815260998452205416604051908152f35b503461013557602036600319011261013557606090600461115c813561126f565b500154906040519182528060208301526040820152f35b9050346101315781600319360112610131576033546001600160a01b03168152602090f35b600435906001600160a01b03821682036111ae57565b600080fd5b604435906001600160a01b03821682036111ae57565b602435906001600160a01b03821682036111ae57565b606081019081106001600160401b038211176106a257604052565b601f909101601f19168101906001600160401b038211908210176106a257604052565b6001600160401b0381116106a257601f01601f191660200190565b9291926112448261121d565b9161125260405193846111fa565b8294818452818301116111ae578281602093846000960137010152565b60985481101561128e5760986000526006602060002091020190600090565b634e487b7160e01b600052603260045260246000fd5b90600182811c921680156112d4575b60208310146112be57565b634e487b7160e01b600052602260045260246000fd5b91607f16916112b3565b919082519283825260005b84811061130a575050826000602080949584010152601f8019910116010190565b6020818301810151848301820152016112e9565b9181601f840112156111ae578235916001600160401b0383116111ae57602083818601950101116111ae57565b611353611638565b336001600160a01b039091160361136657565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b603380546001600160a01b039283166001600160a01b031982168117909255909116600080516020611770833981519152600080a3565b156113e857565b60405162461bcd60e51b815260206004820152602c602482015260008051602061173083398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b1561143757565b60405162461bcd60e51b815260206004820152602c602482015260008051602061173083398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b803b156114b45760008051602061175083398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b3d1561153a573d906115208261121d565b9161152e60405193846111fa565b82523d6000602084013e565b606090565b919290156115a15750815115611553575090565b3b1561155c5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156115b45750805190602001fd5b60405162461bcd60e51b8152602060048201529081906109889060248301906112de565b156115df57565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b6033546001600160a01b0390811690813b611651575090565b604051638da5cb5b60e01b8152602081600481865afa918291600093611681575b505061167c575090565b905090565b602093919293813d82116116b8575b8161169d602093836111fa565b81010312610131575191821682036101355750903880611672565b3d9150611690565b6001600160a01b0391821681529116602082015260400190565b60405162461bcd60e51b815260206004820152600d60248201526c139bdd081cdd5c1c1bdc9d1959609a1b6044820152606490fdfe4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914346756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b45524331393637557067726164653a20756e737570706f727465642070726f78416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c45524331393637557067726164653a206e657720696d706c656d656e74617469a2646970667358221220682e6f4b37f25e1eef570e88bdd8faa12bd4a907f5c35258e7c445db1902002264736f6c63430008130033","sourceMap":"774:5230:107:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;774:5230:107;;;;;;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;;:::i;:::-;;;;5441:14;774:5230;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;774:5230:107;;;;;;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;:::i;:::-;;;;;;;-1:-1:-1;;774:5230:107;;;;;;:::i;:::-;1324:62:42;;:::i;:::-;-1:-1:-1;;;;;774:5230:107;;2423:22:42;774:5230:107;;2517:8:42;;;:::i;:::-;774:5230:107;;;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;;;;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;;;-1:-1:-1;;774:5230:107;;;;;;;;:::i;:::-;;;;;;;;;3301:14:44;3347:34;;;;;;774:5230:107;3346:108:44;;;;774:5230:107;;;;499:12:102;774:5230:107;;2705:42;774:5230;;;;;;;;;;3562:65:44;;774:5230:107;;5366:69:44;774:5230:107;;;;;;5366:69:44;:::i;:::-;499:12:102;:::i;:::-;5366:69:44;774:5230:107;;;;;;5366:69:44;;;:::i;:::-;;:::i;:::-;1216:12:42;965:10:48;1216:12:42;:::i;:::-;774:5230:107;2658:32;774:5230;;;;;;2705:42;3647:99:44;;774:5230:107;;3647:99:44;774:5230:107;;;;;;;3721:14:44;774:5230:107;;;;;;3721:14:44;774:5230:107;;3562:65:44;-1:-1:-1;;774:5230:107;;;;;3562:65:44;;;774:5230:107;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;;;;;;-1:-1:-1;;;774:5230:107;;;;;;;3346:108:44;3426:4;;1702:19:73;:23;3387:66:44;;3346:108;3387:66;774:5230:107;;;;;3436:17:44;3346:108;;3347:34;774:5230:107;;;;;3365:16:44;3347:34;;774:5230:107;;;;;;;-1:-1:-1;;774:5230:107;;;;;;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;-1:-1:-1;;774:5230:107;;;;499:12:102;774:5230:107;;:::i;:::-;5366:69:44;774:5230:107;;;;;;5366:69:44;:::i;774:5230:107:-;-1:-1:-1;774:5230:107;;-1:-1:-1;;774:5230:107;;;;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;;;;;;:::i;:::-;;;1851:1:45;2733:7;774:5230:107;2733:19:45;1851:1;;;2733:7;774:5230:107;5441:14;774:5230;3455:9;:39;3451:103;;3575:8;774:5230;;;;;;;;;;;;;;;;;;;;;;3683:10;774:5230;;;;;:::i;:::-;3627:283;774:5230;3627:283;;774:5230;;;;;;3627:283;;774:5230;3455:9;3627:283;;;774:5230;3627:283;;;;774:5230;3627:283;;;;774:5230;;;;;;;;;;;;3575:8;774:5230;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;;;;;774:5230:107;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3627:283;774:5230;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3627:283;;774:5230;1851:1:45;774:5230:107;;;3627:283;;;774:5230;;;;;3627:283;;;774:5230;;;;;;3627:283;;774:5230;;1851:1:45;774:5230:107;;;;;;;;;;;;;;;;;;;;3683:10;;3936:51;3683:10;3936:51;;;774:5230;2733:7:45;774:5230:107;;;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;-1:-1:-1;774:5230:107;;;;;;;;;;;;;;;;;-1:-1:-1;;774:5230:107;;;;;;;;3627:283;774:5230;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;774:5230:107;;;;-1:-1:-1;;;774:5230:107;;;;;;;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;;;;;;;;;3451:103;774:5230;;-1:-1:-1;;;3517:26:107;;774:5230;;3517:26;1851:1:45;774:5230:107;;-1:-1:-1;;;1851:1:45;;774:5230:107;;1851:1:45;;;;774:5230:107;1851:1:45;;774:5230:107;1851:1:45;774:5230:107;;;1851:1:45;;;;774:5230:107;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;;;;-1:-1:-1;;774:5230:107;;;;;;:::i;:::-;3150:10;774:5230;;;3127:22;774:5230;;;;;;;;;;-1:-1:-1;;;;;;774:5230:107;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;;;3150:10;;3184:33;;774:5230;3184:33;774:5230;;;;;;;;;-1:-1:-1;;774:5230:107;;;;;;-1:-1:-1;;;;;774:5230:107;;;;;:::i;:::-;;;;;;2285:22;774:5230;;;;;;;;2271:10;;:49;2267:176;2271:49;;;4720:20;;;;:::i;:::-;4765:15;;;;;774:5230;4755:25;;4751:78;;4842:14;;;774:5230;;;;;;;4765:15;774:5230;;;;;;4842:38;4838:98;;774:5230;;4946:14;;774:5230;;;;;;;;;;5078:22;;;;774:5230;5078:22;;774:5230;2271:10;5046:59;;;;:::i;:::-;;774:5230;;;;;;;;;5160:51;;;;;;774:5230;;;;;689:66:57;;;;;;;;5160:51:107;;;774:5230;5160:51;;774:5230;;;;;5160:51;;;;;;;;2267:176;774:5230;;5226:53;774:5230;;;;;;5226:53;774:5230;;5160:51;774:5230;;;-1:-1:-1;;;;;774:5230:107;;;;;;;;5160:51;;774:5230;-1:-1:-1;;;774:5230:107;;;;;;;;5160:51;774:5230;;689:66:57;774:5230:107;;689:66:57;;;;5160:51:107;774:5230;;;;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;-1:-1:-1;;;774:5230:107;;;;;;;4838:98;774:5230;;-1:-1:-1;;;4903:22:107;;774:5230;;4903:22;774:5230;-1:-1:-1;;;774:5230:107;;;;;;;;4751:78;774:5230;;-1:-1:-1;;;4803:15:107;;774:5230;;4803:15;2267:176;774:5230;;-1:-1:-1;;;2375:57:107;;774:5230;;;2375:57;;2271:10;774:5230;2375:57;;;:::i;:::-;;;;774:5230;;;;;;;;;;;;;1324:62:42;;:::i;:::-;2779:6;774:5230:107;;-1:-1:-1;;;;;;774:5230:107;;;;;;;-1:-1:-1;;;;;774:5230:107;-1:-1:-1;;;;;;;;;;;774:5230:107;;2827:40:42;774:5230:107;;;;;;;;;-1:-1:-1;;774:5230:107;;;;3020:38;774:5230;;;1324:62:42;;:::i;:::-;774:5230:107;2973:32;774:5230;;;;;;3020:38;774:5230;;;;;;;;;;;;;;;;;;1852:31;774:5230;1852:31;;;;;;;;:::i;:::-;774:5230;;;;;;;;;;;1852:31;;;;774:5230;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1852:31;;;774:5230;1852:31;774:5230;;1852:31;;774:5230;1852:31;774:5230;;1852:31;774:5230;1852:31;;774:5230;1852:31;;774:5230;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;1852:31;774:5230;;;;;;;;;;;;;;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;774:5230:107;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2089:6:61;-1:-1:-1;;;;;774:5230:107;2080:4:61;2072:23;774:5230:107;;;;;-1:-1:-1;;;;;;;;;;;774:5230:107;;;;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;;;;;;-1:-1:-1;;;774:5230:107;;;;;;;;-1:-1:-1;774:5230:107;;-1:-1:-1;;774:5230:107;;;;;;:::i;:::-;;;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1654:6:61;774:5230:107;;;;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;774:5230:107;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;774:5230:107;;1256:21:102;1252:94;;-1:-1:-1;;;;;;;;;;;689:66:57;774:5230:107;;;;;2993:17:57;;;;;;:::i;2906:504::-;774:5230:107;;;;;;689:66:57;;;;3046:52;;;;;;774:5230:107;3046:52:57;;;;;;;;;2906:504;-1:-1:-1;3042:291:57;;774:5230:107;;-1:-1:-1;;;3262:56:57;;774:5230:107;3262:56:57;;689:66;;;;774:5230:107;689:66:57;;774:5230:107;-1:-1:-1;;;;;;;;;;;774:5230:107;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;1889:27:57;;;774:5230:107;;;2208:15:57;;;:28;;;3042:291;2204:112;;3042:291;2906:504;;;;774:5230:107;;2204:112:57;774:5230:107;7307:69:73;774:5230:107;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;;;;;774:5230:107;;;;-1:-1:-1;;;774:5230:107;;;;7265:25:73;;;;;;;;;:::i;:::-;7307:69;;:::i;:::-;;2204:112:57;;;;;;2208:28;;774:5230:107;2208:28:57;;689:66;774:5230:107;;-1:-1:-1;;;689:66:57;;774:5230:107;689:66:57;;;;;;774:5230:107;689:66:57;;774:5230:107;-1:-1:-1;;;;;;;;;;;774:5230:107;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;689:66;774:5230:107;;;3046:52:57;;;;;1252:94:102;1300:35;1327:7;;:::i;:::-;774:5230:107;;-1:-1:-1;;;1300:35:102;;774:5230:107;;;1267:10:102;774:5230:107;1300:35:102;;;:::i;774:5230:107:-;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;1654:6:61;774:5230:107;;1629:80:61;1645:4;1637:23;;;1629:80;:::i;:::-;1719:87;-1:-1:-1;;;;;;;;;;;774:5230:107;;;;;1727:30:61;1719:87;:::i;:::-;1256:7:102;;:::i;:::-;1267:10;;774:5230:107;;1256:21:102;1252:94;;774:5230:107;;;;;;;;;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;689:66:57;774:5230:107;2906:504:57;774:5230:107;;;2993:17:57;;;;;;;;:::i;2906:504::-;774:5230:107;;;;;;;689:66:57;;;3046:52;;;;774:5230:107;3046:52:57;;;;;;;;;2906:504;-1:-1:-1;3042:291:57;;774:5230:107;;-1:-1:-1;;;3262:56:57;;774:5230:107;3262:56:57;;689:66;;;;;;;774:5230:107;-1:-1:-1;;;;;;;;;;;774:5230:107;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;3262:56;3042:291;3148:28;;;;689:66;;3042:291;;;1856:17;;;:::i;:::-;-1:-1:-1;;;;;;;;;;;1889:27:57;;;774:5230:107;;2208:15:57;;;:28;;;3042:291;2204:112;;3042:291;2906:504;;;;;774:5230:107;;2204:112:57;7307:69:73;774:5230:107;;;-1:-1:-1;;;;;;;;;;;774:5230:107;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;774:5230:107;;;;7265:25:73;;;;;;;:::i;7307:69::-;;2204:112:57;;;;;;;2208:28;;;;;689:66;774:5230:107;;-1:-1:-1;;;689:66:57;;774:5230:107;689:66:57;;;;;;;;;774:5230:107;-1:-1:-1;;;;;;;;;;;774:5230:107;;;689:66:57;-1:-1:-1;;;689:66:57;;;;;;;3046:52;;;;;;;;;;;;;;;;;:::i;:::-;;;689:66;;;;;3046:52;;;;689:66;774:5230:107;;;3046:52:57;;;;;774:5230:107;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;;;;-1:-1:-1;;774:5230:107;;;;;;-1:-1:-1;;;;;774:5230:107;;;;;;:::i;:::-;;;;1938:73;774:5230;;;;;;;;;;;;;;;;;;-1:-1:-1;;774:5230:107;;;;;;;5860:20;774:5230;;5860:20;:::i;:::-;5899:14;;774:5230;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1534:6:42;774:5230:107;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;-1:-1:-1;;;;;774:5230:107;;;;;;:::o;:::-;;;;;;;;-1:-1:-1;;;;;774:5230:107;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;774:5230:107;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;774:5230:107;;;;;;;:::o;:::-;;;;;-1:-1:-1;;774:5230:107;;;;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;774:5230:107;;;;;;-1:-1:-1;;774:5230:107;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;774:5230:107;;;;;;:::o;:::-;5860:8;774:5230;;;;;;5860:8;-1:-1:-1;774:5230:107;;;-1:-1:-1;774:5230:107;;;;;-1:-1:-1;774:5230:107;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;;;;;;:::o;1620:130:42:-;1683:7;;:::i;:::-;965:10:48;-1:-1:-1;;;;;774:5230:107;;;1683:23:42;774:5230:107;;1620:130:42:o;774:5230:107:-;;;;689:66:57;;;774:5230:107;;;;;;;;;;;;;;;;;;2687:187:42;2779:6;774:5230:107;;-1:-1:-1;;;;;774:5230:107;;;-1:-1:-1;;;;;;774:5230:107;;;;;;;;;;-1:-1:-1;;;;;;;;;;;;;2827:40:42;2687:187::o;774:5230:107:-;;;;:::o;:::-;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;774:5230:107;;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;774:5230:107;;;;-1:-1:-1;;;774:5230:107;;;;;;;1406:259:57;1702:19:73;;:23;774:5230:107;;-1:-1:-1;;;;;;;;;;;774:5230:107;;-1:-1:-1;;;;;;774:5230:107;-1:-1:-1;;;;;774:5230:107;;;;;;;;;1406:259:57:o;774:5230:107:-;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;;;;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;-1:-1:-1;774:5230:107;;;;:::o;:::-;;;:::o;7671:628:73:-;;;;7875:418;;;774:5230:107;;;7906:22:73;7902:286;;8201:17;;:::o;7902:286::-;1702:19;:23;774:5230:107;;8201:17:73;:::o;774:5230:107:-;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;;;;;;;;;7875:418:73;774:5230:107;;;;-1:-1:-1;8980:21:73;:17;;9152:142;;;;;;;8976:379;774:5230:107;;-1:-1:-1;;;9324:20:73;;774:5230:107;9324:20:73;;;774:5230:107;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;-1:-1:-1;;;774:5230:107;;;;;;;;;;;;;;;;;-1:-1:-1;;;774:5230:107;;;;;;;633:544:102;1534:6:42;774:5230:107;-1:-1:-1;;;;;774:5230:107;;;;755:33:102;;1534:6:42;;870:19:102;;:::o;751:420::-;774:5230:107;;-1:-1:-1;;;924:40:102;;;774:5230:107;924:40:102;774:5230:107;924:40:102;;;;;;-1:-1:-1;924:40:102;;;751:420;-1:-1:-1;;920:241:102;;1127:19;;:::o;920:241::-;1008:13;;;:::o;924:40::-;;;;;;;;;;;;;;;;;;;:::i;:::-;;;774:5230:107;;;;;;;;;;;;924:40:102;;;;;;;;;-1:-1:-1;924:40:102;;774:5230:107;-1:-1:-1;;;;;774:5230:107;;;;;;;;;;;;;;:::o;4032:241::-;774:5230;;-1:-1:-1;;;4243:23:107;;774:5230;4243:23;;;774:5230;;;;;;-1:-1:-1;;;774:5230:107;;;;;;4243:23","linkReferences":{},"immutableReferences":{"54869":[{"start":2936,"length":32},{"start":3187,"length":32},{"start":3782,"length":32}]}},"methodIdentifiers":{"arbitrableTribunalSafe(address)":"26a0754c","arbitrationCost(bytes)":"f7434ea9","arbitrationCost(bytes,address)":"d98493f6","createDispute(uint256,bytes)":"c13517e1","createDispute(uint256,bytes,address,uint256)":"f6506db4","currentRuling(uint256)":"1c3db16d","disputes(uint256)":"564a565d","executeRuling(uint256,uint256,address)":"7a1d3756","initialize(address)":"c4d66de8","initialize(uint256,address)":"da35a26f","owner()":"8da5cb5b","proxiableUUID()":"52d1902d","proxyOwner()":"025313a2","registerSafe(address)":"88d5b732","renounceOwnership()":"715018a6","setArbitrationFee(uint256)":"5ea7b4fc","transferOwnership(address)":"f2fde38b","upgradeTo(address)":"3659cfe6","upgradeToAndCall(address,bytes)":"4f1ef286"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_caller\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"CallerNotOwner\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"DisputeAlreadySolved\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"InvalidRuling\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"NotEnoughArbitrationFees\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"safe\",\"type\":\"address\"}],\"name\":\"OnlySafe\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IERC20\",\"name\":\"_token\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"bool\",\"name\":\"_accepted\",\"type\":\"bool\"}],\"name\":\"AcceptedFeeToken\",\"type\":\"event\"},{\"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\":\"uint256\",\"name\":\"_newArbitrationFee\",\"type\":\"uint256\"}],\"name\":\"ArbitrationFeeUpdated\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"beacon\",\"type\":\"address\"}],\"name\":\"BeaconUpgraded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"indexed\":true,\"internalType\":\"contract IArbitrable\",\"name\":\"_arbitrable\",\"type\":\"address\"}],\"name\":\"DisputeCreation\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"version\",\"type\":\"uint8\"}],\"name\":\"Initialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"contract IERC20\",\"name\":\"_feeToken\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"uint64\",\"name\":\"_rateInEth\",\"type\":\"uint64\"},{\"indexed\":false,\"internalType\":\"uint8\",\"name\":\"_rateDecimals\",\"type\":\"uint8\"}],\"name\":\"NewCurrencyRate\",\"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\":true,\"internalType\":\"contract IArbitrable\",\"name\":\"_arbitrable\",\"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\":\"uint256\",\"name\":\"_arbitrationFee\",\"type\":\"uint256\"}],\"name\":\"SafeArbitratorInitialized\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"_arbitrable\",\"type\":\"address\"},{\"indexed\":false,\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"SafeRegistered\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"implementation\",\"type\":\"address\"}],\"name\":\"Upgraded\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"arbitrable\",\"type\":\"address\"}],\"name\":\"arbitrableTribunalSafe\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"safe\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"}],\"name\":\"arbitrationCost\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"arbitrationCost\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_choices\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"_extraData\",\"type\":\"bytes\"}],\"name\":\"createDispute\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"disputeID\",\"type\":\"uint256\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"},{\"internalType\":\"contract IERC20\",\"name\":\"\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"createDispute\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"}],\"name\":\"currentRuling\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"ruling\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"tied\",\"type\":\"bool\"},{\"internalType\":\"bool\",\"name\":\"overridden\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"disputes\",\"outputs\":[{\"internalType\":\"contract IArbitrable\",\"name\":\"arbitrated\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"arbitratorExtraData\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"choices\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"arbitrationFee\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"ruling\",\"type\":\"uint256\"},{\"internalType\":\"enum SafeArbitrator.DisputeStatus\",\"name\":\"status\",\"type\":\"uint8\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_disputeID\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"_ruling\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_arbitrable\",\"type\":\"address\"}],\"name\":\"executeRuling\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"initialOwner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_arbitrationFee\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":\"proxyOwner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_safe\",\"type\":\"address\"}],\"name\":\"registerSafe\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"renounceOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"_arbitrationFee\",\"type\":\"uint256\"}],\"name\":\"setArbitrationFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"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\":{\"details\":\"This is an arbitrator middleware that will allow a safe to decide on the result of disputes.\",\"events\":{\"AcceptedFeeToken(address,bool)\":{\"details\":\"To be emitted when an ERC20 token is added or removed as a method to pay fees.\",\"params\":{\"_accepted\":\"Whether the token is accepted or not.\",\"_token\":\"The ERC20 token.\"}},\"AdminChanged(address,address)\":{\"details\":\"Emitted when the admin account has changed.\"},\"BeaconUpgraded(address)\":{\"details\":\"Emitted when the beacon is changed.\"},\"DisputeCreation(uint256,address)\":{\"details\":\"To be emitted when a dispute is created.\",\"params\":{\"_arbitrable\":\"The contract which created the dispute.\",\"_disputeID\":\"The identifier of the dispute in the Arbitrator contract.\"}},\"Initialized(uint8)\":{\"details\":\"Triggered when the contract has been initialized or reinitialized.\"},\"NewCurrencyRate(address,uint64,uint8)\":{\"details\":\"To be emitted when the fee for a particular ERC20 token is updated.\",\"params\":{\"_feeToken\":\"The ERC20 token.\",\"_rateDecimals\":\"The new decimals of the fee token rate.\",\"_rateInEth\":\"The new rate of the fee token in ETH.\"}},\"Ruling(address,uint256,uint256)\":{\"details\":\"To be raised when a ruling is given.\",\"params\":{\"_arbitrable\":\"The arbitrable receiving 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\":{\"arbitrationCost(bytes)\":{\"details\":\"Compute the cost of arbitration denominated in the native currency, typically ETH. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\"},\"returns\":{\"fee\":\"The arbitration cost in ETH.\"}},\"arbitrationCost(bytes,address)\":{\"details\":\"Compute the cost of arbitration denominated in `_feeToken`. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\",\"_feeToken\":\"The ERC20 token used to pay fees.\"},\"returns\":{\"_0\":\"The arbitration cost in `_feeToken`.\"}},\"createDispute(uint256,bytes)\":{\"details\":\"Create a dispute and pay for the fees in the native currency, typically ETH. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\",\"_numberOfChoices\":\"The number of choices the arbitrator can choose from in this dispute.\"},\"returns\":{\"disputeID\":\"The identifier of the dispute created.\"}},\"createDispute(uint256,bytes,address,uint256)\":{\"details\":\"Create a dispute and pay for the fees in a supported ERC20 token. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).\",\"params\":{\"_extraData\":\"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).\",\"_feeAmount\":\"Amount of the ERC20 token used to pay fees.\",\"_feeToken\":\"The ERC20 token used to pay fees.\",\"_numberOfChoices\":\"The number of choices the arbitrator can choose from in this dispute.\"},\"returns\":{\"_0\":\"The identifier of the dispute created.\"}},\"currentRuling(uint256)\":{\"details\":\"Gets the current ruling of a specified dispute.\",\"params\":{\"_disputeID\":\"The ID of the dispute.\"},\"returns\":{\"overridden\":\"Whether the ruling was overridden by appeal funding or not.\",\"ruling\":\"The current ruling.\",\"tied\":\"Whether it's a tie or not.\"}},\"executeRuling(uint256,uint256,address)\":{\"details\":\"Give a ruling to a dispute.\",\"params\":{\"_arbitrable\":\"Address of the arbitrable that the safe rules for\\\".\",\"_disputeID\":\"ID of the dispute to rule.\",\"_ruling\":\"Ruling given by the arbitrator. Note that 0 means that arbitrator chose \\\"Refused to rule\\\".\"}},\"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.\"},\"registerSafe(address)\":{\"details\":\"Authorize the safe to execute a ruling on the source contract.<\",\"params\":{\"_safe\":\"that acts as the Tribunal safe that can rule disputes from the source Strategy.\"}},\"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.\"},\"setArbitrationFee(uint256)\":{\"details\":\"Set the arbitration fee. Only callable by the owner.\",\"params\":{\"_arbitrationFee\":\"Amount to be paid for arbitration.\"}},\"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.\"}},\"title\":\"Safe Arbitrator\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/src/SafeArbitrator.sol\":\"SafeArbitrator\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"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/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/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/ERC1967Upgrade.sol\":{\"keccak256\":\"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2\",\"dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82\"]},\"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/UUPSUpgradeable.sol\":{\"keccak256\":\"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1\",\"dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM\"]},\"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"lib/openzeppelin-contracts/contracts/utils/Address.sol\":{\"keccak256\":\"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931\",\"dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm\"]},\"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol\":{\"keccak256\":\"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da\",\"dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/SafeArbitrator.sol\":{\"keccak256\":\"0xc725d683ef1b5d978e79dfc887996a5348e2f0264abe228a84d63460aa141f71\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://51ec050f375c048649b23d56118a402f2116ad430eaf9f57442c5f8a020da860\",\"dweb:/ipfs/QmdJyCfviijA9e2pJ1kdPQoZVy8iPfumFmSnfaxhuL5R12\"]},\"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\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"address","name":"_caller","type":"address"},{"internalType":"address","name":"_owner","type":"address"}],"type":"error","name":"CallerNotOwner"},{"inputs":[],"type":"error","name":"DisputeAlreadySolved"},{"inputs":[],"type":"error","name":"InvalidRuling"},{"inputs":[],"type":"error","name":"NotEnoughArbitrationFees"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"safe","type":"address"}],"type":"error","name":"OnlySafe"},{"inputs":[{"internalType":"contract IERC20","name":"_token","type":"address","indexed":true},{"internalType":"bool","name":"_accepted","type":"bool","indexed":true}],"type":"event","name":"AcceptedFeeToken","anonymous":false},{"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":"uint256","name":"_newArbitrationFee","type":"uint256","indexed":false}],"type":"event","name":"ArbitrationFeeUpdated","anonymous":false},{"inputs":[{"internalType":"address","name":"beacon","type":"address","indexed":true}],"type":"event","name":"BeaconUpgraded","anonymous":false},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256","indexed":true},{"internalType":"contract IArbitrable","name":"_arbitrable","type":"address","indexed":true}],"type":"event","name":"DisputeCreation","anonymous":false},{"inputs":[{"internalType":"uint8","name":"version","type":"uint8","indexed":false}],"type":"event","name":"Initialized","anonymous":false},{"inputs":[{"internalType":"contract IERC20","name":"_feeToken","type":"address","indexed":true},{"internalType":"uint64","name":"_rateInEth","type":"uint64","indexed":false},{"internalType":"uint8","name":"_rateDecimals","type":"uint8","indexed":false}],"type":"event","name":"NewCurrencyRate","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":"contract IArbitrable","name":"_arbitrable","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":"uint256","name":"_arbitrationFee","type":"uint256","indexed":false}],"type":"event","name":"SafeArbitratorInitialized","anonymous":false},{"inputs":[{"internalType":"address","name":"_arbitrable","type":"address","indexed":true},{"internalType":"address","name":"_safe","type":"address","indexed":false}],"type":"event","name":"SafeRegistered","anonymous":false},{"inputs":[{"internalType":"address","name":"implementation","type":"address","indexed":true}],"type":"event","name":"Upgraded","anonymous":false},{"inputs":[{"internalType":"address","name":"arbitrable","type":"address"}],"stateMutability":"view","type":"function","name":"arbitrableTribunalSafe","outputs":[{"internalType":"address","name":"safe","type":"address"}]},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"pure","type":"function","name":"arbitrationCost","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function","name":"arbitrationCost","outputs":[{"internalType":"uint256","name":"fee","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_choices","type":"uint256"},{"internalType":"bytes","name":"_extraData","type":"bytes"}],"stateMutability":"payable","type":"function","name":"createDispute","outputs":[{"internalType":"uint256","name":"disputeID","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"contract IERC20","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function","name":"createDispute","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"}],"stateMutability":"view","type":"function","name":"currentRuling","outputs":[{"internalType":"uint256","name":"ruling","type":"uint256"},{"internalType":"bool","name":"tied","type":"bool"},{"internalType":"bool","name":"overridden","type":"bool"}]},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function","name":"disputes","outputs":[{"internalType":"contract IArbitrable","name":"arbitrated","type":"address"},{"internalType":"bytes","name":"arbitratorExtraData","type":"bytes"},{"internalType":"uint256","name":"choices","type":"uint256"},{"internalType":"uint256","name":"arbitrationFee","type":"uint256"},{"internalType":"uint256","name":"ruling","type":"uint256"},{"internalType":"enum SafeArbitrator.DisputeStatus","name":"status","type":"uint8"}]},{"inputs":[{"internalType":"uint256","name":"_disputeID","type":"uint256"},{"internalType":"uint256","name":"_ruling","type":"uint256"},{"internalType":"address","name":"_arbitrable","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"executeRuling"},{"inputs":[{"internalType":"address","name":"initialOwner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"inputs":[{"internalType":"uint256","name":"_arbitrationFee","type":"uint256"},{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"initialize"},{"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":"proxyOwner","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_safe","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"registerSafe"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"renounceOwnership"},{"inputs":[{"internalType":"uint256","name":"_arbitrationFee","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"setArbitrationFee"},{"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":{"arbitrationCost(bytes)":{"details":"Compute the cost of arbitration denominated in the native currency, typically ETH. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes)."},"returns":{"fee":"The arbitration cost in ETH."}},"arbitrationCost(bytes,address)":{"details":"Compute the cost of arbitration denominated in `_feeToken`. It is recommended not to increase it often, as it can be highly time and gas consuming for the arbitrated contracts to cope with fee augmentation.","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).","_feeToken":"The ERC20 token used to pay fees."},"returns":{"_0":"The arbitration cost in `_feeToken`."}},"createDispute(uint256,bytes)":{"details":"Create a dispute and pay for the fees in the native currency, typically ETH. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).","_numberOfChoices":"The number of choices the arbitrator can choose from in this dispute."},"returns":{"disputeID":"The identifier of the dispute created."}},"createDispute(uint256,bytes,address,uint256)":{"details":"Create a dispute and pay for the fees in a supported ERC20 token. Must be called by the arbitrable contract. Must pay at least arbitrationCost(_extraData).","params":{"_extraData":"Additional info about the dispute. We use it to pass the ID of the dispute's court (first 32 bytes), the minimum number of jurors required (next 32 bytes) and the ID of the specific dispute kit (last 32 bytes).","_feeAmount":"Amount of the ERC20 token used to pay fees.","_feeToken":"The ERC20 token used to pay fees.","_numberOfChoices":"The number of choices the arbitrator can choose from in this dispute."},"returns":{"_0":"The identifier of the dispute created."}},"currentRuling(uint256)":{"details":"Gets the current ruling of a specified dispute.","params":{"_disputeID":"The ID of the dispute."},"returns":{"overridden":"Whether the ruling was overridden by appeal funding or not.","ruling":"The current ruling.","tied":"Whether it's a tie or not."}},"executeRuling(uint256,uint256,address)":{"details":"Give a ruling to a dispute.","params":{"_arbitrable":"Address of the arbitrable that the safe rules for\".","_disputeID":"ID of the dispute to rule.","_ruling":"Ruling given by the arbitrator. Note that 0 means that arbitrator chose \"Refused to rule\"."}},"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."},"registerSafe(address)":{"details":"Authorize the safe to execute a ruling on the source contract.<","params":{"_safe":"that acts as the Tribunal safe that can rule disputes from the source Strategy."}},"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."},"setArbitrationFee(uint256)":{"details":"Set the arbitration fee. Only callable by the owner.","params":{"_arbitrationFee":"Amount to be paid for arbitration."}},"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/SafeArbitrator.sol":"SafeArbitrator"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"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/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/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/ERC1967Upgrade.sol":{"keccak256":"0x3b21ae06bf5957f73fa16754b0669c77b7abd8ba6c072d35c3281d446fdb86c2","urls":["bzz-raw://2db8e18505e86e02526847005d7287a33e397ed7fb9eaba3fd4a4a197add16e2","dweb:/ipfs/QmW9BSuKTzHWHBNSHF4L8XfVuU1uJrP2vLg84YtBd8mL82"],"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/UUPSUpgradeable.sol":{"keccak256":"0xc6619957bcc6641fe8984bfaf9ff11a9e4b97d8149c0495f608f9a2416d7c5cf","urls":["bzz-raw://543be67f7fa43b1b932637c1c7f12035f0f4b0f7ee2bd3c33841186f79c165c1","dweb:/ipfs/QmSBPM2UVKbmJqWfD9i6hSiqbaE8TV4TSqfuiivziRRLKM"],"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/utils/Address.sol":{"keccak256":"0x006dd67219697fe68d7fbfdea512e7c4cb64a43565ed86171d67e844982da6fa","urls":["bzz-raw://2455248c8ddd9cc6a7af76a13973cddf222072427e7b0e2a7d1aff345145e931","dweb:/ipfs/QmfYjnjRbWqYpuxurqveE6HtzsY1Xx323J428AKQgtBJZm"],"license":"MIT"},"lib/openzeppelin-contracts/contracts/utils/StorageSlot.sol":{"keccak256":"0xf09e68aa0dc6722a25bc46490e8d48ed864466d17313b8a0b254c36b54e49899","urls":["bzz-raw://e26daf81e2252dc1fe1ce0e4b55c2eb7c6d1ee84ae6558d1a9554432ea1d32da","dweb:/ipfs/Qmb1UANWiWq5pCKbmHSu772hd4nt374dVaghGmwSVNuk8Q"],"license":"MIT"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/SafeArbitrator.sol":{"keccak256":"0xc725d683ef1b5d978e79dfc887996a5348e2f0264abe228a84d63460aa141f71","urls":["bzz-raw://51ec050f375c048649b23d56118a402f2116ad430eaf9f57442c5f8a020da860","dweb:/ipfs/QmdJyCfviijA9e2pJ1kdPQoZVy8iPfumFmSnfaxhuL5R12"],"license":"MIT"},"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"}},"version":1},"storageLayout":{"storage":[{"astId":52287,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"_initialized","offset":0,"slot":"0","type":"t_uint8"},{"astId":52290,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"_initializing","offset":1,"slot":"0","type":"t_bool"},{"astId":52992,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"__gap","offset":0,"slot":"1","type":"t_array(t_uint256)50_storage"},{"astId":52079,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"_owner","offset":0,"slot":"51","type":"t_address"},{"astId":52199,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"__gap","offset":0,"slot":"52","type":"t_array(t_uint256)49_storage"},{"astId":52464,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"_status","offset":0,"slot":"101","type":"t_uint256"},{"astId":52533,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"__gap","offset":0,"slot":"102","type":"t_array(t_uint256)49_storage"},{"astId":74088,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"arbitrationFee","offset":0,"slot":"151","type":"t_uint256"},{"astId":74092,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"disputes","offset":0,"slot":"152","type":"t_array(t_struct(DisputeStruct)74086_storage)dyn_storage"},{"astId":74096,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"arbitrableTribunalSafe","offset":0,"slot":"153","type":"t_mapping(t_address,t_address)"},{"astId":74426,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"__gap","offset":0,"slot":"154","type":"t_array(t_uint256)50_storage"}],"types":{"t_address":{"encoding":"inplace","label":"address","numberOfBytes":"20"},"t_array(t_struct(DisputeStruct)74086_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct SafeArbitrator.DisputeStruct[]","numberOfBytes":"32","base":"t_struct(DisputeStruct)74086_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_bytes_storage":{"encoding":"bytes","label":"bytes","numberOfBytes":"32"},"t_contract(IArbitrable)76845":{"encoding":"inplace","label":"contract IArbitrable","numberOfBytes":"20"},"t_enum(DisputeStatus)74071":{"encoding":"inplace","label":"enum SafeArbitrator.DisputeStatus","numberOfBytes":"1"},"t_mapping(t_address,t_address)":{"encoding":"mapping","key":"t_address","label":"mapping(address => address)","numberOfBytes":"32","value":"t_address"},"t_struct(DisputeStruct)74086_storage":{"encoding":"inplace","label":"struct SafeArbitrator.DisputeStruct","numberOfBytes":"192","members":[{"astId":74074,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"arbitrated","offset":0,"slot":"0","type":"t_contract(IArbitrable)76845"},{"astId":74076,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"arbitratorExtraData","offset":0,"slot":"1","type":"t_bytes_storage"},{"astId":74078,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"choices","offset":0,"slot":"2","type":"t_uint256"},{"astId":74080,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"arbitrationFee","offset":0,"slot":"3","type":"t_uint256"},{"astId":74082,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"ruling","offset":0,"slot":"4","type":"t_uint256"},{"astId":74085,"contract":"pkg/contracts/src/SafeArbitrator.sol:SafeArbitrator","label":"status","offset":0,"slot":"5","type":"t_enum(DisputeStatus)74071"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"},"t_uint8":{"encoding":"inplace","label":"uint8","numberOfBytes":"1"}}},"ast":{"absolutePath":"pkg/contracts/src/SafeArbitrator.sol","id":74428,"exportedSymbols":{"IArbitrable":[76845],"IArbitrator":[76949],"IERC20":[55825],"OwnableUpgradeable":[52200],"ProxyOwnableUpgrader":[71181],"ReentrancyGuardUpgradeable":[52534],"SafeArbitrator":[74427],"UUPSUpgradeable":[54969]},"nodeType":"SourceUnit","src":"33:5972:107","nodes":[{"id":74033,"nodeType":"PragmaDirective","src":"33:24:107","nodes":[],"literals":["solidity","^","0.8",".19"]},{"id":74035,"nodeType":"ImportDirective","src":"59:64:107","nodes":[],"absolutePath":"pkg/contracts/src/ProxyOwnableUpgrader.sol","file":"./ProxyOwnableUpgrader.sol","nameLocation":"-1:-1:-1","scope":74428,"sourceUnit":71182,"symbolAliases":[{"foreign":{"id":74034,"name":"ProxyOwnableUpgrader","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":71181,"src":"67:20:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74037,"nodeType":"ImportDirective","src":"124:70:107","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"@openzeppelin/contracts/token/ERC20/IERC20.sol","nameLocation":"-1:-1:-1","scope":74428,"sourceUnit":55826,"symbolAliases":[{"foreign":{"id":74036,"name":"IERC20","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55825,"src":"132:6:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74039,"nodeType":"ImportDirective","src":"195:88:107","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/proxy/utils/UUPSUpgradeable.sol","file":"@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol","nameLocation":"-1:-1:-1","scope":74428,"sourceUnit":54970,"symbolAliases":[{"foreign":{"id":74038,"name":"UUPSUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":54969,"src":"203:15:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74041,"nodeType":"ImportDirective","src":"284:110:107","nodes":[],"absolutePath":"lib/openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","file":"openzeppelin-contracts-upgradeable/contracts/access/OwnableUpgradeable.sol","nameLocation":"-1:-1:-1","scope":74428,"sourceUnit":52201,"symbolAliases":[{"foreign":{"id":74040,"name":"OwnableUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52200,"src":"292:18:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74043,"nodeType":"ImportDirective","src":"395: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":74428,"sourceUnit":52535,"symbolAliases":[{"foreign":{"id":74042,"name":"ReentrancyGuardUpgradeable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52534,"src":"403:26:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74045,"nodeType":"ImportDirective","src":"528:57:107","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrable.sol","file":"./interfaces/IArbitrable.sol","nameLocation":"-1:-1:-1","scope":74428,"sourceUnit":76846,"symbolAliases":[{"foreign":{"id":74044,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76845,"src":"536:11:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74047,"nodeType":"ImportDirective","src":"586:57:107","nodes":[],"absolutePath":"pkg/contracts/src/interfaces/IArbitrator.sol","file":"./interfaces/IArbitrator.sol","nameLocation":"-1:-1:-1","scope":74428,"sourceUnit":76950,"symbolAliases":[{"foreign":{"id":74046,"name":"IArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76949,"src":"594:11:107","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":74427,"nodeType":"ContractDefinition","src":"774:5230:107","nodes":[{"id":74058,"nodeType":"EventDefinition","src":"869:56:107","nodes":[],"anonymous":false,"eventSelector":"b1484c2bf00d94a00783b6081ebc5f5d02be4675f6eb8cf4c0c95bfe5a3f06ed","name":"ArbitrationFeeUpdated","nameLocation":"875:21:107","parameters":{"id":74057,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74056,"indexed":false,"mutability":"mutable","name":"_newArbitrationFee","nameLocation":"905:18:107","nodeType":"VariableDeclaration","scope":74058,"src":"897:26:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74055,"name":"uint256","nodeType":"ElementaryTypeName","src":"897:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"896:28:107"}},{"id":74064,"nodeType":"EventDefinition","src":"930:65:107","nodes":[],"anonymous":false,"eventSelector":"2b87bb26d58aa2d56b59c2b23a53a6959f68d4547492bda44fb5e68b0fa38b3f","name":"SafeRegistered","nameLocation":"936:14:107","parameters":{"id":74063,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74060,"indexed":true,"mutability":"mutable","name":"_arbitrable","nameLocation":"967:11:107","nodeType":"VariableDeclaration","scope":74064,"src":"951:27:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74059,"name":"address","nodeType":"ElementaryTypeName","src":"951:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74062,"indexed":false,"mutability":"mutable","name":"_safe","nameLocation":"988:5:107","nodeType":"VariableDeclaration","scope":74064,"src":"980:13:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74061,"name":"address","nodeType":"ElementaryTypeName","src":"980:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"950:44:107"}},{"id":74068,"nodeType":"EventDefinition","src":"1000:57:107","nodes":[],"anonymous":false,"eventSelector":"c05490fc8f8e095831ea3823f005dd0661528380328aa5c3b7348a45244223be","name":"SafeArbitratorInitialized","nameLocation":"1006:25:107","parameters":{"id":74067,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74066,"indexed":false,"mutability":"mutable","name":"_arbitrationFee","nameLocation":"1040:15:107","nodeType":"VariableDeclaration","scope":74068,"src":"1032:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74065,"name":"uint256","nodeType":"ElementaryTypeName","src":"1032:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1031:25:107"}},{"id":74071,"nodeType":"EnumDefinition","src":"1063:144:107","nodes":[],"canonicalName":"SafeArbitrator.DisputeStatus","members":[{"id":74069,"name":"Waiting","nameLocation":"1092:7:107","nodeType":"EnumValue","src":"1092:7:107"},{"id":74070,"name":"Solved","nameLocation":"1166:6:107","nodeType":"EnumValue","src":"1166:6:107"}],"name":"DisputeStatus","nameLocation":"1068:13:107"},{"id":74086,"nodeType":"StructDefinition","src":"1213:509:107","nodes":[],"canonicalName":"SafeArbitrator.DisputeStruct","members":[{"constant":false,"id":74074,"mutability":"mutable","name":"arbitrated","nameLocation":"1256:10:107","nodeType":"VariableDeclaration","scope":74086,"src":"1244:22:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"},"typeName":{"id":74073,"nodeType":"UserDefinedTypeName","pathNode":{"id":74072,"name":"IArbitrable","nameLocations":["1244:11:107"],"nodeType":"IdentifierPath","referencedDeclaration":76845,"src":"1244:11:107"},"referencedDeclaration":76845,"src":"1244:11:107","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"}},"visibility":"internal"},{"constant":false,"id":74076,"mutability":"mutable","name":"arbitratorExtraData","nameLocation":"1325:19:107","nodeType":"VariableDeclaration","scope":74086,"src":"1319:25:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"},"typeName":{"id":74075,"name":"bytes","nodeType":"ElementaryTypeName","src":"1319:5:107","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":74078,"mutability":"mutable","name":"choices","nameLocation":"1396:7:107","nodeType":"VariableDeclaration","scope":74086,"src":"1388:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74077,"name":"uint256","nodeType":"ElementaryTypeName","src":"1388:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74080,"mutability":"mutable","name":"arbitrationFee","nameLocation":"1478:14:107","nodeType":"VariableDeclaration","scope":74086,"src":"1470:22:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74079,"name":"uint256","nodeType":"ElementaryTypeName","src":"1470:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74082,"mutability":"mutable","name":"ruling","nameLocation":"1608:6:107","nodeType":"VariableDeclaration","scope":74086,"src":"1600:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74081,"name":"uint256","nodeType":"ElementaryTypeName","src":"1600:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74085,"mutability":"mutable","name":"status","nameLocation":"1673:6:107","nodeType":"VariableDeclaration","scope":74086,"src":"1659:20:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$74071","typeString":"enum SafeArbitrator.DisputeStatus"},"typeName":{"id":74084,"nodeType":"UserDefinedTypeName","pathNode":{"id":74083,"name":"DisputeStatus","nameLocations":["1659:13:107"],"nodeType":"IdentifierPath","referencedDeclaration":74071,"src":"1659:13:107"},"referencedDeclaration":74071,"src":"1659:13:107","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$74071","typeString":"enum SafeArbitrator.DisputeStatus"}},"visibility":"internal"}],"name":"DisputeStruct","nameLocation":"1220:13:107","scope":74427,"visibility":"public"},{"id":74088,"nodeType":"VariableDeclaration","src":"1728:30:107","nodes":[],"constant":false,"mutability":"mutable","name":"arbitrationFee","nameLocation":"1744:14:107","scope":74427,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74087,"name":"uint256","nodeType":"ElementaryTypeName","src":"1728:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"private"},{"id":74092,"nodeType":"VariableDeclaration","src":"1852:31:107","nodes":[],"constant":false,"functionSelector":"564a565d","mutability":"mutable","name":"disputes","nameLocation":"1875:8:107","scope":74427,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_DisputeStruct_$74086_storage_$dyn_storage","typeString":"struct SafeArbitrator.DisputeStruct[]"},"typeName":{"baseType":{"id":74090,"nodeType":"UserDefinedTypeName","pathNode":{"id":74089,"name":"DisputeStruct","nameLocations":["1852:13:107"],"nodeType":"IdentifierPath","referencedDeclaration":74086,"src":"1852:13:107"},"referencedDeclaration":74086,"src":"1852:13:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct"}},"id":74091,"nodeType":"ArrayTypeName","src":"1852:15:107","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_DisputeStruct_$74086_storage_$dyn_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct[]"}},"visibility":"public"},{"id":74096,"nodeType":"VariableDeclaration","src":"1938:73:107","nodes":[],"constant":false,"functionSelector":"26a0754c","mutability":"mutable","name":"arbitrableTribunalSafe","nameLocation":"1989:22:107","scope":74427,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_address_$","typeString":"mapping(address => address)"},"typeName":{"id":74095,"keyName":"arbitrable","keyNameLocation":"1954:10:107","keyType":{"id":74093,"name":"address","nodeType":"ElementaryTypeName","src":"1946:7:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Mapping","src":"1938:43:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_address_$","typeString":"mapping(address => address)"},"valueName":"safe","valueNameLocation":"1976:4:107","valueType":{"id":74094,"name":"address","nodeType":"ElementaryTypeName","src":"1968:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},"visibility":"public"},{"id":74102,"nodeType":"ErrorDefinition","src":"2068:45:107","nodes":[],"errorSelector":"d0774c99","name":"OnlySafe","nameLocation":"2074:8:107","parameters":{"id":74101,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74098,"mutability":"mutable","name":"sender","nameLocation":"2091:6:107","nodeType":"VariableDeclaration","scope":74102,"src":"2083:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74097,"name":"address","nodeType":"ElementaryTypeName","src":"2083:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":74100,"mutability":"mutable","name":"safe","nameLocation":"2107:4:107","nodeType":"VariableDeclaration","scope":74102,"src":"2099:12:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74099,"name":"address","nodeType":"ElementaryTypeName","src":"2099:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2082:30:107"}},{"id":74104,"nodeType":"ErrorDefinition","src":"2118:33:107","nodes":[],"errorSelector":"e4216b31","name":"NotEnoughArbitrationFees","nameLocation":"2124:24:107","parameters":{"id":74103,"nodeType":"ParameterList","parameters":[],"src":"2148:2:107"}},{"id":74106,"nodeType":"ErrorDefinition","src":"2156:22:107","nodes":[],"errorSelector":"9efd4790","name":"InvalidRuling","nameLocation":"2162:13:107","parameters":{"id":74105,"nodeType":"ParameterList","parameters":[],"src":"2175:2:107"}},{"id":74108,"nodeType":"ErrorDefinition","src":"2183:29:107","nodes":[],"errorSelector":"bda17d95","name":"DisputeAlreadySolved","nameLocation":"2189:20:107","parameters":{"id":74107,"nodeType":"ParameterList","parameters":[],"src":"2209:2:107"}},{"id":74131,"nodeType":"ModifierDefinition","src":"2218:231:107","nodes":[],"body":{"id":74130,"nodeType":"Block","src":"2257:192:107","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":74117,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":74112,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"2271:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":74113,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2275:6:107","memberName":"sender","nodeType":"MemberAccess","src":"2271:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"baseExpression":{"id":74114,"name":"arbitrableTribunalSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74096,"src":"2285:22:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_address_$","typeString":"mapping(address => address)"}},"id":74116,"indexExpression":{"id":74115,"name":"_arbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74110,"src":"2308:11:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2285:35:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2271:49:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":{"id":74128,"nodeType":"Block","src":"2354:89:107","statements":[{"errorCall":{"arguments":[{"expression":{"id":74121,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"2384:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":74122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2388:6:107","memberName":"sender","nodeType":"MemberAccess","src":"2384:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"baseExpression":{"id":74123,"name":"arbitrableTribunalSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74096,"src":"2396:22:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_address_$","typeString":"mapping(address => address)"}},"id":74125,"indexExpression":{"id":74124,"name":"_arbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74110,"src":"2419:11:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2396:35:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":74120,"name":"OnlySafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74102,"src":"2375:8:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$_t_address_$_t_address_$returns$__$","typeString":"function (address,address) pure"}},"id":74126,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2375:57:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74127,"nodeType":"RevertStatement","src":"2368:64:107"}]},"id":74129,"nodeType":"IfStatement","src":"2267:176:107","trueBody":{"id":74119,"nodeType":"Block","src":"2322:26:107","statements":[{"id":74118,"nodeType":"PlaceholderStatement","src":"2336:1:107"}]}}]},"name":"onlySafe","nameLocation":"2227:8:107","parameters":{"id":74111,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74110,"mutability":"mutable","name":"_arbitrable","nameLocation":"2244:11:107","nodeType":"VariableDeclaration","scope":74131,"src":"2236:19:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74109,"name":"address","nodeType":"ElementaryTypeName","src":"2236:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2235:21:107"},"virtual":false,"visibility":"internal"},{"id":74158,"nodeType":"FunctionDefinition","src":"2508:246:107","nodes":[],"body":{"id":74157,"nodeType":"Block","src":"2588:166:107","nodes":[],"statements":[{"expression":{"arguments":[{"id":74143,"name":"_owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74135,"src":"2615:6:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":74140,"name":"super","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-25,"src":"2598:5:107","typeDescriptions":{"typeIdentifier":"t_type$_t_super$_SafeArbitrator_$74427_$","typeString":"type(contract super SafeArbitrator)"}},"id":74142,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2604:10:107","memberName":"initialize","nodeType":"MemberAccess","referencedDeclaration":71108,"src":"2598:16:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$returns$__$","typeString":"function (address)"}},"id":74144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2598:24:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74145,"nodeType":"ExpressionStatement","src":"2598:24:107"},{"expression":{"arguments":[],"expression":{"argumentTypes":[],"id":74146,"name":"__Ownable_init","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":52095,"src":"2632:14:107","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$__$returns$__$","typeString":"function ()"}},"id":74147,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2632:16:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74148,"nodeType":"ExpressionStatement","src":"2632:16:107"},{"expression":{"id":74151,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74149,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74088,"src":"2658:14:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74150,"name":"_arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74133,"src":"2675:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2658:32:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74152,"nodeType":"ExpressionStatement","src":"2658:32:107"},{"eventCall":{"arguments":[{"id":74154,"name":"_arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74133,"src":"2731:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":74153,"name":"SafeArbitratorInitialized","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74068,"src":"2705:25:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":74155,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2705:42:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74156,"nodeType":"EmitStatement","src":"2700:47:107"}]},"functionSelector":"da35a26f","implemented":true,"kind":"function","modifiers":[{"id":74138,"kind":"modifierInvocation","modifierName":{"id":74137,"name":"initializer","nameLocations":["2576:11:107"],"nodeType":"IdentifierPath","referencedDeclaration":52351,"src":"2576:11:107"},"nodeType":"ModifierInvocation","src":"2576:11:107"}],"name":"initialize","nameLocation":"2517:10:107","parameters":{"id":74136,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74133,"mutability":"mutable","name":"_arbitrationFee","nameLocation":"2536:15:107","nodeType":"VariableDeclaration","scope":74158,"src":"2528:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74132,"name":"uint256","nodeType":"ElementaryTypeName","src":"2528:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74135,"mutability":"mutable","name":"_owner","nameLocation":"2561:6:107","nodeType":"VariableDeclaration","scope":74158,"src":"2553:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74134,"name":"address","nodeType":"ElementaryTypeName","src":"2553:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"2527:41:107"},"returnParameters":{"id":74139,"nodeType":"ParameterList","parameters":[],"src":"2588:0:107"},"scope":74427,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":74175,"nodeType":"FunctionDefinition","src":"2892:173:107","nodes":[],"body":{"id":74174,"nodeType":"Block","src":"2963:102:107","nodes":[],"statements":[{"expression":{"id":74168,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74166,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74088,"src":"2973:14:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74167,"name":"_arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74161,"src":"2990:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2973:32:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74169,"nodeType":"ExpressionStatement","src":"2973:32:107"},{"eventCall":{"arguments":[{"id":74171,"name":"_arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74161,"src":"3042:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":74170,"name":"ArbitrationFeeUpdated","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74058,"src":"3020:21:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$returns$__$","typeString":"function (uint256)"}},"id":74172,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3020:38:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74173,"nodeType":"EmitStatement","src":"3015:43:107"}]},"documentation":{"id":74159,"nodeType":"StructuredDocumentation","src":"2760:127:107","text":"@dev Set the arbitration fee. Only callable by the owner.\n @param _arbitrationFee Amount to be paid for arbitration."},"functionSelector":"5ea7b4fc","implemented":true,"kind":"function","modifiers":[{"id":74164,"kind":"modifierInvocation","modifierName":{"id":74163,"name":"onlyOwner","nameLocations":["2953:9:107"],"nodeType":"IdentifierPath","referencedDeclaration":52114,"src":"2953:9:107"},"nodeType":"ModifierInvocation","src":"2953:9:107"}],"name":"setArbitrationFee","nameLocation":"2901:17:107","parameters":{"id":74162,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74161,"mutability":"mutable","name":"_arbitrationFee","nameLocation":"2927:15:107","nodeType":"VariableDeclaration","scope":74175,"src":"2919:23:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74160,"name":"uint256","nodeType":"ElementaryTypeName","src":"2919:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2918:25:107"},"returnParameters":{"id":74165,"nodeType":"ParameterList","parameters":[],"src":"2963:0:107"},"scope":74427,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":74194,"nodeType":"FunctionDefinition","src":"3071:153:107","nodes":[],"body":{"id":74193,"nodeType":"Block","src":"3117:107:107","nodes":[],"statements":[{"expression":{"id":74185,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":74180,"name":"arbitrableTribunalSafe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74096,"src":"3127:22:107","typeDescriptions":{"typeIdentifier":"t_mapping$_t_address_$_t_address_$","typeString":"mapping(address => address)"}},"id":74183,"indexExpression":{"expression":{"id":74181,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3150:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":74182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3154:6:107","memberName":"sender","nodeType":"MemberAccess","src":"3150:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"3127:34:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74184,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74177,"src":"3164:5:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"3127:42:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":74186,"nodeType":"ExpressionStatement","src":"3127:42:107"},{"eventCall":{"arguments":[{"expression":{"id":74188,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3199:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":74189,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3203:6:107","memberName":"sender","nodeType":"MemberAccess","src":"3199:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":74190,"name":"_safe","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74177,"src":"3211:5:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":74187,"name":"SafeRegistered","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74064,"src":"3184:14:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_address_$_t_address_$returns$__$","typeString":"function (address,address)"}},"id":74191,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3184:33:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74192,"nodeType":"EmitStatement","src":"3179:38:107"}]},"baseFunctions":[76948],"functionSelector":"88d5b732","implemented":true,"kind":"function","modifiers":[],"name":"registerSafe","nameLocation":"3080:12:107","parameters":{"id":74178,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74177,"mutability":"mutable","name":"_safe","nameLocation":"3101:5:107","nodeType":"VariableDeclaration","scope":74194,"src":"3093:13:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74176,"name":"address","nodeType":"ElementaryTypeName","src":"3093:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"3092:15:107"},"returnParameters":{"id":74179,"nodeType":"ParameterList","parameters":[],"src":"3117:0:107"},"scope":74427,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":74250,"nodeType":"FunctionDefinition","src":"3262:732:107","nodes":[],"body":{"id":74249,"nodeType":"Block","src":"3441:553:107","nodes":[],"statements":[{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":74212,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":74207,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3455:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":74208,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3459:5:107","memberName":"value","nodeType":"MemberAccess","src":"3455:9:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"arguments":[{"id":74210,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74199,"src":"3483:10:107","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}],"id":74209,"name":"arbitrationCost","nodeType":"Identifier","overloadedDeclarations":[74373,74390],"referencedDeclaration":74373,"src":"3467:15:107","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_bytes_calldata_ptr_$returns$_t_uint256_$","typeString":"function (bytes calldata) view returns (uint256)"}},"id":74211,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3467:27:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3455:39:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74217,"nodeType":"IfStatement","src":"3451:103:107","trueBody":{"id":74216,"nodeType":"Block","src":"3496:58:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":74213,"name":"NotEnoughArbitrationFees","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74104,"src":"3517:24:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":74214,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3517:26:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74215,"nodeType":"RevertStatement","src":"3510:33:107"}]}},{"expression":{"id":74221,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74218,"name":"disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74205,"src":"3563:9:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":74219,"name":"disputes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74092,"src":"3575:8:107","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_DisputeStruct_$74086_storage_$dyn_storage","typeString":"struct SafeArbitrator.DisputeStruct storage ref[] storage ref"}},"id":74220,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3584:6:107","memberName":"length","nodeType":"MemberAccess","src":"3575:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3563:27:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74222,"nodeType":"ExpressionStatement","src":"3563:27:107"},{"expression":{"arguments":[{"arguments":[{"arguments":[{"expression":{"id":74228,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3683:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":74229,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3687:6:107","memberName":"sender","nodeType":"MemberAccess","src":"3683:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74227,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76845,"src":"3671:11:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IArbitrable_$76845_$","typeString":"type(contract IArbitrable)"}},"id":74230,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3671:23:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"}},{"id":74231,"name":"_extraData","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74199,"src":"3733:10:107","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"}},{"id":74232,"name":"_choices","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74197,"src":"3770:8:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":74233,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3812:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":74234,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3816:5:107","memberName":"value","nodeType":"MemberAccess","src":"3812:9:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"hexValue":"30","id":74235,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3847:1:107","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},{"expression":{"id":74236,"name":"DisputeStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74071,"src":"3874:13:107","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_DisputeStatus_$74071_$","typeString":"type(enum SafeArbitrator.DisputeStatus)"}},"id":74237,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3888:7:107","memberName":"Waiting","nodeType":"MemberAccess","referencedDeclaration":74069,"src":"3874:21:107","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$74071","typeString":"enum SafeArbitrator.DisputeStatus"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"},{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes calldata"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},{"typeIdentifier":"t_enum$_DisputeStatus_$74071","typeString":"enum SafeArbitrator.DisputeStatus"}],"id":74226,"name":"DisputeStruct","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74086,"src":"3627:13:107","typeDescriptions":{"typeIdentifier":"t_type$_t_struct$_DisputeStruct_$74086_storage_ptr_$","typeString":"type(struct SafeArbitrator.DisputeStruct storage pointer)"}},"id":74238,"isConstant":false,"isLValue":false,"isPure":false,"kind":"structConstructorCall","lValueRequested":false,"nameLocations":["3659:10:107","3712:19:107","3761:7:107","3796:14:107","3839:6:107","3866:6:107"],"names":["arbitrated","arbitratorExtraData","choices","arbitrationFee","ruling","status"],"nodeType":"FunctionCall","src":"3627:283:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_memory_ptr","typeString":"struct SafeArbitrator.DisputeStruct memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_struct$_DisputeStruct_$74086_memory_ptr","typeString":"struct SafeArbitrator.DisputeStruct memory"}],"expression":{"id":74223,"name":"disputes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74092,"src":"3600:8:107","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_DisputeStruct_$74086_storage_$dyn_storage","typeString":"struct SafeArbitrator.DisputeStruct storage ref[] storage ref"}},"id":74225,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3609:4:107","memberName":"push","nodeType":"MemberAccess","src":"3600:13:107","typeDescriptions":{"typeIdentifier":"t_function_arraypush_nonpayable$_t_array$_t_struct$_DisputeStruct_$74086_storage_$dyn_storage_ptr_$_t_struct$_DisputeStruct_$74086_storage_$returns$__$attached_to$_t_array$_t_struct$_DisputeStruct_$74086_storage_$dyn_storage_ptr_$","typeString":"function (struct SafeArbitrator.DisputeStruct storage ref[] storage pointer,struct SafeArbitrator.DisputeStruct storage ref)"}},"id":74239,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3600:320:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74240,"nodeType":"ExpressionStatement","src":"3600:320:107"},{"eventCall":{"arguments":[{"id":74242,"name":"disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74205,"src":"3952:9:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"arguments":[{"expression":{"id":74244,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"3975:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":74245,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3979:6:107","memberName":"sender","nodeType":"MemberAccess","src":"3975:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74243,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76845,"src":"3963:11:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IArbitrable_$76845_$","typeString":"type(contract IArbitrable)"}},"id":74246,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3963:23:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"}],"id":74241,"name":"DisputeCreation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76858,"src":"3936:15:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_uint256_$_t_contract$_IArbitrable_$76845_$returns$__$","typeString":"function (uint256,contract IArbitrable)"}},"id":74247,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3936:51:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74248,"nodeType":"EmitStatement","src":"3931:56:107"}]},"baseFunctions":[76896],"documentation":{"id":74195,"nodeType":"StructuredDocumentation","src":"3230:27:107","text":"@inheritdoc IArbitrator"},"functionSelector":"c13517e1","implemented":true,"kind":"function","modifiers":[{"id":74203,"kind":"modifierInvocation","modifierName":{"id":74202,"name":"nonReentrant","nameLocations":["3388:12:107"],"nodeType":"IdentifierPath","referencedDeclaration":52494,"src":"3388:12:107"},"nodeType":"ModifierInvocation","src":"3388:12:107"}],"name":"createDispute","nameLocation":"3271:13:107","overrides":{"id":74201,"nodeType":"OverrideSpecifier","overrides":[],"src":"3371:8:107"},"parameters":{"id":74200,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74197,"mutability":"mutable","name":"_choices","nameLocation":"3293:8:107","nodeType":"VariableDeclaration","scope":74250,"src":"3285:16:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74196,"name":"uint256","nodeType":"ElementaryTypeName","src":"3285:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74199,"mutability":"mutable","name":"_extraData","nameLocation":"3318:10:107","nodeType":"VariableDeclaration","scope":74250,"src":"3303:25:107","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":74198,"name":"bytes","nodeType":"ElementaryTypeName","src":"3303:5:107","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"3284:45:107"},"returnParameters":{"id":74206,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74205,"mutability":"mutable","name":"disputeID","nameLocation":"3426:9:107","nodeType":"VariableDeclaration","scope":74250,"src":"3418:17:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74204,"name":"uint256","nodeType":"ElementaryTypeName","src":"3418:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3417:19:107"},"scope":74427,"stateMutability":"payable","virtual":false,"visibility":"external"},{"id":74271,"nodeType":"FunctionDefinition","src":"4032:241:107","nodes":[],"body":{"id":74270,"nodeType":"Block","src":"4233:40:107","nodes":[],"statements":[{"expression":{"arguments":[{"hexValue":"4e6f7420737570706f72746564","id":74267,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4250:15:107","typeDescriptions":{"typeIdentifier":"t_stringliteral_e5b7c22b986abeee436d3f29779441c97ce367faa95f4de1bae94ece3817df25","typeString":"literal_string \"Not supported\""},"value":"Not supported"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e5b7c22b986abeee436d3f29779441c97ce367faa95f4de1bae94ece3817df25","typeString":"literal_string \"Not supported\""}],"id":74266,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"4243:6:107","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":74268,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4243:23:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74269,"nodeType":"ExpressionStatement","src":"4243:23:107"}]},"baseFunctions":[76911],"documentation":{"id":74251,"nodeType":"StructuredDocumentation","src":"4000:27:107","text":"@inheritdoc IArbitrator"},"functionSelector":"f6506db4","implemented":true,"kind":"function","modifiers":[],"name":"createDispute","nameLocation":"4041:13:107","overrides":{"id":74262,"nodeType":"OverrideSpecifier","overrides":[],"src":"4206:8:107"},"parameters":{"id":74261,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74253,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74271,"src":"4064:7:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74252,"name":"uint256","nodeType":"ElementaryTypeName","src":"4064:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74255,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74271,"src":"4094:14:107","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":74254,"name":"bytes","nodeType":"ElementaryTypeName","src":"4094:5:107","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":74258,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74271,"src":"4133:6:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":74257,"nodeType":"UserDefinedTypeName","pathNode":{"id":74256,"name":"IERC20","nameLocations":["4133:6:107"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"4133:6:107"},"referencedDeclaration":55825,"src":"4133:6:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":74260,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74271,"src":"4163:7:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74259,"name":"uint256","nodeType":"ElementaryTypeName","src":"4163:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4054:137:107"},"returnParameters":{"id":74265,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74264,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74271,"src":"4224:7:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74263,"name":"uint256","nodeType":"ElementaryTypeName","src":"4224:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"4223:9:107"},"scope":74427,"stateMutability":"pure","virtual":false,"visibility":"external"},{"id":74361,"nodeType":"FunctionDefinition","src":"4566:720:107","nodes":[],"body":{"id":74360,"nodeType":"Block","src":"4678:608:107","nodes":[],"statements":[{"assignments":[74286],"declarations":[{"constant":false,"id":74286,"mutability":"mutable","name":"dispute","nameLocation":"4710:7:107","nodeType":"VariableDeclaration","scope":74360,"src":"4688:29:107","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct"},"typeName":{"id":74285,"nodeType":"UserDefinedTypeName","pathNode":{"id":74284,"name":"DisputeStruct","nameLocations":["4688:13:107"],"nodeType":"IdentifierPath","referencedDeclaration":74086,"src":"4688:13:107"},"referencedDeclaration":74086,"src":"4688:13:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct"}},"visibility":"internal"}],"id":74290,"initialValue":{"baseExpression":{"id":74287,"name":"disputes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74092,"src":"4720:8:107","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_DisputeStruct_$74086_storage_$dyn_storage","typeString":"struct SafeArbitrator.DisputeStruct storage ref[] storage ref"}},"id":74289,"indexExpression":{"id":74288,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74274,"src":"4729:10:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"4720:20:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage","typeString":"struct SafeArbitrator.DisputeStruct storage ref"}},"nodeType":"VariableDeclarationStatement","src":"4688:52:107"},{"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":74294,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":74291,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74276,"src":"4755:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"expression":{"id":74292,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74286,"src":"4765:7:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":74293,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4773:7:107","memberName":"choices","nodeType":"MemberAccess","referencedDeclaration":74078,"src":"4765:15:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4755:25:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74299,"nodeType":"IfStatement","src":"4751:78:107","trueBody":{"id":74298,"nodeType":"Block","src":"4782:47:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":74295,"name":"InvalidRuling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74106,"src":"4803:13:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":74296,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4803:15:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74297,"nodeType":"RevertStatement","src":"4796:22:107"}]}},{"condition":{"commonType":{"typeIdentifier":"t_enum$_DisputeStatus_$74071","typeString":"enum SafeArbitrator.DisputeStatus"},"id":74304,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":74300,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74286,"src":"4842:7:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":74301,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"4850:6:107","memberName":"status","nodeType":"MemberAccess","referencedDeclaration":74085,"src":"4842:14:107","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$74071","typeString":"enum SafeArbitrator.DisputeStatus"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"expression":{"id":74302,"name":"DisputeStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74071,"src":"4860:13:107","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_DisputeStatus_$74071_$","typeString":"type(enum SafeArbitrator.DisputeStatus)"}},"id":74303,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4874:6:107","memberName":"Solved","nodeType":"MemberAccess","referencedDeclaration":74070,"src":"4860:20:107","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$74071","typeString":"enum SafeArbitrator.DisputeStatus"}},"src":"4842:38:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74309,"nodeType":"IfStatement","src":"4838:98:107","trueBody":{"id":74308,"nodeType":"Block","src":"4882:54:107","statements":[{"errorCall":{"arguments":[],"expression":{"argumentTypes":[],"id":74305,"name":"DisputeAlreadySolved","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74108,"src":"4903:20:107","typeDescriptions":{"typeIdentifier":"t_function_error_pure$__$returns$__$","typeString":"function () pure"}},"id":74306,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4903:22:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74307,"nodeType":"RevertStatement","src":"4896:29:107"}]}},{"expression":{"id":74314,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":74310,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74286,"src":"4946:7:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":74312,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4954:6:107","memberName":"ruling","nodeType":"MemberAccess","referencedDeclaration":74082,"src":"4946:14:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"id":74313,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74276,"src":"4963:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4946:24:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74315,"nodeType":"ExpressionStatement","src":"4946:24:107"},{"expression":{"id":74321,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"expression":{"id":74316,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74286,"src":"4980:7:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":74318,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"memberLocation":"4988:6:107","memberName":"status","nodeType":"MemberAccess","referencedDeclaration":74085,"src":"4980:14:107","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$74071","typeString":"enum SafeArbitrator.DisputeStatus"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":74319,"name":"DisputeStatus","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74071,"src":"4997:13:107","typeDescriptions":{"typeIdentifier":"t_type$_t_enum$_DisputeStatus_$74071_$","typeString":"type(enum SafeArbitrator.DisputeStatus)"}},"id":74320,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5011:6:107","memberName":"Solved","nodeType":"MemberAccess","referencedDeclaration":74070,"src":"4997:20:107","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$74071","typeString":"enum SafeArbitrator.DisputeStatus"}},"src":"4980:37:107","typeDescriptions":{"typeIdentifier":"t_enum$_DisputeStatus_$74071","typeString":"enum SafeArbitrator.DisputeStatus"}},"id":74322,"nodeType":"ExpressionStatement","src":"4980:37:107"},{"assignments":[74324,null],"declarations":[{"constant":false,"id":74324,"mutability":"mutable","name":"success","nameLocation":"5034:7:107","nodeType":"VariableDeclaration","scope":74360,"src":"5029:12:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74323,"name":"bool","nodeType":"ElementaryTypeName","src":"5029:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},null],"id":74336,"initialValue":{"arguments":[{"hexValue":"","id":74334,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5102:2:107","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""}],"expression":{"arguments":[{"expression":{"id":74327,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-15,"src":"5054:3:107","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":74328,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5058:6:107","memberName":"sender","nodeType":"MemberAccess","src":"5054:10:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74326,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5046:8:107","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":74325,"name":"address","nodeType":"ElementaryTypeName","src":"5046:8:107","stateMutability":"payable","typeDescriptions":{}}},"id":74329,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5046:19:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"id":74330,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5066:4:107","memberName":"call","nodeType":"MemberAccess","src":"5046:24:107","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":74333,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"names":["value"],"nodeType":"FunctionCallOptions","options":[{"expression":{"id":74331,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74286,"src":"5078:7:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":74332,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5086:14:107","memberName":"arbitrationFee","nodeType":"MemberAccess","referencedDeclaration":74080,"src":"5078:22:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"src":"5046:55:107","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$value","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":74335,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5046:59:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"5028:77:107"},{"expression":{"arguments":[{"id":74338,"name":"success","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74324,"src":"5123:7:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5472616e73666572206661696c6564","id":74339,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5132:17:107","typeDescriptions":{"typeIdentifier":"t_stringliteral_25adaa6d082ce15f901e0d8a3d393e7462ef9edf2e6bc8321fa14d1615b6fc51","typeString":"literal_string \"Transfer failed\""},"value":"Transfer failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_25adaa6d082ce15f901e0d8a3d393e7462ef9edf2e6bc8321fa14d1615b6fc51","typeString":"literal_string \"Transfer failed\""}],"id":74337,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5115:7:107","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":74340,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5115:35:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74341,"nodeType":"ExpressionStatement","src":"5115:35:107"},{"expression":{"arguments":[{"id":74347,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74274,"src":"5184:10:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"expression":{"id":74348,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74286,"src":"5196:7:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":74349,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5204:6:107","memberName":"ruling","nodeType":"MemberAccess","referencedDeclaration":74082,"src":"5196:14:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"expression":{"id":74342,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74286,"src":"5160:7:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":74345,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5168:10:107","memberName":"arbitrated","nodeType":"MemberAccess","referencedDeclaration":74074,"src":"5160:18:107","typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"}},"id":74346,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5179:4:107","memberName":"rule","nodeType":"MemberAccess","referencedDeclaration":76844,"src":"5160:23:107","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (uint256,uint256) external"}},"id":74350,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5160:51:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74351,"nodeType":"ExpressionStatement","src":"5160:51:107"},{"eventCall":{"arguments":[{"arguments":[{"id":74354,"name":"_arbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74278,"src":"5245:11:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":74353,"name":"IArbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76845,"src":"5233:11:107","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_IArbitrable_$76845_$","typeString":"type(contract IArbitrable)"}},"id":74355,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5233:24:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"}},{"id":74356,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74274,"src":"5259:10:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":74357,"name":"_ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74276,"src":"5271:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IArbitrable_$76845","typeString":"contract IArbitrable"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":74352,"name":"Ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":76868,"src":"5226:6:107","typeDescriptions":{"typeIdentifier":"t_function_event_nonpayable$_t_contract$_IArbitrable_$76845_$_t_uint256_$_t_uint256_$returns$__$","typeString":"function (contract IArbitrable,uint256,uint256)"}},"id":74358,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5226:53:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74359,"nodeType":"EmitStatement","src":"5221:58:107"}]},"documentation":{"id":74272,"nodeType":"StructuredDocumentation","src":"4279:282:107","text":"@dev Give a ruling to a dispute.\n @param _disputeID ID of the dispute to rule.\n @param _ruling Ruling given by the arbitrator. Note that 0 means that arbitrator chose \"Refused to rule\".\n @param _arbitrable Address of the arbitrable that the safe rules for\"."},"functionSelector":"7a1d3756","implemented":true,"kind":"function","modifiers":[{"arguments":[{"id":74281,"name":"_arbitrable","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74278,"src":"4665:11:107","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"id":74282,"kind":"modifierInvocation","modifierName":{"id":74280,"name":"onlySafe","nameLocations":["4656:8:107"],"nodeType":"IdentifierPath","referencedDeclaration":74131,"src":"4656:8:107"},"nodeType":"ModifierInvocation","src":"4656:21:107"}],"name":"executeRuling","nameLocation":"4575:13:107","parameters":{"id":74279,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74274,"mutability":"mutable","name":"_disputeID","nameLocation":"4597:10:107","nodeType":"VariableDeclaration","scope":74361,"src":"4589:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74273,"name":"uint256","nodeType":"ElementaryTypeName","src":"4589:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74276,"mutability":"mutable","name":"_ruling","nameLocation":"4617:7:107","nodeType":"VariableDeclaration","scope":74361,"src":"4609:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74275,"name":"uint256","nodeType":"ElementaryTypeName","src":"4609:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74278,"mutability":"mutable","name":"_arbitrable","nameLocation":"4634:11:107","nodeType":"VariableDeclaration","scope":74361,"src":"4626:19:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":74277,"name":"address","nodeType":"ElementaryTypeName","src":"4626:7:107","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"4588:58:107"},"returnParameters":{"id":74283,"nodeType":"ParameterList","parameters":[],"src":"4678:0:107"},"scope":74427,"stateMutability":"nonpayable","virtual":false,"visibility":"external"},{"id":74373,"nodeType":"FunctionDefinition","src":"5324:138:107","nodes":[],"body":{"id":74372,"nodeType":"Block","src":"5424:38:107","nodes":[],"statements":[{"expression":{"id":74370,"name":"arbitrationFee","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74088,"src":"5441:14:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"functionReturnParameters":74369,"id":74371,"nodeType":"Return","src":"5434:21:107"}]},"baseFunctions":[76919],"documentation":{"id":74362,"nodeType":"StructuredDocumentation","src":"5292:27:107","text":"@inheritdoc IArbitrator"},"functionSelector":"f7434ea9","implemented":true,"kind":"function","modifiers":[],"name":"arbitrationCost","nameLocation":"5333:15:107","overrides":{"id":74366,"nodeType":"OverrideSpecifier","overrides":[],"src":"5393:8:107"},"parameters":{"id":74365,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74364,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74373,"src":"5349:14:107","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":74363,"name":"bytes","nodeType":"ElementaryTypeName","src":"5349:5:107","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"5348:32:107"},"returnParameters":{"id":74369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74368,"mutability":"mutable","name":"fee","nameLocation":"5419:3:107","nodeType":"VariableDeclaration","scope":74373,"src":"5411:11:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74367,"name":"uint256","nodeType":"ElementaryTypeName","src":"5411:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5410:13:107"},"scope":74427,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":74390,"nodeType":"FunctionDefinition","src":"5500:204:107","nodes":[],"body":{"id":74389,"nodeType":"Block","src":"5664:40:107","nodes":[],"statements":[{"expression":{"arguments":[{"hexValue":"4e6f7420737570706f72746564","id":74386,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5681:15:107","typeDescriptions":{"typeIdentifier":"t_stringliteral_e5b7c22b986abeee436d3f29779441c97ce367faa95f4de1bae94ece3817df25","typeString":"literal_string \"Not supported\""},"value":"Not supported"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_e5b7c22b986abeee436d3f29779441c97ce367faa95f4de1bae94ece3817df25","typeString":"literal_string \"Not supported\""}],"id":74385,"name":"revert","nodeType":"Identifier","overloadedDeclarations":[-19,-19],"referencedDeclaration":-19,"src":"5674:6:107","typeDescriptions":{"typeIdentifier":"t_function_revert_pure$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) pure"}},"id":74387,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5674:23:107","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":74388,"nodeType":"ExpressionStatement","src":"5674:23:107"}]},"baseFunctions":[76930],"documentation":{"id":74374,"nodeType":"StructuredDocumentation","src":"5468:27:107","text":"@inheritdoc IArbitrator"},"functionSelector":"d98493f6","implemented":true,"kind":"function","modifiers":[],"name":"arbitrationCost","nameLocation":"5509:15:107","overrides":{"id":74381,"nodeType":"OverrideSpecifier","overrides":[],"src":"5615:8:107"},"parameters":{"id":74380,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74376,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74390,"src":"5525:14:107","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":74375,"name":"bytes","nodeType":"ElementaryTypeName","src":"5525:5:107","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":74379,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74390,"src":"5556:6:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":74378,"nodeType":"UserDefinedTypeName","pathNode":{"id":74377,"name":"IERC20","nameLocations":["5556:6:107"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"5556:6:107"},"referencedDeclaration":55825,"src":"5556:6:107","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"}],"src":"5524:54:107"},"returnParameters":{"id":74384,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74383,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":74390,"src":"5641:7:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74382,"name":"uint256","nodeType":"ElementaryTypeName","src":"5641:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5640:19:107"},"scope":74427,"stateMutability":"pure","virtual":false,"visibility":"public"},{"id":74422,"nodeType":"FunctionDefinition","src":"5710:260:107","nodes":[],"body":{"id":74421,"nodeType":"Block","src":"5818:152:107","nodes":[],"statements":[{"assignments":[74403],"declarations":[{"constant":false,"id":74403,"mutability":"mutable","name":"dispute","nameLocation":"5850:7:107","nodeType":"VariableDeclaration","scope":74421,"src":"5828:29:107","stateVariable":false,"storageLocation":"storage","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct"},"typeName":{"id":74402,"nodeType":"UserDefinedTypeName","pathNode":{"id":74401,"name":"DisputeStruct","nameLocations":["5828:13:107"],"nodeType":"IdentifierPath","referencedDeclaration":74086,"src":"5828:13:107"},"referencedDeclaration":74086,"src":"5828:13:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct"}},"visibility":"internal"}],"id":74407,"initialValue":{"baseExpression":{"id":74404,"name":"disputes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74092,"src":"5860:8:107","typeDescriptions":{"typeIdentifier":"t_array$_t_struct$_DisputeStruct_$74086_storage_$dyn_storage","typeString":"struct SafeArbitrator.DisputeStruct storage ref[] storage ref"}},"id":74406,"indexExpression":{"id":74405,"name":"_disputeID","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74392,"src":"5869:10:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5860:20:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage","typeString":"struct SafeArbitrator.DisputeStruct storage ref"}},"nodeType":"VariableDeclarationStatement","src":"5828:52:107"},{"expression":{"id":74411,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74408,"name":"ruling","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74395,"src":"5890:6:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"expression":{"id":74409,"name":"dispute","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74403,"src":"5899:7:107","typeDescriptions":{"typeIdentifier":"t_struct$_DisputeStruct_$74086_storage_ptr","typeString":"struct SafeArbitrator.DisputeStruct storage pointer"}},"id":74410,"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"memberLocation":"5907:6:107","memberName":"ruling","nodeType":"MemberAccess","referencedDeclaration":74082,"src":"5899:14:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5890:23:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74412,"nodeType":"ExpressionStatement","src":"5890:23:107"},{"expression":{"id":74415,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74413,"name":"tied","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74397,"src":"5923:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":74414,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5930:5:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"5923:12:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74416,"nodeType":"ExpressionStatement","src":"5923:12:107"},{"expression":{"id":74419,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":74417,"name":"overridden","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":74399,"src":"5945:10:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"66616c7365","id":74418,"isConstant":false,"isLValue":false,"isPure":true,"kind":"bool","lValueRequested":false,"nodeType":"Literal","src":"5958:5:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"value":"false"},"src":"5945:18:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":74420,"nodeType":"ExpressionStatement","src":"5945:18:107"}]},"baseFunctions":[76942],"functionSelector":"1c3db16d","implemented":true,"kind":"function","modifiers":[],"name":"currentRuling","nameLocation":"5719:13:107","parameters":{"id":74393,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74392,"mutability":"mutable","name":"_disputeID","nameLocation":"5741:10:107","nodeType":"VariableDeclaration","scope":74422,"src":"5733:18:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74391,"name":"uint256","nodeType":"ElementaryTypeName","src":"5733:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"5732:20:107"},"returnParameters":{"id":74400,"nodeType":"ParameterList","parameters":[{"constant":false,"id":74395,"mutability":"mutable","name":"ruling","nameLocation":"5782:6:107","nodeType":"VariableDeclaration","scope":74422,"src":"5774:14:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":74394,"name":"uint256","nodeType":"ElementaryTypeName","src":"5774:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":74397,"mutability":"mutable","name":"tied","nameLocation":"5795:4:107","nodeType":"VariableDeclaration","scope":74422,"src":"5790:9:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74396,"name":"bool","nodeType":"ElementaryTypeName","src":"5790:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":74399,"mutability":"mutable","name":"overridden","nameLocation":"5806:10:107","nodeType":"VariableDeclaration","scope":74422,"src":"5801:15:107","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":74398,"name":"bool","nodeType":"ElementaryTypeName","src":"5801:4:107","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"5773:44:107"},"scope":74427,"stateMutability":"view","virtual":false,"visibility":"public"},{"id":74426,"nodeType":"VariableDeclaration","src":"5976:25:107","nodes":[],"constant":false,"mutability":"mutable","name":"__gap","nameLocation":"5996:5:107","scope":74427,"stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage","typeString":"uint256[50]"},"typeName":{"baseType":{"id":74423,"name":"uint256","nodeType":"ElementaryTypeName","src":"5976:7:107","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":74425,"length":{"hexValue":"3530","id":74424,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5984:2:107","typeDescriptions":{"typeIdentifier":"t_rational_50_by_1","typeString":"int_const 50"},"value":"50"},"nodeType":"ArrayTypeName","src":"5976:11:107","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$50_storage_ptr","typeString":"uint256[50]"}},"visibility":"private"}],"abstract":false,"baseContracts":[{"baseName":{"id":74049,"name":"IArbitrator","nameLocations":["801:11:107"],"nodeType":"IdentifierPath","referencedDeclaration":76949,"src":"801:11:107"},"id":74050,"nodeType":"InheritanceSpecifier","src":"801:11:107"},{"baseName":{"id":74051,"name":"ProxyOwnableUpgrader","nameLocations":["814:20:107"],"nodeType":"IdentifierPath","referencedDeclaration":71181,"src":"814:20:107"},"id":74052,"nodeType":"InheritanceSpecifier","src":"814:20:107"},{"baseName":{"id":74053,"name":"ReentrancyGuardUpgradeable","nameLocations":["836:26:107"],"nodeType":"IdentifierPath","referencedDeclaration":52534,"src":"836:26:107"},"id":74054,"nodeType":"InheritanceSpecifier","src":"836:26:107"}],"canonicalName":"SafeArbitrator","contractDependencies":[],"contractKind":"contract","documentation":{"id":74048,"nodeType":"StructuredDocumentation","src":"645:129:107","text":"@title Safe Arbitrator\n @dev This is an arbitrator middleware that will allow a safe to decide on the result of disputes."},"fullyImplemented":true,"linearizedBaseContracts":[74427,52534,71181,54969,54622,54271,54281,52200,52993,52449,76949],"name":"SafeArbitrator","nameLocation":"783:14:107","scope":74428,"usedErrors":[71096,74102,74104,74106,74108]}],"license":"MIT"},"id":107} \ No newline at end of file diff --git a/pkg/contracts/out/SafeERC20.sol/SafeERC20.json b/pkg/contracts/out/SafeERC20.sol/SafeERC20.json index 7d42a1ce3..c18f459a6 100644 --- a/pkg/contracts/out/SafeERC20.sol/SafeERC20.json +++ b/pkg/contracts/out/SafeERC20.sol/SafeERC20.json @@ -1 +1 @@ -{"abi":[],"bytecode":{"object":"0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122066e44ce467e5c1406f78b640a38c2ce4b1103349bc8cf155d392dddc9941c02264736f6c63430008130033","sourceMap":"701:6211:37:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;701:6211:37;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x73000000000000000000000000000000000000000030146080604052600080fdfea264697066735822122066e44ce467e5c1406f78b640a38c2ce4b1103349bc8cf155d392dddc9941c02264736f6c63430008130033","sourceMap":"701:6211:37:-:0;;;;;;;;","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Wrappers around ERC20 operations that throw on failure (when the token contract returns false). Tokens that return no value (and instead revert or throw on failure) are also supported, non-reverting calls are assumed to be successful. To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract, which allows you to call the safe operations as `token.safeTransfer(...)`, etc.\",\"kind\":\"dev\",\"methods\":{},\"title\":\"SafeERC20\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":\"SafeERC20\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/token/ERC20/IERC20.sol\":{\"keccak256\":\"0x287b55befed2961a7eabd7d7b1b2839cbca8a5b80ef8dcbb25ed3d4c2002c305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd39944e8fc06be6dbe2dd1d8449b5336e23c6a7ba3e8e9ae5ae0f37f35283f5\",\"dweb:/ipfs/QmPV3FGYjVwvKSgAXKUN3r9T9GwniZz83CxBpM7vyj2G53\"]},\"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\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":"SafeERC20"},"evmVersion":"paris","libraries":{}},"sources":{"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/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"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","id":17836,"exportedSymbols":{"Address":[18165],"IERC20":[17398],"IERC20Permit":[17459],"SafeERC20":[17835]},"nodeType":"SourceUnit","src":"115:6798:37","nodes":[{"id":17461,"nodeType":"PragmaDirective","src":"115:23:37","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":17462,"nodeType":"ImportDirective","src":"140:23:37","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"../IERC20.sol","nameLocation":"-1:-1:-1","scope":17836,"sourceUnit":17399,"symbolAliases":[],"unitAlias":""},{"id":17463,"nodeType":"ImportDirective","src":"164:40:37","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol","file":"../extensions/IERC20Permit.sol","nameLocation":"-1:-1:-1","scope":17836,"sourceUnit":17460,"symbolAliases":[],"unitAlias":""},{"id":17464,"nodeType":"ImportDirective","src":"205:36:37","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/Address.sol","file":"../../../utils/Address.sol","nameLocation":"-1:-1:-1","scope":17836,"sourceUnit":18166,"symbolAliases":[],"unitAlias":""},{"id":17835,"nodeType":"ContractDefinition","src":"701:6211:37","nodes":[{"id":17468,"nodeType":"UsingForDirective","src":"725:26:37","nodes":[],"global":false,"libraryName":{"id":17466,"name":"Address","nameLocations":["731:7:37"],"nodeType":"IdentifierPath","referencedDeclaration":18165,"src":"731:7:37"},"typeName":{"id":17467,"name":"address","nodeType":"ElementaryTypeName","src":"743:7:37","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":17492,"nodeType":"FunctionDefinition","src":"941:175:37","nodes":[],"body":{"id":17491,"nodeType":"Block","src":"1013:103:37","nodes":[],"statements":[{"expression":{"arguments":[{"id":17480,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17472,"src":"1043:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},{"arguments":[{"expression":{"expression":{"id":17483,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17472,"src":"1073:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":17484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1079:8:37","memberName":"transfer","nodeType":"MemberAccess","referencedDeclaration":17365,"src":"1073:14:37","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) external returns (bool)"}},"id":17485,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1088:8:37","memberName":"selector","nodeType":"MemberAccess","src":"1073:23:37","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":17486,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17474,"src":"1098:2:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17487,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17476,"src":"1102:5:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":17481,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1050:3:37","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":17482,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1054:18:37","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"1050:22:37","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":17488,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1050:58:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":17479,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17786,"src":"1023:19:37","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":17489,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1023:86:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17490,"nodeType":"ExpressionStatement","src":"1023:86:37"}]},"documentation":{"id":17469,"nodeType":"StructuredDocumentation","src":"757:179:37","text":" @dev Transfer `value` amount of `token` from the calling contract to `to`. If `token` returns no value,\n non-reverting calls are assumed to be successful."},"implemented":true,"kind":"function","modifiers":[],"name":"safeTransfer","nameLocation":"950:12:37","parameters":{"id":17477,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17472,"mutability":"mutable","name":"token","nameLocation":"970:5:37","nodeType":"VariableDeclaration","scope":17492,"src":"963:12:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},"typeName":{"id":17471,"nodeType":"UserDefinedTypeName","pathNode":{"id":17470,"name":"IERC20","nameLocations":["963:6:37"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"963:6:37"},"referencedDeclaration":17398,"src":"963:6:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":17474,"mutability":"mutable","name":"to","nameLocation":"985:2:37","nodeType":"VariableDeclaration","scope":17492,"src":"977:10:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17473,"name":"address","nodeType":"ElementaryTypeName","src":"977:7:37","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17476,"mutability":"mutable","name":"value","nameLocation":"997:5:37","nodeType":"VariableDeclaration","scope":17492,"src":"989:13:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17475,"name":"uint256","nodeType":"ElementaryTypeName","src":"989:7:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"962:41:37"},"returnParameters":{"id":17478,"nodeType":"ParameterList","parameters":[],"src":"1013:0:37"},"scope":17835,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":17519,"nodeType":"FunctionDefinition","src":"1355:203:37","nodes":[],"body":{"id":17518,"nodeType":"Block","src":"1445:113:37","nodes":[],"statements":[{"expression":{"arguments":[{"id":17506,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17496,"src":"1475:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},{"arguments":[{"expression":{"expression":{"id":17509,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17496,"src":"1505:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":17510,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1511:12:37","memberName":"transferFrom","nodeType":"MemberAccess","referencedDeclaration":17397,"src":"1505:18:37","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,address,uint256) external returns (bool)"}},"id":17511,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1524:8:37","memberName":"selector","nodeType":"MemberAccess","src":"1505:27:37","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":17512,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17498,"src":"1534:4:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17513,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17500,"src":"1540:2:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17514,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17502,"src":"1544:5:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":17507,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1482:3:37","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":17508,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1486:18:37","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"1482:22:37","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":17515,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1482:68:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":17505,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17786,"src":"1455:19:37","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":17516,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1455:96:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17517,"nodeType":"ExpressionStatement","src":"1455:96:37"}]},"documentation":{"id":17493,"nodeType":"StructuredDocumentation","src":"1122:228:37","text":" @dev Transfer `value` amount of `token` from `from` to `to`, spending the approval given by `from` to the\n calling contract. If `token` returns no value, non-reverting calls are assumed to be successful."},"implemented":true,"kind":"function","modifiers":[],"name":"safeTransferFrom","nameLocation":"1364:16:37","parameters":{"id":17503,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17496,"mutability":"mutable","name":"token","nameLocation":"1388:5:37","nodeType":"VariableDeclaration","scope":17519,"src":"1381:12:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},"typeName":{"id":17495,"nodeType":"UserDefinedTypeName","pathNode":{"id":17494,"name":"IERC20","nameLocations":["1381:6:37"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"1381:6:37"},"referencedDeclaration":17398,"src":"1381:6:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":17498,"mutability":"mutable","name":"from","nameLocation":"1403:4:37","nodeType":"VariableDeclaration","scope":17519,"src":"1395:12:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17497,"name":"address","nodeType":"ElementaryTypeName","src":"1395:7:37","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17500,"mutability":"mutable","name":"to","nameLocation":"1417:2:37","nodeType":"VariableDeclaration","scope":17519,"src":"1409:10:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17499,"name":"address","nodeType":"ElementaryTypeName","src":"1409:7:37","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17502,"mutability":"mutable","name":"value","nameLocation":"1429:5:37","nodeType":"VariableDeclaration","scope":17519,"src":"1421:13:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17501,"name":"uint256","nodeType":"ElementaryTypeName","src":"1421:7:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1380:55:37"},"returnParameters":{"id":17504,"nodeType":"ParameterList","parameters":[],"src":"1445:0:37"},"scope":17835,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":17563,"nodeType":"FunctionDefinition","src":"1818:573:37","nodes":[],"body":{"id":17562,"nodeType":"Block","src":"1894:497:37","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":17546,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17533,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17531,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17527,"src":"2143:5:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":17532,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2152:1:37","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2143:10:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":17534,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"2142:12:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17544,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"id":17539,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"2183:4:37","typeDescriptions":{"typeIdentifier":"t_contract$_SafeERC20_$17835","typeString":"library SafeERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_SafeERC20_$17835","typeString":"library SafeERC20"}],"id":17538,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2175:7:37","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17537,"name":"address","nodeType":"ElementaryTypeName","src":"2175:7:37","typeDescriptions":{}}},"id":17540,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2175:13:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17541,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17525,"src":"2190:7:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":17535,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17523,"src":"2159:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":17536,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2165:9:37","memberName":"allowance","nodeType":"MemberAccess","referencedDeclaration":17375,"src":"2159:15:37","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":17542,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2159:39:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":17543,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2202:1:37","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2159:44:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":17545,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"2158:46:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2142:62:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e6365","id":17547,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2218:56:37","typeDescriptions":{"typeIdentifier":"t_stringliteral_ef945ddb1bfdc0da870feb4560d868b047642b4ac7f2fb7f8b7c51cb4a411e25","typeString":"literal_string \"SafeERC20: approve from non-zero to non-zero allowance\""},"value":"SafeERC20: approve from non-zero to non-zero allowance"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_ef945ddb1bfdc0da870feb4560d868b047642b4ac7f2fb7f8b7c51cb4a411e25","typeString":"literal_string \"SafeERC20: approve from non-zero to non-zero allowance\""}],"id":17530,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"2121:7:37","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17548,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2121:163:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17549,"nodeType":"ExpressionStatement","src":"2121:163:37"},{"expression":{"arguments":[{"id":17551,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17523,"src":"2314:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},{"arguments":[{"expression":{"expression":{"id":17554,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17523,"src":"2344:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":17555,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2350:7:37","memberName":"approve","nodeType":"MemberAccess","referencedDeclaration":17385,"src":"2344:13:37","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) external returns (bool)"}},"id":17556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2358:8:37","memberName":"selector","nodeType":"MemberAccess","src":"2344:22:37","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":17557,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17525,"src":"2368:7:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17558,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17527,"src":"2377:5:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":17552,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2321:3:37","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":17553,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2325:18:37","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"2321:22:37","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":17559,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2321:62:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":17550,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17786,"src":"2294:19:37","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":17560,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2294:90:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17561,"nodeType":"ExpressionStatement","src":"2294:90:37"}]},"documentation":{"id":17520,"nodeType":"StructuredDocumentation","src":"1564:249:37","text":" @dev Deprecated. This function has issues similar to the ones found in\n {IERC20-approve}, and its usage is discouraged.\n Whenever possible, use {safeIncreaseAllowance} and\n {safeDecreaseAllowance} instead."},"implemented":true,"kind":"function","modifiers":[],"name":"safeApprove","nameLocation":"1827:11:37","parameters":{"id":17528,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17523,"mutability":"mutable","name":"token","nameLocation":"1846:5:37","nodeType":"VariableDeclaration","scope":17563,"src":"1839:12:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},"typeName":{"id":17522,"nodeType":"UserDefinedTypeName","pathNode":{"id":17521,"name":"IERC20","nameLocations":["1839:6:37"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"1839:6:37"},"referencedDeclaration":17398,"src":"1839:6:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":17525,"mutability":"mutable","name":"spender","nameLocation":"1861:7:37","nodeType":"VariableDeclaration","scope":17563,"src":"1853:15:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17524,"name":"address","nodeType":"ElementaryTypeName","src":"1853:7:37","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17527,"mutability":"mutable","name":"value","nameLocation":"1878:5:37","nodeType":"VariableDeclaration","scope":17563,"src":"1870:13:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17526,"name":"uint256","nodeType":"ElementaryTypeName","src":"1870:7:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1838:46:37"},"returnParameters":{"id":17529,"nodeType":"ParameterList","parameters":[],"src":"1894:0:37"},"scope":17835,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":17600,"nodeType":"FunctionDefinition","src":"2582:280:37","nodes":[],"body":{"id":17599,"nodeType":"Block","src":"2668:194:37","nodes":[],"statements":[{"assignments":[17575],"declarations":[{"constant":false,"id":17575,"mutability":"mutable","name":"oldAllowance","nameLocation":"2686:12:37","nodeType":"VariableDeclaration","scope":17599,"src":"2678:20:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17574,"name":"uint256","nodeType":"ElementaryTypeName","src":"2678:7:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":17584,"initialValue":{"arguments":[{"arguments":[{"id":17580,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"2725:4:37","typeDescriptions":{"typeIdentifier":"t_contract$_SafeERC20_$17835","typeString":"library SafeERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_SafeERC20_$17835","typeString":"library SafeERC20"}],"id":17579,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2717:7:37","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17578,"name":"address","nodeType":"ElementaryTypeName","src":"2717:7:37","typeDescriptions":{}}},"id":17581,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2717:13:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17582,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17569,"src":"2732:7:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":17576,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17567,"src":"2701:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":17577,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2707:9:37","memberName":"allowance","nodeType":"MemberAccess","referencedDeclaration":17375,"src":"2701:15:37","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":17583,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2701:39:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"2678:62:37"},{"expression":{"arguments":[{"id":17586,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17567,"src":"2770:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},{"arguments":[{"expression":{"expression":{"id":17589,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17567,"src":"2800:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":17590,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2806:7:37","memberName":"approve","nodeType":"MemberAccess","referencedDeclaration":17385,"src":"2800:13:37","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) external returns (bool)"}},"id":17591,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2814:8:37","memberName":"selector","nodeType":"MemberAccess","src":"2800:22:37","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":17592,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17569,"src":"2824:7:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17595,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17593,"name":"oldAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17575,"src":"2833:12:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":17594,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17571,"src":"2848:5:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2833:20:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":17587,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2777:3:37","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":17588,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2781:18:37","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"2777:22:37","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":17596,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2777:77:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":17585,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17786,"src":"2750:19:37","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":17597,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2750:105:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17598,"nodeType":"ExpressionStatement","src":"2750:105:37"}]},"documentation":{"id":17564,"nodeType":"StructuredDocumentation","src":"2397:180:37","text":" @dev Increase the calling contract's allowance toward `spender` by `value`. If `token` returns no value,\n non-reverting calls are assumed to be successful."},"implemented":true,"kind":"function","modifiers":[],"name":"safeIncreaseAllowance","nameLocation":"2591:21:37","parameters":{"id":17572,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17567,"mutability":"mutable","name":"token","nameLocation":"2620:5:37","nodeType":"VariableDeclaration","scope":17600,"src":"2613:12:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},"typeName":{"id":17566,"nodeType":"UserDefinedTypeName","pathNode":{"id":17565,"name":"IERC20","nameLocations":["2613:6:37"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"2613:6:37"},"referencedDeclaration":17398,"src":"2613:6:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":17569,"mutability":"mutable","name":"spender","nameLocation":"2635:7:37","nodeType":"VariableDeclaration","scope":17600,"src":"2627:15:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17568,"name":"address","nodeType":"ElementaryTypeName","src":"2627:7:37","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17571,"mutability":"mutable","name":"value","nameLocation":"2652:5:37","nodeType":"VariableDeclaration","scope":17600,"src":"2644:13:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17570,"name":"uint256","nodeType":"ElementaryTypeName","src":"2644:7:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2612:46:37"},"returnParameters":{"id":17573,"nodeType":"ParameterList","parameters":[],"src":"2668:0:37"},"scope":17835,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":17645,"nodeType":"FunctionDefinition","src":"3053:407:37","nodes":[],"body":{"id":17644,"nodeType":"Block","src":"3139:321:37","nodes":[],"statements":[{"id":17643,"nodeType":"UncheckedBlock","src":"3149:305:37","statements":[{"assignments":[17612],"declarations":[{"constant":false,"id":17612,"mutability":"mutable","name":"oldAllowance","nameLocation":"3181:12:37","nodeType":"VariableDeclaration","scope":17643,"src":"3173:20:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17611,"name":"uint256","nodeType":"ElementaryTypeName","src":"3173:7:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":17621,"initialValue":{"arguments":[{"arguments":[{"id":17617,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3220:4:37","typeDescriptions":{"typeIdentifier":"t_contract$_SafeERC20_$17835","typeString":"library SafeERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_SafeERC20_$17835","typeString":"library SafeERC20"}],"id":17616,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3212:7:37","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17615,"name":"address","nodeType":"ElementaryTypeName","src":"3212:7:37","typeDescriptions":{}}},"id":17618,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3212:13:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17619,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17606,"src":"3227:7:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":17613,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17604,"src":"3196:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":17614,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3202:9:37","memberName":"allowance","nodeType":"MemberAccess","referencedDeclaration":17375,"src":"3196:15:37","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":17620,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3196:39:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3173:62:37"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17625,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17623,"name":"oldAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17612,"src":"3257:12:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":17624,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17608,"src":"3273:5:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3257:21:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5361666545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f","id":17626,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3280:43:37","typeDescriptions":{"typeIdentifier":"t_stringliteral_2c3af60974a758b7e72e108c9bf0943ecc9e4f2e8af4695da5f52fbf57a63d3a","typeString":"literal_string \"SafeERC20: decreased allowance below zero\""},"value":"SafeERC20: decreased allowance below zero"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_2c3af60974a758b7e72e108c9bf0943ecc9e4f2e8af4695da5f52fbf57a63d3a","typeString":"literal_string \"SafeERC20: decreased allowance below zero\""}],"id":17622,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3249:7:37","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3249:75:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17628,"nodeType":"ExpressionStatement","src":"3249:75:37"},{"expression":{"arguments":[{"id":17630,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17604,"src":"3358:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},{"arguments":[{"expression":{"expression":{"id":17633,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17604,"src":"3388:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":17634,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3394:7:37","memberName":"approve","nodeType":"MemberAccess","referencedDeclaration":17385,"src":"3388:13:37","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) external returns (bool)"}},"id":17635,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3402:8:37","memberName":"selector","nodeType":"MemberAccess","src":"3388:22:37","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":17636,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17606,"src":"3412:7:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17637,"name":"oldAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17612,"src":"3421:12:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":17638,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17608,"src":"3436:5:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3421:20:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":17631,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3365:3:37","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":17632,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3369:18:37","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"3365:22:37","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":17640,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3365:77:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":17629,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17786,"src":"3338:19:37","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":17641,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3338:105:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17642,"nodeType":"ExpressionStatement","src":"3338:105:37"}]}]},"documentation":{"id":17601,"nodeType":"StructuredDocumentation","src":"2868:180:37","text":" @dev Decrease the calling contract's allowance toward `spender` by `value`. If `token` returns no value,\n non-reverting calls are assumed to be successful."},"implemented":true,"kind":"function","modifiers":[],"name":"safeDecreaseAllowance","nameLocation":"3062:21:37","parameters":{"id":17609,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17604,"mutability":"mutable","name":"token","nameLocation":"3091:5:37","nodeType":"VariableDeclaration","scope":17645,"src":"3084:12:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},"typeName":{"id":17603,"nodeType":"UserDefinedTypeName","pathNode":{"id":17602,"name":"IERC20","nameLocations":["3084:6:37"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"3084:6:37"},"referencedDeclaration":17398,"src":"3084:6:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":17606,"mutability":"mutable","name":"spender","nameLocation":"3106:7:37","nodeType":"VariableDeclaration","scope":17645,"src":"3098:15:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17605,"name":"address","nodeType":"ElementaryTypeName","src":"3098:7:37","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17608,"mutability":"mutable","name":"value","nameLocation":"3123:5:37","nodeType":"VariableDeclaration","scope":17645,"src":"3115:13:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17607,"name":"uint256","nodeType":"ElementaryTypeName","src":"3115:7:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3083:46:37"},"returnParameters":{"id":17610,"nodeType":"ParameterList","parameters":[],"src":"3139:0:37"},"scope":17835,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":17692,"nodeType":"FunctionDefinition","src":"3756:410:37","nodes":[],"body":{"id":17691,"nodeType":"Block","src":"3833:333:37","nodes":[],"statements":[{"assignments":[17657],"declarations":[{"constant":false,"id":17657,"mutability":"mutable","name":"approvalCall","nameLocation":"3856:12:37","nodeType":"VariableDeclaration","scope":17691,"src":"3843:25:37","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":17656,"name":"bytes","nodeType":"ElementaryTypeName","src":"3843:5:37","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":17666,"initialValue":{"arguments":[{"expression":{"expression":{"id":17660,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17649,"src":"3894:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":17661,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3900:7:37","memberName":"approve","nodeType":"MemberAccess","referencedDeclaration":17385,"src":"3894:13:37","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) external returns (bool)"}},"id":17662,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3908:8:37","memberName":"selector","nodeType":"MemberAccess","src":"3894:22:37","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":17663,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17651,"src":"3918:7:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17664,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17653,"src":"3927:5:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":17658,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3871:3:37","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":17659,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3875:18:37","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"3871:22:37","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":17665,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3871:62:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"3843:90:37"},{"condition":{"id":17671,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"3948:45:37","subExpression":{"arguments":[{"id":17668,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17649,"src":"3973:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},{"id":17669,"name":"approvalCall","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17657,"src":"3980:12:37","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":17667,"name":"_callOptionalReturnBool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17834,"src":"3949:23:37","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_bytes_memory_ptr_$returns$_t_bool_$","typeString":"function (contract IERC20,bytes memory) returns (bool)"}},"id":17670,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3949:44:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":17690,"nodeType":"IfStatement","src":"3944:216:37","trueBody":{"id":17689,"nodeType":"Block","src":"3995:165:37","statements":[{"expression":{"arguments":[{"id":17673,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17649,"src":"4029:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},{"arguments":[{"expression":{"expression":{"id":17676,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17649,"src":"4059:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"id":17677,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4065:7:37","memberName":"approve","nodeType":"MemberAccess","referencedDeclaration":17385,"src":"4059:13:37","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) external returns (bool)"}},"id":17678,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4073:8:37","memberName":"selector","nodeType":"MemberAccess","src":"4059:22:37","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":17679,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17651,"src":"4083:7:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":17680,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4092:1:37","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":17674,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4036:3:37","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":17675,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4040:18:37","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"4036:22:37","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":17681,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4036:58:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":17672,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17786,"src":"4009:19:37","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":17682,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4009:86:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17683,"nodeType":"ExpressionStatement","src":"4009:86:37"},{"expression":{"arguments":[{"id":17685,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17649,"src":"4129:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},{"id":17686,"name":"approvalCall","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17657,"src":"4136:12:37","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":17684,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17786,"src":"4109:19:37","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$17398_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":17687,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4109:40:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17688,"nodeType":"ExpressionStatement","src":"4109:40:37"}]}}]},"documentation":{"id":17646,"nodeType":"StructuredDocumentation","src":"3466:285:37","text":" @dev Set the calling contract's allowance toward `spender` to `value`. If `token` returns no value,\n non-reverting calls are assumed to be successful. Compatible with tokens that require the approval to be set to\n 0 before setting it to a non-zero value."},"implemented":true,"kind":"function","modifiers":[],"name":"forceApprove","nameLocation":"3765:12:37","parameters":{"id":17654,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17649,"mutability":"mutable","name":"token","nameLocation":"3785:5:37","nodeType":"VariableDeclaration","scope":17692,"src":"3778:12:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},"typeName":{"id":17648,"nodeType":"UserDefinedTypeName","pathNode":{"id":17647,"name":"IERC20","nameLocations":["3778:6:37"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"3778:6:37"},"referencedDeclaration":17398,"src":"3778:6:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":17651,"mutability":"mutable","name":"spender","nameLocation":"3800:7:37","nodeType":"VariableDeclaration","scope":17692,"src":"3792:15:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17650,"name":"address","nodeType":"ElementaryTypeName","src":"3792:7:37","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17653,"mutability":"mutable","name":"value","nameLocation":"3817:5:37","nodeType":"VariableDeclaration","scope":17692,"src":"3809:13:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17652,"name":"uint256","nodeType":"ElementaryTypeName","src":"3809:7:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3777:46:37"},"returnParameters":{"id":17655,"nodeType":"ParameterList","parameters":[],"src":"3833:0:37"},"scope":17835,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":17749,"nodeType":"FunctionDefinition","src":"4318:472:37","nodes":[],"body":{"id":17748,"nodeType":"Block","src":"4533:257:37","nodes":[],"statements":[{"assignments":[17714],"declarations":[{"constant":false,"id":17714,"mutability":"mutable","name":"nonceBefore","nameLocation":"4551:11:37","nodeType":"VariableDeclaration","scope":17748,"src":"4543:19:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17713,"name":"uint256","nodeType":"ElementaryTypeName","src":"4543:7:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":17719,"initialValue":{"arguments":[{"id":17717,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17698,"src":"4578:5:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":17715,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17696,"src":"4565:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20Permit_$17459","typeString":"contract IERC20Permit"}},"id":17716,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4571:6:37","memberName":"nonces","nodeType":"MemberAccess","referencedDeclaration":17452,"src":"4565:12:37","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":17718,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4565:19:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"4543:41:37"},{"expression":{"arguments":[{"id":17723,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17698,"src":"4607:5:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17724,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17700,"src":"4614:7:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":17725,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17702,"src":"4623:5:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":17726,"name":"deadline","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17704,"src":"4630:8:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":17727,"name":"v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17706,"src":"4640:1:37","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"id":17728,"name":"r","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17708,"src":"4643:1:37","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":17729,"name":"s","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17710,"src":"4646:1:37","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":17720,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17696,"src":"4594:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20Permit_$17459","typeString":"contract IERC20Permit"}},"id":17722,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4600:6:37","memberName":"permit","nodeType":"MemberAccess","referencedDeclaration":17444,"src":"4594:12:37","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (address,address,uint256,uint256,uint8,bytes32,bytes32) external"}},"id":17730,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4594:54:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17731,"nodeType":"ExpressionStatement","src":"4594:54:37"},{"assignments":[17733],"declarations":[{"constant":false,"id":17733,"mutability":"mutable","name":"nonceAfter","nameLocation":"4666:10:37","nodeType":"VariableDeclaration","scope":17748,"src":"4658:18:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17732,"name":"uint256","nodeType":"ElementaryTypeName","src":"4658:7:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":17738,"initialValue":{"arguments":[{"id":17736,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17698,"src":"4692:5:37","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":17734,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17696,"src":"4679:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20Permit_$17459","typeString":"contract IERC20Permit"}},"id":17735,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4685:6:37","memberName":"nonces","nodeType":"MemberAccess","referencedDeclaration":17452,"src":"4679:12:37","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":17737,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4679:19:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"4658:40:37"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17744,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17740,"name":"nonceAfter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17733,"src":"4716:10:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17743,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17741,"name":"nonceBefore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17714,"src":"4730:11:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":17742,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4744:1:37","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"4730:15:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4716:29:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5361666545524332303a207065726d697420646964206e6f742073756363656564","id":17745,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4747:35:37","typeDescriptions":{"typeIdentifier":"t_stringliteral_cde8e927812a7a656f8f04e89ac4f4113d47940dd2125d11fcb8e0bd36bfc59d","typeString":"literal_string \"SafeERC20: permit did not succeed\""},"value":"SafeERC20: permit did not succeed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_cde8e927812a7a656f8f04e89ac4f4113d47940dd2125d11fcb8e0bd36bfc59d","typeString":"literal_string \"SafeERC20: permit did not succeed\""}],"id":17739,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"4708:7:37","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4708:75:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17747,"nodeType":"ExpressionStatement","src":"4708:75:37"}]},"documentation":{"id":17693,"nodeType":"StructuredDocumentation","src":"4172:141:37","text":" @dev Use a ERC-2612 signature to set the `owner` approval toward `spender` on `token`.\n Revert on invalid signature."},"implemented":true,"kind":"function","modifiers":[],"name":"safePermit","nameLocation":"4327:10:37","parameters":{"id":17711,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17696,"mutability":"mutable","name":"token","nameLocation":"4360:5:37","nodeType":"VariableDeclaration","scope":17749,"src":"4347:18:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20Permit_$17459","typeString":"contract IERC20Permit"},"typeName":{"id":17695,"nodeType":"UserDefinedTypeName","pathNode":{"id":17694,"name":"IERC20Permit","nameLocations":["4347:12:37"],"nodeType":"IdentifierPath","referencedDeclaration":17459,"src":"4347:12:37"},"referencedDeclaration":17459,"src":"4347:12:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20Permit_$17459","typeString":"contract IERC20Permit"}},"visibility":"internal"},{"constant":false,"id":17698,"mutability":"mutable","name":"owner","nameLocation":"4383:5:37","nodeType":"VariableDeclaration","scope":17749,"src":"4375:13:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17697,"name":"address","nodeType":"ElementaryTypeName","src":"4375:7:37","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17700,"mutability":"mutable","name":"spender","nameLocation":"4406:7:37","nodeType":"VariableDeclaration","scope":17749,"src":"4398:15:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":17699,"name":"address","nodeType":"ElementaryTypeName","src":"4398:7:37","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":17702,"mutability":"mutable","name":"value","nameLocation":"4431:5:37","nodeType":"VariableDeclaration","scope":17749,"src":"4423:13:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17701,"name":"uint256","nodeType":"ElementaryTypeName","src":"4423:7:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":17704,"mutability":"mutable","name":"deadline","nameLocation":"4454:8:37","nodeType":"VariableDeclaration","scope":17749,"src":"4446:16:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":17703,"name":"uint256","nodeType":"ElementaryTypeName","src":"4446:7:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":17706,"mutability":"mutable","name":"v","nameLocation":"4478:1:37","nodeType":"VariableDeclaration","scope":17749,"src":"4472:7:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":17705,"name":"uint8","nodeType":"ElementaryTypeName","src":"4472:5:37","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":17708,"mutability":"mutable","name":"r","nameLocation":"4497:1:37","nodeType":"VariableDeclaration","scope":17749,"src":"4489:9:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":17707,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4489:7:37","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":17710,"mutability":"mutable","name":"s","nameLocation":"4516:1:37","nodeType":"VariableDeclaration","scope":17749,"src":"4508:9:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":17709,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4508:7:37","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"4337:186:37"},"returnParameters":{"id":17712,"nodeType":"ParameterList","parameters":[],"src":"4533:0:37"},"scope":17835,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":17786,"nodeType":"FunctionDefinition","src":"5173:642:37","nodes":[],"body":{"id":17785,"nodeType":"Block","src":"5243:572:37","nodes":[],"statements":[{"assignments":[17759],"declarations":[{"constant":false,"id":17759,"mutability":"mutable","name":"returndata","nameLocation":"5605:10:37","nodeType":"VariableDeclaration","scope":17785,"src":"5592:23:37","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":17758,"name":"bytes","nodeType":"ElementaryTypeName","src":"5592:5:37","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":17768,"initialValue":{"arguments":[{"id":17765,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17755,"src":"5646:4:37","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"hexValue":"5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564","id":17766,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5652:34:37","typeDescriptions":{"typeIdentifier":"t_stringliteral_47fb62c2c272651d2f0f342bac006756b8ba07f21cc5cb87e0fbb9d50c0c585b","typeString":"literal_string \"SafeERC20: low-level call failed\""},"value":"SafeERC20: low-level call failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_stringliteral_47fb62c2c272651d2f0f342bac006756b8ba07f21cc5cb87e0fbb9d50c0c585b","typeString":"literal_string \"SafeERC20: low-level call failed\""}],"expression":{"arguments":[{"id":17762,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17753,"src":"5626:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}],"id":17761,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5618:7:37","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17760,"name":"address","nodeType":"ElementaryTypeName","src":"5618:7:37","typeDescriptions":{}}},"id":17763,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5618:14:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":17764,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5633:12:37","memberName":"functionCall","nodeType":"MemberAccess","referencedDeclaration":17925,"src":"5618:27:37","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_address_$","typeString":"function (address,bytes memory,string memory) returns (bytes memory)"}},"id":17767,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5618:69:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"5592:95:37"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":17781,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17773,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":17770,"name":"returndata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17759,"src":"5705:10:37","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":17771,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5716:6:37","memberName":"length","nodeType":"MemberAccess","src":"5705:17:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":17772,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5726:1:37","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5705:22:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":17776,"name":"returndata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17759,"src":"5742:10:37","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":17778,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5755:4:37","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"},"typeName":{"id":17777,"name":"bool","nodeType":"ElementaryTypeName","src":"5755:4:37","typeDescriptions":{}}}],"id":17779,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"5754:6:37","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"}],"expression":{"id":17774,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5731:3:37","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":17775,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5735:6:37","memberName":"decode","nodeType":"MemberAccess","src":"5731:10:37","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":17780,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5731:30:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"5705:56:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564","id":17782,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5763:44:37","typeDescriptions":{"typeIdentifier":"t_stringliteral_e11ad79d1e4a7f2e5f376964cb99e8e8f7904e3fc16a109f7a7ecb9aa7956dcd","typeString":"literal_string \"SafeERC20: ERC20 operation did not succeed\""},"value":"SafeERC20: ERC20 operation did not succeed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_e11ad79d1e4a7f2e5f376964cb99e8e8f7904e3fc16a109f7a7ecb9aa7956dcd","typeString":"literal_string \"SafeERC20: ERC20 operation did not succeed\""}],"id":17769,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5697:7:37","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":17783,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5697:111:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":17784,"nodeType":"ExpressionStatement","src":"5697:111:37"}]},"documentation":{"id":17750,"nodeType":"StructuredDocumentation","src":"4796:372:37","text":" @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement\n on the return value: the return value is optional (but if data is returned, it must not be false).\n @param token The token targeted by the call.\n @param data The call data (encoded using abi.encode or one of its variants)."},"implemented":true,"kind":"function","modifiers":[],"name":"_callOptionalReturn","nameLocation":"5182:19:37","parameters":{"id":17756,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17753,"mutability":"mutable","name":"token","nameLocation":"5209:5:37","nodeType":"VariableDeclaration","scope":17786,"src":"5202:12:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},"typeName":{"id":17752,"nodeType":"UserDefinedTypeName","pathNode":{"id":17751,"name":"IERC20","nameLocations":["5202:6:37"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"5202:6:37"},"referencedDeclaration":17398,"src":"5202:6:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":17755,"mutability":"mutable","name":"data","nameLocation":"5229:4:37","nodeType":"VariableDeclaration","scope":17786,"src":"5216:17:37","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":17754,"name":"bytes","nodeType":"ElementaryTypeName","src":"5216:5:37","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"5201:33:37"},"returnParameters":{"id":17757,"nodeType":"ParameterList","parameters":[],"src":"5243:0:37"},"scope":17835,"stateMutability":"nonpayable","virtual":false,"visibility":"private"},{"id":17834,"nodeType":"FunctionDefinition","src":"6316:594:37","nodes":[],"body":{"id":17833,"nodeType":"Block","src":"6405:505:37","nodes":[],"statements":[{"assignments":[17798,17800],"declarations":[{"constant":false,"id":17798,"mutability":"mutable","name":"success","nameLocation":"6706:7:37","nodeType":"VariableDeclaration","scope":17833,"src":"6701:12:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":17797,"name":"bool","nodeType":"ElementaryTypeName","src":"6701:4:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":17800,"mutability":"mutable","name":"returndata","nameLocation":"6728:10:37","nodeType":"VariableDeclaration","scope":17833,"src":"6715:23:37","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":17799,"name":"bytes","nodeType":"ElementaryTypeName","src":"6715:5:37","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":17808,"initialValue":{"arguments":[{"id":17806,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17792,"src":"6762:4:37","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"arguments":[{"id":17803,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17790,"src":"6750:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}],"id":17802,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6742:7:37","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17801,"name":"address","nodeType":"ElementaryTypeName","src":"6742:7:37","typeDescriptions":{}}},"id":17804,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6742:14:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":17805,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6757:4:37","memberName":"call","nodeType":"MemberAccess","src":"6742:19:37","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":17807,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6742:25:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"6700:67:37"},{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":17831,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":17823,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":17809,"name":"success","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17798,"src":"6796:7:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":17821,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":17813,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":17810,"name":"returndata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17800,"src":"6808:10:37","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":17811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6819:6:37","memberName":"length","nodeType":"MemberAccess","src":"6808:17:37","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":17812,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6829:1:37","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"6808:22:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":17816,"name":"returndata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17800,"src":"6845:10:37","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":17818,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6858:4:37","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"},"typeName":{"id":17817,"name":"bool","nodeType":"ElementaryTypeName","src":"6858:4:37","typeDescriptions":{}}}],"id":17819,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"6857:6:37","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"}],"expression":{"id":17814,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6834:3:37","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":17815,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6838:6:37","memberName":"decode","nodeType":"MemberAccess","src":"6834:10:37","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":17820,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6834:30:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"6808:56:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":17822,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6807:58:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"6796:69:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"arguments":[{"arguments":[{"id":17828,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":17790,"src":"6896:5:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}],"id":17827,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6888:7:37","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":17826,"name":"address","nodeType":"ElementaryTypeName","src":"6888:7:37","typeDescriptions":{}}},"id":17829,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6888:14:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":17824,"name":"Address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":18165,"src":"6869:7:37","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Address_$18165_$","typeString":"type(library Address)"}},"id":17825,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6877:10:37","memberName":"isContract","nodeType":"MemberAccess","referencedDeclaration":17853,"src":"6869:18:37","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":17830,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6869:34:37","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"6796:107:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":17796,"id":17832,"nodeType":"Return","src":"6777:126:37"}]},"documentation":{"id":17787,"nodeType":"StructuredDocumentation","src":"5821:490:37","text":" @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement\n on the return value: the return value is optional (but if data is returned, it must not be false).\n @param token The token targeted by the call.\n @param data The call data (encoded using abi.encode or one of its variants).\n This is a variant of {_callOptionalReturn} that silents catches all reverts and returns a bool instead."},"implemented":true,"kind":"function","modifiers":[],"name":"_callOptionalReturnBool","nameLocation":"6325:23:37","parameters":{"id":17793,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17790,"mutability":"mutable","name":"token","nameLocation":"6356:5:37","nodeType":"VariableDeclaration","scope":17834,"src":"6349:12:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"},"typeName":{"id":17789,"nodeType":"UserDefinedTypeName","pathNode":{"id":17788,"name":"IERC20","nameLocations":["6349:6:37"],"nodeType":"IdentifierPath","referencedDeclaration":17398,"src":"6349:6:37"},"referencedDeclaration":17398,"src":"6349:6:37","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$17398","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":17792,"mutability":"mutable","name":"data","nameLocation":"6376:4:37","nodeType":"VariableDeclaration","scope":17834,"src":"6363:17:37","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":17791,"name":"bytes","nodeType":"ElementaryTypeName","src":"6363:5:37","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"6348:33:37"},"returnParameters":{"id":17796,"nodeType":"ParameterList","parameters":[{"constant":false,"id":17795,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":17834,"src":"6399:4:37","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":17794,"name":"bool","nodeType":"ElementaryTypeName","src":"6399:4:37","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"6398:6:37"},"scope":17835,"stateMutability":"nonpayable","virtual":false,"visibility":"private"}],"abstract":false,"baseContracts":[],"canonicalName":"SafeERC20","contractDependencies":[],"contractKind":"library","documentation":{"id":17465,"nodeType":"StructuredDocumentation","src":"243:457:37","text":" @title SafeERC20\n @dev Wrappers around ERC20 operations that throw on failure (when the token\n contract returns false). Tokens that return no value (and instead revert or\n throw on failure) are also supported, non-reverting calls are assumed to be\n successful.\n To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract,\n which allows you to call the safe operations as `token.safeTransfer(...)`, etc."},"fullyImplemented":true,"linearizedBaseContracts":[17835],"name":"SafeERC20","nameLocation":"709:9:37","scope":17836,"usedErrors":[]}],"license":"MIT"},"id":37} \ No newline at end of file +{"abi":[],"bytecode":{"object":"0x60808060405234601757603a9081601d823930815050f35b600080fdfe600080fdfea26469706673582212201fd30d603685b11e708acb05ff4ec75780c06c2954d9e4dc03e7207a7a80cc0264736f6c63430008130033","sourceMap":"701:6211:70:-:0;;;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x600080fdfea26469706673582212201fd30d603685b11e708acb05ff4ec75780c06c2954d9e4dc03e7207a7a80cc0264736f6c63430008130033","sourceMap":"701:6211:70:-:0;;","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.19+commit.7dd6d404\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"details\":\"Wrappers around ERC20 operations that throw on failure (when the token contract returns false). Tokens that return no value (and instead revert or throw on failure) are also supported, non-reverting calls are assumed to be successful. To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract, which allows you to call the safe operations as `token.safeTransfer(...)`, etc.\",\"kind\":\"dev\",\"methods\":{},\"title\":\"SafeERC20\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol\":\"SafeERC20\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"sources\":{\"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/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\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.19+commit.7dd6d404"},"language":"Solidity","output":{"abi":[],"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol":"SafeERC20"},"evmVersion":"paris","libraries":{},"viaIR":true},"sources":{"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/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"}},"version":1},"storageLayout":{"storage":[],"types":{}},"ast":{"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/utils/SafeERC20.sol","id":56263,"exportedSymbols":{"Address":[56637],"IERC20":[55825],"IERC20Permit":[55886],"SafeERC20":[56262]},"nodeType":"SourceUnit","src":"115:6798:70","nodes":[{"id":55888,"nodeType":"PragmaDirective","src":"115:23:70","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":55889,"nodeType":"ImportDirective","src":"140:23:70","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/IERC20.sol","file":"../IERC20.sol","nameLocation":"-1:-1:-1","scope":56263,"sourceUnit":55826,"symbolAliases":[],"unitAlias":""},{"id":55890,"nodeType":"ImportDirective","src":"164:40:70","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/token/ERC20/extensions/IERC20Permit.sol","file":"../extensions/IERC20Permit.sol","nameLocation":"-1:-1:-1","scope":56263,"sourceUnit":55887,"symbolAliases":[],"unitAlias":""},{"id":55891,"nodeType":"ImportDirective","src":"205:36:70","nodes":[],"absolutePath":"lib/openzeppelin-contracts/contracts/utils/Address.sol","file":"../../../utils/Address.sol","nameLocation":"-1:-1:-1","scope":56263,"sourceUnit":56638,"symbolAliases":[],"unitAlias":""},{"id":56262,"nodeType":"ContractDefinition","src":"701:6211:70","nodes":[{"id":55895,"nodeType":"UsingForDirective","src":"725:26:70","nodes":[],"global":false,"libraryName":{"id":55893,"name":"Address","nameLocations":["731:7:70"],"nodeType":"IdentifierPath","referencedDeclaration":56637,"src":"731:7:70"},"typeName":{"id":55894,"name":"address","nodeType":"ElementaryTypeName","src":"743:7:70","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}},{"id":55919,"nodeType":"FunctionDefinition","src":"941:175:70","nodes":[],"body":{"id":55918,"nodeType":"Block","src":"1013:103:70","nodes":[],"statements":[{"expression":{"arguments":[{"id":55907,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55899,"src":"1043:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},{"arguments":[{"expression":{"expression":{"id":55910,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55899,"src":"1073:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":55911,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1079:8:70","memberName":"transfer","nodeType":"MemberAccess","referencedDeclaration":55792,"src":"1073:14:70","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) external returns (bool)"}},"id":55912,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1088:8:70","memberName":"selector","nodeType":"MemberAccess","src":"1073:23:70","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":55913,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55901,"src":"1098:2:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55914,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55903,"src":"1102:5:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":55908,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1050:3:70","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":55909,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1054:18:70","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"1050:22:70","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":55915,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1050:58:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":55906,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56213,"src":"1023:19:70","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":55916,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1023:86:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55917,"nodeType":"ExpressionStatement","src":"1023:86:70"}]},"documentation":{"id":55896,"nodeType":"StructuredDocumentation","src":"757:179:70","text":" @dev Transfer `value` amount of `token` from the calling contract to `to`. If `token` returns no value,\n non-reverting calls are assumed to be successful."},"implemented":true,"kind":"function","modifiers":[],"name":"safeTransfer","nameLocation":"950:12:70","parameters":{"id":55904,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55899,"mutability":"mutable","name":"token","nameLocation":"970:5:70","nodeType":"VariableDeclaration","scope":55919,"src":"963:12:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":55898,"nodeType":"UserDefinedTypeName","pathNode":{"id":55897,"name":"IERC20","nameLocations":["963:6:70"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"963:6:70"},"referencedDeclaration":55825,"src":"963:6:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":55901,"mutability":"mutable","name":"to","nameLocation":"985:2:70","nodeType":"VariableDeclaration","scope":55919,"src":"977:10:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55900,"name":"address","nodeType":"ElementaryTypeName","src":"977:7:70","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55903,"mutability":"mutable","name":"value","nameLocation":"997:5:70","nodeType":"VariableDeclaration","scope":55919,"src":"989:13:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55902,"name":"uint256","nodeType":"ElementaryTypeName","src":"989:7:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"962:41:70"},"returnParameters":{"id":55905,"nodeType":"ParameterList","parameters":[],"src":"1013:0:70"},"scope":56262,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":55946,"nodeType":"FunctionDefinition","src":"1355:203:70","nodes":[],"body":{"id":55945,"nodeType":"Block","src":"1445:113:70","nodes":[],"statements":[{"expression":{"arguments":[{"id":55933,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55923,"src":"1475:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},{"arguments":[{"expression":{"expression":{"id":55936,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55923,"src":"1505:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":55937,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1511:12:70","memberName":"transferFrom","nodeType":"MemberAccess","referencedDeclaration":55824,"src":"1505:18:70","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,address,uint256) external returns (bool)"}},"id":55938,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1524:8:70","memberName":"selector","nodeType":"MemberAccess","src":"1505:27:70","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":55939,"name":"from","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55925,"src":"1534:4:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55940,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55927,"src":"1540:2:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55941,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55929,"src":"1544:5:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":55934,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1482:3:70","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":55935,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1486:18:70","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"1482:22:70","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":55942,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1482:68:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":55932,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56213,"src":"1455:19:70","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":55943,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1455:96:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55944,"nodeType":"ExpressionStatement","src":"1455:96:70"}]},"documentation":{"id":55920,"nodeType":"StructuredDocumentation","src":"1122:228:70","text":" @dev Transfer `value` amount of `token` from `from` to `to`, spending the approval given by `from` to the\n calling contract. If `token` returns no value, non-reverting calls are assumed to be successful."},"implemented":true,"kind":"function","modifiers":[],"name":"safeTransferFrom","nameLocation":"1364:16:70","parameters":{"id":55930,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55923,"mutability":"mutable","name":"token","nameLocation":"1388:5:70","nodeType":"VariableDeclaration","scope":55946,"src":"1381:12:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":55922,"nodeType":"UserDefinedTypeName","pathNode":{"id":55921,"name":"IERC20","nameLocations":["1381:6:70"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"1381:6:70"},"referencedDeclaration":55825,"src":"1381:6:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":55925,"mutability":"mutable","name":"from","nameLocation":"1403:4:70","nodeType":"VariableDeclaration","scope":55946,"src":"1395:12:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55924,"name":"address","nodeType":"ElementaryTypeName","src":"1395:7:70","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55927,"mutability":"mutable","name":"to","nameLocation":"1417:2:70","nodeType":"VariableDeclaration","scope":55946,"src":"1409:10:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55926,"name":"address","nodeType":"ElementaryTypeName","src":"1409:7:70","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55929,"mutability":"mutable","name":"value","nameLocation":"1429:5:70","nodeType":"VariableDeclaration","scope":55946,"src":"1421:13:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55928,"name":"uint256","nodeType":"ElementaryTypeName","src":"1421:7:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1380:55:70"},"returnParameters":{"id":55931,"nodeType":"ParameterList","parameters":[],"src":"1445:0:70"},"scope":56262,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":55990,"nodeType":"FunctionDefinition","src":"1818:573:70","nodes":[],"body":{"id":55989,"nodeType":"Block","src":"1894:497:70","nodes":[],"statements":[{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":55973,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":55960,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":55958,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55954,"src":"2143:5:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":55959,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2152:1:70","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2143:10:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":55961,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"2142:12:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":55971,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"arguments":[{"arguments":[{"id":55966,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"2183:4:70","typeDescriptions":{"typeIdentifier":"t_contract$_SafeERC20_$56262","typeString":"library SafeERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_SafeERC20_$56262","typeString":"library SafeERC20"}],"id":55965,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2175:7:70","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":55964,"name":"address","nodeType":"ElementaryTypeName","src":"2175:7:70","typeDescriptions":{}}},"id":55967,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2175:13:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55968,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55952,"src":"2190:7:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":55962,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55950,"src":"2159:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":55963,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2165:9:70","memberName":"allowance","nodeType":"MemberAccess","referencedDeclaration":55802,"src":"2159:15:70","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":55969,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2159:39:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":55970,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2202:1:70","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"2159:44:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":55972,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"2158:46:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"2142:62:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e6365","id":55974,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2218:56:70","typeDescriptions":{"typeIdentifier":"t_stringliteral_ef945ddb1bfdc0da870feb4560d868b047642b4ac7f2fb7f8b7c51cb4a411e25","typeString":"literal_string \"SafeERC20: approve from non-zero to non-zero allowance\""},"value":"SafeERC20: approve from non-zero to non-zero allowance"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_ef945ddb1bfdc0da870feb4560d868b047642b4ac7f2fb7f8b7c51cb4a411e25","typeString":"literal_string \"SafeERC20: approve from non-zero to non-zero allowance\""}],"id":55957,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"2121:7:70","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":55975,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2121:163:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55976,"nodeType":"ExpressionStatement","src":"2121:163:70"},{"expression":{"arguments":[{"id":55978,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55950,"src":"2314:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},{"arguments":[{"expression":{"expression":{"id":55981,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55950,"src":"2344:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":55982,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2350:7:70","memberName":"approve","nodeType":"MemberAccess","referencedDeclaration":55812,"src":"2344:13:70","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) external returns (bool)"}},"id":55983,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2358:8:70","memberName":"selector","nodeType":"MemberAccess","src":"2344:22:70","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":55984,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55952,"src":"2368:7:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":55985,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55954,"src":"2377:5:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":55979,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2321:3:70","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":55980,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2325:18:70","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"2321:22:70","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":55986,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2321:62:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":55977,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56213,"src":"2294:19:70","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":55987,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2294:90:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":55988,"nodeType":"ExpressionStatement","src":"2294:90:70"}]},"documentation":{"id":55947,"nodeType":"StructuredDocumentation","src":"1564:249:70","text":" @dev Deprecated. This function has issues similar to the ones found in\n {IERC20-approve}, and its usage is discouraged.\n Whenever possible, use {safeIncreaseAllowance} and\n {safeDecreaseAllowance} instead."},"implemented":true,"kind":"function","modifiers":[],"name":"safeApprove","nameLocation":"1827:11:70","parameters":{"id":55955,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55950,"mutability":"mutable","name":"token","nameLocation":"1846:5:70","nodeType":"VariableDeclaration","scope":55990,"src":"1839:12:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":55949,"nodeType":"UserDefinedTypeName","pathNode":{"id":55948,"name":"IERC20","nameLocations":["1839:6:70"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"1839:6:70"},"referencedDeclaration":55825,"src":"1839:6:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":55952,"mutability":"mutable","name":"spender","nameLocation":"1861:7:70","nodeType":"VariableDeclaration","scope":55990,"src":"1853:15:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55951,"name":"address","nodeType":"ElementaryTypeName","src":"1853:7:70","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55954,"mutability":"mutable","name":"value","nameLocation":"1878:5:70","nodeType":"VariableDeclaration","scope":55990,"src":"1870:13:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55953,"name":"uint256","nodeType":"ElementaryTypeName","src":"1870:7:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"1838:46:70"},"returnParameters":{"id":55956,"nodeType":"ParameterList","parameters":[],"src":"1894:0:70"},"scope":56262,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":56027,"nodeType":"FunctionDefinition","src":"2582:280:70","nodes":[],"body":{"id":56026,"nodeType":"Block","src":"2668:194:70","nodes":[],"statements":[{"assignments":[56002],"declarations":[{"constant":false,"id":56002,"mutability":"mutable","name":"oldAllowance","nameLocation":"2686:12:70","nodeType":"VariableDeclaration","scope":56026,"src":"2678:20:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":56001,"name":"uint256","nodeType":"ElementaryTypeName","src":"2678:7:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":56011,"initialValue":{"arguments":[{"arguments":[{"id":56007,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"2725:4:70","typeDescriptions":{"typeIdentifier":"t_contract$_SafeERC20_$56262","typeString":"library SafeERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_SafeERC20_$56262","typeString":"library SafeERC20"}],"id":56006,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2717:7:70","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":56005,"name":"address","nodeType":"ElementaryTypeName","src":"2717:7:70","typeDescriptions":{}}},"id":56008,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2717:13:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":56009,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55996,"src":"2732:7:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":56003,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55994,"src":"2701:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":56004,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2707:9:70","memberName":"allowance","nodeType":"MemberAccess","referencedDeclaration":55802,"src":"2701:15:70","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":56010,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2701:39:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"2678:62:70"},{"expression":{"arguments":[{"id":56013,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55994,"src":"2770:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},{"arguments":[{"expression":{"expression":{"id":56016,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55994,"src":"2800:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":56017,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2806:7:70","memberName":"approve","nodeType":"MemberAccess","referencedDeclaration":55812,"src":"2800:13:70","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) external returns (bool)"}},"id":56018,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2814:8:70","memberName":"selector","nodeType":"MemberAccess","src":"2800:22:70","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":56019,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55996,"src":"2824:7:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":56022,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":56020,"name":"oldAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56002,"src":"2833:12:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"id":56021,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":55998,"src":"2848:5:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2833:20:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":56014,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2777:3:70","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":56015,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2781:18:70","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"2777:22:70","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":56023,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2777:77:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":56012,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56213,"src":"2750:19:70","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":56024,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2750:105:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":56025,"nodeType":"ExpressionStatement","src":"2750:105:70"}]},"documentation":{"id":55991,"nodeType":"StructuredDocumentation","src":"2397:180:70","text":" @dev Increase the calling contract's allowance toward `spender` by `value`. If `token` returns no value,\n non-reverting calls are assumed to be successful."},"implemented":true,"kind":"function","modifiers":[],"name":"safeIncreaseAllowance","nameLocation":"2591:21:70","parameters":{"id":55999,"nodeType":"ParameterList","parameters":[{"constant":false,"id":55994,"mutability":"mutable","name":"token","nameLocation":"2620:5:70","nodeType":"VariableDeclaration","scope":56027,"src":"2613:12:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":55993,"nodeType":"UserDefinedTypeName","pathNode":{"id":55992,"name":"IERC20","nameLocations":["2613:6:70"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"2613:6:70"},"referencedDeclaration":55825,"src":"2613:6:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":55996,"mutability":"mutable","name":"spender","nameLocation":"2635:7:70","nodeType":"VariableDeclaration","scope":56027,"src":"2627:15:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":55995,"name":"address","nodeType":"ElementaryTypeName","src":"2627:7:70","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":55998,"mutability":"mutable","name":"value","nameLocation":"2652:5:70","nodeType":"VariableDeclaration","scope":56027,"src":"2644:13:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":55997,"name":"uint256","nodeType":"ElementaryTypeName","src":"2644:7:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2612:46:70"},"returnParameters":{"id":56000,"nodeType":"ParameterList","parameters":[],"src":"2668:0:70"},"scope":56262,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":56072,"nodeType":"FunctionDefinition","src":"3053:407:70","nodes":[],"body":{"id":56071,"nodeType":"Block","src":"3139:321:70","nodes":[],"statements":[{"id":56070,"nodeType":"UncheckedBlock","src":"3149:305:70","statements":[{"assignments":[56039],"declarations":[{"constant":false,"id":56039,"mutability":"mutable","name":"oldAllowance","nameLocation":"3181:12:70","nodeType":"VariableDeclaration","scope":56070,"src":"3173:20:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":56038,"name":"uint256","nodeType":"ElementaryTypeName","src":"3173:7:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":56048,"initialValue":{"arguments":[{"arguments":[{"id":56044,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-28,"src":"3220:4:70","typeDescriptions":{"typeIdentifier":"t_contract$_SafeERC20_$56262","typeString":"library SafeERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_SafeERC20_$56262","typeString":"library SafeERC20"}],"id":56043,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3212:7:70","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":56042,"name":"address","nodeType":"ElementaryTypeName","src":"3212:7:70","typeDescriptions":{}}},"id":56045,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3212:13:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":56046,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56033,"src":"3227:7:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":56040,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56031,"src":"3196:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":56041,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3202:9:70","memberName":"allowance","nodeType":"MemberAccess","referencedDeclaration":55802,"src":"3196:15:70","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$_t_address_$returns$_t_uint256_$","typeString":"function (address,address) view external returns (uint256)"}},"id":56047,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3196:39:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"3173:62:70"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":56052,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":56050,"name":"oldAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56039,"src":"3257:12:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">=","rightExpression":{"id":56051,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56035,"src":"3273:5:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3257:21:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5361666545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f","id":56053,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3280:43:70","typeDescriptions":{"typeIdentifier":"t_stringliteral_2c3af60974a758b7e72e108c9bf0943ecc9e4f2e8af4695da5f52fbf57a63d3a","typeString":"literal_string \"SafeERC20: decreased allowance below zero\""},"value":"SafeERC20: decreased allowance below zero"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_2c3af60974a758b7e72e108c9bf0943ecc9e4f2e8af4695da5f52fbf57a63d3a","typeString":"literal_string \"SafeERC20: decreased allowance below zero\""}],"id":56049,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"3249:7:70","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":56054,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3249:75:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":56055,"nodeType":"ExpressionStatement","src":"3249:75:70"},{"expression":{"arguments":[{"id":56057,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56031,"src":"3358:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},{"arguments":[{"expression":{"expression":{"id":56060,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56031,"src":"3388:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":56061,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3394:7:70","memberName":"approve","nodeType":"MemberAccess","referencedDeclaration":55812,"src":"3388:13:70","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) external returns (bool)"}},"id":56062,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3402:8:70","memberName":"selector","nodeType":"MemberAccess","src":"3388:22:70","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":56063,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56033,"src":"3412:7:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":56066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":56064,"name":"oldAllowance","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56039,"src":"3421:12:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"id":56065,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56035,"src":"3436:5:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"3421:20:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":56058,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3365:3:70","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":56059,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3369:18:70","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"3365:22:70","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":56067,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3365:77:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":56056,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56213,"src":"3338:19:70","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":56068,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3338:105:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":56069,"nodeType":"ExpressionStatement","src":"3338:105:70"}]}]},"documentation":{"id":56028,"nodeType":"StructuredDocumentation","src":"2868:180:70","text":" @dev Decrease the calling contract's allowance toward `spender` by `value`. If `token` returns no value,\n non-reverting calls are assumed to be successful."},"implemented":true,"kind":"function","modifiers":[],"name":"safeDecreaseAllowance","nameLocation":"3062:21:70","parameters":{"id":56036,"nodeType":"ParameterList","parameters":[{"constant":false,"id":56031,"mutability":"mutable","name":"token","nameLocation":"3091:5:70","nodeType":"VariableDeclaration","scope":56072,"src":"3084:12:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":56030,"nodeType":"UserDefinedTypeName","pathNode":{"id":56029,"name":"IERC20","nameLocations":["3084:6:70"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"3084:6:70"},"referencedDeclaration":55825,"src":"3084:6:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":56033,"mutability":"mutable","name":"spender","nameLocation":"3106:7:70","nodeType":"VariableDeclaration","scope":56072,"src":"3098:15:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":56032,"name":"address","nodeType":"ElementaryTypeName","src":"3098:7:70","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":56035,"mutability":"mutable","name":"value","nameLocation":"3123:5:70","nodeType":"VariableDeclaration","scope":56072,"src":"3115:13:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":56034,"name":"uint256","nodeType":"ElementaryTypeName","src":"3115:7:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3083:46:70"},"returnParameters":{"id":56037,"nodeType":"ParameterList","parameters":[],"src":"3139:0:70"},"scope":56262,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":56119,"nodeType":"FunctionDefinition","src":"3756:410:70","nodes":[],"body":{"id":56118,"nodeType":"Block","src":"3833:333:70","nodes":[],"statements":[{"assignments":[56084],"declarations":[{"constant":false,"id":56084,"mutability":"mutable","name":"approvalCall","nameLocation":"3856:12:70","nodeType":"VariableDeclaration","scope":56118,"src":"3843:25:70","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":56083,"name":"bytes","nodeType":"ElementaryTypeName","src":"3843:5:70","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":56093,"initialValue":{"arguments":[{"expression":{"expression":{"id":56087,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56076,"src":"3894:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":56088,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3900:7:70","memberName":"approve","nodeType":"MemberAccess","referencedDeclaration":55812,"src":"3894:13:70","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) external returns (bool)"}},"id":56089,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3908:8:70","memberName":"selector","nodeType":"MemberAccess","src":"3894:22:70","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":56090,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56078,"src":"3918:7:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":56091,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56080,"src":"3927:5:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":56085,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3871:3:70","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":56086,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3875:18:70","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"3871:22:70","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":56092,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3871:62:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"3843:90:70"},{"condition":{"id":56098,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"!","prefix":true,"src":"3948:45:70","subExpression":{"arguments":[{"id":56095,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56076,"src":"3973:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},{"id":56096,"name":"approvalCall","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56084,"src":"3980:12:70","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":56094,"name":"_callOptionalReturnBool","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56261,"src":"3949:23:70","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_bytes_memory_ptr_$returns$_t_bool_$","typeString":"function (contract IERC20,bytes memory) returns (bool)"}},"id":56097,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3949:44:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":56117,"nodeType":"IfStatement","src":"3944:216:70","trueBody":{"id":56116,"nodeType":"Block","src":"3995:165:70","statements":[{"expression":{"arguments":[{"id":56100,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56076,"src":"4029:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},{"arguments":[{"expression":{"expression":{"id":56103,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56076,"src":"4059:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"id":56104,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4065:7:70","memberName":"approve","nodeType":"MemberAccess","referencedDeclaration":55812,"src":"4059:13:70","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$","typeString":"function (address,uint256) external returns (bool)"}},"id":56105,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4073:8:70","memberName":"selector","nodeType":"MemberAccess","src":"4059:22:70","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":56106,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56078,"src":"4083:7:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"hexValue":"30","id":56107,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4092:1:70","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":56101,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4036:3:70","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":56102,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4040:18:70","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"4036:22:70","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":56108,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4036:58:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":56099,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56213,"src":"4009:19:70","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":56109,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4009:86:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":56110,"nodeType":"ExpressionStatement","src":"4009:86:70"},{"expression":{"arguments":[{"id":56112,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56076,"src":"4129:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},{"id":56113,"name":"approvalCall","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56084,"src":"4136:12:70","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":56111,"name":"_callOptionalReturn","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56213,"src":"4109:19:70","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_contract$_IERC20_$55825_$_t_bytes_memory_ptr_$returns$__$","typeString":"function (contract IERC20,bytes memory)"}},"id":56114,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4109:40:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":56115,"nodeType":"ExpressionStatement","src":"4109:40:70"}]}}]},"documentation":{"id":56073,"nodeType":"StructuredDocumentation","src":"3466:285:70","text":" @dev Set the calling contract's allowance toward `spender` to `value`. If `token` returns no value,\n non-reverting calls are assumed to be successful. Compatible with tokens that require the approval to be set to\n 0 before setting it to a non-zero value."},"implemented":true,"kind":"function","modifiers":[],"name":"forceApprove","nameLocation":"3765:12:70","parameters":{"id":56081,"nodeType":"ParameterList","parameters":[{"constant":false,"id":56076,"mutability":"mutable","name":"token","nameLocation":"3785:5:70","nodeType":"VariableDeclaration","scope":56119,"src":"3778:12:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":56075,"nodeType":"UserDefinedTypeName","pathNode":{"id":56074,"name":"IERC20","nameLocations":["3778:6:70"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"3778:6:70"},"referencedDeclaration":55825,"src":"3778:6:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":56078,"mutability":"mutable","name":"spender","nameLocation":"3800:7:70","nodeType":"VariableDeclaration","scope":56119,"src":"3792:15:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":56077,"name":"address","nodeType":"ElementaryTypeName","src":"3792:7:70","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":56080,"mutability":"mutable","name":"value","nameLocation":"3817:5:70","nodeType":"VariableDeclaration","scope":56119,"src":"3809:13:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":56079,"name":"uint256","nodeType":"ElementaryTypeName","src":"3809:7:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3777:46:70"},"returnParameters":{"id":56082,"nodeType":"ParameterList","parameters":[],"src":"3833:0:70"},"scope":56262,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":56176,"nodeType":"FunctionDefinition","src":"4318:472:70","nodes":[],"body":{"id":56175,"nodeType":"Block","src":"4533:257:70","nodes":[],"statements":[{"assignments":[56141],"declarations":[{"constant":false,"id":56141,"mutability":"mutable","name":"nonceBefore","nameLocation":"4551:11:70","nodeType":"VariableDeclaration","scope":56175,"src":"4543:19:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":56140,"name":"uint256","nodeType":"ElementaryTypeName","src":"4543:7:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":56146,"initialValue":{"arguments":[{"id":56144,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56125,"src":"4578:5:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":56142,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56123,"src":"4565:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20Permit_$55886","typeString":"contract IERC20Permit"}},"id":56143,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4571:6:70","memberName":"nonces","nodeType":"MemberAccess","referencedDeclaration":55879,"src":"4565:12:70","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":56145,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4565:19:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"4543:41:70"},{"expression":{"arguments":[{"id":56150,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56125,"src":"4607:5:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":56151,"name":"spender","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56127,"src":"4614:7:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":56152,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56129,"src":"4623:5:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":56153,"name":"deadline","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56131,"src":"4630:8:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},{"id":56154,"name":"v","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56133,"src":"4640:1:70","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},{"id":56155,"name":"r","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56135,"src":"4643:1:70","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"id":56156,"name":"s","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56137,"src":"4646:1:70","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint256","typeString":"uint256"},{"typeIdentifier":"t_uint8","typeString":"uint8"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"id":56147,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56123,"src":"4594:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20Permit_$55886","typeString":"contract IERC20Permit"}},"id":56149,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4600:6:70","memberName":"permit","nodeType":"MemberAccess","referencedDeclaration":55871,"src":"4594:12:70","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$_t_uint8_$_t_bytes32_$_t_bytes32_$returns$__$","typeString":"function (address,address,uint256,uint256,uint8,bytes32,bytes32) external"}},"id":56157,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4594:54:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":56158,"nodeType":"ExpressionStatement","src":"4594:54:70"},{"assignments":[56160],"declarations":[{"constant":false,"id":56160,"mutability":"mutable","name":"nonceAfter","nameLocation":"4666:10:70","nodeType":"VariableDeclaration","scope":56175,"src":"4658:18:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":56159,"name":"uint256","nodeType":"ElementaryTypeName","src":"4658:7:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":56165,"initialValue":{"arguments":[{"id":56163,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56125,"src":"4692:5:70","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":56161,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56123,"src":"4679:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20Permit_$55886","typeString":"contract IERC20Permit"}},"id":56162,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4685:6:70","memberName":"nonces","nodeType":"MemberAccess","referencedDeclaration":55879,"src":"4679:12:70","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$","typeString":"function (address) view external returns (uint256)"}},"id":56164,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4679:19:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"VariableDeclarationStatement","src":"4658:40:70"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":56171,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":56167,"name":"nonceAfter","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56160,"src":"4716:10:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":56170,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":56168,"name":"nonceBefore","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56141,"src":"4730:11:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":56169,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4744:1:70","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"4730:15:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"4716:29:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5361666545524332303a207065726d697420646964206e6f742073756363656564","id":56172,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4747:35:70","typeDescriptions":{"typeIdentifier":"t_stringliteral_cde8e927812a7a656f8f04e89ac4f4113d47940dd2125d11fcb8e0bd36bfc59d","typeString":"literal_string \"SafeERC20: permit did not succeed\""},"value":"SafeERC20: permit did not succeed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_cde8e927812a7a656f8f04e89ac4f4113d47940dd2125d11fcb8e0bd36bfc59d","typeString":"literal_string \"SafeERC20: permit did not succeed\""}],"id":56166,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"4708:7:70","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":56173,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4708:75:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":56174,"nodeType":"ExpressionStatement","src":"4708:75:70"}]},"documentation":{"id":56120,"nodeType":"StructuredDocumentation","src":"4172:141:70","text":" @dev Use a ERC-2612 signature to set the `owner` approval toward `spender` on `token`.\n Revert on invalid signature."},"implemented":true,"kind":"function","modifiers":[],"name":"safePermit","nameLocation":"4327:10:70","parameters":{"id":56138,"nodeType":"ParameterList","parameters":[{"constant":false,"id":56123,"mutability":"mutable","name":"token","nameLocation":"4360:5:70","nodeType":"VariableDeclaration","scope":56176,"src":"4347:18:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20Permit_$55886","typeString":"contract IERC20Permit"},"typeName":{"id":56122,"nodeType":"UserDefinedTypeName","pathNode":{"id":56121,"name":"IERC20Permit","nameLocations":["4347:12:70"],"nodeType":"IdentifierPath","referencedDeclaration":55886,"src":"4347:12:70"},"referencedDeclaration":55886,"src":"4347:12:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20Permit_$55886","typeString":"contract IERC20Permit"}},"visibility":"internal"},{"constant":false,"id":56125,"mutability":"mutable","name":"owner","nameLocation":"4383:5:70","nodeType":"VariableDeclaration","scope":56176,"src":"4375:13:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":56124,"name":"address","nodeType":"ElementaryTypeName","src":"4375:7:70","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":56127,"mutability":"mutable","name":"spender","nameLocation":"4406:7:70","nodeType":"VariableDeclaration","scope":56176,"src":"4398:15:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":56126,"name":"address","nodeType":"ElementaryTypeName","src":"4398:7:70","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":56129,"mutability":"mutable","name":"value","nameLocation":"4431:5:70","nodeType":"VariableDeclaration","scope":56176,"src":"4423:13:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":56128,"name":"uint256","nodeType":"ElementaryTypeName","src":"4423:7:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":56131,"mutability":"mutable","name":"deadline","nameLocation":"4454:8:70","nodeType":"VariableDeclaration","scope":56176,"src":"4446:16:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":56130,"name":"uint256","nodeType":"ElementaryTypeName","src":"4446:7:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":56133,"mutability":"mutable","name":"v","nameLocation":"4478:1:70","nodeType":"VariableDeclaration","scope":56176,"src":"4472:7:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":56132,"name":"uint8","nodeType":"ElementaryTypeName","src":"4472:5:70","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":56135,"mutability":"mutable","name":"r","nameLocation":"4497:1:70","nodeType":"VariableDeclaration","scope":56176,"src":"4489:9:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":56134,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4489:7:70","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"},{"constant":false,"id":56137,"mutability":"mutable","name":"s","nameLocation":"4516:1:70","nodeType":"VariableDeclaration","scope":56176,"src":"4508:9:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":56136,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4508:7:70","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"4337:186:70"},"returnParameters":{"id":56139,"nodeType":"ParameterList","parameters":[],"src":"4533:0:70"},"scope":56262,"stateMutability":"nonpayable","virtual":false,"visibility":"internal"},{"id":56213,"nodeType":"FunctionDefinition","src":"5173:642:70","nodes":[],"body":{"id":56212,"nodeType":"Block","src":"5243:572:70","nodes":[],"statements":[{"assignments":[56186],"declarations":[{"constant":false,"id":56186,"mutability":"mutable","name":"returndata","nameLocation":"5605:10:70","nodeType":"VariableDeclaration","scope":56212,"src":"5592:23:70","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":56185,"name":"bytes","nodeType":"ElementaryTypeName","src":"5592:5:70","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":56195,"initialValue":{"arguments":[{"id":56192,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56182,"src":"5646:4:70","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"hexValue":"5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564","id":56193,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5652:34:70","typeDescriptions":{"typeIdentifier":"t_stringliteral_47fb62c2c272651d2f0f342bac006756b8ba07f21cc5cb87e0fbb9d50c0c585b","typeString":"literal_string \"SafeERC20: low-level call failed\""},"value":"SafeERC20: low-level call failed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_stringliteral_47fb62c2c272651d2f0f342bac006756b8ba07f21cc5cb87e0fbb9d50c0c585b","typeString":"literal_string \"SafeERC20: low-level call failed\""}],"expression":{"arguments":[{"id":56189,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56180,"src":"5626:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}],"id":56188,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5618:7:70","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":56187,"name":"address","nodeType":"ElementaryTypeName","src":"5618:7:70","typeDescriptions":{}}},"id":56190,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5618:14:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":56191,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5633:12:70","memberName":"functionCall","nodeType":"MemberAccess","referencedDeclaration":56397,"src":"5618:27:70","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$_t_string_memory_ptr_$returns$_t_bytes_memory_ptr_$attached_to$_t_address_$","typeString":"function (address,bytes memory,string memory) returns (bytes memory)"}},"id":56194,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5618:69:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"5592:95:70"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":56208,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":56200,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":56197,"name":"returndata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56186,"src":"5705:10:70","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":56198,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5716:6:70","memberName":"length","nodeType":"MemberAccess","src":"5705:17:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":56199,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5726:1:70","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5705:22:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":56203,"name":"returndata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56186,"src":"5742:10:70","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":56205,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5755:4:70","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"},"typeName":{"id":56204,"name":"bool","nodeType":"ElementaryTypeName","src":"5755:4:70","typeDescriptions":{}}}],"id":56206,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"5754:6:70","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"}],"expression":{"id":56201,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"5731:3:70","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":56202,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"5735:6:70","memberName":"decode","nodeType":"MemberAccess","src":"5731:10:70","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":56207,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5731:30:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"5705:56:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"5361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564","id":56209,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5763:44:70","typeDescriptions":{"typeIdentifier":"t_stringliteral_e11ad79d1e4a7f2e5f376964cb99e8e8f7904e3fc16a109f7a7ecb9aa7956dcd","typeString":"literal_string \"SafeERC20: ERC20 operation did not succeed\""},"value":"SafeERC20: ERC20 operation did not succeed"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_e11ad79d1e4a7f2e5f376964cb99e8e8f7904e3fc16a109f7a7ecb9aa7956dcd","typeString":"literal_string \"SafeERC20: ERC20 operation did not succeed\""}],"id":56196,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5697:7:70","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":56210,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5697:111:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":56211,"nodeType":"ExpressionStatement","src":"5697:111:70"}]},"documentation":{"id":56177,"nodeType":"StructuredDocumentation","src":"4796:372:70","text":" @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement\n on the return value: the return value is optional (but if data is returned, it must not be false).\n @param token The token targeted by the call.\n @param data The call data (encoded using abi.encode or one of its variants)."},"implemented":true,"kind":"function","modifiers":[],"name":"_callOptionalReturn","nameLocation":"5182:19:70","parameters":{"id":56183,"nodeType":"ParameterList","parameters":[{"constant":false,"id":56180,"mutability":"mutable","name":"token","nameLocation":"5209:5:70","nodeType":"VariableDeclaration","scope":56213,"src":"5202:12:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":56179,"nodeType":"UserDefinedTypeName","pathNode":{"id":56178,"name":"IERC20","nameLocations":["5202:6:70"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"5202:6:70"},"referencedDeclaration":55825,"src":"5202:6:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":56182,"mutability":"mutable","name":"data","nameLocation":"5229:4:70","nodeType":"VariableDeclaration","scope":56213,"src":"5216:17:70","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":56181,"name":"bytes","nodeType":"ElementaryTypeName","src":"5216:5:70","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"5201:33:70"},"returnParameters":{"id":56184,"nodeType":"ParameterList","parameters":[],"src":"5243:0:70"},"scope":56262,"stateMutability":"nonpayable","virtual":false,"visibility":"private"},{"id":56261,"nodeType":"FunctionDefinition","src":"6316:594:70","nodes":[],"body":{"id":56260,"nodeType":"Block","src":"6405:505:70","nodes":[],"statements":[{"assignments":[56225,56227],"declarations":[{"constant":false,"id":56225,"mutability":"mutable","name":"success","nameLocation":"6706:7:70","nodeType":"VariableDeclaration","scope":56260,"src":"6701:12:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":56224,"name":"bool","nodeType":"ElementaryTypeName","src":"6701:4:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"},{"constant":false,"id":56227,"mutability":"mutable","name":"returndata","nameLocation":"6728:10:70","nodeType":"VariableDeclaration","scope":56260,"src":"6715:23:70","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":56226,"name":"bytes","nodeType":"ElementaryTypeName","src":"6715:5:70","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":56235,"initialValue":{"arguments":[{"id":56233,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56219,"src":"6762:4:70","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"expression":{"arguments":[{"id":56230,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56217,"src":"6750:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}],"id":56229,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6742:7:70","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":56228,"name":"address","nodeType":"ElementaryTypeName","src":"6742:7:70","typeDescriptions":{}}},"id":56231,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6742:14:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":56232,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6757:4:70","memberName":"call","nodeType":"MemberAccess","src":"6742:19:70","typeDescriptions":{"typeIdentifier":"t_function_barecall_payable$_t_bytes_memory_ptr_$returns$_t_bool_$_t_bytes_memory_ptr_$","typeString":"function (bytes memory) payable returns (bool,bytes memory)"}},"id":56234,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6742:25:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bool_$_t_bytes_memory_ptr_$","typeString":"tuple(bool,bytes memory)"}},"nodeType":"VariableDeclarationStatement","src":"6700:67:70"},{"expression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":56258,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":56250,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":56236,"name":"success","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56225,"src":"6796:7:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"components":[{"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":56248,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":56240,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":56237,"name":"returndata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56227,"src":"6808:10:70","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":56238,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6819:6:70","memberName":"length","nodeType":"MemberAccess","src":"6808:17:70","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"==","rightExpression":{"hexValue":"30","id":56239,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6829:1:70","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"6808:22:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"||","rightExpression":{"arguments":[{"id":56243,"name":"returndata","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56227,"src":"6845:10:70","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"components":[{"id":56245,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6858:4:70","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"},"typeName":{"id":56244,"name":"bool","nodeType":"ElementaryTypeName","src":"6858:4:70","typeDescriptions":{}}}],"id":56246,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"TupleExpression","src":"6857:6:70","typeDescriptions":{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"},{"typeIdentifier":"t_type$_t_bool_$","typeString":"type(bool)"}],"expression":{"id":56241,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6834:3:70","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":56242,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6838:6:70","memberName":"decode","nodeType":"MemberAccess","src":"6834:10:70","typeDescriptions":{"typeIdentifier":"t_function_abidecode_pure$__$returns$__$","typeString":"function () pure"}},"id":56247,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6834:30:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"6808:56:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}}],"id":56249,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6807:58:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"6796:69:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"arguments":[{"arguments":[{"id":56255,"name":"token","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56217,"src":"6896:5:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}],"id":56254,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6888:7:70","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":56253,"name":"address","nodeType":"ElementaryTypeName","src":"6888:7:70","typeDescriptions":{}}},"id":56256,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6888:14:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":56251,"name":"Address","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":56637,"src":"6869:7:70","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_Address_$56637_$","typeString":"type(library Address)"}},"id":56252,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6877:10:70","memberName":"isContract","nodeType":"MemberAccess","referencedDeclaration":56325,"src":"6869:18:70","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_address_$returns$_t_bool_$","typeString":"function (address) view returns (bool)"}},"id":56257,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6869:34:70","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"6796:107:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"functionReturnParameters":56223,"id":56259,"nodeType":"Return","src":"6777:126:70"}]},"documentation":{"id":56214,"nodeType":"StructuredDocumentation","src":"5821:490:70","text":" @dev Imitates a Solidity high-level call (i.e. a regular function call to a contract), relaxing the requirement\n on the return value: the return value is optional (but if data is returned, it must not be false).\n @param token The token targeted by the call.\n @param data The call data (encoded using abi.encode or one of its variants).\n This is a variant of {_callOptionalReturn} that silents catches all reverts and returns a bool instead."},"implemented":true,"kind":"function","modifiers":[],"name":"_callOptionalReturnBool","nameLocation":"6325:23:70","parameters":{"id":56220,"nodeType":"ParameterList","parameters":[{"constant":false,"id":56217,"mutability":"mutable","name":"token","nameLocation":"6356:5:70","nodeType":"VariableDeclaration","scope":56261,"src":"6349:12:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"},"typeName":{"id":56216,"nodeType":"UserDefinedTypeName","pathNode":{"id":56215,"name":"IERC20","nameLocations":["6349:6:70"],"nodeType":"IdentifierPath","referencedDeclaration":55825,"src":"6349:6:70"},"referencedDeclaration":55825,"src":"6349:6:70","typeDescriptions":{"typeIdentifier":"t_contract$_IERC20_$55825","typeString":"contract IERC20"}},"visibility":"internal"},{"constant":false,"id":56219,"mutability":"mutable","name":"data","nameLocation":"6376:4:70","nodeType":"VariableDeclaration","scope":56261,"src":"6363:17:70","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":56218,"name":"bytes","nodeType":"ElementaryTypeName","src":"6363:5:70","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"6348:33:70"},"returnParameters":{"id":56223,"nodeType":"ParameterList","parameters":[{"constant":false,"id":56222,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":56261,"src":"6399:4:70","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":56221,"name":"bool","nodeType":"ElementaryTypeName","src":"6399:4:70","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"visibility":"internal"}],"src":"6398:6:70"},"scope":56262,"stateMutability":"nonpayable","virtual":false,"visibility":"private"}],"abstract":false,"baseContracts":[],"canonicalName":"SafeERC20","contractDependencies":[],"contractKind":"library","documentation":{"id":55892,"nodeType":"StructuredDocumentation","src":"243:457:70","text":" @title SafeERC20\n @dev Wrappers around ERC20 operations that throw on failure (when the token\n contract returns false). Tokens that return no value (and instead revert or\n throw on failure) are also supported, non-reverting calls are assumed to be\n successful.\n To use this library you can add a `using SafeERC20 for IERC20;` statement to your contract,\n which allows you to call the safe operations as `token.safeTransfer(...)`, etc."},"fullyImplemented":true,"linearizedBaseContracts":[56262],"name":"SafeERC20","nameLocation":"709:9:70","scope":56263,"usedErrors":[]}],"license":"MIT"},"id":70} \ No newline at end of file diff --git a/pkg/contracts/out/UpgradeCVMultichainProd.s.sol/UpgradeCVMultichainProd.json b/pkg/contracts/out/UpgradeCVMultichainProd.s.sol/UpgradeCVMultichainProd.json deleted file mode 100644 index b3a32f0b7..000000000 --- a/pkg/contracts/out/UpgradeCVMultichainProd.s.sol/UpgradeCVMultichainProd.json +++ /dev/null @@ -1 +0,0 @@ -{"abi":[{"type":"function","name":"BENEFICIARY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"COUNCIL_SAFE","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"CURRENT_NETWORK","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"DECIMALS","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"ETH_SEPOLIA","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"IS_SCRIPT","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"IS_TEST","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"MINIMUM_STAKE","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":"REGISTRY_FACTORY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SAFE_FACTORY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SAFE_NONCE","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"SAFE_PROXY_FACTORY","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SAFE_SINGLETON","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"SENDER","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"TOKEN","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"WAIT_TIME","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"__createContract","inputs":[{"name":"bytecode","type":"bytes","internalType":"bytes"}],"outputs":[{"name":"_contract","type":"address","internalType":"address"}],"stateMutability":"nonpayable"},{"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":"_councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"_councilSafeWithOwner","inputs":[{"name":"_owner","type":"address","internalType":"address"},{"name":"_safeProxyFactory","type":"address","internalType":"contract SafeProxyFactory"}],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"_councilSafeWithOwner","inputs":[{"name":"_owner","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"_createSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"nonpayable"},{"type":"function","name":"_createSafeProxyFactory","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract SafeProxyFactory"}],"stateMutability":"nonpayable"},{"type":"function","name":"_nonce","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"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":"councilMember1","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"councilMemberPK","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"councilSafe","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"type":"function","name":"councilSafeOwner","inputs":[],"outputs":[{"name":"","type":"address","internalType":"contract ISafe"}],"stateMutability":"view"},{"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":"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":"getDecay","inputs":[{"name":"strategy","type":"address","internalType":"contract CVStrategyV0_0"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"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"}]},{"name":"initialAllowlist","type":"address[]","internalType":"address[]"},{"name":"sybilScorer","type":"address","internalType":"address"},{"name":"sybilScorerThreshold","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":"sybilScorerThreshold","type":"uint256","internalType":"uint256"},{"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"},{"type":"function","name":"run","inputs":[{"name":"network","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"run","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"runCurrentNetwork","inputs":[{"name":"networkJson","type":"string","internalType":"string"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"safeHelper","inputs":[{"name":"councilSafe_","type":"address","internalType":"contract ISafe"},{"name":"councilMemberPK_","type":"uint256","internalType":"uint256"},{"name":"to_","type":"address","internalType":"address"},{"name":"data_","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"safeHelper","inputs":[{"name":"to_","type":"address","internalType":"address"},{"name":"value_","type":"uint256","internalType":"uint256"},{"name":"data_","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"safeHelper","inputs":[{"name":"councilSafe_","type":"address","internalType":"contract ISafe"},{"name":"councilMemberPK_","type":"uint256","internalType":"uint256"},{"name":"to_","type":"address","internalType":"address"},{"name":"data_","type":"bytes","internalType":"bytes"},{"name":"value_","type":"uint256","internalType":"uint256"}],"outputs":[],"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":"0x608034620002f857600c805460ff191660019081179091556001600160401b03916040919080830184811182821017620002e25783528181528251916060830183811086821117620002e2578452602e83526020917f516d57347a464c464a524e374a3637457a4e6d64433272324d397532694a4468838501526d6132666a3547656536684a7a535960901b858501528383820152516015558251948511620002e257620000af601654620002fd565b92601f93848111620002a4575b508290848711600114620002245795809173c583789751910e39fd2ddb988ad05567bcd81334969760009262000218575b5050600019600383901b1c191690821b176016555b61010161ffff1960215416176021556024556000602555670de0b6b3a764000060275560018060a01b03199173b05a948b5c1b057b88d381bde3a375efea87ebad836028541617602855614e20602d556200015f602e54620002fd565b818111620001f4575b507f6172627365706f6c696100000000000000000000000000000000000000000014602e55602f546200019b90620002fd565b90808211620001d0575b505050600e667365706f6c696160c81b01602f556030541617603055516201215f9081620003548239f35b620001eb92602f600052600020910160051c8101906200033a565b388080620001a5565b6200021190602e6000528284600020910160051c8101906200033a565b3862000168565b015190503880620000ed565b90601f198716916016600052846000209260005b8181106200028e5750918493918973c583789751910e39fd2ddb988ad05567bcd81334999a941062000274575b505050811b0160165562000102565b015160001960f88460031b161c1916905538808062000265565b8284015185559385019392860192860162000238565b620002d19060166000528460002086808a0160051c820192878b10620002d8575b0160051c01906200033a565b38620000bc565b92508192620002c5565b634e487b7160e01b600052604160045260246000fd5b600080fd5b90600182811c921680156200032f575b60208310146200031957565b634e487b7160e01b600052602260045260246000fd5b91607f16916200030d565b81811062000346575050565b600081556001016200033a56fe608060405260043610156200001357600080fd5b60003560e01c8062b1fad714620005c2578063023a6f4314620005bc578063030e400614620005b65780630522b7db14620005b05780630688b13514620005aa57806308c24f9f14620005a457806308dbbb03146200059e5780630f166ad41462000598578063174eedde14620004a85780631ae726d914620005925780631b96dce6146200058c5780631d8fcc1014620005865780631e7bcb2e14620005805780631ed7831c146200057a5780632ade388014620005745780632e0f2625146200056e5780632f99c6cc1462000568578063352c94a7146200056257806337d1c404146200055c578063388aef5c1462000556578063392f37e914620005505780633e5e3c23146200054a5780633f26479e14620005445780633f7286f4146200053e57806349ef42c114620005385780634bf4ba211462000532578063587c1243146200052c5780635aff599914620005265780635d1222aa14620005205780635d6b4bc2146200051a5780635e2dd44214620005145780636050f2f814620004a257806366d003ac146200050e57806366d9a9a014620005085780636a38dd0a14620005025780636c53db9a14620004fc5780636db5251014620004f657806370a3294414620004f057806374d9284e14620004a8578063759c9a8614620004ea5780637658524d14620004e457806379e62d0d14620004de5780637b2edf3214620004d85780637cbe79ed14620004d25780637f6a80df14620004cc578063829e423f14620004a857806382bfefc814620004c657806385226c8114620004c057806385294f1814620004ba578063861ceb6914620004b4578063896546a114620004ae5780638c7408c414620004a85780638e0d1a5014620004a25780638e3c2493146200049c578063916a17c614620004965780639352fad2146200049057806393892107146200048a578063a0cf0aea1462000484578063a407c67a146200047e578063aa3744bd1462000478578063b3e9b4fd1462000472578063b5508aa9146200046c578063ba414fa61462000466578063bb0504cd1462000460578063c0406226146200045a578063c1f2a6411462000454578063caa12add146200044e578063d1e82b581462000448578063d1f2cd881462000442578063d23727ed146200043c578063d5bee9f51462000436578063da4bf0871462000430578063dac4eb16146200042a578063dac770b31462000424578063e070e0ab146200041e578063e20c9f711462000418578063e99ce9111462000412578063ef0d790f146200040c578063f4d914e61462000406578063f69d511f1462000400578063f8ccbf4714620003fa5763fa7626d414620003f457600080fd5b620034b6565b62003491565b62003450565b620033af565b62003350565b62003221565b620031b8565b62003105565b62002ca8565b62002c4e565b62002b33565b62002adc565b62002aab565b62002a51565b620029f5565b620029c4565b6200295e565b6200292c565b6200290d565b620028e4565b62002844565b62002797565b620025d4565b620024d9565b620024a8565b6200247d565b62002462565b620022fa565b620022dc565b6200175e565b62000c19565b620022b1565b62002286565b6200218d565b62001ffd565b62001fbf565b62001f94565b62001f3e565b62001f20565b62001e25565b62001e05565b62001dad565b62001c75565b62001c10565b62001be1565b62001bc3565b620018a8565b62001789565b62001743565b6200166a565b6200164a565b620015ee565b620015d0565b6200159a565b6200157b565b62001512565b620014f3565b6200148a565b6200138f565b6200136f565b62001306565b62001189565b62000fb8565b62000f93565b62000efb565b62000d57565b62000ce7565b62000cc9565b62000c6f565b62000c37565b62000bfc565b62000bdc565b62000b8e565b62000b38565b62000b0d565b62000aae565b620008ef565b620005f8565b6000910312620005d457565b600080fd5b6001600160a01b031690565b6001600160a01b03909116815260200190565b34620005d45760008060031936011262000747576200061662003534565b620006676040516020810190620006428162000633848762003765565b03601f19810183528262000852565b5190206040516001625e79b760e01b0319815260048101919091529081906024820190565b03916020826000805160206201208a8339815191529481865afa92831562000706578492839462000710575b50803b156200070c57620006bf916040519586809481936318caf8e360e31b8352886004840162003796565b03925af19182156200070657620006e492620006e8575b5060405191829182620005e5565b0390f35b80620006f8620006ff9262000772565b80620005c8565b38620006d6565b620036c2565b8280fd5b6200073791945060203d81116200073f575b6200072e818362000852565b8101906200377e565b923862000693565b503d62000722565b80fd5b6001600160a01b03811603620005d457565b634e487b7160e01b600052604160045260246000fd5b6001600160401b0381116200078657604052565b6200075c565b604081019081106001600160401b038211176200078657604052565b60c081019081106001600160401b038211176200078657604052565b602081019081106001600160401b038211176200078657604052565b608081019081106001600160401b038211176200078657604052565b606081019081106001600160401b038211176200078657604052565b610f0081019081106001600160401b038211176200078657604052565b615a0081019081106001600160401b038211176200078657604052565b601f909101601f19168101906001600160401b038211908210176200078657604052565b6001600160401b0381116200078657601f01601f191660200190565b929192620008a08262000876565b91620008b0604051938462000852565b829481845281830111620005d4578281602093846000960137010152565b9080601f83011215620005d457816020620008ec9335910162000892565b90565b34620005d4576080366003190112620005d45760043562000910816200074a565b604435906200091f826200074a565b606435906001600160401b038211620005d457620009466200097e923690600401620008ce565b906060620009568284876200c017565b6040516338d07aa960e21b815260248035600483015281019190915293849081906044820190565b03816000805160206201208a8339815191525afa9182156200070657620009f89460209460008091819662000a63575b5060009291620009cb620009da926040519889938b85016200bf9e565b03601f19810187528662000852565b60405163353b090160e11b815296879586948593600485016200bcf0565b03926001600160a01b03165af18015620007065762000a2c9160009162000a2e575b5062000a256200bdb6565b906200bf0c565b005b62000a54915060203d811162000a5b575b62000a4b818362000852565b8101906200bcd6565b3862000a1a565b503d62000a3f565b620009cb96506000939250620009da915062000a999060603d811162000aa6575b62000a90818362000852565b8101906200bf77565b97509293909150620009ae565b503d62000a84565b34620005d457600080600319360112620007475760405162000ad0816200078c565b6013815272383937b334b63298afb737ba20a6b2b6b132b960691b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576000366003190112620005d4576022546040516001600160a01b039091168152602090f35b34620005d457600080600319360112620007475760405162000b5a816200078c565b600a8152693932b1b4b834b2b73a1960b11b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576040366003190112620005d457602062000bca60043562000bb5816200074a565b6024359062000bc4826200074a565b6200b9d2565b6040516001600160a01b039091168152f35b34620005d4576000366003190112620005d4576020602754604051908152f35b34620005d4576000366003190112620005d4576020604051308152f35b34620005d4576000366003190112620005d457602060405160008152f35b34620005d4576020366003190112620005d457602062000bca60043562000c5e816200074a565b62000c68620055b3565b906200b9d2565b34620005d457600080600319360112620007475760405162000c91816200078c565b600e81526d383937b334b632992fb7bbb732b960911b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576000366003190112620005d457602060405160038152f35b34620005d457600080600319360112620007475762000616620035fa565b90815180825260208080930193019160005b82811062000d26575050505090565b83516001600160a01b03168552938101939281019260010162000d17565b906020620008ec92818152019062000d05565b34620005d457600080600319360112620007475760405180918260195480845260208094019060198452848420935b8582821062000db65750505062000da09250038362000852565b620006e460405192828493845283019062000d05565b85546001600160a01b031684526001958601958895509301920162000d86565b60005b83811062000dea5750506000910152565b818101518382015260200162000dd9565b9060209162000e168151809281855285808601910162000dd6565b601f01601f1916010190565b90815180825260208092019182818360051b85019501936000915b84831062000e4e5750505050505090565b909192939495848062000e6a83856001950387528a5162000dfb565b980193019301919493929062000e3d565b602080820190808352835180925260409283810182858560051b8401019601946000925b85841062000eb1575050505050505090565b90919293949596858062000ee9600193603f1986820301885286838d51878060a01b0381511684520151918185820152019062000e22565b99019401940192959493919062000e9f565b34620005d4576000806003193601126200074757602090815462000f1f816200127c565b9160409362000f318551948562000852565b8284528082528082208185015b84841062000f5557865180620006e4888262000e7b565b600283600192895162000f68816200078c565b848060a01b03865416815262000f8085870162003893565b8382015281520192019301929062000f3e565b34620005d4576000366003190112620005d4576020604051670de0b6b3a76400008152f35b34620005d4576000366003190112620005d4576030546040516001600160a01b039091168152602090f35b90600182811c9216801562001015575b602083101462000fff57565b634e487b7160e01b600052602260045260246000fd5b91607f169162000ff3565b9060009291805491620010338362000fe3565b9182825260019384811690816000146200109a575060011462001057575b50505050565b90919394506000526020928360002092846000945b8386106200108557505050500101903880808062001051565b8054858701830152940193859082016200106c565b9294505050602093945060ff191683830152151560051b0101903880808062001051565b6040519060008260385491620010d48362000fe3565b80835260019380851690811562001153575060011462001100575b50620010fe9250038362000852565b565b603860009081526000805160206201206a83398151915294602093509091905b8183106200113a575050620010fe935082010138620010ef565b8554888401850152948501948794509183019162001120565b9050620010fe94506020925060ff191682840152151560051b82010138620010ef565b906020620008ec92818152019062000dfb565b34620005d457600080600319360112620007475760405181602f54620011af8162000fe3565b80845290600190818116908115620012515750600114620011f3575b620006e484620011de8188038262000852565b60405191829160208352602083019062000dfb565b602f8352602094507fa813484aef6fb598f9f753daf162068ff39ccea4075cb95e1a30f86995b5b7ee5b8284106200123d5750505081620006e493620011de9282010193620011cb565b80548585018701529285019281016200121d565b620006e49650620011de9450602092508593915060ff191682840152151560051b82010193620011cb565b6001600160401b038111620007865760051b60200190565b81601f82011215620005d457803591620012ae836200127c565b92620012be604051948562000852565b808452602092838086019260051b820101928311620005d4578301905b828210620012ea575050505090565b8380918335620012fa816200074a565b815201910190620012db565b34620005d4576060366003190112620005d45760043562001327816200074a565b6024359062001336826200074a565b604435906001600160401b038211620005d457602092620013606200136793369060040162001294565b9162004ed0565b604051908152f35b34620005d4576000366003190112620005d4576020602d54604051908152f35b34620005d4576000806003193601126200074757601554604051918281601654620013ba8162000fe3565b8084529060019081811690811562001465575060011462001404575b5050620013e69250038362000852565b620006e4604051928392835260406020840152604083019062000dfb565b601685527fd833147d7dc355ba459fc788f669e58cfaf9dc25ddcd0702e87d69c7b5124289946020935091905b8183106200144c575050620013e693508201013880620013d6565b8554888401850152948501948794509183019162001431565b915050620013e694506020925060ff191682840152151560051b8201013880620013d6565b34620005d4576000806003193601126200074757604051809182601b54808452602080940190601b8452848420935b85828210620014d35750505062000da09250038362000852565b85546001600160a01b0316845260019586019588955093019201620014b9565b34620005d4576000366003190112620005d45760206040516127108152f35b34620005d4576000806003193601126200074757604051809182601a54808452602080940190601a8452848420935b858282106200155b5750505062000da09250038362000852565b85546001600160a01b031684526001958601958895509301920162001541565b34620005d4576000366003190112620005d457602062000bca620065cb565b34620005d4576000366003190112620005d457620006e4620015bb620034de565b60405191829160208352602083019062000d05565b34620005d45760008060031936011262000747576200061662003656565b34620005d457600080600319360112620007475760405162001610816200078c565b601081526f726563697069656e744164647265737360801b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576000366003190112620005d4576020602554604051908152f35b34620005d4576020366003190112620005d4576004608081356200168e816200074a565b6040516302506b8760e41b815292839182906001600160a01b03165afa80156200070657600090620016c6575b604051908152602090f35b6080823d8211620016fa575b81620016e16080938362000852565b810103126200074757506040620006e4910151620016bb565b3d9150620016d2565b6020600319820112620005d457600435906001600160401b038211620005d45780602383011215620005d457816024620008ec9360040135910162000892565b34620005d45762000a2c620017583662001703565b62004516565b34620005d4576000366003190112620005d4576028546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200074757604051620017ab816200078c565b60098152681c9958da5c1a595b9d60ba1b6020820152620006676040516020810190620006428162000633848762003765565b6001600160e01b0319169052565b602080820190808352835180925260409283810182858560051b840101960194600080935b8685106200182457505050505050505090565b909192939480969798603f198382030186528951826060818885019360018060a01b038151168652015193888382015284518094520192019085905b808210620018835750505090806001929a01950195019396959492919062001811565b82516001600160e01b03191684528a9493840193909201916001919091019062001860565b34620005d4576000366003190112620005d457601e54620018c9816200127c565b620018d8604051918262000852565b818152601e60009081529160207f50bb669a95c7b50b7e8a6f09454034b2b14cf2b85c730dca9a539ca82cb6e3508184015b838610620019225760405180620006e48782620017ec565b8260405162001931816200078c565b83546001600160a01b031681526040516001850180548083526200195f602084015b92600052602060002090565b906000915b81600784011062001b0357938660029796948294620019d69460019b9854918482821062001ae7575b82821062001ac2575b82821062001a9d575b82821062001a78575b82821062001a53575b82821062001a2e575b82821062001a0a575b5010620019e9575b509050038262000852565b838201528152019201950194906200190a565b62001a009082906001600160e01b031916620017de565b01869038620019cb565b8462001a248f939663ffffffff60e01b87851b16620017de565b01930184620019c3565b8462001a498f939663ffffffff60e01b8760401b16620017de565b01930184620019ba565b8462001a6e8f939663ffffffff60e01b8760601b16620017de565b01930184620019b1565b8462001a938f939663ffffffff60e01b8760801b16620017de565b01930184620019a8565b8462001ab88f939663ffffffff60e01b8760a01b16620017de565b019301846200199f565b8462001add8f939663ffffffff60e01b8760c01b16620017de565b0193018462001996565b8462001af98f93968660e01b620017de565b019301846200198d565b939495509091600161010060089262001bb287548d60e062001b288584831b620017de565b6001600160e01b03199162001ba890838560c062001b4d8a850183831b8516620017de565b62001b9d60a062001b6660408d018686841b16620017de565b62001b8f8c868660609260809062001b858582018585851b16620017de565b01921b16620017de565b8b01848460401b16620017de565b8901921b16620017de565b84019116620017de565b019401920190889594939262001964565b34620005d4576000806003193601126200074757620006166200355f565b34620005d4576000366003190112620005d45760215460405160109190911c6001600160a01b03168152602090f35b34620005d4576060366003190112620005d45760043562001c31816200074a565b604435906001600160401b038211620005d45762001c5862000a2c923690600401620008ce565b602154602480549035939160101c6001600160a01b03166200bdea565b34620005d457600080600319360112620007475762001c93620034de565b62001c9d620035fa565b62001cba6040516020810190620006428162000633848762003765565b03916020826000805160206201208a8339815191529481865afa92831562000706578592839462001d88575b50803b156200070c5762001d12916040519687809481936318caf8e360e31b8352886004840162003796565b03925af19081156200070657620006e49362001d409262001d71575b5062001d3a83620035a0565b620035eb565b62001d6462001d5862001d5262003628565b620037ba565b5062001d3a83620035b4565b6040519182918262000d44565b80620006f862001d819262000772565b3862001d2e565b62001da591945060203d81116200073f576200072e818362000852565b923862001ce6565b34620005d457600080600319360112620007475760405162001dcf816200078c565b600c81526b1b9bd7dc9958da5c1a595b9d60a21b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576000366003190112620005d4576020602454604051908152f35b34620005d457600080600319360112620007475762001e43620034de565b62001e4d62003534565b62001e6a6040516020810190620006428162000633848762003765565b03916020826000805160206201208a8339815191529481865afa92831562000706578592839462001efb575b50803b156200070c5762001ec2916040519687809481936318caf8e360e31b8352886004840162003796565b03925af19081156200070657620006e49362001ee99262001d71575062001d3a83620035a0565b62001d6462001d5862001d526200355f565b62001f1891945060203d81116200073f576200072e818362000852565b923862001e96565b34620005d45760008060031936011262000747576200061662003628565b34620005d457600080600319360112620007475760405162001f60816200078c565b600a81526930b63637afb7bbb732b960b11b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576000366003190112620005d457602b546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d4576029546040516001600160a01b039091168152602090f35b906020620008ec92818152019062000e22565b34620005d4576000806003193601126200074757601d546200201f816200127c565b90604092620020318451938462000852565b818352601d815260207f6d4407e7be21f808e6509aa9fa9143369579dd7d760fe20a2c09680fc146134f8185015b8484106200207657865180620006e4888262001fea565b6001838192895162002096816200208e818962001020565b038262000852565b8152019201930192906200205f565b60031115620005d457565b60c435906004821015620005d457565b60c0906083190112620005d45760405190620020dc82620007a8565b81608435620020eb816200074a565b815260a435620020fb816200074a565b602082015260c435604082015260e435606082015261010435608082015260a061012435910152565b60c090610103190112620005d457604051906200214182620007a8565b816101043562002151816200074a565b81526101243562002162816200074a565b602082015261014435604082015261016435606082015261018435608082015260a06101a435910152565b34620005d4576101a0366003190112620005d457600435620021af816200074a565b602435620021bd816200074a565b60443591620021cc836200074a565b606435620021da816200074a565b608435620021e8816200074a565b60a43590620021f782620020a5565b62002201620020b0565b9260c03660e3190112620005d457620006e4966200227696604051966200222888620007a8565b60e43562002236816200074a565b88526101043562002247816200074a565b60208901526101243560408901526101443560608901526101643560808901526101843560a0890152620054a9565b6040519081529081906020820190565b34620005d4576000366003190112620005d457602c546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d4576023546040516001600160a01b039091168152602090f35b34620005d45760008060031936011262000747576200061662003684565b34620005d4576000366003190112620005d457601f546200231b816200127c565b6200232a604051918262000852565b818152601f60009081529160207fa03837a25210ee280c2113ff4b77ca23440b19d4866cca721c801278fd08d8078184015b838610620023745760405180620006e48782620017ec565b8260405162002383816200078c565b83546001600160a01b03168152604051600185018054808352620023aa6020840162001953565b906000915b8160078401106200242c57938660029796948294620024199460019b9854918482821062001ae75782821062001ac25782821062001a9d5782821062001a785782821062001a535782821062001a2e5782821062001a0a575010620019e957509050038262000852565b838201528152019201950194906200235c565b93949550909160016101006008926200245187548d60e062001b288584831b620017de565b0194019201908895949392620023af565b34620005d45762000a2c620024773662001703565b62003c62565b34620005d4576000366003190112620005d457602a546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d457602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b34620005d4576000806003193601126200074757620024f7620034de565b6200250162003656565b6200251e6040516020810190620006428162000633848762003765565b03916020826000805160206201208a8339815191529481865afa928315620007065785928394620025af575b50803b156200070c5762002576916040519687809481936318caf8e360e31b8352886004840162003796565b03925af19081156200070657620006e4936200259d9262001d71575062001d3a83620035a0565b62001d6462001d5862001d5262003684565b620025cc91945060203d81116200073f576200072e818362000852565b92386200254a565b34620005d4576000806003193601126200074757604051620025f6816200078c565b600a815269726563697069656e743160b01b6020820152620006676040516020810190620006428162000633848762003765565b6020906063190112620005d457604051906200264682620007c4565b6064358252565b634e487b7160e01b600052602160045260246000fd5b600311156200266e57565b6200264d565b9060038210156200266e5752565b9060048210156200266e5752565b610240620008ec9260208352620026c9602084018251606080918051845260208101516020850152604081015160408501520151910152565b620026dd602082015160a085019062002674565b620026f1604082015160c085019062002682565b60608101515160e084015260808181015180516001600160a01b03908116610100878101919091526020830151909116610120870152604082015161014087015260608201516101608701529181015161018086015260a001516101a08501529060a08101516001600160a01b03166101c085015260c08101516001600160a01b03166101e085015260e081015161020085015201519161022080820152019062000d05565b34620005d4576101a0366003190112620005d457600435620027b9816200074a565b60243590620027c882620020a5565b604435906004821015620005d457620027e1366200262a565b92620027ed36620020c0565b6101443593906001600160401b038511620005d457620006e4956200281b6200283796369060040162001294565b9261016435946200282c866200074a565b61018435966200512d565b6040519182918262002690565b34620005d4576000806003193601126200074757601c5462002866816200127c565b90604092620028788451938462000852565b818352601c815260207f0e4562a10381dec21b205ed72637e6b1b523bdd0e4d4d50af5cd23dd4500a2118185015b848410620028bd57865180620006e4888262001fea565b60018381928951620028d5816200208e818962001020565b815201920193019290620028a6565b34620005d4576000366003190112620005d457602062002903620036ce565b6040519015158152f35b34620005d4576000366003190112620005d457602062000bca620055b3565b34620005d45760008060031936011262000747576200295b6040516200295281620007c4565b82815262003c62565b80f35b34620005d45760a0366003190112620005d4576004356200297f816200074a565b604435906200298e826200074a565b606435916001600160401b038311620005d457620029b562000a2c933690600401620008ce565b9060843592602435906200bdea565b34620005d4576000366003190112620005d457602060405173dd4bda7bcda544d6da2aea8ab8b0e63d2f6dc7378152f35b34620005d457600080600319360112620007475760405162002a17816200078c565b601081526f3837b7b62fb737ba20a6b0b730b3b2b960811b6020820152620006676040516020810190620006428162000633848762003765565b34620005d457600080600319360112620007475760405162002a73816200078c565b600e81526d383937b334b63298afb7bbb732b960911b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576000366003190112620005d457602060405173bba817f97f133b87b9b7f1fc0f2c56e9f68d2edf8152f35b34620005d457600080600319360112620007475760405162002afe816200078c565b600b81526a1c985b991bdb4818da185960aa1b6020820152620006676040516020810190620006428162000633848762003765565b34620005d457600080600319360112620007475760405162002b55816200078c565b600d81526c616c6c6f5f747265617375727960981b602082015262002b8c6040516020810190620006428162000633848762003765565b03916020826000805160206201208a8339815191529481865afa92831562000706578492839462002c29575b50803b156200070c5762002be4916040519586809481936318caf8e360e31b8352886004840162003796565b03925af19182156200070657620006e49262002c12575b506040519182916001600160a01b031682620005e5565b80620006f862002c229262000772565b3862002bfb565b62002c4691945060203d81116200073f576200072e818362000852565b923862002bb8565b34620005d457600080600319360112620007475760405162002c70816200078c565b600e81526d3932b3b4b9ba393cafb7bbb732b960911b6020820152620006676040516020810190620006428162000633848762003765565b34620005d457600080600319360112620007475760245490604090815163ffa1864960e01b81526020908062002ce76004968783019190602083019252565b039082816000805160206201208a8339815191529381855afa8015620007065762002d37918591620030e3575b50602380546001600160a01b0319166001600160a01b0392909216919091179055565b62002d44602354620005d9565b91813b156200308b5784516318caf8e360e31b8082526001600160a01b03909416878201908152604060208201819052600e908201526d636f756e63696c4d656d6265723160901b6060820152859082908190608001038183875af180156200070657620030cc575b5060018060a01b038062002dcd62002dc76021546200bc7e565b620005d9565b161562002df3575b620006e48662002de76021546200bc7e565b905191829182620005e5565b8062002dfe620055b3565b62002e3262002e1062002dc7620065cb565b602680546001600160a01b0319166001600160a01b0392909216919091179055565b16833b15620030c85786519085825286828062002e84848d830160809160018060a01b0316815260406020820152601060408201526f5361666550726f7879466163746f727960801b60608201520190565b038183895af1908115620007065762002ed6928592620030b1575b5062002ead602654620005d9565b9062002eb86200bc8d565b91898c8c5196879586948593631688f0b960e01b855284016200bca9565b03925af1908115620007065762002f1b9387926200308f575b50506021805462010000600160b01b0319169290911660101b62010000600160b01b0316919091179055565b62002f2c62002dc76021546200bc7e565b91813b156200308b5784519081526001600160a01b03909216858301908152604060208201819052600b908201526a636f756e63696c5361666560a81b60608201528391839182908490829060800103925af18015620007065762003074575b5062002f97620034fb565b62002fb362002fa8602354620005d9565b62001d3a83620035a0565b62002fdb62002fc282620035b4565b73f39fd6e51aad88f6f4ce6ab8827279cfffb922669052565b6200300362002fea82620035c5565b7370997970c51812dc3a010c7d01b50e0d17dc79c89052565b6200301462002dc76021546200bc7e565b803b156200070c576200303c9483855180978195829463b63e800d60e01b845283016200b985565b03925af19182156200070657620006e4926200305d575b8080808062002dd5565b80620006f86200306d9262000772565b3862003053565b80620006f8620030849262000772565b3862002f8c565b8380fd5b620030a99250803d106200073f576200072e818362000852565b388062002eef565b80620006f8620030c19262000772565b3862002e9f565b8580fd5b80620006f8620030dc9262000772565b3862002dad565b620030fe9150843d86116200073f576200072e818362000852565b3862002d14565b34620005d4576101c0366003190112620005d45760043562003127816200074a565b6024359062003136826200074a565b6044359062003145826200074a565b6064359262003154846200074a565b60843562003162816200074a565b60a4356200317081620020a5565b6200317a620020b0565b9160203660e3190112620005d457620006e496620022769660405195620031a187620007c4565b60e4358752620031b13662002124565b9762005302565b34620005d457600080600319360112620007475760405180918260185480845260208094019060188452848420935b85828210620032015750505062000da09250038362000852565b85546001600160a01b0316845260019586019588955093019201620031e7565b34620005d4576080366003190112620005d457606435600160801b62989680608083901b04818110156200330c57600435805b620032c657620006e462002276620032c0620032ba86620032b389620032ac620032a5620032856024358662004444565b946200329e620032976044356200440e565b916200498a565b9062004444565b916200499d565b90620054ce565b9062004508565b620044ba565b60801c90565b600191818316620032ea5780620032dd91620054ef565b911c90815b909162003254565b915091620032fd826200330492620054ef565b926200497a565b9081620032e2565b60405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b34620005d457600080600319360112620007475760405162003372816200078c565b6013815272383937b334b632992fb737ba20a6b2b6b132b960691b6020820152620006676040516020810190620006428162000633848762003765565b34620005d457600080600319360112620007475760405181602e54620033d58162000fe3565b808452906001908181169081156200125157506001146200340357620006e484620011de8188038262000852565b602e835260209450600080516020620120ca8339815191525b8284106200343c5750505081620006e493620011de9282010193620011cb565b80548585018701529285019281016200341c565b34620005d4576020366003190112620005d4576004356001600160401b038111620005d45762000bca6200348b6020923690600401620008ce565b6200b929565b34620005d4576000366003190112620005d457602060ff602154166040519015158152f35b34620005d4576000366003190112620005d457602060ff60215460081c166040519015158152f35b60405190620034ed82620007fc565b600282526040366020840137565b604051906200350a82620007e0565b600382526060366020840137565b6040519062003527826200078c565b6001825260203681840137565b6040519062003543826200078c565b600d82526c706f6f6c5f6d616e616765723160981b6020830152565b604051906200356e826200078c565b600d82526c3837b7b62fb6b0b730b3b2b91960991b6020830152565b634e487b7160e01b600052603260045260246000fd5b805115620035ae5760200190565b6200358a565b805160011015620035ae5760400190565b805160021015620035ae5760600190565b8051821015620035ae5760209160051b010190565b6001600160a01b039091169052565b6040519062003609826200078c565b601082526f70726f66696c65315f6d656d6265723160801b6020830152565b6040519062003637826200078c565b601082526f383937b334b63298afb6b2b6b132b91960811b6020830152565b6040519062003665826200078c565b601082526f70726f66696c65325f6d656d6265723160801b6020830152565b6040519062003693826200078c565b601082526f383937b334b632992fb6b2b6b132b91960811b6020830152565b90816020910312620005d4575190565b6040513d6000823e3d90fd5b60085460ff168015620036de5790565b50604051630667f9d760e41b81526020816044816000805160206201208a8339815191528060048301526519985a5b195960d21b60248301525afa908115620007065760009162003730575b50151590565b62003756915060203d81116200375d575b6200374d818362000852565b810190620036b2565b386200372a565b503d62003741565b906200377a6020928281519485920162000dd6565b0190565b90816020910312620005d45751620008ec816200074a565b6001600160a01b039091168152604060208201819052620008ec9291019062000dfb565b906040516020810190620037d48162000633848762003765565b5190206040516001625e79b760e01b03198152600481018290529091906000805160206201208a83398151915290602081602481855afa908115620007065760009162003870575b508094823b15620005d4576200384d92600092836040518096819582946318caf8e360e31b84526004840162003796565b03925af180156200070657620038605750565b80620006f8620010fe9262000772565b6200388c915060203d81116200073f576200072e818362000852565b386200381c565b908154620038a1816200127c565b92604093620038b38551918262000852565b828152809460208092019260005281600020906000935b858510620038da57505050505050565b60018481928451620038f2816200208e818a62001020565b815201930194019391620038ca565b601f81116200390e575050565b600090602e825260208220906020601f850160051c830194106200394f575b601f0160051c01915b8281106200394357505050565b81815560010162003936565b90925082906200392d565b601f811162003967575050565b6000906038825260208220906020601f850160051c83019410620039a8575b601f0160051c01915b8281106200399c57505050565b8181556001016200398f565b909250829062003986565b80519091906001600160401b0381116200078657620039df81620039d9602e5462000fe3565b62003901565b602080601f831160011462003a1e575081929360009262003a12575b50508160011b916000199060031b1c191617602e55565b015190503880620039fb565b602e600052601f19831694909190600080516020620120ca833981519152926000905b87821062003a7c57505083600195961062003a62575b505050811b01602e55565b015160001960f88460031b161c1916905538808062003a57565b8060018596829496860151815501950193019062003a41565b80519091906001600160401b038111620007865762003ac18162003abb60385462000fe3565b6200395a565b602080601f831160011462003b00575081929360009262003af4575b50508160011b916000199060031b1c191617603855565b01519050388062003add565b6038600052601f198316949091906000805160206201206a833981519152926000905b87821062003b5e57505083600195961062003b44575b505050811b01603855565b015160001960f88460031b161c1916905538808062003b39565b8060018596829496860151815501950193019062003b23565b6040519062003b86826200078c565b60088252670b98da185a5b925960c21b6020830152565b6040519062003bac826200078c565b60058252642e6e616d6560d81b6020830152565b6040519062003bcf826200078c565b600c82526b1722a72b299729a2a72222a960a11b6020830152565b6040519062003bf9826200078c565b60088252676e616d653a20257360c01b6020830152565b6040519062003c1f826200078c565b600a82526973656e6465723a20257360b01b6020830152565b6040519062003c47826200078c565b600c82526b636861696e4964203a20257360a01b6020830152565b62003c6f602854620005d9565b906000805160206201208a83398151915290813b15620005d457604051637fec2a8d60e01b815260009384908290819062003cae9060048301620005e5565b038183875af18015620007065762003dfe575b50805162003dec575b5062003dba62003cd962004207565b62003d0162003cfc62003cf562003cef62003b77565b620040c5565b8362003e3e565b603755565b62003d2462003d1e62003d1762003cef62003b9d565b8362003f0f565b62003a95565b62003d6362003d4162003d3a62003cef62003bc0565b8362003f7b565b602880546001600160a01b0319166001600160a01b0392909216919091179055565b62003d8262003d7162003bea565b62003d7b620010be565b9062004047565b62003da362003d93602854620005d9565b62003d9d62003c10565b62004072565b6200175860375462003db462003c38565b62003fe4565b803b1562003de8578190600460405180948193633b756e9b60e11b83525af180156200070657620038605750565b5080fd5b62003df790620039b3565b3862003cca565b80620006f862003e0e9262000772565b3862003cc1565b909162003e2f620008ec9360408452604084019062000dfb565b91602081840391015262000dfb565b6040516356eef15b60e11b8152916020918391829162003e6391906004840162003e15565b03816000805160206201208a8339815191525afa908115620007065760009162003e8b575090565b620008ec915060203d81116200375d576200374d818362000852565b602081830312620005d4578051906001600160401b038211620005d4570181601f82011215620005d457805162003ede8162000876565b9262003eee604051948562000852565b81845260208284010111620005d457620008ec916020808501910162000dd6565b6040516309389f5960e31b8152916000918391829162003f3491906004840162003e15565b03816000805160206201208a8339815191525afa908115620007065760009162003f5c575090565b620008ec913d8091833e62003f72818362000852565b81019062003ea7565b604051631e19e65760e01b8152916020918391829162003fa091906004840162003e15565b03816000805160206201208a8339815191525afa908115620007065760009162003fc8575090565b620008ec915060203d81116200073f576200072e818362000852565b6200402c6200401791620010fe93604051938492632d839cb360e21b602085015260406024850152606484019062000dfb565b90604483015203601f19810183528262000852565b600080916020815191016a636f6e736f6c652e6c6f675afa50565b906200402c620010fe9262000633604051938492634b5c427760e01b60208501526024840162003e15565b6200402c620040a591620010fe9360405193849263319af33360e01b602085015260406024850152606484019062000dfb565b6001600160a01b0391909116604483015203601f19810183528262000852565b604051600091602e5491620040da8362000fe3565b93848252602094858301946001908181169081600014620041e95750600114620041ab575b505091816200411b620008ec9593620041889795038262000852565b6200417560396040518095620041588883019575242e6e6574776f726b735b3f28402e6e616d653d3d2760501b8752518092603685019062000dd6565b81016227295d60e81b603682015203601981018652018462000852565b6040519586935180928686019062000dd6565b82016200419e8251809386808501910162000dd6565b0103808452018262000852565b9150602e60005285600020916000925b828410620041d55750505081018401816200411b620040ff565b8054858501890152928701928101620041bb565b60ff191687525050151560051b820185019050816200411b620040ff565b604051636c98507360e11b81526000906000805160206201208a833981519152908281600481855afa80156200070657620042c69284928392620042f5575b50620042aa6043604051846200426782965180926020808601910162000dd6565b81017f2f706b672f636f6e7472616374732f636f6e6669672f6e6574776f726b732e6a60208201526239b7b760e91b604082015203602381018552018362000852565b60405180809581946360f9bb1160e01b83526004830162001176565b03915afa91821562000706578092620042de57505090565b620008ec92503d8091833e62003f72818362000852565b6200430d9192503d8085833e62003f72818362000852565b903862004246565b6040519062004324826200078c565b601882527717282927ac24a2a9972820a9a9a827a92a2fa9a1a7a922a960411b6020830152565b604051906200435a826200078c565b601082526f1722a72b299720a92124aa2920aa27a960811b6020830152565b6040519062004388826200078c565b60198252782e50524f584945532e52454749535452595f464143544f525960381b6020830152565b600b60fa1b815260010190565b60405190620043cc826200078c565b601d82527f2e50524f584945532e52454749535452595f434f4d4d554e49544945530000006020830152565b634e487b7160e01b600052601160045260246000fd5b9062989680918281029281840414901517156200442757565b620043f8565b908160011b91808304600214901517156200442757565b818102929181159184041417156200442757565b9062004464826200127c565b62004473604051918262000852565b828152809262004486601f19916200127c565b019060005b8281106200449857505050565b8060606020809385010152016200448b565b6000198114620044275760010190565b6001607f1b8101919082106200442757565b90600182018092116200442757565b90600c82018092116200442757565b60020190816002116200442757565b60030190816003116200442757565b919082018092116200442757565b60408051909190615f9f8082016001600160401b03811183821017620007865782916200c0cb833903906000f0801562000706576001600160a01b0316926200456662003d3a62003cef62004315565b506200457962003d3a62003cef6200434b565b5082519060209262004656620046266200464085620045a2888201600190605b60f81b81520190565b0395620045b8601f199788810183528262000852565b620046336200462d620046178c8c620046118d62004604620045e98d620045e262003cef62004379565b9062003f7b565b9351948592632ef6570160e11b9084015260248301620005e5565b038d810184528362000852565b62004b44565b8b519586948c86019062003765565b9062003765565b620043b0565b0386810183528262000852565b916200464f62003cef620043bd565b9062004852565b926200466d6200466785516200442d565b62004458565b9460005b8551811015620046e057806200468c620046da9288620035d6565b50620046d36200469c8b62004ad4565b620046aa849392936200442d565b90620046cb620046c4620046be876200442d565b620044cc565b8d620035d6565b528a620035d6565b52620044aa565b62004671565b5093909491959296506000955b8151871015620047ff57620047038783620035d6565b516001600160a01b031662004718886200442d565b620047249085620035d6565b51620047309162004b44565b908451918291878301620047449162003765565b6200474f9162003765565b6200475a90620043b0565b0386810182526200476c908262000852565b620047788783620035d6565b516001600160a01b03166200478d886200442d565b6200479890620044cc565b620047a49085620035d6565b51620047b09162004b44565b908451918291878301620047c49162003765565b620047cf9162003765565b620047da90620043b0565b038681018252620047ec908262000852565b95620047f890620044aa565b95620046ed565b620010fe96506200484c9492506200483f915062004824620048329196949662004a27565b955195869384019062003765565b605d60f81b815260010190565b0390810183528262000852565b62004948565b9060405191632fce788360e01b835282806200487660009485946004840162003e15565b03816000805160206201208a8339815191525afa918215620007065781926200489e57505090565b9091503d8083833e620048b2818362000852565b810160209182818303126200308b578051906001600160401b03821162004944570181601f820112156200308b57805190620048ee826200127c565b94620048fe604051968762000852565b828652848087019360051b8301019384116200074757508301905b82821062004928575050505090565b838091835162004938816200074a565b81520191019062004919565b8480fd5b620006336200402c620010fe9260405192839163104c13eb60e21b602084015260206024840152604483019062000dfb565b6000198101919082116200442757565b600160801b908103919082116200442757565b90629896809182039182116200442757565b60405190620049be82620007fc565b602a82526040366020840137565b90620049d88262000876565b620049e7604051918262000852565b8281528092620049fa601f199162000876565b0190602036910137565b805160011015620035ae5760210190565b908151811015620035ae570160200190565b9081511562004a9d5762004a4662004a4083516200497a565b620049cc565b600092835b62004a5782516200497a565b81101562004a965762004a90906001600160f81b031962004a79828562004a15565b5116861a62004a89828662004a15565b53620044aa565b62004a4b565b5090925050565b60405162461bcd60e51b815260206004820152600f60248201526e537472696e6720697320656d70747960881b6044820152606490fd5b604051631b2ce7f360e11b60208201526001600160a01b0390911660248083019190915281529062004b0682620007fc565b604051916306dc7c3960e21b60208401527366ee8a18f18ef93efacb30f99e415058bf88942d60248401526024835262004b4083620007fc565b9190565b6001600160a01b03169062004b5862004d2f565b62004b62620049af565b92603062004b7085620035a0565b53607862004b7e8562004a04565b53600090815b6014811062004c73575050505062004bd0916200063362004bf262004bad620008ec9462004d5d565b604051663d913a37911d1160c91b60208201529586946200462691906027870183565b751116113b30b63ab2911d11181116113230ba30911d1160511b815260160190565b7f222c226f7065726174696f6e223a302c22636f6e74726163744d6574686f642281527f3a7b22696e70757473223a5b5d2c226e616d65223a22222c2270617961626c6560208201527f223a66616c73657d2c22636f6e7472616374496e7075747356616c756573223a6040820152627b7d7d60e81b606082015260630190565b62004c7e81620044db565b9060209182811015620035ae5762004cb462004ca68592600f9384911a60041c168862004a15565b516001600160f81b03191690565b62004cd862004ccd62004cc7856200442d565b620044ea565b91871a918a62004a15565b5362004ce482620044db565b92831015620035ae5762004ca662004d05918562004d29951a168762004a15565b62004a8962004d1e62004d18846200442d565b620044f9565b91861a918962004a15565b62004b84565b6040519062004d3e826200078c565b601082526f181899199a1a9b1b9c1cb0b131b232b360811b6020830152565b9062004d6862004d2f565b62004d7c62004a4062004cc785516200442d565b90603062004d8a83620035a0565b53607862004d988362004a04565b53600093845b815181101562004e51578062004df062004ca662004de962004de362004ddd62004dd162004ca662004e4b988a62004a15565b60041c600f60f81b1690565b60f81c90565b60ff1690565b8662004a15565b62004e0e62004e0362004cc7846200442d565b91891a918762004a15565b5362004e3862004ca662004de962004de3600f60f81b62004e3184878a62004a15565b1660f81c90565b62004a8962004e0362004d18846200442d565b62004d9e565b509193505050565b62004eb16020620008ec95936002845260a082850152600e60a08501526d506f6f6c2050726f66696c65203160901b60c085015260e06040850152805160e08501520151604061010084015261012083019062000dfb565b6001600160a01b03909316606082015280830360809091015262000d05565b916017541562004ee4575b50505060175490565b62004f4892602092600060405162004efc816200078c565b6001815260405162004f0e816200078c565b600c81526b506f6f6c50726f66696c653160a01b8782015281870152604051633a92f65f60e01b8152968795869485936004850162004e59565b03926001600160a01b03165af18015620007065762004f709160009162004f79575b50601755565b38808062004edb565b62004f95915060203d81116200375d576200374d818362000852565b3862004f6a565b6040519062004fab82620007c4565b60008252565b6040519062004fc082620007a8565b8160a06000918281528260208201528260408201528260608201528260808201520152565b604051610120810191906001600160401b0383118184101762000786576101006060918460405280946200501981620007e0565b60009081815281610140840152816101608401528161018084015282528060208301528060408301526200504c62004f9c565b848301526200505a62004fb1565b60808301528060a08301528060c083015260e08201520152565b60038210156200266e5752565b60048210156200266e5752565b9594939291620050e8620050f292620050de620050aa62004fe5565b99629895b760408c510152621e84808b515261271060208c5101526702c68af0bb14000060608c51015260a08b01620035eb565b6020890162005074565b6040870162005081565b600060c0860152600060e08601528051156200511b575b60608501526080840152610100830152565b680ad78ebc5ac6200000815262005109565b620051a2926200518e60a09a9995969798936200518462005198946200515262004fe5565b9d8e629895b7604082510152621e84808151526127106020825101526702c68af0bb14000060608251015201620035eb565b60208c0162005074565b60408a0162005081565b60c08801620035eb565b60e08601528051156200511b5760608501526080840152610100830152565b9195949293908252620051f060018060a01b039485602098168885015260e0604085015260e084019062000dfb565b9360609116818301526000608083015281840360a0830152601554845260408685015260009360165490620052258262000fe3565b918260408301526001908181169081600014620052a657506001146200525f575b50505050620008ec93945060c081840391015262000d05565b9293955090601660005287600020926000935b8285106200529257505050620008ec959650010191849338808062005246565b805484860187015293890193810162005272565b60ff1916858401525096975087965090151560051b01019250620008ec38808062005246565b90816020910312620005d45751620008ec81620020a5565b15620052ec57565b634e487b7160e01b600052600160045260246000fd5b92949597620053b6976200532593929a99886200531e62003518565b946200508e565b9062005330620034de565b90620053413062001d3a84620035a0565b620053513362001d3a84620035b4565b6001600160a01b039473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee948a9187918281166200549d575b50906200539b8560009362005394602854620005d9565b9062004ed0565b620053e360405196620053c58860209e8f9b8c830162002690565b03601f1981018a528962000852565b6040516370803ea560e11b8152998a988997889560048701620051c1565b0393165af18015620007065784916000916200547b575b5095600460405180948193631a8ecfcb60e11b8352165afa9081156200070657620010fe9360009262005447575b5050620054358262002663565b620054408162002663565b14620052e4565b6200546b9250803d1062005473575b62005462818362000852565b810190620052cc565b388062005428565b503d62005456565b620054969150823d84116200375d576200374d818362000852565b38620053fa565b96506200539b6200537d565b94929091620008ec9796949260405196620054c488620007c4565b6000885262005302565b8115620054d9570490565b634e487b7160e01b600052601260045260246000fd5b90600160801b8083116200555d578110156200551957620032ba620032c091620008ec9362004444565b60405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b60405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608490fd5b73bba817f97f133b87b9b7f1fc0f2c56e9f68d2edf803b620008ec5750620008ec62002dc7604051620055e68162000818565b610ede81527f608060405234801561001057600080fd5b50610ebe806100206000396000f3fe60208201527f608060405234801561001057600080fd5b50600436106100625760003560e01c60408201527f80631688f0b9146100675780632500510e1461017657806353e5d9351461024360608201527f57806361b69abd146102c6578063addacc0f146103cb578063d18af54d14610460808201527f4e575b600080fd5b61014a6004803603606081101561007d57600080fd5b810160a082015266e96f9fdffe6f6e642420200d5d60da1b0360c08201527f9190803590602001906401000000008111156100ba57600080fd5b820183602060e08201527f820111156100cc57600080fd5b803590602001918460018302840111640100006101008201527d831117156100ee57600080fd5b91908080601f01602080910402602001606101208201527f40519081016040528093929190818152602001838380828437600081840152606101408201527f1f19601f8201169050808301925050505050505091929192908035906020019061016082015260017024a46414141418415f5596d8101460209d607a1b036101808201527ae97ead9fdffe6eafaf9fbfae7f6efc6f0ca49efde89ffb7fc9fc9f196101a08201526001731820440558406315d800203f56e0406420200d5d60621b036101c082015277e96f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffffffff7eee196101e08201527f156101c957600080fd5b8201836020820111156101db57600080fd5b803590606102008201527f2001918460018302840111640100000000831117156101fd57600080fd5b90916102208201527f92939192939080359060200190929190505050610624565b604051808273ffff6102408201526de97ead9fdffe6eafaf9fbfae7f6e196102608201527f0390f35b61024b610751565b60405180806020018281038252838181518152606102808201527f200191508051906020019080838360005b8381101561028b57808201518184016102a08201527f52602081019050610270565b50505050905090810190601f1680156102b857806102c08201527f820380516001836020036101000a031916815260200191505b509250505060406102e08201527f5180910390f35b61039f600480360360408110156102dc57600080fd5b81019061030082015267e96f9fdffe6f6d6f6320200d5d60e21b036103208201527f908035906020019064010000000081111561031957600080fd5b8201836020826103408201527f01111561032b57600080fd5b80359060200191846001830284011164010000006103608201527e8311171561034d57600080fd5b91908080601f0160208091040260200160406103808201527f519081016040528093929190818152602001838380828437600081840152601f6103a08201527f19601f82011690508083019250505050505050919291929050505061077c565b6103c082015265e97ead9fdfff6518101460209d60d21b036103e08201527f91505060405180910390f35b6103d3610861565b6040518080602001828103826104008201527f5283818151815260200191508051906020019080838360005b838110156104136104208201527f5780820151818401526020810190506103f8565b50505050905090810190601f6104408201527f1680156104405780820380516001836020036101000a031916815260200191506104608201527f5b509250505060405180910390f35b610551600480360360808110156104645761048082015260016b1800203f56e0406420200d5d60a21b036104a08201527f169060200190929190803590602001906401000000008111156104a1576000806104c08201527ffd5b8201836020820111156104b357600080fd5b8035906020019184600183026104e08201527f840111640100000000831117156104d557600080fd5b91908080601f016020806105008201527f91040260200160405190810160405280939291908181526020018383808284376105208201527f600081840152601f19601f82011690508083019250505050505050919291929061054082015260016c200d641808006424a464200d5d609a1b03610560820152763a5be7f7ff9bdb5b9bebebebe7bddcea6927efeb9fdf6360421b1961058082015273e97ead9fdffe6eafaf9fbfae7f6efc6f0ca49fff196105a08201527f61058a848484610a3b565b90506000835111156105b2576000806000855160206105c08201527f87016000865af114156105b157600080fd5b5b7f4f51faf6c4561ff95f0676576105e08201527fe43439f0f856d97c04d9ec9070a6199ad418e2358185604051808373ffffffff610600820152673a5fab67f7ff9f6360421b1961062082015273e97ead9fdffe6dafafaf9fbfae7f6efc6f5e6c6d196106408201527f505050565b60006106758585858080601f0160208091040260200160405190816106608201527f016040528093929190818152602001838380828437600081840152601f19601f6106808201527f8201169050808301925050505050505084610a3b565b905080604051602001806106a082015269e99f9fe47ead9febfe6f61209d60f21b036106c08201527802828302028b01040c18181c0a948302029302028bf8461bcd603d1b6106e08201526a81526004018080602001826107008201527f8103825283818151815260200191508051906020019080838360005b838110156107208201527f6107165780820151818401526020810190506106fb565b5050505090509081016107408201527f90601f1680156107435780820380516001836020036101000a031916815260206107608201527f0191505b509250505060405180910390fd5b60606040518060200161076390616107808201527f0bde565b6020820181038252601f19601f82011660405250905090565b6000826107a082015260016e1810145841e2e41842f79596e0209d608a1b036107c08201527ce97ead9fdffe6eafaf9fbfae7f6efc6f9fff0f7fea7fea9ef838a8c29f196107e08201527e803e3d6000fd5b5090506000825111156107f05760008060008451602086016108008201527f6000865af114156107ef57600080fd5b5b7f4f51faf6c4561ff95f067657e4346108208201527f39f0f856d97c04d9ec9070a6199ad418e2358184604051808373ffffffffffff610840820152673a5fab67f7ff9f6360521b1961086082015275e97ead9fdffe6dafafaf9fbfae7f6efc6f5e6d6eafaf196108808201527f565b60606040518060200161087390610beb565b6020820181038252601f19606108a08201527f1f82011660405250905090565b600080838360405160200180838152602001826108c08201526ae99f9fe47ead9febfe6db0601d60fa1b036108e08201527f50506040516020818303038152906040528051906020012060001c90506108e761090082015260016c21a1a0d8415f5596e45418001d609a1b0361092082015267e9eb9ef5cda87d8c623a5f2360e21b01196109408201526be99ce1ad4ae77c7777779fbf19610960820152600172146158ffffffffc5983806e05498010060215d606a1b03610980820152673a5fab67f7ff9ee3608a1b196109a08201527ce97ead9fdffe7f9fdffe7c7ead9fdffe7d7efc7dad7b7e7eae7ead9fdf196109c08201527f0191508051906020019080838360005b838110156109ca5780820151818401526109e08201527f6020810190506109af565b50505050905090810190601f1680156109f7578082610a008201527f0380516001836020036101000a031916815260200191505b5095505050505050610a208201527f600060405180830381600087803b158015610a1957600080fd5b505af1158015610a408201527f610a2d573d6000803e3d6000fd5b505050505b50949350505050565b60008083610a608201527f8051906020012083604051602001808381526020018281526020019250505060610a808201527f4051602081830303815290604052805190602001209050600060405180602001610aa08201527f610a8890610bde565b6020820181038252601f19601f820116604052508673ff610ac08201526ce99fbfae9fdffe7f7c7fae6f9f19610ae08201527f2001908083835b60208310610ae9578051825260208201915060208101905060610b008201527f2083039250610ac6565b6001836020036101000a038019825116818451168082610b208201527f1785525050505050509050018281526020019250505060405160208183030381610b4082015260017514a4181014a4142060546098080058003d649418001d60521b03610b60820152623a5f23609a1b19610b8082015260016e074f5f54f7a15544fdfd7407b9e43360851b0319610ba0820152738152600401808060200182810382526013815260610bc0820152760800601fd0dc99585d194c8818d85b1b0819985a5b1959604a1b610be08201527b81525060200191505060405180910390fd5b50509392505050565b61610c008201527f01e680610bf883390190565b60ab80610dde8339019056fe6080604052348015610c208201527f61001057600080fd5b506040516101e63803806101e683398181016040526020610c408201527f81101561003357600080fd5b8101908080519060200190929190505050600073610c60820152623a5fa3604a1b19610c8082015274e9ebea9eff35a89fbfae80f73c865fffffffffffff19610ca08201526981526004018080602001610cc08201527f828103825260228152602001806101c460229139604001915050604051809103610ce082015260016e243f56e018002018404002a055205d608a1b03610d0082015262e9fde8653f79ba5bdf2360ba1b0119610d2082015260017624155414182ae018404658000e58003cff98201810149d604a1b03610d408201526001684fffd5f4c02cf35bc960611b0319610d608201526f60003514156050578060005260206000610d808201527ff35b3660008037600080366000845af43d6000803e60008114156070573d6000610da08201527ffd5b3d6000f3fea2646970667358221220d1429297349653a4918076d650332d610dc08201527fe1a1068c5f3e07c5c82360c277770b955264736f6c63430007060033496e7661610de08201527f6c69642073696e676c65746f6e20616464726573732070726f76696465646080610e00820152679fffabe98059e6b8631810149d60e21b03610e2082015262600035603760f91b01610e408201527f14156050578060005260206000f35b3660008037600080366000845af43d6000610e608201527f803e60008114156070573d6000fd5b3d6000f3fea2646970667358221220d142610e808201527f9297349653a4918076d650332de1a1068c5f3e07c5c82360c277770b95526473610ea08201527f6f6c63430007060033a26469706673582212200c75fe2196b9f752c82794253f610ec08201527f2ebce0d821afef5997e1d5a35ec316ce592f6664736f6c634300070600330000610ee08201526200b929565b73dd4bda7bcda544d6da2aea8ab8b0e63d2f6dc737803b620008ec5750620008ec62002dc7604051620065fe8162000835565b6159d781527f608060405234801561001057600080fd5b5060016004819055506159ae80620060208201527e296000396000f3fe6080604052600436106101dc5760003560e01c8063affe60408201527fd0e011610102578063e19a9dd911610095578063f08a032311610064578063f060608201527f8a032314611647578063f698da2514611698578063f8dc5dd9146116c357806360808201527fffa1ad741461173e57610231565b8063e19a9dd91461139b578063e318b52b1460a08201527f6113ec578063e75235b81461147d578063e86637db146114a857610231565b8060c08201527f63cc2f8452116100d1578063cc2f8452146110e8578063d4d9bdcd146111b55760e08201527f8063d8d11f78146111f0578063e009cfde1461132a57610231565b8063affed06101008201527fe014610d94578063b4faba0914610dbf578063b63e800d14610ea7578063c4ca6101208201527f3a9c1461101757610231565b80635624b25b1161017a5780636a7612021161016101408201527f495780636a761202146109945780637d83297414610b50578063934f3a1114616101608201527f0bbf578063a0e67e2b14610d2857610231565b80635624b25b146107fb5780636101808201527f5ae6bd37146108b9578063610b592514610908578063694e80c31461095957616101a08201527f0231565b80632f54bf6e116101b65780632f54bf6e146104d35780633408e4706101c08201527f1461053a578063468721a7146105655780635229073f1461067a57610231565b6101e08201527f80630d582f131461029e57806312fb68e0146102f95780632d9ad53d1461046c61020082015260016c15d8408c5596cd98408c55ccdd609a1b036102208201527fff167f3d0ce9bfc3ed7d6862dbb28b2dea94561fe714a1b4d019aa8af39730d16102408201527fad7c3d346040518082815260200191505060405180910390a2005b34801561026102608201527f3d57600080fd5b5060007f6c9a6c4a39284e37ed1cf53d337577d14212a4870f6102808201527fb976a4366c693b939918d560001b905080548061027257600080f35b366000806102a08201527f373360601b365260008060143601600080855af13d6000803e80610299573d606102c08201527efd5b3d6000f35b3480156102aa57600080fd5b506102f760048036036040816102e082015260017104055840b055d800203f56e0406420200d5d60721b0361030082015279e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafafaf9ee831a9196103208201527f5b005b34801561030557600080fd5b5061046a6004803603608081101561031c6103408201527f57600080fd5b81019080803590602001909291908035906020019064010000006103608201527e81111561034357600080fd5b82018360208201111561035557600080fd5b806103808201527f35906020019184600183028401116401000000008311171561037757600080fd6103a08201527f5b91908080601f016020809104026020016040519081016040528093929190816103c08201527f8152602001838380828437600081840152601f19601f820116905080830192506103e08201527f5050505050509192919290803590602001906401000000008111156103da57606104008201527e80fd5b8201836020820111156103ec57600080fd5b803590602001918460016104208201527f83028401116401000000008311171561040e57600080fd5b91908080601f01606104408201527f20809104026020016040519081016040528093929190818152602001838380826104608201527f8437600081840152601f19601f820116905080830192505050505050509192916104808201527f929080359060200190929190505050611bbe565b005b348015610478576000806104a08201527ffd5b506104bb6004803603602081101561048f57600080fd5b810190808035736104c08201526be96f9fdffe6f6d6e6fafafaf196104e082018190527f612440565b60405180821515815260200191505060405180910390f35b3480156105008301527f6104df57600080fd5b50610522600480360360208110156104f657600080fd5b61052083015264e96f9fdfff6620406420200d5d60ca1b036105408301527f90929190505050612512565b60405180821515815260200191505060405180916105608301527f0390f35b34801561054657600080fd5b5061054f6125e4565b604051808281526105808301527f60200191505060405180910390f35b34801561057157600080fd5b50610662606105a083015260017801200d80d82020440558416215d800203f56e0406420200d5d603a1b036105c083015272e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6f196105e08301527f803590602001906401000000008111156105cf57600080fd5b820183602082016106008301527b11156105e157600080fd5b803590602001918460018302840111640160201b6106208301527f8311171561060357600080fd5b91908080601f01602080910402602001604051610640830152600080516020620120aa8339815191526106608301527f601f820116905080830192505050505050509192919290803560ff16906020016106808301527f909291905050506125f1565b60405180821515815260200191505060405180916106a08301527f0390f35b34801561068657600080fd5b506107776004803603608081101561066106c083015260016d2755d800203f56e0406420200d5d60921b036106e08301527de96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffff196107008301527d8111156106e457600080fd5b8201836020820111156106f657600080fd5b6107208301527f80359060200191846001830284011164010000000083111715610718576000806107408301527ffd5b91908080601f0160208091040260200160405190810160405280939291906107608301527f818152602001838380828437600081840152601f19601f8201169050808301926107808301527f505050505050509192919290803560ff1690602001909291905050506127d7566107a08301527f5b604051808315158152602001806020018281038252838181518152602001916107c08301527f508051906020019080838360005b838110156107bf57808201518184015260206107e08301527f810190506107a4565b50505050905090810190601f1680156107ec57808203806108008301527f516001836020036101000a031916815260200191505b509350505050604051806108208301527f910390f35b34801561080757600080fd5b5061083e60048036036040811015616108408301527f081e57600080fd5b8101908080359060200190929190803590602001909291906108608301527f50505061280d565b6040518080602001828103825283818151815260200191506108808301527f8051906020019080838360005b8381101561087e5780820151818401526020816108a08301527f019050610863565b50505050905090810190601f1680156108ab5780820380516108c08301527f6001836020036101000a031916815260200191505b50925050506040518091036108e08301527f90f35b3480156108c557600080fd5b506108f2600480360360208110156108dc6109008301527f57600080fd5b8101908080359060200190929190505050612894565b604051806109208301527f82815260200191505060405180910390f35b34801561091457600080fd5b50616109408301527f09576004803603602081101561092b57600080fd5b81019080803573ffffffff6109608301526fe96f9fdffe6f6d6e6fafafaf9ed753a9196109808301527f5b005b34801561096557600080fd5b506109926004803603602081101561097c6109a08301527f57600080fd5b8101908080359060200190929190505050612c3e565b005b610b6109c08301527f3860048036036101408110156109ab57600080fd5b81019080803573ffffffff6109e08301526fe96f9fdffe6f6d6e6f7fca6f9fdffe6f19610a0083018190527f929190803590602001906401000000008111156109f257600080fd5b82018360610a208401527f2082011115610a0457600080fd5b803590602001918460018302840111640100610a408401527c83111715610a2657600080fd5b9091929391929390803560ff16906020610a608401527f0190929190803590602001909291908035906020019092919080359060200190610a8084015265e96f9fdffe706524a464200d5d60d21b03610aa08401819052610ac08401527f92919080359060200190640100000000811115610ab257600080fd5b82018360610ae08401527f2082011115610ac457600080fd5b803590602001918460018302840111640100610b008401527c83111715610ae657600080fd5b91908080601f01602080910402602001610b208401527f6040519081016040528093929190818152602001838380828437600081840152610b408401527f601f19601f820116905080830192505050505050509192919290505050612d78610b608401527f565b60405180821515815260200191505060405180910390f35b348015610b5c610b808401527f57600080fd5b50610ba960048036036040811015610b7357600080fd5b810190610ba084015267e96f9fdffe6f6d6f6320200d5d60e21b03610bc08401527f90803590602001909291905050506132b5565b60405180828152602001915050610be08401527f60405180910390f35b348015610bcb57600080fd5b50610d2660048036036060610c008401527f811015610be257600080fd5b8101908080359060200190929190803590602001610c208401527f90640100000000811115610c0957600080fd5b820183602082011115610c1b57610c408401527f600080fd5b80359060200191846001830284011164010000000083111715610c610c608401527f3d57600080fd5b91908080601f01602080910402602001604051908101604052610c808401527f8093929190818152602001838380828437600081840152601f19601f82011690610ca08401527f5080830192505050505050509192919290803590602001906401000000008111610cc08401527f15610ca057600080fd5b820183602082011115610cb257600080fd5b80359060610ce08401527f200191846001830284011164010000000083111715610cd457600080fd5b9190610d008401527f8080601f01602080910402602001604051908101604052809392919081815260610d208401527f2001838380828437600081840152601f19601f82011690508083019250505050610d408401527f50505091929192905050506132da565b005b348015610d3457600080fd5b5061610d608401527f0d3d613369565b60405180806020018281038252838181518152602001915080610d808401527f51906020019060200280838360005b83811015610d8057808201518184015260610da08401527f2081019050610d65565b505050509050019250505060405180910390f35b3480610dc08401527f15610da057600080fd5b50610da9613512565b60405180828152602001915050610de08401527f60405180910390f35b348015610dcb57600080fd5b50610ea560048036036040610e0084015260017220440558437895d800203f56e0406420200d5d606a1b03610e2084015278e96f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffffffff7eeeea19610e408401527f610e1f57600080fd5b820183602082011115610e3157600080fd5b8035906020610e608401527f0191846001830284011164010000000083111715610e5357600080fd5b919080610e808401526000805160206201210a833981519152610ea0840152600080516020620120ea833981519152610ec08401527f50509192919290505050613518565b005b348015610eb357600080fd5b506110610ee08401527f156004803603610100811015610ecb57600080fd5b8101908080359060200190610f008401527f640100000000811115610ee857600080fd5b820183602082011115610efa5760610f208401527e80fd5b80359060200191846020830284011164010000000083111715610f1c610f408401527f57600080fd5b909192939192939080359060200190929190803573ffffffffff610f6084015270e96f9fdffe6f6d6e6f7fca6f9fdffe6f9b19610f808401527f0100000000811115610f6757600080fd5b820183602082011115610f79576000610fa08401527f80fd5b80359060200191846001830284011164010000000083111715610f9b57610fc084015260016f1800203f56e42464a4e464a4e4200d5d60821b03610fe08401526b3a5be7f7ff9bdb5b9bdff2a360821b19611000840152753a5be7f7ff9bdb5b9bdff29be7f7ff9bdb5b9bdff2a360321b1961102084015271e96f9fdffe6f6d6e6fafafaf9ecac5a9a4ff196110408401527f5b34801561102357600080fd5b506110d26004803603608081101561103a576061106084015260ea69203f56e0406420200d5d60aa1b036110808401527f90602001909291908035906020019092919080359060200190640100000000816110a08401527f111561108157600080fd5b82018360208201111561109357600080fd5b8035906110c08401527f602001918460018302840111640100000000831117156110b557600080fd5b906110e08401527f91929391929390803560ff1690602001909291905050506136f8565b604051806111008401527f82815260200191505060405180910390f35b3480156110f457600080fd5b50616111208401527f11416004803603604081101561110b57600080fd5b81019080803573ffffffff61114084015261116083015260017424a464141414184e081596d81014602018080060dd605a1b0361118083015276e97ead9fdffe7d7efc7dad7b7e7eae7ead9fdffe6eaf7f196111a08301527f51906020019060200280838360005b838110156111a0578082015181840152606111c08301527f2081019050611185565b50505050905001935050505060405180910390f35b346111e08301527f80156111c157600080fd5b506111ee600480360360208110156111d8576000806112008301527ffd5b8101908080359060200190929190505050613a12565b005b3480156111fc6112208301527f57600080fd5b50611314600480360361014081101561121457600080fd5b810161124083015266e96f9fdffe6f6e642420200d5d60da1b036112608301527f9190803590602001909291908035906020019064010000000081111561125b576112808301527f600080fd5b82018360208201111561126d57600080fd5b8035906020019184606112a08301527f0183028401116401000000008311171561128f57600080fd5b909192939192936112c08301527f90803560ff1690602001909291908035906020019092919080359060200190926112e083015260016e2464200d641808006424a464200d5d608a1b036113008301526b3a5be7f7ff9bdb5b9bdff2a3608a1b196113208301527ce96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafafaf9ec44ea9a49fbf196113408301527f518082815260200191505060405180910390f35b34801561133657600080fd5b6113608301527f506113996004803603604081101561134d57600080fd5b81019080803573ffff6113808301526de96f9fdffe6f6d6e6f7fca8c0000196113a08301526de96f9fdffe6f6d6e6fafafaf9ec4196113c08301527fde565b005b3480156113a757600080fd5b506113ea60048036036020811015616113e083015260016e04ef95d800203f56e0406420200d5d608a1b036114008301527ce96f9fdffe6f6d6e6fafafaf9ec090a9a4ffa4cb7fea9eec07a89fff7f196114208301527ffd5b5061147b6004803603606081101561140f57600080fd5b810190808035736114408301526be96f9fdffe6f6d6e6f7fca8c1961146083018190526114808301526114a08201527f613ff3565b005b34801561148957600080fd5b50611492614665565b604051806114c08201527f82815260200191505060405180910390f35b3480156114b457600080fd5b50616114e08201527f15cc60048036036101408110156114cc57600080fd5b81019080803573ffffff6115008201526ee96f9fdffe6f6d6e6f7fca6f9fdffe196115208201527f909291908035906020019064010000000081111561151357600080fd5b8201836115408201527f60208201111561152557600080fd5b80359060200191846001830284011164016115608201527b8311171561154757600080fd5b9091929391929390803560ff1690606115808201527f20019092919080359060200190929190803590602001909291908035906020016115a082015264e96f9fdfff662424a464200d5d60ca1b036115c082018190526115e08201527f909291908035906020019092919050505061466f565b604051808060200182816116008201527f03825283818151815260200191508051906020019080838360005b83811015616116208201527f160c5780820151818401526020810190506115f1565b505050509050908101906116408201527f601f1680156116395780820380516001836020036101000a03191681526020016116608201527f91505b509250505060405180910390f35b34801561165357600080fd5b5061166116808201527f966004803603602081101561166a57600080fd5b81019080803573ffffffffff6116a082015270e96f9fdffe6f6d6e6fafafaf9eb7e8a9a4196116c08201527e5b3480156116a457600080fd5b506116ad614878565b6040518082815260206116e08201527f0191505060405180910390f35b3480156116cf57600080fd5b5061173c6004806117008201526001760d80d8182044055845b995d800203f56e0406420200d5d604a1b036117208201526b3a5be7f7ff9bdb5b9bdff2a3604a1b1961174082015274e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafaf196117608201527f506148f6565b005b34801561174a57600080fd5b50611753614d29565b6040516117808201527f80806020018281038252838181518152602001915080519060200190808383606117a08201527e5b83811015611793578082015181840152602081019050611778565b5050506117c08201527f50905090810190601f1680156117c05780820380516001836020036101000a036117e08201527f1916815260200191505b509250505060405180910390f35b6117d6614d62565b61180082015268e97d8c0000000000016218001d60ea1b036118208201526c3a7afa9ffaa7b9efea2be7ffa3602a1b19611840820152623a5f6360721b196118608201526c3a7afaa91ffaa7b9e1ea2bf3e3606a1b1961188082015261e9eb623a5f6360b21b01196118a08201526caadb08c752bb02028bf8461bcd60951b6118c082015275815260040180806020018281038252600581526020016118e082015266807f475332303360c81b611900820152600174205494180800645414181014602440e43f56d8001d604a1b03611920820152663a67ff67ffdee360721b1961194082015263e97ead9f613a6360c21b01196119608201526001760800642054980800580008180024152418404002a4011d604a1b03611980820152613a63609a1b196119a082015260016d074f5cf730a544fdfd7407b9e433608d1b03196119c0820152748152600401808060200182810382526005815260206119e082015266601fd1d4cc8c0d60c21b611a008201527c81525060200191505060405180910390fd5b60026000600173ffffffff611a20820152613a6360721b19611a40820181905279e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb19611a608301526ae99ffd9fff7b8c00000001601d60fa1b03611a80830152611aa082015279e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c0019611ac0820152653f79ba5bdf23603a1b19611ae08201526d3a7f7a1beaabdfa7ff67ffe7ffa3602a1b19611b00820152613a63607a1b19611b208201527ae97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c000019611b40820152653f79ba5bdf2360421b19611b6082015273e9fde86faaaf9ffc9fff7eab7f6d6e6f9ffefe6e19611b808201527f905055507f9465fa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa611ba082015260016b1fd82cba89a098101460209d60a21b03611bc08201527f16815260200191505060405180910390a18060045414611bba57611bb981612c611be08201527f3e565b5b5050565b611bd2604182614e0590919063ffffffff16565b82511015611c008201526b0308e242bb02028bf8461bcd60a51b611c208201527781526004018080602001828103825260058152602001807f611c4082015264047533032360dc1b611c608201527f81525060200191505060405180910390fd5b6000808060008060005b86811015611c808201527f61243457611c648882614e3f565b80945081955082965050505060008460ff16611ca08201527f141561206d578260001c9450611c96604188614e0590919063ffffffff16565b611cc08201527104130000e080ab08e872bb02028bf8461bcd60751b611ce082015271815260040180806020018281038252600581611d0082018190526a52602001807f475330323160a81b611d208301527981525060200191505060405180910390fd5b8751611d27602084611d408301527f60001c614e6e90919063ffffffff16565b1115611d9b576040517f08c379a000611d60830152648152600401611d80830152774040301000c14081c1293002c0a9301000c03fa3a998191960411b611da08301526c81525060200191505060405180611dc08301527f910390fd5b60006020838a01015190508851611dd182611dc360208760001c61611de08301527f4e6e90919063ffffffff16565b614e6e90919063ffffffff16565b1115611e45611e008301526802bb02028bf8461bcd60bd1b611e208301527a81526004018080602001828103825260058152602001807f475330611e408301526281525061323360f01b01611e608301527f60200191505060405180910390fd5b60606020848b010190506320c13b0b60e0611e8083015261e6ea6106df60f21b03611ea083015269e99cdf3ec4f4727b9fc06121dd60f21b03611ec08301527f518363ffffffff1660e01b815260040180806020018060200183810383528581611ee08301527f8151815260200191508051906020019080838360005b83811015611ee7578082611f008301527f015181840152602081019050611ecc565b50505050905090810190601f168015611f208301527f611f145780820380516001836020036101000a031916815260200191505b5083611f408301527f8103825284818151815260200191508051906020019080838360005b83811015611f608301527f611f4d578082015181840152602081019050611f32565b505050509050908101611f808301527f90601f168015611f7a5780820380516001836020036101000a03191681526020611fa08301527f0191505b5094505050505060206040518083038186803b158015611f99576000611fc08301527f80fd5b505afa158015611fad573d6000803e3d6000fd5b505050506040513d60611fe08301527f20811015611fc357600080fd5b81019080805190602001909291905050507bff61200083015264e6e9eb9edf19612020830152690332bb02028bf8461bcd60b51b6120408301527981526004018080602001828103825260058152602001807f4753612060830152618152620c0c8d60ea1b016120808301527f5060200191505060405180910390fd5b50506122b2565b60018460ff161415616120a083015260ea6a086055e09800072514211d60aa1b036120c083015269e9eb7f9edef5a8afa000610cdd60f21b036120e083015265e98c00000001651802180021dd60d21b036121008301526fe97ead9fdffe6f7ead9fdffe9fffdf9f196121208301527e8c81526020019081526020016000205414155b61217c576040517f08c379a0612140830152638152600461216083015278018080602001828103825260058152602001807f475330323560381b6121808301526b8152506020019150506040516121a08301527f80910390fd5b6122b1565b601e8460ff1611156122495760018a6040516020016121c08301527f80807f19457468657265756d205369676e6564204d6573736167653a0a3332006121e08301527c815250601c0182815260200191505060405160208183030381529060406122008301527f52805190602001206004860385856040516000815260200160405260405180856122208301527f81526020018460ff1681526020018381526020018281526020019450505050506122408301527f6020604051602081039080840390855afa158015612238573d6000803e3d60006122608301527ffd5b5050506020604051035194506122b0565b60018a858585604051600081526122808301527f602001604052604051808581526020018460ff168152602001838152602001826122a08301527f81526020019450505050506020604051602081039080840390855afa158015616122c08301527f22a3573d6000803e3d6000fd5b5050506020604051035194505b5b5b8573ffff6122e0830152623a5ea3605a1b196123008301526b3a7b9ffaa7b721aa2be7ffe3605a1b19612320830152663a67ff67ffde2360821b1961234083015265e97ead9fdffe613a6360d21b0119612360830152600174242054980800580008180024152418404002a4011d605a1b0361238083015260e9613a6360aa1b01196123a083015260016c050556e0055848ec95d418005d609a1b036123c083015267e9ebeaa49edbdba8623a5ea360e21b01196123e0830152670302028bf8461bcd60c51b6124008301527b81526004018080602001828103825260058152602001807f475330326124208301526381525060601b60f91b016124408301527f200191505060405180910390fd5b8495508080600101915050611c52565b505061246083015260016d14141414141414141596d800205d60921b0361248083015265e9ebea7fea9e633a67ffa360d21b01196124a083015264e99ffea000660942d5d418001d60ca1b036124c08301526001613a6360421b0161211d60f21b036124e083015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f1961250083015264e98c0000016618404002a4011d60ca1b036125208301526ee9ebeaa46faf6e6fafa9a49fff9ffe196125408301526001623a5f6360421b01601d60fa1b036125608301526c3a7afa9ffaa7b688aa2be7ffe3603a1b19612580830152663a67ff67ffdee360621b196125a083015261e97e613a6360b21b01196125c083015260017814980800642054980800580008180024152418404002a4011d603a1b036125e0830152613a63608a1b196126008301527ce9ebeaa46faf6e6fafa9a49fff7fb96faf7f6eafaf6fa9a49fff9ffe8c19612620830152623a7323604a1b196126408301526c3a7afa9ffaa7b650ea2be7ffe360421b19612660830152663a67ffa7fff323606a1b1961268083015262e97ead613a6360ba1b01196126a0830152600177180800642054980800580008180024152418404002a4011d60421b036126c0830152613a6360921b196126e083015260016f074f5f5524f6c68d44fdfd7407b9e43360751b03196127008301526127208201526a14980800601fd1d4cc4c0d60aa1b6127408201527981525060200191505060405180910390fd5b61273b858585855a61276082015260016e1853a35596e41420055849e2d5ccdd608a1b036127808201527ce980976a3ec99b55b098d774da285de28555cb6e91caa04649051f5ec6196127a08201526001762a4216fb2e181014581014602440e4289849f3d596ccdd604a1b036127c082015274e980532d378fd7fbed7024f24d44b6092ed822fe7e196127e08201527fc13fd45dbfe16de0930e2bd37560405160405180910390a25b949350505050566128008201527f5b600060606127e7868686866125f1565b915060405160203d0181016040523d6128208201527f81523d6000602083013e8091505094509492505050565b606060006020830267612840820152777eee7fea9ed7d4a89fff7f02a4af9fbfae6f7f7dad7f9fe0196128608201527f01601f19166020018201604052801561285e57816020016001820280368337806128808201527f820191505090505b50905060005b8381101561288957808501548060208302606128a08201527f2085010152508080600101915050612864565b508091505092915050565b60076128c08201527f6020528060005260406000206000915090505481565b6128b4614d62565b60006128e08201526001623a5fa360421b01601d60fa1b036129008201526c3a7afa9ffaa7b5b86a2be7ffa3603a1b19612920820152623a5fa360821b1961294082015260016f074f5f5524f6b37d44fdfd7407b9e43360651b03196129608201526f8152600401808060200182810382526061298082018190526c058152602001807f475331303160981b6129a08301527781525060200191505060405180910390fd5b600073ffffff6129c08301819052663a67ffa7ffdf2360421b196129e0840152613a6360921b19612a0084018190527de97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb8c00000019612a20850152613a63606a1b19612a4085015260016d074f5cf6ab7544fdfd7407b9e433605d1b0319612a608501526e815260040180806020018281038252612a808501526d3002c0a9301000c03fa3a998981960911b612aa08501527681525060200191505060405180910390fd5b6001600060612ac08501526001613a6360421b01605d60f21b03612ae085015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f19612b0085015264e99ffea0006618404002a4011d60ca1b03612b208501526001613a6360421b016120dd60f21b03612b4085015273e97ead9fdffe6f7ead9fdffe9fffdf9fff9efeff19612b6085015266fde6e96f7c8c016402a055205d60da1b03612b808501526ce9fde86faaaf7f9ffe9fff9ffe19612ba08501526001613a63604a1b01601d60fa1b03612bc0850181905274e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff519612be086015267fde6e96f7c8c0001632055205d60e21b03612c008601526de9fde86faaaf801320c5c10015a819612c208601527f83a3c4c2140e677577666428d44ed9d474a0b3a4c9943f844081604051808273612c408601526be97ead9fdffe6eafaf9fbfae19612c608601527f80910390a150565b612c46614d62565b600354811115612cbe576040517f08c3612c808601526181526103cd60f51b01612ca08601527a6004018080602001828103825260058152602001807f475332303160281b612cc08601526981525060200191505060612ce08601527802028c04881c87eadb000c0880ab0969aabb02028bf8461bcd603d1b612d008601526a8152600401808060200182612d208601819052714081c1293002c0a9301000c03fa3a999181960711b612d408701527281525060200191505060405180910390fd5b80612d608701527f6004819055507f610f7ff2b304ae8903c3de74c60c6ab1f7d6226b3f52c51619612d808701527f05bb5ad4039c936004546040518082815260200191505060405180910390a150612da08701527f565b6000806000612d928e8e8e8e8e8e8e8e8e8e60055461466f565b90506005612dc08701527f6000815480929190600101919050555080805190602001209150612dbb828286612de0870152600174184cb69596d41800184b719853b65596e41418001d605a1b03612e00870152623a5fa360a21b19612e2087015263e99c8a10670585184beb15e01d60c21b03612e408701527fbb528f8f8f8f8f8f8f8f8f8f8f336040518d63ffffffff1660e01b8152600401612e6087015268e97ead9fdffe737eae6220235d60ea1b03612e808701527f602001806020018a6001811115612e6957fe5b81526020018981526020018881612ea087015260016b1498080061e054980800619d60a21b03612ec087015263e97eada06705a054980800615d60c21b03612ee087015263e97eada067080060180800611d60c21b03612f008701527f200183810383528d8d82818152602001925080828437600081840152601f1960612f208701527f1f82011690508083019250505083810382528581815181526020019150805190612f408701527f6020019080838360005b83811015612f3b578082015181840152602081019050612f608701527f612f20565b50505050905090810190601f168015612f68578082038051600183612f808701527f6020036101000a031916815260200191505b509e505050505050505050505050612fa08701527f505050600060405180830381600087803b158015612f9357600080fd5b505af1612fc08701527f158015612fa7573d6000803e3d6000fd5b505050505b6101f4612fd36109c48b612fe08701527f01603f60408d0281612fc457fe5b04614f0a90919063ffffffff16565b015a106130008701526bab09824abb02028bf8461bcd609d1b6130208701527681526004018080602001828103825260058152602001806130408701526507f47533031360d41b6130608701527e81525060200191505060405180910390fd5b60005a90506130b28f8f8f8f806130808701526000805160206201210a8339815191526130a0870152600080516020620120ea8339815191526130c08701527f50508e60008d146130a7578e6130ad565b6109c45a035b614e8d565b935061306130e08701527fc75a82614f2490919063ffffffff16565b905083806130d6575060008a14155b613100870152770403098712ba83000440a0aadb098aa2bb02028bf8461bcd60451b6131208701526b81526004018080602001828161314087018190527003825260058152602001807f475330313360781b6131608801527381525060200191505060405180910390fd5b60006131808801527f8089111561316e5761316b828b8b8b8b614f44565b90505b84156131b8577f446131a08801527f2e715f626346e8c54381002da614f62bee8d27386535b2521ec8540898556e846131c08801527f82604051808381526020018281526020019250505060405180910390a16131f86131e08801527f565b7f23428b18acfb3ea64b08dc0c1d296ea9c09702c09083ca5272e64d115b6132008801527f687d23848260405180838152602001828152602001925050506040518091039061322088015264e97e8c0001662856d41418001d60ca1b03613240880152673a7ae7b356ea1fe360321b1961326088015271e99c6cd8ec977c7a9fbfae7c9c00000000e9196132808801527f60e01b81526004018083815260200182151581526020019250505060006040516132a08801527f80830381600087803b15801561328b57600080fd5b505af115801561329f573d6132c08801527f6000803e3d6000fd5b505050505b50509b9a5050505050505050505050565b606132e08801527f08602052816000526040600020602052806000526040600020600091509150506133008801527a02a40ab2db00030022a482830004088b099ababb02028bf8461bcd602d1b613320880152688152600401808060206133408801527301828103825260058152602001807f475330303160601b6133608801527081525060200191505060405180910390fd6133808801527f5b61336384848484611bbe565b50505050565b6060600060035467ffffffffff6133a08801527c7eee7fea9ecc79a89fff7f02a4af9fbfae6f7f7dad7f9fdffd9fdffe7d196133c08801527f0160405280156133b55781602001602082028036833780820191505090505b506133e088015260016b24141800201800980018005d60a21b0361340088015269e97ead9fdffe6f7eada061059d60f21b036134208801526001700800580008180024152418404002a4011d607a1b03613440880152663a5bebe927ffa360a21b1961346088015268e9eb9ecaf6a87f7c7d6205a05d60ea1b0361348088015260017220546044184d1815ff96d8080098080040641d606a1b036134a088015260e9633a5bdfa360aa1b01196134c088015261e98d692054941418009800209d60b21b036134e08801526be97ead9fdffe6f7ead9fdffe1961350088015260016e180008180024152418404002a4011d608a1b036135208801527ce96faf7e7f9ffefe6dafaf9ecbe0a9a47d6cafafafaf6fa9a49ffaab7e196135408801527f565b600080825160208401855af4806000523d6020523d600060403e60403d016135608801527f6000fd5b6135858a8a80806020026020016040519081016040528093929190816135808801527f8152602001838360200280828437600081840152601f19601f820116905080836135a08801526001706494141414141414225854529596d8001d60721b036135c088015262e9eb9e623a5ee360ba1b01196135e08801527f35c3576135c28461564a565b5b6136118787878080601f0160208091040260206136008801527f01604051908101604052809392919081815260200183838082843760008184016136208801527f52601f19601f82011690508083019250505050505050615679565b6000821115613640880152600176184d8ad5d84d8a609800180061a15853d11596d416ccdd604a1b0361366088015274e980ebe2079759cce50ad71c737c4855fc123e6419196136808801527f6e37ae67f9285bf4f8e3c6a1a88b8b8b8b8960405180806020018581526020016136a088015269e97ead9fdffe7c8c000161211d60f21b036136c08801526de97ead9fdffe7d7efc7dad78787d196136e08801527f818152602001925060200280828437600081840152601f19601f8201169050806137008801527f830192505050965050505050505060405180910390a2505050505050505050506137208801527f565b6000805a905061374f878787878080601f01602080910402602001604051613740880152600080516020620120aa8339815191526137608801527f601f82011690508083019250505050505050865a614e8d565b613758576000806137808801527ffd5b60005a8203905080604051602001808281526020019150506040516020816137a0880152700418181c0a948302029302028bf8461bcd607d1b6137c088015272815260040180806020018281038252838181516137e08801527f815260200191508051906020019080838360005b838110156137e557808201516138008801527f818401526020810190506137ca565b50505050905090810190601f16801561386138208801527f125780820380516001836020036101000a031916815260200191505b50925050613840880152677eee7fea9ec7c4a96f0a0c080a301220721fab6c0c0c00104d60831b036138608801527f600080fd5b5060405190808252806020026020018201604052801561386a57816138808801527f602001602082028036833780820191505090505b5091506000806001600087736138a0880152613a6360521b196138c088015275e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efe196138e088015266e96fafa49fff8d6302a4011d60da1b03613900880152623a5fa3604a1b1961392088018190526c3a7afa9ffaa7b1b0aa2be7ffa360421b19613940890152623a5fa3608a1b1961396089018190527ce9ebeaa47fea9ec6b7a8af7b7defa4ea9ec5fca87f7b7c7eae7eef9ec6196139808a015260016c1695ff96d8080098080040641d609a1b036139a08a015266e97eadafaf9ffe633a5bdfa360da1b01196139c08a015267e98c000000000001631800209d60e21b036139e08a015271e97ead9fdffe6f7ead9fdffe9fffdf9fff6f19613a008a015262e96fb068152418404002a4011d60ba1b03613a208a01527f81806001019250506138d3565b80925081845250509250929050565b600073ff613a408a0152663a67ff67fff32360321b19613a608a0152613a6360821b19613a808a018190527be97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb8c0019613aa08b0152613a63605a1b19613ac08b015260016e074f5f54f6275d44fdfd7407b9e43360451b0319613ae08b0152613b008a01939093526f3825260058152602001807f475330333607c1b613b208a01527381525060200191505060405180910390fd5b6001613b408a015265e98c0000000165180218000cdd60d21b03613b608a01526fe97ead9fdffe6f7ead9fdffe9fffdf9f19613b808a015260017420e054980800642054980800580008206415540cdd60521b03613ba08a015275e97e800d5f14ea9b8d2ebbfdaa4f283e1e633f8eea2e19613bc08a01527f051fe605b0dce69acfec884d9c60405160405180910390a350565b6000613bc6613be08a01527f8c8c8c8c8c8c8c8c8c8c8c61466f565b8051906020012090509b9a5050505050613c008a01526001721414141414141596d84ef99853589596d8001d606a1b03613c208a015261e9eb623a5fa360b21b0119613c408a015260ea6a056005584f1415d418005d60aa1b03613c608a015269e9ebeaa49ec33da89fc061205d60f21b03613c808a015265028bf8461bcd60d51b613ca08a018190527d81526004018080602001828103825260058152602001807f475331303100613cc08b015265815250602001613ce08b0181905260016d245414181014602440e43f56e01d60921b03613d008c015262e98c00663a67ffa7ffdee360ba1b0119613d208c01526ce97ead9fdffe6f7ead9fdffe9f19613d408c015260016c08180024152418404002a4011d60921b03613d608c015267e9eb9ec23da89fbf613a6360e21b0119613d808c0152613da08b01919091527d81526004018080602001828103825260058152602001807f475331303300613dc08b0152613de08a0152600171245414181014602440e43f56d8005800209d60721b03613e008a015263e97ead9f613a6360c21b0119613e208a018190526001760800642054980800580008180024152418404002a4011d604a1b03613e408b0152663a67ffa7ffdee360721b19613e608b0152613e808a01526001740800642054980800580008180018404002a055205d605a1b03613ea08a0152653f79ba5bdf23608a1b19613ec08a01526d3a7f7a1beaabe7ffe7ffa7ffdf23607a1b19613ee08a015264e97ead9fdf613a6360ca1b0119613f008a0152600172642054980800580008180018404002a055205d60621b03613f208a0152653f79ba5bdf2360921b19613f408a01527de9fde86faaaf80554b05d4b9c0a7e4d4cd34c481c48fb4631c833df64a0419613f608a015260016f135df964eb3901509da058101460209d60821b03613f808a01527be97ead9fdffe6eafaf9fbfae7f6efc6f5eafafa9a49ec0889eb29da919613fa08a01527f5b60007f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbda4f558613fc08a01527fc93c34c860001b90508181557f1151116914515bc0891ff9047a6cb32cf90254613fe08a01526001731be0c199266f3e2e8cf48d4fe8a098101460209d60621b036140008a015277e97ead9fdffe6eafaf9fbfae7f6efc6f5eafafa9a49ec004196140208a015263e97e8c01671853589596d8001d60c21b036140408a01526ce9ebea7fea9ebf9aa8af9ffe8c196140608a01526140808901919091526c3a7afaa91ffaa7afd8aa2bf3e360421b196140a08901526140c088015260016f074f5f5524f5f78544fdfd7407b9e433606d1b03196140e08801527081526004018080602001828103825260056141008801526b8152602001807f475332303360a01b6141208801527881525060200191505060405180910390fd5b600073ffffffff614140880152663a67ff67ffdf23604a1b19614160880152613a63609a1b196141808801527a3a5fab67f7ff9bdfab67f7ffa7fff7e7ffdbeadbe7bfbffd5bfee360221b196141a0880152613a6360721b196141c0880181905260016d074f5cf5ef7d44fdfd7407b9e43360651b03196141e08901526142008801969096526c016054980800601fd1d4cc8c0d609a1b614220880152614240870194909452623a5f6360621b196142608701526c3a7afa9ffaa7af616a2be7ffa3605a1b19614280870152623a5f6360a21b196142a08701526eb0a0aadb0a1762bb02028bf8461bcd60851b6142c08701527381526004018080602001828103825260058152606142e08701819052682001807f475332303360b81b614300880152600173205494180800645414181014602440e43f56e05d60421b03614320880152663a67ff67ffdea3606a1b1961434088015262e97ead613a6360ba1b0119614360880152600177180800642054980800580008180024152418404002a4011d60421b036143808801526143a087019390935260016d074f5cf5e09d44fdfd7407b9e43360851b03196143c08701526143e0860192909252682001807f475332303560b81b6144008601527b81525060200191505060405180910390fd5b600260008373ffffffff614420860152614440850184905279e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb1961446086018190526ae99ffd9fff7c8c00000001601d60fa1b036144808701526144a0860185905279e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c00196144c0870152653f79ba5bdf23603a1b196144e08701526c3a7f7a1beaabdfe7ff67ffdea360321b196145008701526145208601939093527be97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c00000019614540860152653f79ba5bdf23604a1b196145608601526d3a7f7a1beaabe7ffe7ff67ffdee3603a1b19614580860152613a63608a1b196145a0860152783a5fab67f7ff9bdfab67f7ffa7fff7e7ffe7bfbffd5faadfa360221b196145c0860152653f79ba5bdf2360521b196145e086015275e9fde86faaaf80072b603ad67ed16583a3af1963df0f196146008601526001773733036e3ea57262f16332693c704a67abe098101460209d60421b0361462086015273e97ead9fdffe6eafaf9fbfae7f6efc6f5e806b9a196146408601527ffa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa7f60b2ea26816061466086015266e97ead9fdffe6f64101460209d60da1b036146808601527f505060405180910390a1505050565b6000600454905090565b606060007fbb836146a08601527f10d486368db6bd6f849402fdd73ad53d316b5a4b2644ad6efe0f941286d860006146c08601527f1b8d8d8d8d6040518083838082843780830192505050925050506040518091036146e08601526001772408232323232323231810145808006023205498080062dd60421b0361470086015273e97ead9fdffe757ead9fdffe767ead9fdffe779f196147208601527f0181111561470057fe5b8152602001878152602001868152602001858152602061474086015268e97ead9fdffe7c8c0161611d60ea1b036147608601526ce97ead9fdffe7d7ead9fdffe64196147808601527f50505050505050505050505060405160208183030381529060405280519060206147a08601527f01209050601960f81b600160f81b61478c614878565b8360405160200180857e6147c086015260e6196147e0860152600167168152600101847f60c01b0361480086015278e6e97ead9ffefe7c7ead9fdffe7d7ead9fdffe6bafafafafaf196148208601527f6040516020818303038152906040529150509b9a5050505050505050505050566148408601527f5b61481f614d62565b6148288161564a565b7f5ac6c46c93c8d0e53714ba3b536148608601527fdb3e7c046da994313d7ed0d192028bc7c228b081604051808273ffffffffffff61488086015271e97ead9fdffe6eafaf9fbfae7f6efc6f5eaf196148a08601527f565b60007f47e79534a245952e8b16893a336b85a3d9ea9fa8c573f3d803afb96148c08601527f2a7946921860001b6148a66125e4565b306040516020018084815260200183816148e086015265e97ead9fdfff6514980800609d60d21b036149008601527f935050505060405160208183030381529060405280519060200120905090565b6149208601527f6148fe614d62565b806001600354031015614979576040517f08c379a00000006149408601526681526004018080614960860181905275602001828103825260058152602001807f475332303160501b61498087018190526e8152506020019150506040518091036149a0880181905265e97d8c00000165243f56d8001d60d21b036149c08901526ee9ebea7fea9eb61ca8af9ffe8c0000196149e0890152623a5f63605a1b19614a0089015260016f074f5f5524f5ad5544fdfd7407b9e433603d1b0319614a20890152614a408801859052718103825260058152602001807f475332303360701b614a608901527281525060200191505060405180910390fd5b81614a808901526ae99ffd9fff7a8c00000001601d60fa1b03614aa0890152614ac0880196909652614ae0870194909452614b0086019190915260016d074f5cf5a55544fdfd7407b9e433603d1b0319614b20860152614b40850191909152718103825260058152602001807f475332303560701b614b608501527281525060200191505060405180910390fd5b60614b8085015266e98c000000000163980020dd60da1b03614ba085015270e97ead9fdffe6f7ead9fdffe9fffdf9fff19614bc0850181905261e9a06924152418404002a4011d60b21b03614be086015266e98c0000000001639800215d60da1b03614c00860152614c2085015263fde6e9706718404002a055205d60c21b03614c4085015269e9fde86faaaf9fff9ffe6120dd60f21b03614c6085015267e98c000000000001631800211d60e21b03614c8085015271e97ead9fdffe6f7ead9fdffe9fffdf9fff9e19614ca085015264fde6e96f7d654002a055205d60ca1b03614cc08501526ae9fde86faaaf9ffc9fff7f601d60fa1b03614ce08501527f54809291906001900391905055507ff8d49fc529812e9a7c5c50e69c20f0dccc614d00850152600175036e3ea57262f16332693c704a67abe098101460209d60521b03614d2085015275e97ead9fdffe6eafaf9fbfae7f6efc6f5e7f9ffbabeb19614d408501527f614d2457614d2381612c3e565b5b505050565b60405180604001604052806005614d608501526a081526020017f312e332e360ac1b614d80850152600167205494205596cc1d60921b03614da085015266e9eb9eb1fca89f623a732360da1b0119614dc08501526602028bf8461bcd60cd1b614de08501527c81526004018080602001828103825260058152602001807f4753303331614e00850152648152506020614e208501527f0191505060405180910390fd5b565b600080831415614e185760009050614e39614e408501527f565b6000828402905082848281614e2957fe5b0414614e3457600080fd5b8091614e608501527f50505b92915050565b6000806000836041026020810186015192506040810186614e808501527f0151915060ff60418201870151169350509250925092565b6000808284019050614ea08501527f83811015614e8357600080fd5b8091505092915050565b600060018081111561614ec08501527f4e9b57fe5b836001811115614ea757fe5b1415614ec057600080855160208701614ee08501527f8986f49050614ed0565b600080855160208701888a87f190505b959450505050614f008501527f50565b6000807f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbd614f208501527fa4f558c93c34c860001b9050805491505090565b600081831015614f1a578161614f408501527f4f1c565b825b905092915050565b600082821115614f3357600080fd5b600082614f608501526001732100e4142024541424a454141596d8002018001d60621b03614f8085015260e9623a5f2360aa1b0119614fa0850152600171051853e055e09853e0d596cc96e41418001d60721b03614fc085015262e9ebea623a5ee360ba1b0119614fe08501527f61509b57614fed3a8610614fca573a614fcc565b855b614fdf888a614e6e90916150008501527f9063ffffffff16565b614e0590919063ffffffff16565b91508073ffffffffff61502085015270e99ef7037c6f7eeafd6f9fbfae9fff9fbf1961504085015279028c04181c0c2c44478c9a828282830a84b2bb02028bf8461bcd60351b615060850152698152600401808060200161508085015272828103825260058152602001807f475330313160681b6150a08501527181525060200191505060405180910390fd5b6150c08501527f615140565b6150c0856150b2888a614e6e90919063ffffffff16565b614e05906150e08501527f919063ffffffff16565b91506150cd8482846158b4565b61513f576040517f08615100850152608162061bcd60ed1b016151208501527b29300200c040301000c14081c1293002c0a9301000c03fa3a998189960211b615140850152688152506020019150506151608501527f60405180910390fd5b5b5095945050505050565b6000600454146151c257604061518085015265028bf8461bcd60d51b6151a08501527d81526004018080602001828103825260058152602001807f4753323030006151c0850152658152506020016151e08501527f91505060405180910390fd5b8151811115615239576040517f08c379a0000000615200850152615220840152615240830152615260820152730487eadb000c0880ab0a9582bb02028bf8461bcd60651b6152808201526f815260040180806020018281038252606152a08201526c02c0a9301000c03fa3a999181960991b6152c08201527781525060200191505060405180910390fd5b6000600190506152e08201527f60005b83518110156155b65760008482815181106152d057fe5b60200260200161530082015264e97e8c00016554641418001d60ca1b036153208201526de9ebea7fea9eacbba8af9ffe8c0019615340820152623a5fa360521b196153608201526c3a7afaa91ffaa7ab20ea2bf3e3604a1b19615380820152623a5fa360921b196153a08201526c3a7afaa91ffaa7ab12ea2bdfe3608a1b196153c082015265e9ebeaa49eab623a5f2360d21b01196153e0820152690132bb02028bf8461bcd60b51b6154008201527981526004018080602001828103825260058152602001807f47536154208201526181526232303360e81b0161544082015260017214180800645414181014602440e43f56d8001d606a1b03615460820152663a67ff67ffdf2360921b1961548082015267e97ead9fdffe6f7e613a6360e21b01196154a082015260017214980800580008180024152418404002a4011d606a1b036154c082015262e9eb9e613a6360ba1b01196154e08201526a02a93abb02028bf8461bcd60ad1b6155008201527881526004018080602001828103825260058152602001807f4761552082015260816314cc8c0d60e21b016155408201526001771494180800645414181014602440e43f56e018009800215d60421b03615560820152613a6360921b19615580820152783a5fab67f7ff9bdfab67f7ffa7fff7e7ffe7bfbffd5faadfa3602a1b196155a0820152653f79ba5bdf23605a1b196155c082015276e9fde86faaaf7f6dafaf7f7f9ffefe6eafaf9ead46a9a4196155e082015262e98c01681418005800980020dd60ba1b036156008201526ce97ead9fdffe6f7ead9fdffe9f1961562082015260016a08180018404002a055205d60a21b0361564082015265e9fde86faab0648645a420dd60d21b036156608201527f825160038190555081600481905550505050565b60007f6c9a6c4a39284e37ed6156808201527f1cf53d337577d14212a4870fb976a4366c693b939918d560001b9050818155506156a082015265e99ffe9fffa065141596d8001d60d21b036156c08201526001613a6360421b01605d60f21b036156e082015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f1961570082015264e98c0000016618404002a4011d60ca1b036157208201526ee9eb9ea884a89fbfae80f73c865fff196157408201526481526004016157608201527708080602001828103825260058152602001807f47533130360441b6157808201526c815250602001915050604051806157a082015260016c2440e43f56d80060180018005d609a1b036157c082015268e97ead9fdffe6f7ead613a6360ea1b01196157e082015260016f180800580008180018404002a055205d60821b0361580082015261e9fd653f79ba5bdf2360b21b011961582082015264e97d8c00016605e4155418001d60ca1b036158408201526de9eb9ea74fa89ea7c27d9fff7c9f19615860820152710ad30a746ab2db0ac57abb02028bf8461bcd606d1b6158808201527081526004018080602001828103825260056158a08201526b08152602001807f47533030360a41b6158c08201527881525060200191505060405180910390fd5b5b5050565b60006158e08201526001702018ea41672ee1211810145809006020dd607a1b036159008201527ae97ead9fdffe7d7ead9fdffe6dafafaf9fbfae9fdf7e7cfcfc7ead1961592082015260016e24181014a4183806d808208060145f608a1b03615940820152747c7e7ce9e87cadafafafaf6faf9fdf9fff7dae9fdf196159608201527f84016000896127105a03f13d6000811461595b576020811461596357600093506159808201527f61596e565b81935061596e565b600051158215171593505b50505093925050506159a08201527f56fea26469706673582212203874bcf92e1722cc7bfa0cef1a0985cf0dc3485b6159c082015276a0663db3747ccdf1605df53464736f6c6343000706003360481b6159e08201525b6200b936602554620044aa565b90816025556020815191016000f590813f156200b94f57565b60405162461bcd60e51b815260206004820152600e60248201526d1b081b9bdd0819195c1b1bde595960921b6044820152606490fd5b91906200b99b9061010080855284019062000d05565b6001602084015260e06020600092836040870152858103606087015283815201938260808201528260a08201528260c08201520152565b9060018060a01b0390816200b9ed62002dc7602254620005d9565b16156200ba05575b505050620008ec602254620005d9565b8116156200bbb0575b506200ba2062002dc7602254620005d9565b906000805160206201208a833981519152803b15620005d457604080516318caf8e360e31b8082526001600160a01b039590951660048201526024810191909152600f60448201526e31b7bab731b4b629b0b332a0b2323960891b606482015260009390848160848183875af1801562000706576200bb99575b50813b156200308b57604080519182526001600160a01b03841660048301526024820152601060448201526f31b7bab731b4b629b0b332a7bbb732b960811b60648201529083908290608490829084905af1801562000706576200bb82575b506200bb146200bb0862003518565b9162001d3a83620035a0565b6200bb2562002dc7602254620005d9565b90813b156200070c5782916200bb529160405194858094819363b63e800d60e01b8352600483016200b985565b03925af1801562000706576200bb6b575b80806200b9f5565b80620006f86200bb7b9262000772565b386200bb63565b80620006f86200bb929262000772565b386200baf9565b80620006f86200bba99262000772565b386200ba9a565b60009060206200bc186200bbc762002dc7620065cb565b836200bbd2620055b3565b604051631688f0b960e01b81526001600160a01b039093166004840152606060248401526000606484015260036044840152919586939190921691839182906084820190565b03925af1801562000706576200bc54926000916200bc5b575b5060228054919092166001600160a01b03166001600160a01b0319909116179055565b386200ba0e565b6200bc77915060203d81116200073f576200072e818362000852565b386200bc31565b60101c6001600160a01b031690565b604051906200bc9c826200078c565b6001825260006020830152565b92916200bcd160409160039360018060a01b0316865260606020870152606086019062000dfb565b930152565b90816020910312620005d457518015158103620005d45790565b620008ec939160018060a01b031681526200bd1f60009384602084015261014080604085015283019062000dfb565b928060608301528060808301528060a08301528060c08301528060e083015261010082015261012081840391015262000dfb565b92620008ec94926200bd809260018060a01b03168552602085015261014080604086015284019062000dfb565b9160008060608301528060808301528060a08301528060c08301528060e083015261010082015261012081840391015262000dfb565b604051906200bdc5826200078c565b6016825275195e1958d51c985b9cd858dd1a5bdb8819985a5b195960521b6020830152565b909360606200be29959493946200be038486886200c017565b6040516338d07aa960e21b81526004810192909252602482015295869081906044820190565b03816000805160206201208a8339815191525afa938415620007065760008080966200bece575b6020969750600092916200be716200be80926040519a8b938b85016200bf9e565b03601f19810189528862000852565b6200bea26040519788968795869463353b090160e11b8652600486016200bd53565b03926001600160a01b03165af180156200070657620010fe9160009162000a2e575062000a256200bdb6565b5050602094506000906200be806200befa6200be719860603d811162000aa65762000a90818362000852565b9199909198505091925050866200be50565b6000805160206201208a83398151915291823b15620005d4576200bf599260009260405180958194829363a34edc0360e01b84521515600484015260406024840152604483019062000dfb565b03915afa801562000706576200bf6c5750565b620010fe9062000772565b90816060910312620005d457805160ff81168103620005d457916040602083015192015190565b91604193918352602083015260ff60f81b9060f81b1660408201520190565b610120919493929460018060a01b031681526200bfee60009586602084015261014080604085015283019062000dfb565b948060608301528060808301528060a08301528060c08301528060e08301526101008201520152565b60405163057ff68760e51b8152602093919290916001600160a01b03168483600481845afa91821562000706576200c0739486946000946200c0a6575b50604051631b1a23ef60e31b815295869485938493600485016200bfbd565b03915afa91821562000706576000926200c08c57505090565b620008ec9250803d106200375d576200374d818362000852565b6200c0c2919450853d87116200375d576200374d818362000852565b92386200c05456fe60a080604052346100325730608052615f6790816200003882396080518181816113380152818161151501526115770152f35b600080fdfe608060405260043610156200001357600080fd5b60003560e01c806301ffc9a71462000509578063025313a214620005035780630331383c146200042557806308386eba14620004fd5780630d12bbdb14620004f75780630d4a8b4914620004f1578063175188e814620004eb5780631b71f0e414620004e55780631f787d2814620004df578063223e547914620004d957806322bcf99914620004d3578063248a9ca314620004cd57806328c309e914620004c75780632b38c69c14620004c15780632c611c4a14620004bb5780632f2ff15d14620004b557806331f61bca14620004af5780633396045914620004a95780633419635514620004a357806336568abe146200049d5780633659cfe61462000497578063397e254314620004915780633a871fe1146200048b578063411481e61462000485578063477a5cc0146200047f5780634f1ef286146200047957806352d1902d1462000473578063559de05d146200046d5780635c94e4d214620004675780635ecf71c5146200046157806365e3864c146200042b5780636871eb4d146200045b57806368decabb14620004555780636c53db9a146200044f578063715018a6146200044957806373265c371462000443578063733a2d1f146200043d57806376e92559146200043757806377122d5614620004315780637817ee4f146200042b57806378a0b8a914620004255780637b103999146200041f57806382d6a1e7146200041957806388cfe68414620004135780638961be6b146200040d5780638da5cb5b146200040757806391d1485414620004015780639a1f46e214620003fb578063a0cf0aea14620003f5578063a217fddf14620003ef578063a230c52414620003e9578063b0d3713a14620003e3578063b3f0067414620003dd578063b5058c5014620003d7578063b64e39af14620003d1578063b99b437014620003cb578063bc063e1a14620003c5578063c4d66de814620003bf578063c6d572ae14620003b9578063d547741f14620003b3578063d6d8428d14620003ad578063d7050f0714620003a7578063db61d65c14620003a1578063e0eab988146200039b578063ebd7dc521462000395578063f24b150f146200038f578063f2d774e71462000389578063f2fde38b1462000383578063f86c5f89146200037d578063fb1f691714620003775763ffa1ad74146200037157600080fd5b62003025565b62002f96565b62002f6a565b62002ed0565b62002df3565b62002d66565b62002d1b565b62002a97565b620027e9565b620027ca565b6200279e565b62002754565b620026be565b62002680565b62002660565b62002527565b62002455565b620022e4565b620022b5565b62002268565b6200221e565b62002200565b620021cf565b62001f4f565b62001f11565b62001ee0565b62001ec0565b62001e5e565b62001db3565b62001d87565b620005bf565b62001a5f565b62001d5b565b62001d3a565b62001d0e565b62001c77565b62001c23565b62001bf7565b62001bcb565b62001a9e565b620017fc565b620017d0565b62001626565b62001562565b620014b8565b62001474565b62001449565b62001402565b620013d7565b62001309565b6200126c565b620010ff565b62000ef9565b62000ed9565b62000e8f565b62000e4a565b62000de5565b62000c29565b62000bf8565b62000a80565b62000a4b565b62000a27565b620009da565b620009a5565b6200069c565b620005ff565b620005df565b62000594565b3462000564576020366003190112620005645760043563ffffffff60e01b81168091036200056457602090637965db0b60e01b811490811562000552575b506040519015158152f35b6301ffc9a760e01b1490503862000547565b600080fd5b60009103126200056457565b6001600160a01b031690565b6001600160a01b03909116815260200190565b346200056457600036600319011262000564576033546040516001600160a01b039091168152602090f35b34620005645760003660031901126200056457602060fb54604051908152f35b34620005645760003660031901126200056457602060fe54604051908152f35b346200056457602036600319011262000564576200061f60043562005854565b005b6001600160a01b038116036200056457565b60243590620006428262000621565b565b60443590620006428262000621565b60643590620006428262000621565b3590620006428262000621565b604090600319011262000564576004356200068a8162000621565b90602435620006998162000621565b90565b346200056457620006ad366200066f565b620006b762004d30565b620006c28262004d87565b620006cd8162003c02565b620006d9813362004dae565b620006fa620006f382620006ed8562000d12565b62000d99565b5460ff1690565b62000993576020908162000718620007128562000d2d565b62004c4a565b015160fb5460405163c329217160e01b8082526000966001600160a01b03861696909490939284816004818c8c5af1801562000862576003918a9162000971575b50620007658162004941565b036200086857505060405163782aadff60e01b81526001600160a01b038416600482015260006024820152948291508590604490829089905af18015620008625760008051602062005e32833981519152946200081d9287926200082e575b50505b80620007d885620006ed8662000d48565b55620007fa620007ed85620006ed8662000d12565b805460ff19166001179055565b62000810846200080a8562000d63565b62004cd4565b6040519384938462004d0e565b0390a16200082b6001606555565b80f35b620008529250803d106200085a575b62000849818362000f9d565b81019062003633565b3880620007c4565b503d6200083d565b62003643565b604096919392965193845282846004818b865af180156200086257889485916200093d575b50620008998162004941565b620008be575b505050506200081d60008051602062005e3283398151915293620007c7565b8293965090620008e69160405197888094819363782aadff60e01b8352896004840162004c9a565b03925af18015620008625760008051602062005e32833981519152946200081d9287926200091b575b5050938591386200089f565b620009359250803d106200085a5762000849818362000f9d565b38806200090f565b620009629150843d861162000969575b62000959818362000f9d565b81019062004c82565b386200088d565b503d6200094d565b6200098c9150863d8811620009695762000959818362000f9d565b3862000759565b604051636adcde4b60e11b8152600490fd5b346200056457602036600319011262000564576200061f600435620009ca8162000621565b620009d462005207565b6200538f565b34620005645760203660031901126200056457600435620009fb8162000621565b62000a056200333b565b61010280546001600160a01b0319166001600160a01b03909216919091179055005b34620005645760003660031901126200056457602060ff8054166040519015158152f35b346200056457602036600319011262000564576200061f60043562000a708162000621565b62000a7a62005207565b6200525e565b34620005645762000a91366200066f565b9062000a9d8162004d87565b62000aa9823362004dae565b60018060a01b03908181169160009280845261010e60205260ff62000ad2866040872062000d99565b54161562000be65762000aea85620006ed8562000d12565b805460ff191690558362000b0386620006ed8662000d48565b55835261010d6020526040832090835b8254908181101562000bac5762000b2b818562000dc6565b905460039391841b1c84168885161462000b53575b5062000b4d9150620040fd565b62000b13565b600019810190811162000ba65762000b4d9262000b7285928762000dc6565b9054911b1c1662000b9262000b88838762000dc6565b81939154620042c6565b905562000b9f8462004dd5565b3862000b40565b62002636565b857ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b888762000be06040519283928362003be8565b0390a180f35b604051633048da7760e21b8152600490fd5b3462000564576020366003190112620005645760043560005260c96020526020600160406000200154604051908152f35b3462000564576000366003190112620005645760fb5462000c5a62000c5160fc54836200264c565b620f4240900490565b9062000c7762000c7162000c716101005462000575565b62000575565b90602060405180936302a64b8360e21b8252818062000c9a306004830162000581565b03915afa918215620008625762000ceb9362000cce62000c5162000cdb9562000cd59460009162000cef575b50856200264c565b9262003415565b62003415565b6040519081529081906020820190565b0390f35b62000d0b915060203d81116200085a5762000849818362000f9d565b3862000cc6565b6001600160a01b0316600090815261010e6020526040902090565b6001600160a01b0316600090815261010c6020526040902090565b6001600160a01b0316600090815261010b6020526040902090565b6001600160a01b0316600090815261010d6020526040902090565b6001600160a01b0316600090815261010a6020526040902090565b9060018060a01b0316600052602052604060002090565b634e487b7160e01b600052603260045260246000fd5b805482101562000ddf5760005260206000200190600090565b62000db0565b3462000564576040366003190112620005645760043562000e068162000621565b6024359060018060a01b0380911660005261010d60205260406000208054831015620005645760209262000e3a9162000dc6565b9190546040519260031b1c168152f35b3462000564576020366003190112620005645760043562000e6b8162000621565b60018060a01b031660005261010c6020526020600160406000200154604051908152f35b346200056457604036600319011262000564576200061f60243560043562000eb78262000621565b8060005260c960205262000ed36001604060002001546200306f565b6200326e565b346200056457602036600319011262000564576200061f60043562005463565b34620005645760003660031901126200056457602060fd54604051908152f35b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b0382111762000f4b57604052565b62000f19565b606081019081106001600160401b0382111762000f4b57604052565b60c081019081106001600160401b0382111762000f4b57604052565b6001600160401b03811162000f4b57604052565b601f909101601f19168101906001600160401b0382119082101762000f4b57604052565b6040519061018082016001600160401b0381118382101762000f4b57604052565b6040519061012082016001600160401b0381118382101762000f4b57604052565b6040519060e082016001600160401b0381118382101762000f4b57604052565b6001600160401b03811162000f4b57601f01601f191660200190565b9291926200104d8262001023565b916200105d604051938462000f9d565b82948184528183011162000564578281602093846000960137010152565b9080601f83011215620005645781602062000699933591016200103f565b9190604083820312620005645760405190620010b58262000f2f565b8335825290928391602082013591906001600160401b0383116200056457602092620010e292016200107b565b910152565b801515036200056457565b35906200064282620010e7565b3462000564576003196080368201126200056457600435906001600160401b0390818311620005645761018090833603011262000564576200114062000fc1565b906200114f8360040162000662565b82526200115f6024840162000662565b60208301526044830135604083015260648301356060830152608483013560808301526200119060a4840162000662565b60a0830152620011a360c4840162000662565b60c083015260e48301358181116200056457620011c7906004369186010162001099565b60e0830152620011db610104840162000662565b61010083015261012483013581811162000564576200120190600436918601016200107b565b610120830152620012166101448401620010f2565b61014083015261016483013590811162000564576200061f9260046200124092369201016200107b565b6101608201526200125062000633565b6200125a62000644565b906200126562000653565b9262003c38565b346200056457604036600319011262000564576024356200128d8162000621565b336001600160a01b03821603620012ac576200061f906004356200331f565b60405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608490fd5b346200056457602036600319011262000564576004356200132a8162000621565b6001600160a01b03620013817f00000000000000000000000000000000000000000000000000000000000000008216620013673082141562003591565b8260008051602062005e92833981519152541614620035e2565b6200138b62003b7e565b33911603620013aa576200061f90620013a362003423565b90620036fd565b620013d3620013b862003b7e565b60405163163678e960e01b8152918291336004840162003be8565b0390fd5b346200056457602036600319011262000564576200061f600435620013fc8162000621565b620053dd565b34620005645760203660031901126200056457600435620014238162000621565b60018060a01b031660005261010a602052602060ff604060002054166040519015158152f35b346200056457602036600319011262000564576200061f6004356200146e8162000621565b62003c02565b346200056457602060ff620014ac6200148d366200066f565b6001600160a01b03909116600090815261010e85526040902062000d99565b54166040519015158152f35b60403660031901126200056457600435620014d38162000621565b6024356001600160401b0381116200056457366023820112156200056457620015079036906024816004013591016200103f565b6001600160a01b03620015447f00000000000000000000000000000000000000000000000000000000000000008216620013673082141562003591565b6200154e62003b7e565b33911603620013aa576200061f91620037c1565b346200056457600036600319011262000564577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003620015c05760405160008051602062005e928339815191528152602090f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b3462000564576020806003193601126200056457600480356200164862004d30565b6200165262004f49565b60005b620016603362000d63565b548110156200175457620016a062000c7162000c716200168b84620016853362000d63565b62000dc6565b905460039190911b1c6001600160a01b031690565b9084604051809363782aadff60e01b825281600081620016c489338c840162004c9a565b03925af180156200086257620016ec9260009162001732575b5080620016f2575b50620040fd565b62001655565b6200172962001720620017053362000d48565b620017196200168b86620016853362000d63565b9062000d99565b91825462003415565b905538620016e5565b6200174d9150863d88116200085a5762000849818362000f9d565b38620016dd565b7f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f620017c28362001797816200178d6101055462000575565b3090339062004e1b565b6001620017a43362000d2d565b01620017b282825462003415565b9055604051918291338362004c9a565b0390a16200061f6001606555565b34620005645760003660031901126200056457610102546040516001600160a01b039091168152602090f35b34620005645760208060031936011262000564576004908135906200182062004d30565b6200182a62004f49565b620018353362000d63565b906001936200185284866200184a3362000d2d565b015462004142565b60fb541162001a5057908492620018788533620018726101055462000575565b62004f67565b6000935b620018c2575b7f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8620017c28688620018b43362000d2d565b01620017b282825462004142565b909192948154948587101562001a4757620018e26200168b888562000dc6565b95620018ee8762004f92565b15620019f657506040928484518098632ed04b2b60e01b8252816000816200191b888d3390840162004c9a565b03926001600160a01b03165af19687156200086257600097620019d2575b5062001959620019493362000d48565b620017196200168b8b8562000dc6565b549485881115620019865784516311423e6360e31b81528088018981526020810188905281906040010390fd5b9450949250948196620019c791620019bf620019b6620019a63362000d48565b620017196200168b868c62000dc6565b91825462004142565b9055620040fd565b93909291926200187c565b620019ee919750853d87116200085a5762000849818362000f9d565b953862001939565b9662001a41620019c7929762001a3662001a236200168b62001a1c889d9b999b62004122565b8b62000dc6565b62001a2f858b62000dc6565b9062004cb5565b620009d48862004dd5565b620040fd565b94509462001882565b604051634e23e81760e11b8152fd5b346200056457602062001a9562001a76366200066f565b6001600160a01b03909116600090815261010b84526040902062000d99565b54604051908152f35b34620005645762001aaf366200066f565b62001ab962004d30565b62001ac362005207565b62001ad862001ad460ff5460ff1690565b1590565b62001bb95762001afa62001ad4600262001af28562000d2d565b015460ff1690565b62001ba75781620017c262001b34620007127fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a39562000d2d565b62001b3f8362005908565b62001b6062001b4e8462000d2d565b60026000918281558260018201550155565b62001b7862001b726101105462004122565b61011055565b62001b99602062001b8c6101055462000575565b9201918583519162004f67565b516040519384938462004d0e565b604051636a5cfb6d60e01b8152600490fd5b6040516365b1ee3960e11b8152600490fd5b34620005645760003660031901126200056457610103546040516001600160a01b039091168152602090f35b34620005645760003660031901126200056457610106546040516001600160a01b039091168152602090f35b34620005645760008060031936011262001c745762001c416200333b565b603380546001600160a01b0319811690915581906001600160a01b031660008051602062005eb28339815191528280a380f35b80fd5b3462000564576020366003190112620005645762001c9462005207565b6101075460405163068bcd8d60e01b81526004803590820152906001600160a01b03906000908390602490829085165afa91821562000862576200061f9260209160009162001ce8575b500151166200538f565b62001d07913d8091833e62001cfe818362000f9d565b8101906200516b565b3862001cde565b34620005645760003660031901126200056457602060405160008051602062005dd28339815191528152f35b34620005645760003660031901126200056457602061011054604051908152f35b34620005645760003660031901126200056457610101546040516001600160a01b039091168152602090f35b34620005645760003660031901126200056457610104546040516001600160a01b039091168152602090f35b3462000564576020366003190112620005645762001dd062005207565b6101075460405163068bcd8d60e01b8152600480359082015290600090829060249082906001600160a01b03165afa80156200086257602062000c719162001e249360009162001e41575b50015162000575565b62001e2f8162004f92565b62001e3657005b6200061f906200525e565b62001e57913d8091833e62001cfe818362000f9d565b3862001e1b565b34620005645760203660031901126200056457606060043562001e818162000621565b60018060a01b0380911660005261010c6020526040600020908154169060ff600260018301549201541690604051928352602083015215156040820152f35b34620005645760003660031901126200056457602060fc54604051908152f35b34620005645760003660031901126200056457602062001eff62003b7e565b6040516001600160a01b039091168152f35b34620005645760403660031901126200056457602060ff620014ac60243562001f3a8162000621565b60043560005260c98452604060002062000d99565b34620005645760208060031936011262000564576004356001600160401b038111620005645762001f859036906004016200107b565b62001f8f62004d30565b62001fa162000c716101005462000575565b9160fb5462001fb762000c5160fc54836200264c565b6040516302a64b8360e21b815290946001600160a01b0316919083818062001fe3306004830162000581565b0381865afa80156200086257620020099262000c5192600092620021ab575b506200264c565b906200201f62001ad4600262001af23362000d2d565b62002030575b6200061f6001606555565b6200204f6002620020413362000d2d565b01805460ff19166001179055565b60fb5494856001620020613362000d2d565b01556200209361010596620020888562000cd585620020818c5462000575565b9462003415565b903090339062004e1b565b806200217d575b5081620020ec575b50505060008051602062005f128339815191529150620020c962001b7261011054620033f7565b60fb54620020de60405192839233846200543d565b0390a1388080808062002025565b82620020fb6004965462000575565b9160405196878092634c3a1adf60e11b82525afa908115620008625760008051602062005f12833981519152956200213e9460009362002147575b505062004f67565b388080620020a2565b6200216c929350803d1062002175575b62002163818362000f9d565b81019062003b66565b90388062002136565b503d62002157565b620021a4906200218e875462000575565b60ff5460081c6001600160a01b03169062004f67565b386200209a565b620021c7919250863d88116200085a5762000849818362000f9d565b903862002002565b34620005645760003660031901126200056457602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b34620005645760003660031901126200056457602060405160008152f35b346200056457602036600319011262000564576004356200223f8162000621565b60018060a01b031660005261010c602052602060ff600260406000200154166040519015158152f35b34620005645760203660031901126200056457600435620022898162000621565b620022936200333b565b61010180546001600160a01b0319166001600160a01b03909216919091179055005b3462000564576000366003190112620005645760ff5460405160089190911c6001600160a01b03168152602090f35b3462000564576000366003190112620005645761010380546001600160a01b031633819003620023a7576200239562000c717ffea29da7321ca6d0ee0a7359009bb9d4a57035aea0ef6cb4d062341f4a9615199362002347620023a294620031d5565b6200237e6200237862000c7161010693620023716200236b62000c71875462000575565b6200328a565b5462000575565b6200339d565b61010380546001600160a01b031916905562002371565b6040519182918262000581565b0390a1005b6040516375e686b760e11b8152600490fd5b90600182811c92168015620023eb575b6020831014620023d557565b634e487b7160e01b600052602260045260246000fd5b91607f1691620023c9565b60005b8381106200240a5750506000910152565b8181015183820152602001620023f9565b906020916200243681518092818552858086019101620023f6565b601f01601f1916010190565b906020620006999281815201906200241b565b34620005645760008060031936011262001c74576040518161010980546200247d81620023b9565b80855291600191808316908115620024f95750600114620024b9575b62000ceb85620024ac8189038262000f9d565b6040519182918262002442565b835260208084209095505b828410620024e5575050508162000ceb93620024ac92820101933862002499565b8054858501870152928501928101620024c4565b905062000ceb9650620024ac9450602092508593915060ff191682840152151560051b820101933862002499565b34620005645760008060031936011262001c74576200254562004d30565b6200254f62004f49565b6200255a3362005908565b33815261010c6020527fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f46200081d604083206040516200259a8162000f51565b81546001600160a01b0316815260018201546020820190815260029092015460ff161515604090910152620025d362001b4e3362000d2d565b620025e8620025e23362000d63565b6200429f565b610110548062002620575b5062002611620026066101055462000575565b825190339062004f67565b51604051918291338362004c9a565b62001b726200262f9162004122565b38620025f3565b634e487b7160e01b600052601160045260246000fd5b8181029291811591840414171562000ba657565b346200056457600036600319011262000564576020604051620186a08152f35b346200056457602036600319011262000564576200061f600435620026a58162000621565b620026b860ff60005460081c1662003ae0565b620033bf565b34620005645760008060031936011262001c7457604051816101088054620026e681620023b9565b80855291600191808316908115620024f95750600114620027145762000ceb85620024ac8189038262000f9d565b835260208084209095505b82841062002740575050508162000ceb93620024ac92820101933862002499565b80548585018701529285019281016200271f565b346200056457604036600319011262000564576200061f6024356004356200277c8262000621565b8060005260c9602052620027986001604060002001546200306f565b6200331f565b34620005645760003660031901126200056457610107546040516001600160a01b039091168152602090f35b3462000564576000366003190112620005645760206040516127108152f35b34620005645760003660031901126200056457610105546040516001600160a01b039091168152602090f35b91908260809103126200056457604051608081016001600160401b0381118282101762000f4b5760405260608082948035845260208101356020850152604081013560408501520135910152565b359060038210156200056457565b600411156200056457565b3590620006428262002871565b91908260209103126200056457604051602081016001600160401b0381118282101762000f4b5760405291358252565b91908260c09103126200056457604051620028d48162000f6d565b60a08082948035620028e68162000621565b84526020810135620028f88162000621565b60208501526040810135604085015260608101356060850152608081013560808501520135910152565b6001600160401b03811162000f4b5760051b60200190565b81601f820112156200056457803591620029548362002922565b9262002964604051948562000f9d565b808452602092838086019260051b82010192831162000564578301905b82821062002990575050505090565b8380918335620029a08162000621565b81520191019062002981565b919091610220818403126200056457620029c562000fe2565b92620029d2818362002815565b8452620029e26080830162002863565b6020850152620029f560a083016200287c565b604085015262002a098160c0840162002889565b606085015262002a1d8160e08401620028b9565b608085015262002a316101a0830162000662565b60a085015262002a456101c0830162000662565b60c08501526101e082013560e08501526102008201356001600160401b038111620005645762002a7692016200293a565b610100830152565b9081526001600160a01b03909116602082015260400190565b3462000564576060366003190112620005645760043562002ab88162000621565b6001600160401b03602435818111620005645762002adb903690600401620029ac565b91604435828111620005645762002af790369060040162001099565b9062002b066101025462000575565b9062002b1962000c716101075462000575565b9262002b286101015462000575565b6033546040805163184b955960e01b60208201526001600160a01b039788166024820152928716604484015290861660648084019190915282529495601f199462002b7560848462000f9d565b86519261041091828501938585109085111762000f4b57849362002b9f93620059c28639620048b7565b03906000f08015620008625762002bba928688921662004b38565b948592919462002bce60c083015162000575565b161562002c76575b50829162002c6b9162002c3d62000ceb9551602081019062002c0b8162002bfe8b85620048db565b0385810183528262000f9d565b5190208551602081019062002c338162002c268c85620048f6565b0386810183528262000f9d565b5190209062004865565b835162002c6260208201928262002c558a86620048f6565b0390810183528262000f9d565b5190206200326e565b519283928362002a7e565b6101009192500192835151612710811162002d0257508251602081019062002ca48162002bfe8585620048db565b5190209260005b855187815183101562002cec57509062001a4162002cdf62002cd28362002ce6956200410d565b516001600160a01b031690565b876200326e565b62002cab565b9396509194509192915062000ceb905062002bd6565b835163107b111560e31b81526004810191909152602490fd5b34620005645760203660031901126200056457602060ff620014ac60043562002d448162000621565b60008051602062005dd283398151915260005260c98452604060002062000d99565b3462000564576080366003190112620005645760043562002d878162000621565b6024359062002d968262000621565b6001600160401b0391604435838111620005645762002dba903690600401620029ac565b90606435938411620005645762002dda62002de194369060040162001099565b9262004b38565b9062000ceb6040519283928362002a7e565b3462000564576003196020368201126200056457600435906001600160401b0390818311620005645760e0908336030112620005645762002e3362001003565b9062002e428360040162000662565b825262002e526024840162000662565b6020830152604483013560408301526064830135818111620005645762002e8090600436918601016200107b565b60608301526084830135608083015262002e9d60a48401620010f2565b60a083015260c483013590811162000564576200061f92600462002ec592369201016200107b565b60c08201526200559c565b3462000564576020366003190112620005645760043562002ef18162000621565b62002efb6200333b565b6001600160a01b0381161562002f16576200061f90620033bf565b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34620005645760003660031901126200056457610100546040516001600160a01b039091168152602090f35b346200056457602036600319011262000564577f6723d9f32d040ca8ddd4dabf6f03ad485e63fc3fd625ac1fa1c557de6719314f602060043562002fda8162000621565b62002fe462005207565b6001600160a01b038116600081815261010a8452604090205490919060ff1662003013575b50604051908152a1005b6200301e906200538f565b3862003009565b3462000564576000366003190112620005645762000ceb6040516200304a8162000f2f565b60038152620302e360ec1b60208201526040519182916020835260208301906200241b565b8060005260c960205260ff6200308a33604060002062000d99565b541615620030955750565b3390620030a16200344c565b916030620030af8462003469565b536078620030bd8462003477565b5360295b600181116200317457620013d36200312f6200315b866200314c620030f288620030ec8915620034a8565b620034f4565b62003128604051958694620031286020870160179076020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81520190565b90620031bc565b7001034b99036b4b9b9b4b733903937b6329607d1b815260110190565b03601f19810183528262000f9d565b60405162461bcd60e51b81529182916004830162002442565b90600f811690601082101562000ddf57620031b6916f181899199a1a9b1b9c1cb0b131b232b360811b901a620031ab848762003488565b5360041c916200349a565b620030c1565b90620031d160209282815194859201620023f6565b0190565b60008051602062005dd2833981519152600081815260c96020529060ff6200320d8460008051602062005ef283398151915262000d99565b5416156200321a57505050565b80825260c960205262003231836040842062000d99565b805460ff1916600117905533926001600160a01b0316917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4565b60009080825260c960205260ff6200320d846040852062000d99565b60008051602062005dd2833981519152600081815260c96020529060ff620032c28460008051602062005ef283398151915262000d99565b5416620032ce57505050565b80825260c9602052620032e5836040842062000d99565b805460ff1916905533926001600160a01b0316917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4565b60009080825260c960205260ff620032c2846040852062000d99565b6200334562003b7e565b336001600160a01b03909116036200335957565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b61010680546001600160a01b0319166001600160a01b03909216919091179055565b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062005eb2833981519152600080a3565b906001820180921162000ba657565b906002820180921162000ba657565b9190820180921162000ba657565b604051602081016001600160401b0381118282101762000f4b5760405260008152906000368137565b604051906200345b8262000f51565b602a82526040366020840137565b80511562000ddf5760200190565b80516001101562000ddf5760210190565b90815181101562000ddf570160200190565b801562000ba6576000190190565b15620034b057565b606460405162461bcd60e51b815260206004820152602060248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b60405190608082016001600160401b0381118382101762000f4b5760405260428252606036602084013760306200352b8362003469565b536078620035398362003477565b536041905b60018211620035545762000699915015620034a8565b600f811690601082101562000ddf576200358a916f181899199a1a9b1b9c1cb0b131b232b360811b901a620031ab848662003488565b906200353e565b156200359957565b60405162461bcd60e51b815260206004820152602c602482015260008051602062005e5283398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b15620035ea57565b60405162461bcd60e51b815260206004820152602c602482015260008051602062005e5283398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b9081602091031262000564575190565b6040513d6000823e3d90fd5b156200365757565b60405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608490fd5b60809060208152602e60208201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960408201526d6f6e206973206e6f74205555505360901b60608201520190565b906200371960008051602062005e128339815191525460ff1690565b156200372b5750620006429062003885565b6040516352d1902d60e01b8152916020836004816001600160a01b0385165afa600093816200379c575b50620037765760405162461bcd60e51b815280620013d360048201620036ae565b6200379660008051602062005e928339815191526200064294146200364f565b62003917565b620037b991945060203d81116200085a5762000849818362000f9d565b923862003755565b90620037dd60008051602062005e128339815191525460ff1690565b15620037ef5750620006429062003885565b6040516352d1902d60e01b8152916020836004816001600160a01b0385165afa6000938162003860575b506200383a5760405162461bcd60e51b815280620013d360048201620036ae565b6200385a60008051602062005e928339815191526200064294146200364f565b620039cd565b6200387d91945060203d81116200085a5762000849818362000f9d565b923862003819565b803b15620038bc5760008051602062005e9283398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b90620039238262003885565b6001600160a01b03821660008051602062005ed2833981519152600080a2805115801590620039c4575b62003956575050565b620039c191600080604051936200396d8562000f51565b602785527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c6020860152660819985a5b195960ca1b6040860152602081519101845af4620039ba62003a14565b9162003a49565b50565b5060006200394d565b90620039d98262003885565b6001600160a01b03821660008051602062005ed2833981519152600080a280511580159062003a0b5762003956575050565b5060016200394d565b3d1562003a44573d9062003a288262001023565b9162003a38604051938462000f9d565b82523d6000602084013e565b606090565b9192901562003aae575081511562003a5f575090565b3b1562003a695790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b82519091501562003ac25750805190602001fd5b60405162461bcd60e51b8152908190620013d3906004830162002442565b1562003ae857565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b6200064290620026b860ff60005460081c1662003ae0565b5190620006428262000621565b90816020910312620005645751620006998162000621565b6033546001600160a01b0316803b62003b945790565b604051638da5cb5b60e01b8152602081600481855afa6000918162003bc3575b5062003bbe575090565b905090565b62003be091925060203d8111620021755762002163818362000f9d565b903862003bb4565b6001600160a01b0391821681529116602082015260400190565b6001600160a01b0316600090815261010a602052604090205460ff161562003c2657565b6040516346c26e4b60e01b8152600490fd5b919290926000549360ff8560081c16158095819662003d6b575b811562003d48575b501562003cec5762003c85938562003c7a600160ff196000541617600055565b62003cd1576200439a565b62003c8c57565b62003c9d61ff001960005416600055565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989080602081015b0390a1565b62003ce661010061ff00196000541617600055565b6200439a565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b303b1591508162003d5c575b503862003c5a565b6001915060ff16143862003d54565b600160ff821610915062003c52565b81811062003d86575050565b6000815560010162003d7a565b90601f821162003da1575050565b62000642916101086000526020600020906020601f840160051c8301931062003dd3575b601f0160051c019062003d7a565b909150819062003dc5565b90601f821162003dec575050565b62000642916101096000526020600020906020601f840160051c8301931062003dd357601f0160051c019062003d7a565b80519091906001600160401b03811162000f4b576101089062003e4c8162003e468454620023b9565b62003d93565b602080601f831160011462003e8b57508192939460009262003e7f575b50508160011b916000199060031b1c1916179055565b01519050388062003e69565b610108600052601f198316959091907f8543e9adbfbe1f62b7411fdf032fcfea758a7d6b332f64d971a1334c2ff364dd926000905b88821062003efb5750508360019596971062003ee1575b505050811b019055565b015160001960f88460031b161c1916905538808062003ed7565b8060018596829496860151815501950193019062003ec0565b80519091906001600160401b03811162000f4b576101099062003f438162003f3d8454620023b9565b62003dde565b602080601f831160011462003f7557508192939460009262003e7f5750508160011b916000199060031b1c1916179055565b610109600052601f198316959091907fd7f48d1c2d4fdcceabee32a4fd1437f382c65f0f9af09a878c95c20147dc06a8926000905b88821062003fca5750508360019596971062003ee157505050811b019055565b8060018596829496860151815501950193019062003faa565b60ff8054610100600160a81b03191660089290921b610100600160a81b0316919091179055565b602090818184031262000564578051906001600160401b0382116200056457019180601f8401121562000564578251620040448162002922565b9362004054604051958662000f9d565b818552838086019260051b82010192831162000564578301905b8282106200407d575050505090565b83809183516200408d8162000621565b8152019101906200406e565b60405190608082016001600160401b0381118382101762000f4b57604052600382526060366020840137565b90620040d18262002922565b620040e0604051918262000f9d565b8281528092620040f3601f199162002922565b0190602036910137565b600019811462000ba65760010190565b805182101562000ddf5760209160051b010190565b60001981019190821162000ba657565b60011981019190821162000ba657565b9190820391821162000ba657565b906000916101088054916200416583620023b9565b918282526001938481169081600014620041cc575060011462004189575b50505050565b90919394506000526020928360002092846000945b838610620041b757505050500101903880808062004183565b8054858701830152940193859082016200419e565b9294505050602093945060ff191683830152151560051b0101903880808062004183565b906040602062000699938051845201519181602082015201906200241b565b90815180825260208080930193019160005b82811062004230575050505090565b83516001600160a01b03168552938101939281019260010162004221565b906200069994926200428091835260a060208401526200427160a0840162004150565b908382036040850152620041f0565b6001600160a01b0390931660608201528083036080909101526200420f565b80546000825580620042af575050565b620006429160005260206000209081019062003d7a565b9060031b9160018060a01b03809116831b921b19161790565b8051906001600160401b03821162000f4b57600160401b821162000f4b5761010f9081548383558084106200434c575b50602080910191600052806000209060005b84811062004330575050505050565b83516001600160a01b0316838201559281019260010162004321565b620043669083600052846020600020918201910162003d7a565b386200430f565b909162000699928252606060208301526200438b6060830162004150565b916040818403910152620041f0565b9092620043a79062003b41565b620043b162004892565b620043bb620047fa565b620043c56200480d565b620043fb620043d962000c71835162000575565b61010780546001600160a01b0319166001600160a01b03909216919091179055565b6020620044316200440f8284015162000575565b61010580546001600160a01b0319166001600160a01b03909216919091179055565b604092838301805115620047e9575160fb5562004451606084015160fc55565b6200447562004464610140850151151590565b60ff8019815416911515161760ff55565b6200448561012084015162003e1d565b6200449561016084015162003f14565b620044ca620044a860a085015162000575565b61010080546001600160a01b0319166001600160a01b03909216919091179055565b620044e3620044dd60c085015162000575565b62003fe3565b62004518620044fb62000c7161010086015162000575565b62004506816200339d565b62004512600061011055565b620031d5565b6004826200452d62000c716101075462000575565b8651635ab1bd5360e01b815292839182905afa801562000862576200457991600091620047c7575b5061010480546001600160a01b0319166001600160a01b0392909216919091179055565b6000946200458e62000c716101065462000575565b95863b6200470957506200463790620045e1620045aa62004099565b97620045ca33620045bb8b62003469565b6001600160a01b039091169052565b620045bb620045da8a5162004122565b8a6200410d565b620045f630620045bb620045da8a5162004132565b83876200460a62000c716101045462000575565b60e06080890151980197600089518b5197889586948593633a92f65f60e01b85523091600486016200424e565b03925af191821562000862577f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059762004688620046b0946200468e93620046d298600092620046e7575b505060fe55565b620042df565b61010280546001600160a01b0319166001600160a01b03909216919091179055565b61010180546001600160a01b0319166001600160a01b03909216919091179055565b62003ccc60fe5491519251928392836200436d565b620047019250803d106200085a5762000849818362000f9d565b388062004681565b94929095969391835163a0e67e2b60e01b815286816004818c5afa968715620008625780976200479d575b50506200474c62004746875162003406565b620040c5565b9660005b875181101562004785578062001a416200477362002cd26200477f948c6200410d565b620045bb838d6200410d565b62004750565b50909294976200463792949650620045e190620045ca565b620047be9297503d8091833e620047b5818362000f9d565b8101906200400a565b94388062004734565b620047e29150843d8611620021755762002163818362000f9d565b3862004555565b84516363868c5560e11b8152600490fd5b6200064260ff60005460081c1662003ae0565b60008051602062005dd2833981519152600081815260c96020527fa867e09674d469ee17077111ff66261f5d2fc5820cc6914676cb47231da58819805490829055909160008051602062005df28339815191528380a4565b8060005260c9602052600160406000200190828254925560008051602062005df2833981519152600080a4565b620048b060ff60005460081c16620048aa8162003ae0565b62003ae0565b6001606555565b6001600160a01b03909116815260406020820181905262000699929101906200241b565b6029916810531313d5d31254d560ba1b825260098201520190565b602f916e20a62627aba624a9aa2fa0a226a4a760891b8252600f8201520190565b634e487b7160e01b600052602160045260246000fd5b9060038210156200493b5752565b62004917565b600411156200493b57565b9060048210156200493b5752565b61024062000699926020835262004993602084018251606080918051845260208101516020850152604081015160408501520151910152565b620049a7602082015160a08501906200492d565b620049bb604082015160c08501906200494c565b60608101515160e084015260808181015180516001600160a01b03908116610100878101919091526020830151909116610120870152604082015161014087015260608201516101608701529181015161018086015260a001516101a08501529060a08101516001600160a01b03166101c085015260c08101516001600160a01b03166101e085015260e08101516102008501520151916102208082015201906200420f565b929462004a969562004ab2939592855260018060a01b0396879182602098168888015260e0604088015260e08701906200241b565b921660608501526000608085015283820360a0850152620041f0565b9060c081830391015261010f9282845492838152019360005282600020926000915b83831062004ae457505050505090565b845481168652948101946001948501949092019162004ad4565b9081526001600160a01b0391821660208201529181166040830152909116606082015260a0608082018190526200069992910190620041f0565b9093919273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee916001600160a01b03861662004c41575b602062004b97829683600062004b7f62000c716101075462000575565b9262004ba660fe54916040519687918983016200495a565b03601f19810187528662000f9d565b62004bc9886040519a8b97889687956370803ea560e11b87526004870162004a61565b03925af191821562000862577f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2839360009362004c17575b5062003ccc90839760405194859430918662004afe565b62003ccc91935062004c399060203d81116200085a5762000849818362000f9d565b929062004c00565b85925062004b62565b9060405162004c598162000f51565b82546001600160a01b031681526001830154602082015260029092015460ff1615156040830152565b90816020910312620005645751620006998162002871565b6001600160a01b039091168152602081019190915260400190565b8054909262004cd0926001600160a01b0390911691620042c6565b9055565b805490600160401b82101562000f4b578162004cfa91600162004cd09401815562000dc6565b815491936001600160a01b031691620042c6565b6001600160a01b03918216815291166020820152604081019190915260600190565b60026065541462004d42576002606555565b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b6001600160a01b0316600090815261010c602052604090206002015460ff161562001ba757565b6001600160a01b0391821691160362004dc357565b60405163bbe7961160e01b8152600490fd5b8054801562004e0557600019019062004def828262000dc6565b81549060018060a01b039060031b1b1916905555565b634e487b7160e01b600052603160045260246000fd5b9062004e569062004e4762000642956040519586936323b872dd60e01b60208601526024850162004d0e565b03601f19810184528362000f9d565b60405162004eb3916001600160a01b031662004e728262000f2f565b6000806020958685527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656487860152868151910182855af1620039ba62003a14565b805182811591821562004f25575b505090501562004ece5750565b6084906040519062461bcd60e51b82526004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152fd5b8380929350010312620005645781015162004f4081620010e7565b80823862004ec1565b3360005261010c60205260ff600260406000200154161562001ba757565b62004e5662000642939262004e4760405194859263a9059cbb60e01b60208501526024840162004c9a565b6040519060208083018160006301ffc9a760e01b958684528660248201526024815262004fbf8162000f51565b51617530938685fa933d600051908662005072575b508562005067575b508462004ffd575b5050508162004ff1575090565b6200069991506200507e565b83945090600091839460405185810192835263ffffffff60e01b6024820152602481526200502b8162000f51565b5192fa60005190913d836200505b575b50508162005050575b50159038808062004fe4565b905015153862005044565b1015915038806200503b565b151594503862004fdc565b84111595503862004fd4565b6000602091604051838101906301ffc9a760e01b825263f1801e6160e01b602482015260248152620050b08162000f51565b5191617530fa6000513d82620050d3575b5081620050cc575090565b9050151590565b60201115915038620050c1565b91906040838203126200056457604051620050fb8162000f2f565b83518152602084015190938491906001600160401b0382116200056457019082601f830112156200056457815191620051348362001023565b9362005144604051958662000f9d565b8385526020848301011162000564576020926200516791848087019101620023f6565b0152565b90602082820312620005645781516001600160401b039283821162000564570160c081830312620005645760405192620051a58462000f6d565b815184526020820151620051b98162000621565b6020850152620051cc6040830162003b59565b60408501526060820151908111620005645760a092620051ee918301620050e0565b606084015260808101516080840152015160a082015290565b60008051602062005dd283398151915260005260c960205260ff6200523c3360008051602062005ef283398151915262000d99565b5416156200524657565b60405163fc4be72f60e01b8152336004820152602490fd5b6200526d620006f38262000d7e565b6200537d5762005281620007ed8262000d7e565b60405163b6c61f3160e01b81526001600160a01b03906020816004818686165afa90811562000862576000916200535a575b501680620052df575b5062003ccc60008051602062005e72833981519152916040519182918262000581565b90813b156200056457600060405180936306c0752d60e51b82528183816200530b876004830162000581565b03925af1908115620008625760008051602062005e728339815191529262003ccc926200533c575b509150620052bc565b806200534c620053539262000f89565b8062000569565b3862005333565b62005376915060203d8111620021755762002163818362000f9d565b38620052b3565b6040516325a2934b60e21b8152600490fd5b6001600160a01b0316600081815261010a6020908152604091829020805460ff1916905590519182527f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea491a1565b60407f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf8916200540b62005207565b61010380546001600160a01b0319166001600160a01b03928316908117909155610106548351921682526020820152a1565b62000699939260609260018060a01b03168252602082015281604082015201906200241b565b60207f5e2d447f427e49fd08832fd025a56589500352417199aa65728feaf05123e856916200549162005207565b6200549b620054a8565b8060fb55604051908152a1565b6101105480620054b55750565b60249060405190637d95539f60e11b82526004820152fd5b6040519060008261010991825492620054e684620023b9565b9081845260019485811690816000146200555b575060011462005514575b5050620006429250038362000f9d565b9093915060005260209081600020936000915b81831062005542575050620006429350820101388062005504565b8554888401850152948501948794509183019162005527565b9150506200064294506020925060ff191682840152151560051b820101388062005504565b604051906200064282620055948162004150565b038362000f9d565b620055a662005207565b6080810180519060fb5480921480159062005830575b80156200580a575b620056fb575b505060608101805160208151910120620055e362005580565b6020815191012003620056b1575b50604081015160fc5481036200569f575b506200564f62005616602083015162000575565b60ff54909290620056339060081c6001600160a01b031662000575565b6001600160a01b0393908482160362005664575b505162000575565b1680620056595750565b6200064290620053dd565b6200569581620023957f647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f7860599362003fe3565b0390a13862005647565b620056aa9062005854565b3862005602565b620056f181620056e37ff67fb6c95f41f58a276869ca2608214f0a6aab1c9ffe445affaa58680fddd497935162003e1d565b516040519182918262002442565b0390a138620055f1565b62005705620054a8565b51908103620057f8575b5060a081015115156200572d6200572860ff5460ff1690565b151590565b81151503620057a0575b5060c081018051602081519101206200574f620054cd565b602081519101200362005764575b80620055ca565b6200579681620056e37f8fd46764d9fde733a671bd3aa6710da0668b1c4eb78d33f42e104553ea4bc76e935162003f14565b0390a1386200575d565b620057ee81620057dc7f4ca826489011b9a44719ccfa206813b072bb58604af41f245a6a1a6d913588759360ff8019815416911515161760ff55565b60405190151581529081906020820190565b0390a13862005737565b620058039062005463565b386200570f565b5060c08301516020815191012062005821620054cd565b602081519101201415620055c4565b5060a08301511515620058496200572860ff5460ff1690565b9015151415620055bc565b6200585e62005207565b620186a081116200589a576020817f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d69260fc55604051908152a1565b60405163fe925f7d60e01b8152600490fd5b9060405191828154918282526020928383019160005283600020936000905b828210620058e457505050620006429250038362000f9d565b85546001600160a01b031684526001958601958895509381019390910190620058cb565b9060009160018060a01b038116835261010d6020526040906200592d828520620058ac565b845b8151811015620059b9576200595162000c7162000c7162002cd284866200410d565b90813b15620059b5578685518093631914f67160e21b82528183816200597b8a6004830162000581565b03925af1918215620008625762005998926200599e5750620040fd565b6200592f565b806200534c620059ae9262000f89565b38620016e5565b8680fd5b50505050905056fe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c6343000813003303be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fabd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143f56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec46756e6374696f6e206d7573742062652063616c6c6564207468726f756768203f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f1360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3ba867e09674d469ee17077111ff66261f5d2fc5820cc6914676cb47231da588180bd09b1e448ffe881e884ac37014bf3e0274007308056b6469b50fa485542abfa2646970667358221220285a8aef9c43f9495b799fb7d2c7634c33f0b55a3538c767af0a9c88e478de3f64736f6c6343000813003338395c5dceade9603479b177b68959049485df8aa97b39f3533039af5f4561990000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d9081016040528093929190818152602001838380828437600081840152601f1937fa166cbdbfbb1561ccd9ea985ec0218b5e68502e230525f544285b2bdf3d7e01838380828437600081840152601f19601f820116905080830192505050505080601f0160208091040260200160405190810160405280939291908181526020a264697066735822122023009603406bd770f26d47d67b87f512fa04e7f7e714b54d6149d36ede74c62a64736f6c63430008130033","sourceMap":"334:8552:95:-:0;;;;3166:4:19;334:8552:95;;-1:-1:-1;;334:8552:95;3166:4:19;334:8552:95;;;;;;-1:-1:-1;;;;;334:8552:95;;;3166:4:19;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;671:82:111;;;;334:8552:95;;671:82:111;334:8552:95;;;;;;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;2401:42:93;334:8552:95;;-1:-1:-1;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;;;;;;;;;;;;;;824:4:17;334:8552:95;;;824:4:17;334:8552:95;821:1:112;334:8552:95;-1:-1:-1;852:1:112;334:8552:95;1848:7:93;;334:8552:95;;;;;;;;1886:42:93;334:8552:95;1886:42:93;334:8552:95;;;1886:42:93;334:8552:95;2266:5:93;;334:8552:95;;;;;:::i;:::-;;;;;;;-1:-1:-1;334:8552:95;;;2356:9:93;334:8552:95;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;2356:9:93;334:8552:95;2401:42:93;334:8552:95;;;2401:42:93;334:8552:95;;;;;;;;;;;;2356:9:93;-1:-1:-1;334:8552:95;-1:-1:-1;334:8552:95;;;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;334:8552:95;;;-1:-1:-1;334:8552:95;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;-1:-1:-1;334:8552:95;;-1:-1:-1;334:8552:95;;-1:-1:-1;334:8552:95;;;;;;;;;;;;2401:42:93;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;334:8552:95;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;334:8552:95;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405260043610156200001357600080fd5b60003560e01c8062b1fad714620005c2578063023a6f4314620005bc578063030e400614620005b65780630522b7db14620005b05780630688b13514620005aa57806308c24f9f14620005a457806308dbbb03146200059e5780630f166ad41462000598578063174eedde14620004a85780631ae726d914620005925780631b96dce6146200058c5780631d8fcc1014620005865780631e7bcb2e14620005805780631ed7831c146200057a5780632ade388014620005745780632e0f2625146200056e5780632f99c6cc1462000568578063352c94a7146200056257806337d1c404146200055c578063388aef5c1462000556578063392f37e914620005505780633e5e3c23146200054a5780633f26479e14620005445780633f7286f4146200053e57806349ef42c114620005385780634bf4ba211462000532578063587c1243146200052c5780635aff599914620005265780635d1222aa14620005205780635d6b4bc2146200051a5780635e2dd44214620005145780636050f2f814620004a257806366d003ac146200050e57806366d9a9a014620005085780636a38dd0a14620005025780636c53db9a14620004fc5780636db5251014620004f657806370a3294414620004f057806374d9284e14620004a8578063759c9a8614620004ea5780637658524d14620004e457806379e62d0d14620004de5780637b2edf3214620004d85780637cbe79ed14620004d25780637f6a80df14620004cc578063829e423f14620004a857806382bfefc814620004c657806385226c8114620004c057806385294f1814620004ba578063861ceb6914620004b4578063896546a114620004ae5780638c7408c414620004a85780638e0d1a5014620004a25780638e3c2493146200049c578063916a17c614620004965780639352fad2146200049057806393892107146200048a578063a0cf0aea1462000484578063a407c67a146200047e578063aa3744bd1462000478578063b3e9b4fd1462000472578063b5508aa9146200046c578063ba414fa61462000466578063bb0504cd1462000460578063c0406226146200045a578063c1f2a6411462000454578063caa12add146200044e578063d1e82b581462000448578063d1f2cd881462000442578063d23727ed146200043c578063d5bee9f51462000436578063da4bf0871462000430578063dac4eb16146200042a578063dac770b31462000424578063e070e0ab146200041e578063e20c9f711462000418578063e99ce9111462000412578063ef0d790f146200040c578063f4d914e61462000406578063f69d511f1462000400578063f8ccbf4714620003fa5763fa7626d414620003f457600080fd5b620034b6565b62003491565b62003450565b620033af565b62003350565b62003221565b620031b8565b62003105565b62002ca8565b62002c4e565b62002b33565b62002adc565b62002aab565b62002a51565b620029f5565b620029c4565b6200295e565b6200292c565b6200290d565b620028e4565b62002844565b62002797565b620025d4565b620024d9565b620024a8565b6200247d565b62002462565b620022fa565b620022dc565b6200175e565b62000c19565b620022b1565b62002286565b6200218d565b62001ffd565b62001fbf565b62001f94565b62001f3e565b62001f20565b62001e25565b62001e05565b62001dad565b62001c75565b62001c10565b62001be1565b62001bc3565b620018a8565b62001789565b62001743565b6200166a565b6200164a565b620015ee565b620015d0565b6200159a565b6200157b565b62001512565b620014f3565b6200148a565b6200138f565b6200136f565b62001306565b62001189565b62000fb8565b62000f93565b62000efb565b62000d57565b62000ce7565b62000cc9565b62000c6f565b62000c37565b62000bfc565b62000bdc565b62000b8e565b62000b38565b62000b0d565b62000aae565b620008ef565b620005f8565b6000910312620005d457565b600080fd5b6001600160a01b031690565b6001600160a01b03909116815260200190565b34620005d45760008060031936011262000747576200061662003534565b620006676040516020810190620006428162000633848762003765565b03601f19810183528262000852565b5190206040516001625e79b760e01b0319815260048101919091529081906024820190565b03916020826000805160206201208a8339815191529481865afa92831562000706578492839462000710575b50803b156200070c57620006bf916040519586809481936318caf8e360e31b8352886004840162003796565b03925af19182156200070657620006e492620006e8575b5060405191829182620005e5565b0390f35b80620006f8620006ff9262000772565b80620005c8565b38620006d6565b620036c2565b8280fd5b6200073791945060203d81116200073f575b6200072e818362000852565b8101906200377e565b923862000693565b503d62000722565b80fd5b6001600160a01b03811603620005d457565b634e487b7160e01b600052604160045260246000fd5b6001600160401b0381116200078657604052565b6200075c565b604081019081106001600160401b038211176200078657604052565b60c081019081106001600160401b038211176200078657604052565b602081019081106001600160401b038211176200078657604052565b608081019081106001600160401b038211176200078657604052565b606081019081106001600160401b038211176200078657604052565b610f0081019081106001600160401b038211176200078657604052565b615a0081019081106001600160401b038211176200078657604052565b601f909101601f19168101906001600160401b038211908210176200078657604052565b6001600160401b0381116200078657601f01601f191660200190565b929192620008a08262000876565b91620008b0604051938462000852565b829481845281830111620005d4578281602093846000960137010152565b9080601f83011215620005d457816020620008ec9335910162000892565b90565b34620005d4576080366003190112620005d45760043562000910816200074a565b604435906200091f826200074a565b606435906001600160401b038211620005d457620009466200097e923690600401620008ce565b906060620009568284876200c017565b6040516338d07aa960e21b815260248035600483015281019190915293849081906044820190565b03816000805160206201208a8339815191525afa9182156200070657620009f89460209460008091819662000a63575b5060009291620009cb620009da926040519889938b85016200bf9e565b03601f19810187528662000852565b60405163353b090160e11b815296879586948593600485016200bcf0565b03926001600160a01b03165af18015620007065762000a2c9160009162000a2e575b5062000a256200bdb6565b906200bf0c565b005b62000a54915060203d811162000a5b575b62000a4b818362000852565b8101906200bcd6565b3862000a1a565b503d62000a3f565b620009cb96506000939250620009da915062000a999060603d811162000aa6575b62000a90818362000852565b8101906200bf77565b97509293909150620009ae565b503d62000a84565b34620005d457600080600319360112620007475760405162000ad0816200078c565b6013815272383937b334b63298afb737ba20a6b2b6b132b960691b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576000366003190112620005d4576022546040516001600160a01b039091168152602090f35b34620005d457600080600319360112620007475760405162000b5a816200078c565b600a8152693932b1b4b834b2b73a1960b11b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576040366003190112620005d457602062000bca60043562000bb5816200074a565b6024359062000bc4826200074a565b6200b9d2565b6040516001600160a01b039091168152f35b34620005d4576000366003190112620005d4576020602754604051908152f35b34620005d4576000366003190112620005d4576020604051308152f35b34620005d4576000366003190112620005d457602060405160008152f35b34620005d4576020366003190112620005d457602062000bca60043562000c5e816200074a565b62000c68620055b3565b906200b9d2565b34620005d457600080600319360112620007475760405162000c91816200078c565b600e81526d383937b334b632992fb7bbb732b960911b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576000366003190112620005d457602060405160038152f35b34620005d457600080600319360112620007475762000616620035fa565b90815180825260208080930193019160005b82811062000d26575050505090565b83516001600160a01b03168552938101939281019260010162000d17565b906020620008ec92818152019062000d05565b34620005d457600080600319360112620007475760405180918260195480845260208094019060198452848420935b8582821062000db65750505062000da09250038362000852565b620006e460405192828493845283019062000d05565b85546001600160a01b031684526001958601958895509301920162000d86565b60005b83811062000dea5750506000910152565b818101518382015260200162000dd9565b9060209162000e168151809281855285808601910162000dd6565b601f01601f1916010190565b90815180825260208092019182818360051b85019501936000915b84831062000e4e5750505050505090565b909192939495848062000e6a83856001950387528a5162000dfb565b980193019301919493929062000e3d565b602080820190808352835180925260409283810182858560051b8401019601946000925b85841062000eb1575050505050505090565b90919293949596858062000ee9600193603f1986820301885286838d51878060a01b0381511684520151918185820152019062000e22565b99019401940192959493919062000e9f565b34620005d4576000806003193601126200074757602090815462000f1f816200127c565b9160409362000f318551948562000852565b8284528082528082208185015b84841062000f5557865180620006e4888262000e7b565b600283600192895162000f68816200078c565b848060a01b03865416815262000f8085870162003893565b8382015281520192019301929062000f3e565b34620005d4576000366003190112620005d4576020604051670de0b6b3a76400008152f35b34620005d4576000366003190112620005d4576030546040516001600160a01b039091168152602090f35b90600182811c9216801562001015575b602083101462000fff57565b634e487b7160e01b600052602260045260246000fd5b91607f169162000ff3565b9060009291805491620010338362000fe3565b9182825260019384811690816000146200109a575060011462001057575b50505050565b90919394506000526020928360002092846000945b8386106200108557505050500101903880808062001051565b8054858701830152940193859082016200106c565b9294505050602093945060ff191683830152151560051b0101903880808062001051565b6040519060008260385491620010d48362000fe3565b80835260019380851690811562001153575060011462001100575b50620010fe9250038362000852565b565b603860009081526000805160206201206a83398151915294602093509091905b8183106200113a575050620010fe935082010138620010ef565b8554888401850152948501948794509183019162001120565b9050620010fe94506020925060ff191682840152151560051b82010138620010ef565b906020620008ec92818152019062000dfb565b34620005d457600080600319360112620007475760405181602f54620011af8162000fe3565b80845290600190818116908115620012515750600114620011f3575b620006e484620011de8188038262000852565b60405191829160208352602083019062000dfb565b602f8352602094507fa813484aef6fb598f9f753daf162068ff39ccea4075cb95e1a30f86995b5b7ee5b8284106200123d5750505081620006e493620011de9282010193620011cb565b80548585018701529285019281016200121d565b620006e49650620011de9450602092508593915060ff191682840152151560051b82010193620011cb565b6001600160401b038111620007865760051b60200190565b81601f82011215620005d457803591620012ae836200127c565b92620012be604051948562000852565b808452602092838086019260051b820101928311620005d4578301905b828210620012ea575050505090565b8380918335620012fa816200074a565b815201910190620012db565b34620005d4576060366003190112620005d45760043562001327816200074a565b6024359062001336826200074a565b604435906001600160401b038211620005d457602092620013606200136793369060040162001294565b9162004ed0565b604051908152f35b34620005d4576000366003190112620005d4576020602d54604051908152f35b34620005d4576000806003193601126200074757601554604051918281601654620013ba8162000fe3565b8084529060019081811690811562001465575060011462001404575b5050620013e69250038362000852565b620006e4604051928392835260406020840152604083019062000dfb565b601685527fd833147d7dc355ba459fc788f669e58cfaf9dc25ddcd0702e87d69c7b5124289946020935091905b8183106200144c575050620013e693508201013880620013d6565b8554888401850152948501948794509183019162001431565b915050620013e694506020925060ff191682840152151560051b8201013880620013d6565b34620005d4576000806003193601126200074757604051809182601b54808452602080940190601b8452848420935b85828210620014d35750505062000da09250038362000852565b85546001600160a01b0316845260019586019588955093019201620014b9565b34620005d4576000366003190112620005d45760206040516127108152f35b34620005d4576000806003193601126200074757604051809182601a54808452602080940190601a8452848420935b858282106200155b5750505062000da09250038362000852565b85546001600160a01b031684526001958601958895509301920162001541565b34620005d4576000366003190112620005d457602062000bca620065cb565b34620005d4576000366003190112620005d457620006e4620015bb620034de565b60405191829160208352602083019062000d05565b34620005d45760008060031936011262000747576200061662003656565b34620005d457600080600319360112620007475760405162001610816200078c565b601081526f726563697069656e744164647265737360801b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576000366003190112620005d4576020602554604051908152f35b34620005d4576020366003190112620005d4576004608081356200168e816200074a565b6040516302506b8760e41b815292839182906001600160a01b03165afa80156200070657600090620016c6575b604051908152602090f35b6080823d8211620016fa575b81620016e16080938362000852565b810103126200074757506040620006e4910151620016bb565b3d9150620016d2565b6020600319820112620005d457600435906001600160401b038211620005d45780602383011215620005d457816024620008ec9360040135910162000892565b34620005d45762000a2c620017583662001703565b62004516565b34620005d4576000366003190112620005d4576028546040516001600160a01b039091168152602090f35b34620005d4576000806003193601126200074757604051620017ab816200078c565b60098152681c9958da5c1a595b9d60ba1b6020820152620006676040516020810190620006428162000633848762003765565b6001600160e01b0319169052565b602080820190808352835180925260409283810182858560051b840101960194600080935b8685106200182457505050505050505090565b909192939480969798603f198382030186528951826060818885019360018060a01b038151168652015193888382015284518094520192019085905b808210620018835750505090806001929a01950195019396959492919062001811565b82516001600160e01b03191684528a9493840193909201916001919091019062001860565b34620005d4576000366003190112620005d457601e54620018c9816200127c565b620018d8604051918262000852565b818152601e60009081529160207f50bb669a95c7b50b7e8a6f09454034b2b14cf2b85c730dca9a539ca82cb6e3508184015b838610620019225760405180620006e48782620017ec565b8260405162001931816200078c565b83546001600160a01b031681526040516001850180548083526200195f602084015b92600052602060002090565b906000915b81600784011062001b0357938660029796948294620019d69460019b9854918482821062001ae7575b82821062001ac2575b82821062001a9d575b82821062001a78575b82821062001a53575b82821062001a2e575b82821062001a0a575b5010620019e9575b509050038262000852565b838201528152019201950194906200190a565b62001a009082906001600160e01b031916620017de565b01869038620019cb565b8462001a248f939663ffffffff60e01b87851b16620017de565b01930184620019c3565b8462001a498f939663ffffffff60e01b8760401b16620017de565b01930184620019ba565b8462001a6e8f939663ffffffff60e01b8760601b16620017de565b01930184620019b1565b8462001a938f939663ffffffff60e01b8760801b16620017de565b01930184620019a8565b8462001ab88f939663ffffffff60e01b8760a01b16620017de565b019301846200199f565b8462001add8f939663ffffffff60e01b8760c01b16620017de565b0193018462001996565b8462001af98f93968660e01b620017de565b019301846200198d565b939495509091600161010060089262001bb287548d60e062001b288584831b620017de565b6001600160e01b03199162001ba890838560c062001b4d8a850183831b8516620017de565b62001b9d60a062001b6660408d018686841b16620017de565b62001b8f8c868660609260809062001b858582018585851b16620017de565b01921b16620017de565b8b01848460401b16620017de565b8901921b16620017de565b84019116620017de565b019401920190889594939262001964565b34620005d4576000806003193601126200074757620006166200355f565b34620005d4576000366003190112620005d45760215460405160109190911c6001600160a01b03168152602090f35b34620005d4576060366003190112620005d45760043562001c31816200074a565b604435906001600160401b038211620005d45762001c5862000a2c923690600401620008ce565b602154602480549035939160101c6001600160a01b03166200bdea565b34620005d457600080600319360112620007475762001c93620034de565b62001c9d620035fa565b62001cba6040516020810190620006428162000633848762003765565b03916020826000805160206201208a8339815191529481865afa92831562000706578592839462001d88575b50803b156200070c5762001d12916040519687809481936318caf8e360e31b8352886004840162003796565b03925af19081156200070657620006e49362001d409262001d71575b5062001d3a83620035a0565b620035eb565b62001d6462001d5862001d5262003628565b620037ba565b5062001d3a83620035b4565b6040519182918262000d44565b80620006f862001d819262000772565b3862001d2e565b62001da591945060203d81116200073f576200072e818362000852565b923862001ce6565b34620005d457600080600319360112620007475760405162001dcf816200078c565b600c81526b1b9bd7dc9958da5c1a595b9d60a21b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576000366003190112620005d4576020602454604051908152f35b34620005d457600080600319360112620007475762001e43620034de565b62001e4d62003534565b62001e6a6040516020810190620006428162000633848762003765565b03916020826000805160206201208a8339815191529481865afa92831562000706578592839462001efb575b50803b156200070c5762001ec2916040519687809481936318caf8e360e31b8352886004840162003796565b03925af19081156200070657620006e49362001ee99262001d71575062001d3a83620035a0565b62001d6462001d5862001d526200355f565b62001f1891945060203d81116200073f576200072e818362000852565b923862001e96565b34620005d45760008060031936011262000747576200061662003628565b34620005d457600080600319360112620007475760405162001f60816200078c565b600a81526930b63637afb7bbb732b960b11b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576000366003190112620005d457602b546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d4576029546040516001600160a01b039091168152602090f35b906020620008ec92818152019062000e22565b34620005d4576000806003193601126200074757601d546200201f816200127c565b90604092620020318451938462000852565b818352601d815260207f6d4407e7be21f808e6509aa9fa9143369579dd7d760fe20a2c09680fc146134f8185015b8484106200207657865180620006e4888262001fea565b6001838192895162002096816200208e818962001020565b038262000852565b8152019201930192906200205f565b60031115620005d457565b60c435906004821015620005d457565b60c0906083190112620005d45760405190620020dc82620007a8565b81608435620020eb816200074a565b815260a435620020fb816200074a565b602082015260c435604082015260e435606082015261010435608082015260a061012435910152565b60c090610103190112620005d457604051906200214182620007a8565b816101043562002151816200074a565b81526101243562002162816200074a565b602082015261014435604082015261016435606082015261018435608082015260a06101a435910152565b34620005d4576101a0366003190112620005d457600435620021af816200074a565b602435620021bd816200074a565b60443591620021cc836200074a565b606435620021da816200074a565b608435620021e8816200074a565b60a43590620021f782620020a5565b62002201620020b0565b9260c03660e3190112620005d457620006e4966200227696604051966200222888620007a8565b60e43562002236816200074a565b88526101043562002247816200074a565b60208901526101243560408901526101443560608901526101643560808901526101843560a0890152620054a9565b6040519081529081906020820190565b34620005d4576000366003190112620005d457602c546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d4576023546040516001600160a01b039091168152602090f35b34620005d45760008060031936011262000747576200061662003684565b34620005d4576000366003190112620005d457601f546200231b816200127c565b6200232a604051918262000852565b818152601f60009081529160207fa03837a25210ee280c2113ff4b77ca23440b19d4866cca721c801278fd08d8078184015b838610620023745760405180620006e48782620017ec565b8260405162002383816200078c565b83546001600160a01b03168152604051600185018054808352620023aa6020840162001953565b906000915b8160078401106200242c57938660029796948294620024199460019b9854918482821062001ae75782821062001ac25782821062001a9d5782821062001a785782821062001a535782821062001a2e5782821062001a0a575010620019e957509050038262000852565b838201528152019201950194906200235c565b93949550909160016101006008926200245187548d60e062001b288584831b620017de565b0194019201908895949392620023af565b34620005d45762000a2c620024773662001703565b62003c62565b34620005d4576000366003190112620005d457602a546040516001600160a01b039091168152602090f35b34620005d4576000366003190112620005d457602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b34620005d4576000806003193601126200074757620024f7620034de565b6200250162003656565b6200251e6040516020810190620006428162000633848762003765565b03916020826000805160206201208a8339815191529481865afa928315620007065785928394620025af575b50803b156200070c5762002576916040519687809481936318caf8e360e31b8352886004840162003796565b03925af19081156200070657620006e4936200259d9262001d71575062001d3a83620035a0565b62001d6462001d5862001d5262003684565b620025cc91945060203d81116200073f576200072e818362000852565b92386200254a565b34620005d4576000806003193601126200074757604051620025f6816200078c565b600a815269726563697069656e743160b01b6020820152620006676040516020810190620006428162000633848762003765565b6020906063190112620005d457604051906200264682620007c4565b6064358252565b634e487b7160e01b600052602160045260246000fd5b600311156200266e57565b6200264d565b9060038210156200266e5752565b9060048210156200266e5752565b610240620008ec9260208352620026c9602084018251606080918051845260208101516020850152604081015160408501520151910152565b620026dd602082015160a085019062002674565b620026f1604082015160c085019062002682565b60608101515160e084015260808181015180516001600160a01b03908116610100878101919091526020830151909116610120870152604082015161014087015260608201516101608701529181015161018086015260a001516101a08501529060a08101516001600160a01b03166101c085015260c08101516001600160a01b03166101e085015260e081015161020085015201519161022080820152019062000d05565b34620005d4576101a0366003190112620005d457600435620027b9816200074a565b60243590620027c882620020a5565b604435906004821015620005d457620027e1366200262a565b92620027ed36620020c0565b6101443593906001600160401b038511620005d457620006e4956200281b6200283796369060040162001294565b9261016435946200282c866200074a565b61018435966200512d565b6040519182918262002690565b34620005d4576000806003193601126200074757601c5462002866816200127c565b90604092620028788451938462000852565b818352601c815260207f0e4562a10381dec21b205ed72637e6b1b523bdd0e4d4d50af5cd23dd4500a2118185015b848410620028bd57865180620006e4888262001fea565b60018381928951620028d5816200208e818962001020565b815201920193019290620028a6565b34620005d4576000366003190112620005d457602062002903620036ce565b6040519015158152f35b34620005d4576000366003190112620005d457602062000bca620055b3565b34620005d45760008060031936011262000747576200295b6040516200295281620007c4565b82815262003c62565b80f35b34620005d45760a0366003190112620005d4576004356200297f816200074a565b604435906200298e826200074a565b606435916001600160401b038311620005d457620029b562000a2c933690600401620008ce565b9060843592602435906200bdea565b34620005d4576000366003190112620005d457602060405173dd4bda7bcda544d6da2aea8ab8b0e63d2f6dc7378152f35b34620005d457600080600319360112620007475760405162002a17816200078c565b601081526f3837b7b62fb737ba20a6b0b730b3b2b960811b6020820152620006676040516020810190620006428162000633848762003765565b34620005d457600080600319360112620007475760405162002a73816200078c565b600e81526d383937b334b63298afb7bbb732b960911b6020820152620006676040516020810190620006428162000633848762003765565b34620005d4576000366003190112620005d457602060405173bba817f97f133b87b9b7f1fc0f2c56e9f68d2edf8152f35b34620005d457600080600319360112620007475760405162002afe816200078c565b600b81526a1c985b991bdb4818da185960aa1b6020820152620006676040516020810190620006428162000633848762003765565b34620005d457600080600319360112620007475760405162002b55816200078c565b600d81526c616c6c6f5f747265617375727960981b602082015262002b8c6040516020810190620006428162000633848762003765565b03916020826000805160206201208a8339815191529481865afa92831562000706578492839462002c29575b50803b156200070c5762002be4916040519586809481936318caf8e360e31b8352886004840162003796565b03925af19182156200070657620006e49262002c12575b506040519182916001600160a01b031682620005e5565b80620006f862002c229262000772565b3862002bfb565b62002c4691945060203d81116200073f576200072e818362000852565b923862002bb8565b34620005d457600080600319360112620007475760405162002c70816200078c565b600e81526d3932b3b4b9ba393cafb7bbb732b960911b6020820152620006676040516020810190620006428162000633848762003765565b34620005d457600080600319360112620007475760245490604090815163ffa1864960e01b81526020908062002ce76004968783019190602083019252565b039082816000805160206201208a8339815191529381855afa8015620007065762002d37918591620030e3575b50602380546001600160a01b0319166001600160a01b0392909216919091179055565b62002d44602354620005d9565b91813b156200308b5784516318caf8e360e31b8082526001600160a01b03909416878201908152604060208201819052600e908201526d636f756e63696c4d656d6265723160901b6060820152859082908190608001038183875af180156200070657620030cc575b5060018060a01b038062002dcd62002dc76021546200bc7e565b620005d9565b161562002df3575b620006e48662002de76021546200bc7e565b905191829182620005e5565b8062002dfe620055b3565b62002e3262002e1062002dc7620065cb565b602680546001600160a01b0319166001600160a01b0392909216919091179055565b16833b15620030c85786519085825286828062002e84848d830160809160018060a01b0316815260406020820152601060408201526f5361666550726f7879466163746f727960801b60608201520190565b038183895af1908115620007065762002ed6928592620030b1575b5062002ead602654620005d9565b9062002eb86200bc8d565b91898c8c5196879586948593631688f0b960e01b855284016200bca9565b03925af1908115620007065762002f1b9387926200308f575b50506021805462010000600160b01b0319169290911660101b62010000600160b01b0316919091179055565b62002f2c62002dc76021546200bc7e565b91813b156200308b5784519081526001600160a01b03909216858301908152604060208201819052600b908201526a636f756e63696c5361666560a81b60608201528391839182908490829060800103925af18015620007065762003074575b5062002f97620034fb565b62002fb362002fa8602354620005d9565b62001d3a83620035a0565b62002fdb62002fc282620035b4565b73f39fd6e51aad88f6f4ce6ab8827279cfffb922669052565b6200300362002fea82620035c5565b7370997970c51812dc3a010c7d01b50e0d17dc79c89052565b6200301462002dc76021546200bc7e565b803b156200070c576200303c9483855180978195829463b63e800d60e01b845283016200b985565b03925af19182156200070657620006e4926200305d575b8080808062002dd5565b80620006f86200306d9262000772565b3862003053565b80620006f8620030849262000772565b3862002f8c565b8380fd5b620030a99250803d106200073f576200072e818362000852565b388062002eef565b80620006f8620030c19262000772565b3862002e9f565b8580fd5b80620006f8620030dc9262000772565b3862002dad565b620030fe9150843d86116200073f576200072e818362000852565b3862002d14565b34620005d4576101c0366003190112620005d45760043562003127816200074a565b6024359062003136826200074a565b6044359062003145826200074a565b6064359262003154846200074a565b60843562003162816200074a565b60a4356200317081620020a5565b6200317a620020b0565b9160203660e3190112620005d457620006e496620022769660405195620031a187620007c4565b60e4358752620031b13662002124565b9762005302565b34620005d457600080600319360112620007475760405180918260185480845260208094019060188452848420935b85828210620032015750505062000da09250038362000852565b85546001600160a01b0316845260019586019588955093019201620031e7565b34620005d4576080366003190112620005d457606435600160801b62989680608083901b04818110156200330c57600435805b620032c657620006e462002276620032c0620032ba86620032b389620032ac620032a5620032856024358662004444565b946200329e620032976044356200440e565b916200498a565b9062004444565b916200499d565b90620054ce565b9062004508565b620044ba565b60801c90565b600191818316620032ea5780620032dd91620054ef565b911c90815b909162003254565b915091620032fd826200330492620054ef565b926200497a565b9081620032e2565b60405162461bcd60e51b815260206004820152601c60248201527b0bec240e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b34620005d457600080600319360112620007475760405162003372816200078c565b6013815272383937b334b632992fb737ba20a6b2b6b132b960691b6020820152620006676040516020810190620006428162000633848762003765565b34620005d457600080600319360112620007475760405181602e54620033d58162000fe3565b808452906001908181169081156200125157506001146200340357620006e484620011de8188038262000852565b602e835260209450600080516020620120ca8339815191525b8284106200343c5750505081620006e493620011de9282010193620011cb565b80548585018701529285019281016200341c565b34620005d4576020366003190112620005d4576004356001600160401b038111620005d45762000bca6200348b6020923690600401620008ce565b6200b929565b34620005d4576000366003190112620005d457602060ff602154166040519015158152f35b34620005d4576000366003190112620005d457602060ff60215460081c166040519015158152f35b60405190620034ed82620007fc565b600282526040366020840137565b604051906200350a82620007e0565b600382526060366020840137565b6040519062003527826200078c565b6001825260203681840137565b6040519062003543826200078c565b600d82526c706f6f6c5f6d616e616765723160981b6020830152565b604051906200356e826200078c565b600d82526c3837b7b62fb6b0b730b3b2b91960991b6020830152565b634e487b7160e01b600052603260045260246000fd5b805115620035ae5760200190565b6200358a565b805160011015620035ae5760400190565b805160021015620035ae5760600190565b8051821015620035ae5760209160051b010190565b6001600160a01b039091169052565b6040519062003609826200078c565b601082526f70726f66696c65315f6d656d6265723160801b6020830152565b6040519062003637826200078c565b601082526f383937b334b63298afb6b2b6b132b91960811b6020830152565b6040519062003665826200078c565b601082526f70726f66696c65325f6d656d6265723160801b6020830152565b6040519062003693826200078c565b601082526f383937b334b632992fb6b2b6b132b91960811b6020830152565b90816020910312620005d4575190565b6040513d6000823e3d90fd5b60085460ff168015620036de5790565b50604051630667f9d760e41b81526020816044816000805160206201208a8339815191528060048301526519985a5b195960d21b60248301525afa908115620007065760009162003730575b50151590565b62003756915060203d81116200375d575b6200374d818362000852565b810190620036b2565b386200372a565b503d62003741565b906200377a6020928281519485920162000dd6565b0190565b90816020910312620005d45751620008ec816200074a565b6001600160a01b039091168152604060208201819052620008ec9291019062000dfb565b906040516020810190620037d48162000633848762003765565b5190206040516001625e79b760e01b03198152600481018290529091906000805160206201208a83398151915290602081602481855afa908115620007065760009162003870575b508094823b15620005d4576200384d92600092836040518096819582946318caf8e360e31b84526004840162003796565b03925af180156200070657620038605750565b80620006f8620010fe9262000772565b6200388c915060203d81116200073f576200072e818362000852565b386200381c565b908154620038a1816200127c565b92604093620038b38551918262000852565b828152809460208092019260005281600020906000935b858510620038da57505050505050565b60018481928451620038f2816200208e818a62001020565b815201930194019391620038ca565b601f81116200390e575050565b600090602e825260208220906020601f850160051c830194106200394f575b601f0160051c01915b8281106200394357505050565b81815560010162003936565b90925082906200392d565b601f811162003967575050565b6000906038825260208220906020601f850160051c83019410620039a8575b601f0160051c01915b8281106200399c57505050565b8181556001016200398f565b909250829062003986565b80519091906001600160401b0381116200078657620039df81620039d9602e5462000fe3565b62003901565b602080601f831160011462003a1e575081929360009262003a12575b50508160011b916000199060031b1c191617602e55565b015190503880620039fb565b602e600052601f19831694909190600080516020620120ca833981519152926000905b87821062003a7c57505083600195961062003a62575b505050811b01602e55565b015160001960f88460031b161c1916905538808062003a57565b8060018596829496860151815501950193019062003a41565b80519091906001600160401b038111620007865762003ac18162003abb60385462000fe3565b6200395a565b602080601f831160011462003b00575081929360009262003af4575b50508160011b916000199060031b1c191617603855565b01519050388062003add565b6038600052601f198316949091906000805160206201206a833981519152926000905b87821062003b5e57505083600195961062003b44575b505050811b01603855565b015160001960f88460031b161c1916905538808062003b39565b8060018596829496860151815501950193019062003b23565b6040519062003b86826200078c565b60088252670b98da185a5b925960c21b6020830152565b6040519062003bac826200078c565b60058252642e6e616d6560d81b6020830152565b6040519062003bcf826200078c565b600c82526b1722a72b299729a2a72222a960a11b6020830152565b6040519062003bf9826200078c565b60088252676e616d653a20257360c01b6020830152565b6040519062003c1f826200078c565b600a82526973656e6465723a20257360b01b6020830152565b6040519062003c47826200078c565b600c82526b636861696e4964203a20257360a01b6020830152565b62003c6f602854620005d9565b906000805160206201208a83398151915290813b15620005d457604051637fec2a8d60e01b815260009384908290819062003cae9060048301620005e5565b038183875af18015620007065762003dfe575b50805162003dec575b5062003dba62003cd962004207565b62003d0162003cfc62003cf562003cef62003b77565b620040c5565b8362003e3e565b603755565b62003d2462003d1e62003d1762003cef62003b9d565b8362003f0f565b62003a95565b62003d6362003d4162003d3a62003cef62003bc0565b8362003f7b565b602880546001600160a01b0319166001600160a01b0392909216919091179055565b62003d8262003d7162003bea565b62003d7b620010be565b9062004047565b62003da362003d93602854620005d9565b62003d9d62003c10565b62004072565b6200175860375462003db462003c38565b62003fe4565b803b1562003de8578190600460405180948193633b756e9b60e11b83525af180156200070657620038605750565b5080fd5b62003df790620039b3565b3862003cca565b80620006f862003e0e9262000772565b3862003cc1565b909162003e2f620008ec9360408452604084019062000dfb565b91602081840391015262000dfb565b6040516356eef15b60e11b8152916020918391829162003e6391906004840162003e15565b03816000805160206201208a8339815191525afa908115620007065760009162003e8b575090565b620008ec915060203d81116200375d576200374d818362000852565b602081830312620005d4578051906001600160401b038211620005d4570181601f82011215620005d457805162003ede8162000876565b9262003eee604051948562000852565b81845260208284010111620005d457620008ec916020808501910162000dd6565b6040516309389f5960e31b8152916000918391829162003f3491906004840162003e15565b03816000805160206201208a8339815191525afa908115620007065760009162003f5c575090565b620008ec913d8091833e62003f72818362000852565b81019062003ea7565b604051631e19e65760e01b8152916020918391829162003fa091906004840162003e15565b03816000805160206201208a8339815191525afa908115620007065760009162003fc8575090565b620008ec915060203d81116200073f576200072e818362000852565b6200402c6200401791620010fe93604051938492632d839cb360e21b602085015260406024850152606484019062000dfb565b90604483015203601f19810183528262000852565b600080916020815191016a636f6e736f6c652e6c6f675afa50565b906200402c620010fe9262000633604051938492634b5c427760e01b60208501526024840162003e15565b6200402c620040a591620010fe9360405193849263319af33360e01b602085015260406024850152606484019062000dfb565b6001600160a01b0391909116604483015203601f19810183528262000852565b604051600091602e5491620040da8362000fe3565b93848252602094858301946001908181169081600014620041e95750600114620041ab575b505091816200411b620008ec9593620041889795038262000852565b6200417560396040518095620041588883019575242e6e6574776f726b735b3f28402e6e616d653d3d2760501b8752518092603685019062000dd6565b81016227295d60e81b603682015203601981018652018462000852565b6040519586935180928686019062000dd6565b82016200419e8251809386808501910162000dd6565b0103808452018262000852565b9150602e60005285600020916000925b828410620041d55750505081018401816200411b620040ff565b8054858501890152928701928101620041bb565b60ff191687525050151560051b820185019050816200411b620040ff565b604051636c98507360e11b81526000906000805160206201208a833981519152908281600481855afa80156200070657620042c69284928392620042f5575b50620042aa6043604051846200426782965180926020808601910162000dd6565b81017f2f706b672f636f6e7472616374732f636f6e6669672f6e6574776f726b732e6a60208201526239b7b760e91b604082015203602381018552018362000852565b60405180809581946360f9bb1160e01b83526004830162001176565b03915afa91821562000706578092620042de57505090565b620008ec92503d8091833e62003f72818362000852565b6200430d9192503d8085833e62003f72818362000852565b903862004246565b6040519062004324826200078c565b601882527717282927ac24a2a9972820a9a9a827a92a2fa9a1a7a922a960411b6020830152565b604051906200435a826200078c565b601082526f1722a72b299720a92124aa2920aa27a960811b6020830152565b6040519062004388826200078c565b60198252782e50524f584945532e52454749535452595f464143544f525960381b6020830152565b600b60fa1b815260010190565b60405190620043cc826200078c565b601d82527f2e50524f584945532e52454749535452595f434f4d4d554e49544945530000006020830152565b634e487b7160e01b600052601160045260246000fd5b9062989680918281029281840414901517156200442757565b620043f8565b908160011b91808304600214901517156200442757565b818102929181159184041417156200442757565b9062004464826200127c565b62004473604051918262000852565b828152809262004486601f19916200127c565b019060005b8281106200449857505050565b8060606020809385010152016200448b565b6000198114620044275760010190565b6001607f1b8101919082106200442757565b90600182018092116200442757565b90600c82018092116200442757565b60020190816002116200442757565b60030190816003116200442757565b919082018092116200442757565b60408051909190615f9f8082016001600160401b03811183821017620007865782916200c0cb833903906000f0801562000706576001600160a01b0316926200456662003d3a62003cef62004315565b506200457962003d3a62003cef6200434b565b5082519060209262004656620046266200464085620045a2888201600190605b60f81b81520190565b0395620045b8601f199788810183528262000852565b620046336200462d620046178c8c620046118d62004604620045e98d620045e262003cef62004379565b9062003f7b565b9351948592632ef6570160e11b9084015260248301620005e5565b038d810184528362000852565b62004b44565b8b519586948c86019062003765565b9062003765565b620043b0565b0386810183528262000852565b916200464f62003cef620043bd565b9062004852565b926200466d6200466785516200442d565b62004458565b9460005b8551811015620046e057806200468c620046da9288620035d6565b50620046d36200469c8b62004ad4565b620046aa849392936200442d565b90620046cb620046c4620046be876200442d565b620044cc565b8d620035d6565b528a620035d6565b52620044aa565b62004671565b5093909491959296506000955b8151871015620047ff57620047038783620035d6565b516001600160a01b031662004718886200442d565b620047249085620035d6565b51620047309162004b44565b908451918291878301620047449162003765565b6200474f9162003765565b6200475a90620043b0565b0386810182526200476c908262000852565b620047788783620035d6565b516001600160a01b03166200478d886200442d565b6200479890620044cc565b620047a49085620035d6565b51620047b09162004b44565b908451918291878301620047c49162003765565b620047cf9162003765565b620047da90620043b0565b038681018252620047ec908262000852565b95620047f890620044aa565b95620046ed565b620010fe96506200484c9492506200483f915062004824620048329196949662004a27565b955195869384019062003765565b605d60f81b815260010190565b0390810183528262000852565b62004948565b9060405191632fce788360e01b835282806200487660009485946004840162003e15565b03816000805160206201208a8339815191525afa918215620007065781926200489e57505090565b9091503d8083833e620048b2818362000852565b810160209182818303126200308b578051906001600160401b03821162004944570181601f820112156200308b57805190620048ee826200127c565b94620048fe604051968762000852565b828652848087019360051b8301019384116200074757508301905b82821062004928575050505090565b838091835162004938816200074a565b81520191019062004919565b8480fd5b620006336200402c620010fe9260405192839163104c13eb60e21b602084015260206024840152604483019062000dfb565b6000198101919082116200442757565b600160801b908103919082116200442757565b90629896809182039182116200442757565b60405190620049be82620007fc565b602a82526040366020840137565b90620049d88262000876565b620049e7604051918262000852565b8281528092620049fa601f199162000876565b0190602036910137565b805160011015620035ae5760210190565b908151811015620035ae570160200190565b9081511562004a9d5762004a4662004a4083516200497a565b620049cc565b600092835b62004a5782516200497a565b81101562004a965762004a90906001600160f81b031962004a79828562004a15565b5116861a62004a89828662004a15565b53620044aa565b62004a4b565b5090925050565b60405162461bcd60e51b815260206004820152600f60248201526e537472696e6720697320656d70747960881b6044820152606490fd5b604051631b2ce7f360e11b60208201526001600160a01b0390911660248083019190915281529062004b0682620007fc565b604051916306dc7c3960e21b60208401527366ee8a18f18ef93efacb30f99e415058bf88942d60248401526024835262004b4083620007fc565b9190565b6001600160a01b03169062004b5862004d2f565b62004b62620049af565b92603062004b7085620035a0565b53607862004b7e8562004a04565b53600090815b6014811062004c73575050505062004bd0916200063362004bf262004bad620008ec9462004d5d565b604051663d913a37911d1160c91b60208201529586946200462691906027870183565b751116113b30b63ab2911d11181116113230ba30911d1160511b815260160190565b7f222c226f7065726174696f6e223a302c22636f6e74726163744d6574686f642281527f3a7b22696e70757473223a5b5d2c226e616d65223a22222c2270617961626c6560208201527f223a66616c73657d2c22636f6e7472616374496e7075747356616c756573223a6040820152627b7d7d60e81b606082015260630190565b62004c7e81620044db565b9060209182811015620035ae5762004cb462004ca68592600f9384911a60041c168862004a15565b516001600160f81b03191690565b62004cd862004ccd62004cc7856200442d565b620044ea565b91871a918a62004a15565b5362004ce482620044db565b92831015620035ae5762004ca662004d05918562004d29951a168762004a15565b62004a8962004d1e62004d18846200442d565b620044f9565b91861a918962004a15565b62004b84565b6040519062004d3e826200078c565b601082526f181899199a1a9b1b9c1cb0b131b232b360811b6020830152565b9062004d6862004d2f565b62004d7c62004a4062004cc785516200442d565b90603062004d8a83620035a0565b53607862004d988362004a04565b53600093845b815181101562004e51578062004df062004ca662004de962004de362004ddd62004dd162004ca662004e4b988a62004a15565b60041c600f60f81b1690565b60f81c90565b60ff1690565b8662004a15565b62004e0e62004e0362004cc7846200442d565b91891a918762004a15565b5362004e3862004ca662004de962004de3600f60f81b62004e3184878a62004a15565b1660f81c90565b62004a8962004e0362004d18846200442d565b62004d9e565b509193505050565b62004eb16020620008ec95936002845260a082850152600e60a08501526d506f6f6c2050726f66696c65203160901b60c085015260e06040850152805160e08501520151604061010084015261012083019062000dfb565b6001600160a01b03909316606082015280830360809091015262000d05565b916017541562004ee4575b50505060175490565b62004f4892602092600060405162004efc816200078c565b6001815260405162004f0e816200078c565b600c81526b506f6f6c50726f66696c653160a01b8782015281870152604051633a92f65f60e01b8152968795869485936004850162004e59565b03926001600160a01b03165af18015620007065762004f709160009162004f79575b50601755565b38808062004edb565b62004f95915060203d81116200375d576200374d818362000852565b3862004f6a565b6040519062004fab82620007c4565b60008252565b6040519062004fc082620007a8565b8160a06000918281528260208201528260408201528260608201528260808201520152565b604051610120810191906001600160401b0383118184101762000786576101006060918460405280946200501981620007e0565b60009081815281610140840152816101608401528161018084015282528060208301528060408301526200504c62004f9c565b848301526200505a62004fb1565b60808301528060a08301528060c083015260e08201520152565b60038210156200266e5752565b60048210156200266e5752565b9594939291620050e8620050f292620050de620050aa62004fe5565b99629895b760408c510152621e84808b515261271060208c5101526702c68af0bb14000060608c51015260a08b01620035eb565b6020890162005074565b6040870162005081565b600060c0860152600060e08601528051156200511b575b60608501526080840152610100830152565b680ad78ebc5ac6200000815262005109565b620051a2926200518e60a09a9995969798936200518462005198946200515262004fe5565b9d8e629895b7604082510152621e84808151526127106020825101526702c68af0bb14000060608251015201620035eb565b60208c0162005074565b60408a0162005081565b60c08801620035eb565b60e08601528051156200511b5760608501526080840152610100830152565b9195949293908252620051f060018060a01b039485602098168885015260e0604085015260e084019062000dfb565b9360609116818301526000608083015281840360a0830152601554845260408685015260009360165490620052258262000fe3565b918260408301526001908181169081600014620052a657506001146200525f575b50505050620008ec93945060c081840391015262000d05565b9293955090601660005287600020926000935b8285106200529257505050620008ec959650010191849338808062005246565b805484860187015293890193810162005272565b60ff1916858401525096975087965090151560051b01019250620008ec38808062005246565b90816020910312620005d45751620008ec81620020a5565b15620052ec57565b634e487b7160e01b600052600160045260246000fd5b92949597620053b6976200532593929a99886200531e62003518565b946200508e565b9062005330620034de565b90620053413062001d3a84620035a0565b620053513362001d3a84620035b4565b6001600160a01b039473eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee948a9187918281166200549d575b50906200539b8560009362005394602854620005d9565b9062004ed0565b620053e360405196620053c58860209e8f9b8c830162002690565b03601f1981018a528962000852565b6040516370803ea560e11b8152998a988997889560048701620051c1565b0393165af18015620007065784916000916200547b575b5095600460405180948193631a8ecfcb60e11b8352165afa9081156200070657620010fe9360009262005447575b5050620054358262002663565b620054408162002663565b14620052e4565b6200546b9250803d1062005473575b62005462818362000852565b810190620052cc565b388062005428565b503d62005456565b620054969150823d84116200375d576200374d818362000852565b38620053fa565b96506200539b6200537d565b94929091620008ec9796949260405196620054c488620007c4565b6000885262005302565b8115620054d9570490565b634e487b7160e01b600052601260045260246000fd5b90600160801b8083116200555d578110156200551957620032ba620032c091620008ec9362004444565b60405162461bcd60e51b815260206004820152601c60248201527b0bec440e6d0deead8c840c4ca40d8cae6e640e8d0c2dc4064bc6264760231b6044820152606490fd5b60405162461bcd60e51b815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c206044820152670e8de4064bc6264760c31b6064820152608490fd5b73bba817f97f133b87b9b7f1fc0f2c56e9f68d2edf803b620008ec5750620008ec62002dc7604051620055e68162000818565b610ede81527f608060405234801561001057600080fd5b50610ebe806100206000396000f3fe60208201527f608060405234801561001057600080fd5b50600436106100625760003560e01c60408201527f80631688f0b9146100675780632500510e1461017657806353e5d9351461024360608201527f57806361b69abd146102c6578063addacc0f146103cb578063d18af54d14610460808201527f4e575b600080fd5b61014a6004803603606081101561007d57600080fd5b810160a082015266e96f9fdffe6f6e642420200d5d60da1b0360c08201527f9190803590602001906401000000008111156100ba57600080fd5b820183602060e08201527f820111156100cc57600080fd5b803590602001918460018302840111640100006101008201527d831117156100ee57600080fd5b91908080601f01602080910402602001606101208201527f40519081016040528093929190818152602001838380828437600081840152606101408201527f1f19601f8201169050808301925050505050505091929192908035906020019061016082015260017024a46414141418415f5596d8101460209d607a1b036101808201527ae97ead9fdffe6eafaf9fbfae7f6efc6f0ca49efde89ffb7fc9fc9f196101a08201526001731820440558406315d800203f56e0406420200d5d60621b036101c082015277e96f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffffffff7eee196101e08201527f156101c957600080fd5b8201836020820111156101db57600080fd5b803590606102008201527f2001918460018302840111640100000000831117156101fd57600080fd5b90916102208201527f92939192939080359060200190929190505050610624565b604051808273ffff6102408201526de97ead9fdffe6eafaf9fbfae7f6e196102608201527f0390f35b61024b610751565b60405180806020018281038252838181518152606102808201527f200191508051906020019080838360005b8381101561028b57808201518184016102a08201527f52602081019050610270565b50505050905090810190601f1680156102b857806102c08201527f820380516001836020036101000a031916815260200191505b509250505060406102e08201527f5180910390f35b61039f600480360360408110156102dc57600080fd5b81019061030082015267e96f9fdffe6f6d6f6320200d5d60e21b036103208201527f908035906020019064010000000081111561031957600080fd5b8201836020826103408201527f01111561032b57600080fd5b80359060200191846001830284011164010000006103608201527e8311171561034d57600080fd5b91908080601f0160208091040260200160406103808201527f519081016040528093929190818152602001838380828437600081840152601f6103a08201527f19601f82011690508083019250505050505050919291929050505061077c565b6103c082015265e97ead9fdfff6518101460209d60d21b036103e08201527f91505060405180910390f35b6103d3610861565b6040518080602001828103826104008201527f5283818151815260200191508051906020019080838360005b838110156104136104208201527f5780820151818401526020810190506103f8565b50505050905090810190601f6104408201527f1680156104405780820380516001836020036101000a031916815260200191506104608201527f5b509250505060405180910390f35b610551600480360360808110156104645761048082015260016b1800203f56e0406420200d5d60a21b036104a08201527f169060200190929190803590602001906401000000008111156104a1576000806104c08201527ffd5b8201836020820111156104b357600080fd5b8035906020019184600183026104e08201527f840111640100000000831117156104d557600080fd5b91908080601f016020806105008201527f91040260200160405190810160405280939291908181526020018383808284376105208201527f600081840152601f19601f82011690508083019250505050505050919291929061054082015260016c200d641808006424a464200d5d609a1b03610560820152763a5be7f7ff9bdb5b9bebebebe7bddcea6927efeb9fdf6360421b1961058082015273e97ead9fdffe6eafaf9fbfae7f6efc6f0ca49fff196105a08201527f61058a848484610a3b565b90506000835111156105b2576000806000855160206105c08201527f87016000865af114156105b157600080fd5b5b7f4f51faf6c4561ff95f0676576105e08201527fe43439f0f856d97c04d9ec9070a6199ad418e2358185604051808373ffffffff610600820152673a5fab67f7ff9f6360421b1961062082015273e97ead9fdffe6dafafaf9fbfae7f6efc6f5e6c6d196106408201527f505050565b60006106758585858080601f0160208091040260200160405190816106608201527f016040528093929190818152602001838380828437600081840152601f19601f6106808201527f8201169050808301925050505050505084610a3b565b905080604051602001806106a082015269e99f9fe47ead9febfe6f61209d60f21b036106c08201527802828302028b01040c18181c0a948302029302028bf8461bcd603d1b6106e08201526a81526004018080602001826107008201527f8103825283818151815260200191508051906020019080838360005b838110156107208201527f6107165780820151818401526020810190506106fb565b5050505090509081016107408201527f90601f1680156107435780820380516001836020036101000a031916815260206107608201527f0191505b509250505060405180910390fd5b60606040518060200161076390616107808201527f0bde565b6020820181038252601f19601f82011660405250905090565b6000826107a082015260016e1810145841e2e41842f79596e0209d608a1b036107c08201527ce97ead9fdffe6eafaf9fbfae7f6efc6f9fff0f7fea7fea9ef838a8c29f196107e08201527e803e3d6000fd5b5090506000825111156107f05760008060008451602086016108008201527f6000865af114156107ef57600080fd5b5b7f4f51faf6c4561ff95f067657e4346108208201527f39f0f856d97c04d9ec9070a6199ad418e2358184604051808373ffffffffffff610840820152673a5fab67f7ff9f6360521b1961086082015275e97ead9fdffe6dafafaf9fbfae7f6efc6f5e6d6eafaf196108808201527f565b60606040518060200161087390610beb565b6020820181038252601f19606108a08201527f1f82011660405250905090565b600080838360405160200180838152602001826108c08201526ae99f9fe47ead9febfe6db0601d60fa1b036108e08201527f50506040516020818303038152906040528051906020012060001c90506108e761090082015260016c21a1a0d8415f5596e45418001d609a1b0361092082015267e9eb9ef5cda87d8c623a5f2360e21b01196109408201526be99ce1ad4ae77c7777779fbf19610960820152600172146158ffffffffc5983806e05498010060215d606a1b03610980820152673a5fab67f7ff9ee3608a1b196109a08201527ce97ead9fdffe7f9fdffe7c7ead9fdffe7d7efc7dad7b7e7eae7ead9fdf196109c08201527f0191508051906020019080838360005b838110156109ca5780820151818401526109e08201527f6020810190506109af565b50505050905090810190601f1680156109f7578082610a008201527f0380516001836020036101000a031916815260200191505b5095505050505050610a208201527f600060405180830381600087803b158015610a1957600080fd5b505af1158015610a408201527f610a2d573d6000803e3d6000fd5b505050505b50949350505050565b60008083610a608201527f8051906020012083604051602001808381526020018281526020019250505060610a808201527f4051602081830303815290604052805190602001209050600060405180602001610aa08201527f610a8890610bde565b6020820181038252601f19601f820116604052508673ff610ac08201526ce99fbfae9fdffe7f7c7fae6f9f19610ae08201527f2001908083835b60208310610ae9578051825260208201915060208101905060610b008201527f2083039250610ac6565b6001836020036101000a038019825116818451168082610b208201527f1785525050505050509050018281526020019250505060405160208183030381610b4082015260017514a4181014a4142060546098080058003d649418001d60521b03610b60820152623a5f23609a1b19610b8082015260016e074f5f54f7a15544fdfd7407b9e43360851b0319610ba0820152738152600401808060200182810382526013815260610bc0820152760800601fd0dc99585d194c8818d85b1b0819985a5b1959604a1b610be08201527b81525060200191505060405180910390fd5b50509392505050565b61610c008201527f01e680610bf883390190565b60ab80610dde8339019056fe6080604052348015610c208201527f61001057600080fd5b506040516101e63803806101e683398181016040526020610c408201527f81101561003357600080fd5b8101908080519060200190929190505050600073610c60820152623a5fa3604a1b19610c8082015274e9ebea9eff35a89fbfae80f73c865fffffffffffff19610ca08201526981526004018080602001610cc08201527f828103825260228152602001806101c460229139604001915050604051809103610ce082015260016e243f56e018002018404002a055205d608a1b03610d0082015262e9fde8653f79ba5bdf2360ba1b0119610d2082015260017624155414182ae018404658000e58003cff98201810149d604a1b03610d408201526001684fffd5f4c02cf35bc960611b0319610d608201526f60003514156050578060005260206000610d808201527ff35b3660008037600080366000845af43d6000803e60008114156070573d6000610da08201527ffd5b3d6000f3fea2646970667358221220d1429297349653a4918076d650332d610dc08201527fe1a1068c5f3e07c5c82360c277770b955264736f6c63430007060033496e7661610de08201527f6c69642073696e676c65746f6e20616464726573732070726f76696465646080610e00820152679fffabe98059e6b8631810149d60e21b03610e2082015262600035603760f91b01610e408201527f14156050578060005260206000f35b3660008037600080366000845af43d6000610e608201527f803e60008114156070573d6000fd5b3d6000f3fea2646970667358221220d142610e808201527f9297349653a4918076d650332de1a1068c5f3e07c5c82360c277770b95526473610ea08201527f6f6c63430007060033a26469706673582212200c75fe2196b9f752c82794253f610ec08201527f2ebce0d821afef5997e1d5a35ec316ce592f6664736f6c634300070600330000610ee08201526200b929565b73dd4bda7bcda544d6da2aea8ab8b0e63d2f6dc737803b620008ec5750620008ec62002dc7604051620065fe8162000835565b6159d781527f608060405234801561001057600080fd5b5060016004819055506159ae80620060208201527e296000396000f3fe6080604052600436106101dc5760003560e01c8063affe60408201527fd0e011610102578063e19a9dd911610095578063f08a032311610064578063f060608201527f8a032314611647578063f698da2514611698578063f8dc5dd9146116c357806360808201527fffa1ad741461173e57610231565b8063e19a9dd91461139b578063e318b52b1460a08201527f6113ec578063e75235b81461147d578063e86637db146114a857610231565b8060c08201527f63cc2f8452116100d1578063cc2f8452146110e8578063d4d9bdcd146111b55760e08201527f8063d8d11f78146111f0578063e009cfde1461132a57610231565b8063affed06101008201527fe014610d94578063b4faba0914610dbf578063b63e800d14610ea7578063c4ca6101208201527f3a9c1461101757610231565b80635624b25b1161017a5780636a7612021161016101408201527f495780636a761202146109945780637d83297414610b50578063934f3a1114616101608201527f0bbf578063a0e67e2b14610d2857610231565b80635624b25b146107fb5780636101808201527f5ae6bd37146108b9578063610b592514610908578063694e80c31461095957616101a08201527f0231565b80632f54bf6e116101b65780632f54bf6e146104d35780633408e4706101c08201527f1461053a578063468721a7146105655780635229073f1461067a57610231565b6101e08201527f80630d582f131461029e57806312fb68e0146102f95780632d9ad53d1461046c61020082015260016c15d8408c5596cd98408c55ccdd609a1b036102208201527fff167f3d0ce9bfc3ed7d6862dbb28b2dea94561fe714a1b4d019aa8af39730d16102408201527fad7c3d346040518082815260200191505060405180910390a2005b34801561026102608201527f3d57600080fd5b5060007f6c9a6c4a39284e37ed1cf53d337577d14212a4870f6102808201527fb976a4366c693b939918d560001b905080548061027257600080f35b366000806102a08201527f373360601b365260008060143601600080855af13d6000803e80610299573d606102c08201527efd5b3d6000f35b3480156102aa57600080fd5b506102f760048036036040816102e082015260017104055840b055d800203f56e0406420200d5d60721b0361030082015279e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafafaf9ee831a9196103208201527f5b005b34801561030557600080fd5b5061046a6004803603608081101561031c6103408201527f57600080fd5b81019080803590602001909291908035906020019064010000006103608201527e81111561034357600080fd5b82018360208201111561035557600080fd5b806103808201527f35906020019184600183028401116401000000008311171561037757600080fd6103a08201527f5b91908080601f016020809104026020016040519081016040528093929190816103c08201527f8152602001838380828437600081840152601f19601f820116905080830192506103e08201527f5050505050509192919290803590602001906401000000008111156103da57606104008201527e80fd5b8201836020820111156103ec57600080fd5b803590602001918460016104208201527f83028401116401000000008311171561040e57600080fd5b91908080601f01606104408201527f20809104026020016040519081016040528093929190818152602001838380826104608201527f8437600081840152601f19601f820116905080830192505050505050509192916104808201527f929080359060200190929190505050611bbe565b005b348015610478576000806104a08201527ffd5b506104bb6004803603602081101561048f57600080fd5b810190808035736104c08201526be96f9fdffe6f6d6e6fafafaf196104e082018190527f612440565b60405180821515815260200191505060405180910390f35b3480156105008301527f6104df57600080fd5b50610522600480360360208110156104f657600080fd5b61052083015264e96f9fdfff6620406420200d5d60ca1b036105408301527f90929190505050612512565b60405180821515815260200191505060405180916105608301527f0390f35b34801561054657600080fd5b5061054f6125e4565b604051808281526105808301527f60200191505060405180910390f35b34801561057157600080fd5b50610662606105a083015260017801200d80d82020440558416215d800203f56e0406420200d5d603a1b036105c083015272e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6f196105e08301527f803590602001906401000000008111156105cf57600080fd5b820183602082016106008301527b11156105e157600080fd5b803590602001918460018302840111640160201b6106208301527f8311171561060357600080fd5b91908080601f01602080910402602001604051610640830152600080516020620120aa8339815191526106608301527f601f820116905080830192505050505050509192919290803560ff16906020016106808301527f909291905050506125f1565b60405180821515815260200191505060405180916106a08301527f0390f35b34801561068657600080fd5b506107776004803603608081101561066106c083015260016d2755d800203f56e0406420200d5d60921b036106e08301527de96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffff196107008301527d8111156106e457600080fd5b8201836020820111156106f657600080fd5b6107208301527f80359060200191846001830284011164010000000083111715610718576000806107408301527ffd5b91908080601f0160208091040260200160405190810160405280939291906107608301527f818152602001838380828437600081840152601f19601f8201169050808301926107808301527f505050505050509192919290803560ff1690602001909291905050506127d7566107a08301527f5b604051808315158152602001806020018281038252838181518152602001916107c08301527f508051906020019080838360005b838110156107bf57808201518184015260206107e08301527f810190506107a4565b50505050905090810190601f1680156107ec57808203806108008301527f516001836020036101000a031916815260200191505b509350505050604051806108208301527f910390f35b34801561080757600080fd5b5061083e60048036036040811015616108408301527f081e57600080fd5b8101908080359060200190929190803590602001909291906108608301527f50505061280d565b6040518080602001828103825283818151815260200191506108808301527f8051906020019080838360005b8381101561087e5780820151818401526020816108a08301527f019050610863565b50505050905090810190601f1680156108ab5780820380516108c08301527f6001836020036101000a031916815260200191505b50925050506040518091036108e08301527f90f35b3480156108c557600080fd5b506108f2600480360360208110156108dc6109008301527f57600080fd5b8101908080359060200190929190505050612894565b604051806109208301527f82815260200191505060405180910390f35b34801561091457600080fd5b50616109408301527f09576004803603602081101561092b57600080fd5b81019080803573ffffffff6109608301526fe96f9fdffe6f6d6e6fafafaf9ed753a9196109808301527f5b005b34801561096557600080fd5b506109926004803603602081101561097c6109a08301527f57600080fd5b8101908080359060200190929190505050612c3e565b005b610b6109c08301527f3860048036036101408110156109ab57600080fd5b81019080803573ffffffff6109e08301526fe96f9fdffe6f6d6e6f7fca6f9fdffe6f19610a0083018190527f929190803590602001906401000000008111156109f257600080fd5b82018360610a208401527f2082011115610a0457600080fd5b803590602001918460018302840111640100610a408401527c83111715610a2657600080fd5b9091929391929390803560ff16906020610a608401527f0190929190803590602001909291908035906020019092919080359060200190610a8084015265e96f9fdffe706524a464200d5d60d21b03610aa08401819052610ac08401527f92919080359060200190640100000000811115610ab257600080fd5b82018360610ae08401527f2082011115610ac457600080fd5b803590602001918460018302840111640100610b008401527c83111715610ae657600080fd5b91908080601f01602080910402602001610b208401527f6040519081016040528093929190818152602001838380828437600081840152610b408401527f601f19601f820116905080830192505050505050509192919290505050612d78610b608401527f565b60405180821515815260200191505060405180910390f35b348015610b5c610b808401527f57600080fd5b50610ba960048036036040811015610b7357600080fd5b810190610ba084015267e96f9fdffe6f6d6f6320200d5d60e21b03610bc08401527f90803590602001909291905050506132b5565b60405180828152602001915050610be08401527f60405180910390f35b348015610bcb57600080fd5b50610d2660048036036060610c008401527f811015610be257600080fd5b8101908080359060200190929190803590602001610c208401527f90640100000000811115610c0957600080fd5b820183602082011115610c1b57610c408401527f600080fd5b80359060200191846001830284011164010000000083111715610c610c608401527f3d57600080fd5b91908080601f01602080910402602001604051908101604052610c808401527f8093929190818152602001838380828437600081840152601f19601f82011690610ca08401527f5080830192505050505050509192919290803590602001906401000000008111610cc08401527f15610ca057600080fd5b820183602082011115610cb257600080fd5b80359060610ce08401527f200191846001830284011164010000000083111715610cd457600080fd5b9190610d008401527f8080601f01602080910402602001604051908101604052809392919081815260610d208401527f2001838380828437600081840152601f19601f82011690508083019250505050610d408401527f50505091929192905050506132da565b005b348015610d3457600080fd5b5061610d608401527f0d3d613369565b60405180806020018281038252838181518152602001915080610d808401527f51906020019060200280838360005b83811015610d8057808201518184015260610da08401527f2081019050610d65565b505050509050019250505060405180910390f35b3480610dc08401527f15610da057600080fd5b50610da9613512565b60405180828152602001915050610de08401527f60405180910390f35b348015610dcb57600080fd5b50610ea560048036036040610e0084015260017220440558437895d800203f56e0406420200d5d606a1b03610e2084015278e96f9fdffe6f6d6e6f7fca6f9fdffe6f9bfeffffffff7eeeea19610e408401527f610e1f57600080fd5b820183602082011115610e3157600080fd5b8035906020610e608401527f0191846001830284011164010000000083111715610e5357600080fd5b919080610e808401526000805160206201210a833981519152610ea0840152600080516020620120ea833981519152610ec08401527f50509192919290505050613518565b005b348015610eb357600080fd5b506110610ee08401527f156004803603610100811015610ecb57600080fd5b8101908080359060200190610f008401527f640100000000811115610ee857600080fd5b820183602082011115610efa5760610f208401527e80fd5b80359060200191846020830284011164010000000083111715610f1c610f408401527f57600080fd5b909192939192939080359060200190929190803573ffffffffff610f6084015270e96f9fdffe6f6d6e6f7fca6f9fdffe6f9b19610f808401527f0100000000811115610f6757600080fd5b820183602082011115610f79576000610fa08401527f80fd5b80359060200191846001830284011164010000000083111715610f9b57610fc084015260016f1800203f56e42464a4e464a4e4200d5d60821b03610fe08401526b3a5be7f7ff9bdb5b9bdff2a360821b19611000840152753a5be7f7ff9bdb5b9bdff29be7f7ff9bdb5b9bdff2a360321b1961102084015271e96f9fdffe6f6d6e6fafafaf9ecac5a9a4ff196110408401527f5b34801561102357600080fd5b506110d26004803603608081101561103a576061106084015260ea69203f56e0406420200d5d60aa1b036110808401527f90602001909291908035906020019092919080359060200190640100000000816110a08401527f111561108157600080fd5b82018360208201111561109357600080fd5b8035906110c08401527f602001918460018302840111640100000000831117156110b557600080fd5b906110e08401527f91929391929390803560ff1690602001909291905050506136f8565b604051806111008401527f82815260200191505060405180910390f35b3480156110f457600080fd5b50616111208401527f11416004803603604081101561110b57600080fd5b81019080803573ffffffff61114084015261116083015260017424a464141414184e081596d81014602018080060dd605a1b0361118083015276e97ead9fdffe7d7efc7dad7b7e7eae7ead9fdffe6eaf7f196111a08301527f51906020019060200280838360005b838110156111a0578082015181840152606111c08301527f2081019050611185565b50505050905001935050505060405180910390f35b346111e08301527f80156111c157600080fd5b506111ee600480360360208110156111d8576000806112008301527ffd5b8101908080359060200190929190505050613a12565b005b3480156111fc6112208301527f57600080fd5b50611314600480360361014081101561121457600080fd5b810161124083015266e96f9fdffe6f6e642420200d5d60da1b036112608301527f9190803590602001909291908035906020019064010000000081111561125b576112808301527f600080fd5b82018360208201111561126d57600080fd5b8035906020019184606112a08301527f0183028401116401000000008311171561128f57600080fd5b909192939192936112c08301527f90803560ff1690602001909291908035906020019092919080359060200190926112e083015260016e2464200d641808006424a464200d5d608a1b036113008301526b3a5be7f7ff9bdb5b9bdff2a3608a1b196113208301527ce96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafafaf9ec44ea9a49fbf196113408301527f518082815260200191505060405180910390f35b34801561133657600080fd5b6113608301527f506113996004803603604081101561134d57600080fd5b81019080803573ffff6113808301526de96f9fdffe6f6d6e6f7fca8c0000196113a08301526de96f9fdffe6f6d6e6fafafaf9ec4196113c08301527fde565b005b3480156113a757600080fd5b506113ea60048036036020811015616113e083015260016e04ef95d800203f56e0406420200d5d608a1b036114008301527ce96f9fdffe6f6d6e6fafafaf9ec090a9a4ffa4cb7fea9eec07a89fff7f196114208301527ffd5b5061147b6004803603606081101561140f57600080fd5b810190808035736114408301526be96f9fdffe6f6d6e6f7fca8c1961146083018190526114808301526114a08201527f613ff3565b005b34801561148957600080fd5b50611492614665565b604051806114c08201527f82815260200191505060405180910390f35b3480156114b457600080fd5b50616114e08201527f15cc60048036036101408110156114cc57600080fd5b81019080803573ffffff6115008201526ee96f9fdffe6f6d6e6f7fca6f9fdffe196115208201527f909291908035906020019064010000000081111561151357600080fd5b8201836115408201527f60208201111561152557600080fd5b80359060200191846001830284011164016115608201527b8311171561154757600080fd5b9091929391929390803560ff1690606115808201527f20019092919080359060200190929190803590602001909291908035906020016115a082015264e96f9fdfff662424a464200d5d60ca1b036115c082018190526115e08201527f909291908035906020019092919050505061466f565b604051808060200182816116008201527f03825283818151815260200191508051906020019080838360005b83811015616116208201527f160c5780820151818401526020810190506115f1565b505050509050908101906116408201527f601f1680156116395780820380516001836020036101000a03191681526020016116608201527f91505b509250505060405180910390f35b34801561165357600080fd5b5061166116808201527f966004803603602081101561166a57600080fd5b81019080803573ffffffffff6116a082015270e96f9fdffe6f6d6e6fafafaf9eb7e8a9a4196116c08201527e5b3480156116a457600080fd5b506116ad614878565b6040518082815260206116e08201527f0191505060405180910390f35b3480156116cf57600080fd5b5061173c6004806117008201526001760d80d8182044055845b995d800203f56e0406420200d5d604a1b036117208201526b3a5be7f7ff9bdb5b9bdff2a3604a1b1961174082015274e96f9fdffe6f6d6e6f7fca6f9fdffe6f6d6e6fafaf196117608201527f506148f6565b005b34801561174a57600080fd5b50611753614d29565b6040516117808201527f80806020018281038252838181518152602001915080519060200190808383606117a08201527e5b83811015611793578082015181840152602081019050611778565b5050506117c08201527f50905090810190601f1680156117c05780820380516001836020036101000a036117e08201527f1916815260200191505b509250505060405180910390f35b6117d6614d62565b61180082015268e97d8c0000000000016218001d60ea1b036118208201526c3a7afa9ffaa7b9efea2be7ffa3602a1b19611840820152623a5f6360721b196118608201526c3a7afaa91ffaa7b9e1ea2bf3e3606a1b1961188082015261e9eb623a5f6360b21b01196118a08201526caadb08c752bb02028bf8461bcd60951b6118c082015275815260040180806020018281038252600581526020016118e082015266807f475332303360c81b611900820152600174205494180800645414181014602440e43f56d8001d604a1b03611920820152663a67ff67ffdee360721b1961194082015263e97ead9f613a6360c21b01196119608201526001760800642054980800580008180024152418404002a4011d604a1b03611980820152613a63609a1b196119a082015260016d074f5cf730a544fdfd7407b9e433608d1b03196119c0820152748152600401808060200182810382526005815260206119e082015266601fd1d4cc8c0d60c21b611a008201527c81525060200191505060405180910390fd5b60026000600173ffffffff611a20820152613a6360721b19611a40820181905279e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb19611a608301526ae99ffd9fff7b8c00000001601d60fa1b03611a80830152611aa082015279e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c0019611ac0820152653f79ba5bdf23603a1b19611ae08201526d3a7f7a1beaabdfa7ff67ffe7ffa3602a1b19611b00820152613a63607a1b19611b208201527ae97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c000019611b40820152653f79ba5bdf2360421b19611b6082015273e9fde86faaaf9ffc9fff7eab7f6d6e6f9ffefe6e19611b808201527f905055507f9465fa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa611ba082015260016b1fd82cba89a098101460209d60a21b03611bc08201527f16815260200191505060405180910390a18060045414611bba57611bb981612c611be08201527f3e565b5b5050565b611bd2604182614e0590919063ffffffff16565b82511015611c008201526b0308e242bb02028bf8461bcd60a51b611c208201527781526004018080602001828103825260058152602001807f611c4082015264047533032360dc1b611c608201527f81525060200191505060405180910390fd5b6000808060008060005b86811015611c808201527f61243457611c648882614e3f565b80945081955082965050505060008460ff16611ca08201527f141561206d578260001c9450611c96604188614e0590919063ffffffff16565b611cc08201527104130000e080ab08e872bb02028bf8461bcd60751b611ce082015271815260040180806020018281038252600581611d0082018190526a52602001807f475330323160a81b611d208301527981525060200191505060405180910390fd5b8751611d27602084611d408301527f60001c614e6e90919063ffffffff16565b1115611d9b576040517f08c379a000611d60830152648152600401611d80830152774040301000c14081c1293002c0a9301000c03fa3a998191960411b611da08301526c81525060200191505060405180611dc08301527f910390fd5b60006020838a01015190508851611dd182611dc360208760001c61611de08301527f4e6e90919063ffffffff16565b614e6e90919063ffffffff16565b1115611e45611e008301526802bb02028bf8461bcd60bd1b611e208301527a81526004018080602001828103825260058152602001807f475330611e408301526281525061323360f01b01611e608301527f60200191505060405180910390fd5b60606020848b010190506320c13b0b60e0611e8083015261e6ea6106df60f21b03611ea083015269e99cdf3ec4f4727b9fc06121dd60f21b03611ec08301527f518363ffffffff1660e01b815260040180806020018060200183810383528581611ee08301527f8151815260200191508051906020019080838360005b83811015611ee7578082611f008301527f015181840152602081019050611ecc565b50505050905090810190601f168015611f208301527f611f145780820380516001836020036101000a031916815260200191505b5083611f408301527f8103825284818151815260200191508051906020019080838360005b83811015611f608301527f611f4d578082015181840152602081019050611f32565b505050509050908101611f808301527f90601f168015611f7a5780820380516001836020036101000a03191681526020611fa08301527f0191505b5094505050505060206040518083038186803b158015611f99576000611fc08301527f80fd5b505afa158015611fad573d6000803e3d6000fd5b505050506040513d60611fe08301527f20811015611fc357600080fd5b81019080805190602001909291905050507bff61200083015264e6e9eb9edf19612020830152690332bb02028bf8461bcd60b51b6120408301527981526004018080602001828103825260058152602001807f4753612060830152618152620c0c8d60ea1b016120808301527f5060200191505060405180910390fd5b50506122b2565b60018460ff161415616120a083015260ea6a086055e09800072514211d60aa1b036120c083015269e9eb7f9edef5a8afa000610cdd60f21b036120e083015265e98c00000001651802180021dd60d21b036121008301526fe97ead9fdffe6f7ead9fdffe9fffdf9f196121208301527e8c81526020019081526020016000205414155b61217c576040517f08c379a0612140830152638152600461216083015278018080602001828103825260058152602001807f475330323560381b6121808301526b8152506020019150506040516121a08301527f80910390fd5b6122b1565b601e8460ff1611156122495760018a6040516020016121c08301527f80807f19457468657265756d205369676e6564204d6573736167653a0a3332006121e08301527c815250601c0182815260200191505060405160208183030381529060406122008301527f52805190602001206004860385856040516000815260200160405260405180856122208301527f81526020018460ff1681526020018381526020018281526020019450505050506122408301527f6020604051602081039080840390855afa158015612238573d6000803e3d60006122608301527ffd5b5050506020604051035194506122b0565b60018a858585604051600081526122808301527f602001604052604051808581526020018460ff168152602001838152602001826122a08301527f81526020019450505050506020604051602081039080840390855afa158015616122c08301527f22a3573d6000803e3d6000fd5b5050506020604051035194505b5b5b8573ffff6122e0830152623a5ea3605a1b196123008301526b3a7b9ffaa7b721aa2be7ffe3605a1b19612320830152663a67ff67ffde2360821b1961234083015265e97ead9fdffe613a6360d21b0119612360830152600174242054980800580008180024152418404002a4011d605a1b0361238083015260e9613a6360aa1b01196123a083015260016c050556e0055848ec95d418005d609a1b036123c083015267e9ebeaa49edbdba8623a5ea360e21b01196123e0830152670302028bf8461bcd60c51b6124008301527b81526004018080602001828103825260058152602001807f475330326124208301526381525060601b60f91b016124408301527f200191505060405180910390fd5b8495508080600101915050611c52565b505061246083015260016d14141414141414141596d800205d60921b0361248083015265e9ebea7fea9e633a67ffa360d21b01196124a083015264e99ffea000660942d5d418001d60ca1b036124c08301526001613a6360421b0161211d60f21b036124e083015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f1961250083015264e98c0000016618404002a4011d60ca1b036125208301526ee9ebeaa46faf6e6fafa9a49fff9ffe196125408301526001623a5f6360421b01601d60fa1b036125608301526c3a7afa9ffaa7b688aa2be7ffe3603a1b19612580830152663a67ff67ffdee360621b196125a083015261e97e613a6360b21b01196125c083015260017814980800642054980800580008180024152418404002a4011d603a1b036125e0830152613a63608a1b196126008301527ce9ebeaa46faf6e6fafa9a49fff7fb96faf7f6eafaf6fa9a49fff9ffe8c19612620830152623a7323604a1b196126408301526c3a7afa9ffaa7b650ea2be7ffe360421b19612660830152663a67ffa7fff323606a1b1961268083015262e97ead613a6360ba1b01196126a0830152600177180800642054980800580008180024152418404002a4011d60421b036126c0830152613a6360921b196126e083015260016f074f5f5524f6c68d44fdfd7407b9e43360751b03196127008301526127208201526a14980800601fd1d4cc4c0d60aa1b6127408201527981525060200191505060405180910390fd5b61273b858585855a61276082015260016e1853a35596e41420055849e2d5ccdd608a1b036127808201527ce980976a3ec99b55b098d774da285de28555cb6e91caa04649051f5ec6196127a08201526001762a4216fb2e181014581014602440e4289849f3d596ccdd604a1b036127c082015274e980532d378fd7fbed7024f24d44b6092ed822fe7e196127e08201527fc13fd45dbfe16de0930e2bd37560405160405180910390a25b949350505050566128008201527f5b600060606127e7868686866125f1565b915060405160203d0181016040523d6128208201527f81523d6000602083013e8091505094509492505050565b606060006020830267612840820152777eee7fea9ed7d4a89fff7f02a4af9fbfae6f7f7dad7f9fe0196128608201527f01601f19166020018201604052801561285e57816020016001820280368337806128808201527f820191505090505b50905060005b8381101561288957808501548060208302606128a08201527f2085010152508080600101915050612864565b508091505092915050565b60076128c08201527f6020528060005260406000206000915090505481565b6128b4614d62565b60006128e08201526001623a5fa360421b01601d60fa1b036129008201526c3a7afa9ffaa7b5b86a2be7ffa3603a1b19612920820152623a5fa360821b1961294082015260016f074f5f5524f6b37d44fdfd7407b9e43360651b03196129608201526f8152600401808060200182810382526061298082018190526c058152602001807f475331303160981b6129a08301527781525060200191505060405180910390fd5b600073ffffff6129c08301819052663a67ffa7ffdf2360421b196129e0840152613a6360921b19612a0084018190527de97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb8c00000019612a20850152613a63606a1b19612a4085015260016d074f5cf6ab7544fdfd7407b9e433605d1b0319612a608501526e815260040180806020018281038252612a808501526d3002c0a9301000c03fa3a998981960911b612aa08501527681525060200191505060405180910390fd5b6001600060612ac08501526001613a6360421b01605d60f21b03612ae085015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f19612b0085015264e99ffea0006618404002a4011d60ca1b03612b208501526001613a6360421b016120dd60f21b03612b4085015273e97ead9fdffe6f7ead9fdffe9fffdf9fff9efeff19612b6085015266fde6e96f7c8c016402a055205d60da1b03612b808501526ce9fde86faaaf7f9ffe9fff9ffe19612ba08501526001613a63604a1b01601d60fa1b03612bc0850181905274e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff519612be086015267fde6e96f7c8c0001632055205d60e21b03612c008601526de9fde86faaaf801320c5c10015a819612c208601527f83a3c4c2140e677577666428d44ed9d474a0b3a4c9943f844081604051808273612c408601526be97ead9fdffe6eafaf9fbfae19612c608601527f80910390a150565b612c46614d62565b600354811115612cbe576040517f08c3612c808601526181526103cd60f51b01612ca08601527a6004018080602001828103825260058152602001807f475332303160281b612cc08601526981525060200191505060612ce08601527802028c04881c87eadb000c0880ab0969aabb02028bf8461bcd603d1b612d008601526a8152600401808060200182612d208601819052714081c1293002c0a9301000c03fa3a999181960711b612d408701527281525060200191505060405180910390fd5b80612d608701527f6004819055507f610f7ff2b304ae8903c3de74c60c6ab1f7d6226b3f52c51619612d808701527f05bb5ad4039c936004546040518082815260200191505060405180910390a150612da08701527f565b6000806000612d928e8e8e8e8e8e8e8e8e8e60055461466f565b90506005612dc08701527f6000815480929190600101919050555080805190602001209150612dbb828286612de0870152600174184cb69596d41800184b719853b65596e41418001d605a1b03612e00870152623a5fa360a21b19612e2087015263e99c8a10670585184beb15e01d60c21b03612e408701527fbb528f8f8f8f8f8f8f8f8f8f8f336040518d63ffffffff1660e01b8152600401612e6087015268e97ead9fdffe737eae6220235d60ea1b03612e808701527f602001806020018a6001811115612e6957fe5b81526020018981526020018881612ea087015260016b1498080061e054980800619d60a21b03612ec087015263e97eada06705a054980800615d60c21b03612ee087015263e97eada067080060180800611d60c21b03612f008701527f200183810383528d8d82818152602001925080828437600081840152601f1960612f208701527f1f82011690508083019250505083810382528581815181526020019150805190612f408701527f6020019080838360005b83811015612f3b578082015181840152602081019050612f608701527f612f20565b50505050905090810190601f168015612f68578082038051600183612f808701527f6020036101000a031916815260200191505b509e505050505050505050505050612fa08701527f505050600060405180830381600087803b158015612f9357600080fd5b505af1612fc08701527f158015612fa7573d6000803e3d6000fd5b505050505b6101f4612fd36109c48b612fe08701527f01603f60408d0281612fc457fe5b04614f0a90919063ffffffff16565b015a106130008701526bab09824abb02028bf8461bcd609d1b6130208701527681526004018080602001828103825260058152602001806130408701526507f47533031360d41b6130608701527e81525060200191505060405180910390fd5b60005a90506130b28f8f8f8f806130808701526000805160206201210a8339815191526130a0870152600080516020620120ea8339815191526130c08701527f50508e60008d146130a7578e6130ad565b6109c45a035b614e8d565b935061306130e08701527fc75a82614f2490919063ffffffff16565b905083806130d6575060008a14155b613100870152770403098712ba83000440a0aadb098aa2bb02028bf8461bcd60451b6131208701526b81526004018080602001828161314087018190527003825260058152602001807f475330313360781b6131608801527381525060200191505060405180910390fd5b60006131808801527f8089111561316e5761316b828b8b8b8b614f44565b90505b84156131b8577f446131a08801527f2e715f626346e8c54381002da614f62bee8d27386535b2521ec8540898556e846131c08801527f82604051808381526020018281526020019250505060405180910390a16131f86131e08801527f565b7f23428b18acfb3ea64b08dc0c1d296ea9c09702c09083ca5272e64d115b6132008801527f687d23848260405180838152602001828152602001925050506040518091039061322088015264e97e8c0001662856d41418001d60ca1b03613240880152673a7ae7b356ea1fe360321b1961326088015271e99c6cd8ec977c7a9fbfae7c9c00000000e9196132808801527f60e01b81526004018083815260200182151581526020019250505060006040516132a08801527f80830381600087803b15801561328b57600080fd5b505af115801561329f573d6132c08801527f6000803e3d6000fd5b505050505b50509b9a5050505050505050505050565b606132e08801527f08602052816000526040600020602052806000526040600020600091509150506133008801527a02a40ab2db00030022a482830004088b099ababb02028bf8461bcd602d1b613320880152688152600401808060206133408801527301828103825260058152602001807f475330303160601b6133608801527081525060200191505060405180910390fd6133808801527f5b61336384848484611bbe565b50505050565b6060600060035467ffffffffff6133a08801527c7eee7fea9ecc79a89fff7f02a4af9fbfae6f7f7dad7f9fdffd9fdffe7d196133c08801527f0160405280156133b55781602001602082028036833780820191505090505b506133e088015260016b24141800201800980018005d60a21b0361340088015269e97ead9fdffe6f7eada061059d60f21b036134208801526001700800580008180024152418404002a4011d607a1b03613440880152663a5bebe927ffa360a21b1961346088015268e9eb9ecaf6a87f7c7d6205a05d60ea1b0361348088015260017220546044184d1815ff96d8080098080040641d606a1b036134a088015260e9633a5bdfa360aa1b01196134c088015261e98d692054941418009800209d60b21b036134e08801526be97ead9fdffe6f7ead9fdffe1961350088015260016e180008180024152418404002a4011d608a1b036135208801527ce96faf7e7f9ffefe6dafaf9ecbe0a9a47d6cafafafaf6fa9a49ffaab7e196135408801527f565b600080825160208401855af4806000523d6020523d600060403e60403d016135608801527f6000fd5b6135858a8a80806020026020016040519081016040528093929190816135808801527f8152602001838360200280828437600081840152601f19601f820116905080836135a08801526001706494141414141414225854529596d8001d60721b036135c088015262e9eb9e623a5ee360ba1b01196135e08801527f35c3576135c28461564a565b5b6136118787878080601f0160208091040260206136008801527f01604051908101604052809392919081815260200183838082843760008184016136208801527f52601f19601f82011690508083019250505050505050615679565b6000821115613640880152600176184d8ad5d84d8a609800180061a15853d11596d416ccdd604a1b0361366088015274e980ebe2079759cce50ad71c737c4855fc123e6419196136808801527f6e37ae67f9285bf4f8e3c6a1a88b8b8b8b8960405180806020018581526020016136a088015269e97ead9fdffe7c8c000161211d60f21b036136c08801526de97ead9fdffe7d7efc7dad78787d196136e08801527f818152602001925060200280828437600081840152601f19601f8201169050806137008801527f830192505050965050505050505060405180910390a2505050505050505050506137208801527f565b6000805a905061374f878787878080601f01602080910402602001604051613740880152600080516020620120aa8339815191526137608801527f601f82011690508083019250505050505050865a614e8d565b613758576000806137808801527ffd5b60005a8203905080604051602001808281526020019150506040516020816137a0880152700418181c0a948302029302028bf8461bcd607d1b6137c088015272815260040180806020018281038252838181516137e08801527f815260200191508051906020019080838360005b838110156137e557808201516138008801527f818401526020810190506137ca565b50505050905090810190601f16801561386138208801527f125780820380516001836020036101000a031916815260200191505b50925050613840880152677eee7fea9ec7c4a96f0a0c080a301220721fab6c0c0c00104d60831b036138608801527f600080fd5b5060405190808252806020026020018201604052801561386a57816138808801527f602001602082028036833780820191505090505b5091506000806001600087736138a0880152613a6360521b196138c088015275e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efe196138e088015266e96fafa49fff8d6302a4011d60da1b03613900880152623a5fa3604a1b1961392088018190526c3a7afa9ffaa7b1b0aa2be7ffa360421b19613940890152623a5fa3608a1b1961396089018190527ce9ebeaa47fea9ec6b7a8af7b7defa4ea9ec5fca87f7b7c7eae7eef9ec6196139808a015260016c1695ff96d8080098080040641d609a1b036139a08a015266e97eadafaf9ffe633a5bdfa360da1b01196139c08a015267e98c000000000001631800209d60e21b036139e08a015271e97ead9fdffe6f7ead9fdffe9fffdf9fff6f19613a008a015262e96fb068152418404002a4011d60ba1b03613a208a01527f81806001019250506138d3565b80925081845250509250929050565b600073ff613a408a0152663a67ff67fff32360321b19613a608a0152613a6360821b19613a808a018190527be97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb8c0019613aa08b0152613a63605a1b19613ac08b015260016e074f5f54f6275d44fdfd7407b9e43360451b0319613ae08b0152613b008a01939093526f3825260058152602001807f475330333607c1b613b208a01527381525060200191505060405180910390fd5b6001613b408a015265e98c0000000165180218000cdd60d21b03613b608a01526fe97ead9fdffe6f7ead9fdffe9fffdf9f19613b808a015260017420e054980800642054980800580008206415540cdd60521b03613ba08a015275e97e800d5f14ea9b8d2ebbfdaa4f283e1e633f8eea2e19613bc08a01527f051fe605b0dce69acfec884d9c60405160405180910390a350565b6000613bc6613be08a01527f8c8c8c8c8c8c8c8c8c8c8c61466f565b8051906020012090509b9a5050505050613c008a01526001721414141414141596d84ef99853589596d8001d606a1b03613c208a015261e9eb623a5fa360b21b0119613c408a015260ea6a056005584f1415d418005d60aa1b03613c608a015269e9ebeaa49ec33da89fc061205d60f21b03613c808a015265028bf8461bcd60d51b613ca08a018190527d81526004018080602001828103825260058152602001807f475331303100613cc08b015265815250602001613ce08b0181905260016d245414181014602440e43f56e01d60921b03613d008c015262e98c00663a67ffa7ffdee360ba1b0119613d208c01526ce97ead9fdffe6f7ead9fdffe9f19613d408c015260016c08180024152418404002a4011d60921b03613d608c015267e9eb9ec23da89fbf613a6360e21b0119613d808c0152613da08b01919091527d81526004018080602001828103825260058152602001807f475331303300613dc08b0152613de08a0152600171245414181014602440e43f56d8005800209d60721b03613e008a015263e97ead9f613a6360c21b0119613e208a018190526001760800642054980800580008180024152418404002a4011d604a1b03613e408b0152663a67ffa7ffdee360721b19613e608b0152613e808a01526001740800642054980800580008180018404002a055205d605a1b03613ea08a0152653f79ba5bdf23608a1b19613ec08a01526d3a7f7a1beaabe7ffe7ffa7ffdf23607a1b19613ee08a015264e97ead9fdf613a6360ca1b0119613f008a0152600172642054980800580008180018404002a055205d60621b03613f208a0152653f79ba5bdf2360921b19613f408a01527de9fde86faaaf80554b05d4b9c0a7e4d4cd34c481c48fb4631c833df64a0419613f608a015260016f135df964eb3901509da058101460209d60821b03613f808a01527be97ead9fdffe6eafaf9fbfae7f6efc6f5eafafa9a49ec0889eb29da919613fa08a01527f5b60007f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbda4f558613fc08a01527fc93c34c860001b90508181557f1151116914515bc0891ff9047a6cb32cf90254613fe08a01526001731be0c199266f3e2e8cf48d4fe8a098101460209d60621b036140008a015277e97ead9fdffe6eafaf9fbfae7f6efc6f5eafafa9a49ec004196140208a015263e97e8c01671853589596d8001d60c21b036140408a01526ce9ebea7fea9ebf9aa8af9ffe8c196140608a01526140808901919091526c3a7afaa91ffaa7afd8aa2bf3e360421b196140a08901526140c088015260016f074f5f5524f5f78544fdfd7407b9e433606d1b03196140e08801527081526004018080602001828103825260056141008801526b8152602001807f475332303360a01b6141208801527881525060200191505060405180910390fd5b600073ffffffff614140880152663a67ff67ffdf23604a1b19614160880152613a63609a1b196141808801527a3a5fab67f7ff9bdfab67f7ffa7fff7e7ffdbeadbe7bfbffd5bfee360221b196141a0880152613a6360721b196141c0880181905260016d074f5cf5ef7d44fdfd7407b9e43360651b03196141e08901526142008801969096526c016054980800601fd1d4cc8c0d609a1b614220880152614240870194909452623a5f6360621b196142608701526c3a7afa9ffaa7af616a2be7ffa3605a1b19614280870152623a5f6360a21b196142a08701526eb0a0aadb0a1762bb02028bf8461bcd60851b6142c08701527381526004018080602001828103825260058152606142e08701819052682001807f475332303360b81b614300880152600173205494180800645414181014602440e43f56e05d60421b03614320880152663a67ff67ffdea3606a1b1961434088015262e97ead613a6360ba1b0119614360880152600177180800642054980800580008180024152418404002a4011d60421b036143808801526143a087019390935260016d074f5cf5e09d44fdfd7407b9e43360851b03196143c08701526143e0860192909252682001807f475332303560b81b6144008601527b81525060200191505060405180910390fd5b600260008373ffffffff614420860152614440850184905279e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f9efefff56ffb1961446086018190526ae99ffd9fff7c8c00000001601d60fa1b036144808701526144a0860185905279e97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c00196144c0870152653f79ba5bdf23603a1b196144e08701526c3a7f7a1beaabdfe7ff67ffdea360321b196145008701526145208601939093527be97ead9fdffe6f7ead9fdffe9fffdf9fff9efefff57eab7e8c00000019614540860152653f79ba5bdf23604a1b196145608601526d3a7f7a1beaabe7ffe7ff67ffdee3603a1b19614580860152613a63608a1b196145a0860152783a5fab67f7ff9bdfab67f7ffa7fff7e7ffe7bfbffd5faadfa360221b196145c0860152653f79ba5bdf2360521b196145e086015275e9fde86faaaf80072b603ad67ed16583a3af1963df0f196146008601526001773733036e3ea57262f16332693c704a67abe098101460209d60421b0361462086015273e97ead9fdffe6eafaf9fbfae7f6efc6f5e806b9a196146408601527ffa0c962cc76958e6373a993326400c1c94f8be2fe3a952adfa7f60b2ea26816061466086015266e97ead9fdffe6f64101460209d60da1b036146808601527f505060405180910390a1505050565b6000600454905090565b606060007fbb836146a08601527f10d486368db6bd6f849402fdd73ad53d316b5a4b2644ad6efe0f941286d860006146c08601527f1b8d8d8d8d6040518083838082843780830192505050925050506040518091036146e08601526001772408232323232323231810145808006023205498080062dd60421b0361470086015273e97ead9fdffe757ead9fdffe767ead9fdffe779f196147208601527f0181111561470057fe5b8152602001878152602001868152602001858152602061474086015268e97ead9fdffe7c8c0161611d60ea1b036147608601526ce97ead9fdffe7d7ead9fdffe64196147808601527f50505050505050505050505060405160208183030381529060405280519060206147a08601527f01209050601960f81b600160f81b61478c614878565b8360405160200180857e6147c086015260e6196147e0860152600167168152600101847f60c01b0361480086015278e6e97ead9ffefe7c7ead9fdffe7d7ead9fdffe6bafafafafaf196148208601527f6040516020818303038152906040529150509b9a5050505050505050505050566148408601527f5b61481f614d62565b6148288161564a565b7f5ac6c46c93c8d0e53714ba3b536148608601527fdb3e7c046da994313d7ed0d192028bc7c228b081604051808273ffffffffffff61488086015271e97ead9fdffe6eafaf9fbfae7f6efc6f5eaf196148a08601527f565b60007f47e79534a245952e8b16893a336b85a3d9ea9fa8c573f3d803afb96148c08601527f2a7946921860001b6148a66125e4565b306040516020018084815260200183816148e086015265e97ead9fdfff6514980800609d60d21b036149008601527f935050505060405160208183030381529060405280519060200120905090565b6149208601527f6148fe614d62565b806001600354031015614979576040517f08c379a00000006149408601526681526004018080614960860181905275602001828103825260058152602001807f475332303160501b61498087018190526e8152506020019150506040518091036149a0880181905265e97d8c00000165243f56d8001d60d21b036149c08901526ee9ebea7fea9eb61ca8af9ffe8c0000196149e0890152623a5f63605a1b19614a0089015260016f074f5f5524f5ad5544fdfd7407b9e433603d1b0319614a20890152614a408801859052718103825260058152602001807f475332303360701b614a608901527281525060200191505060405180910390fd5b81614a808901526ae99ffd9fff7a8c00000001601d60fa1b03614aa0890152614ac0880196909652614ae0870194909452614b0086019190915260016d074f5cf5a55544fdfd7407b9e433603d1b0319614b20860152614b40850191909152718103825260058152602001807f475332303560701b614b608501527281525060200191505060405180910390fd5b60614b8085015266e98c000000000163980020dd60da1b03614ba085015270e97ead9fdffe6f7ead9fdffe9fffdf9fff19614bc0850181905261e9a06924152418404002a4011d60b21b03614be086015266e98c0000000001639800215d60da1b03614c00860152614c2085015263fde6e9706718404002a055205d60c21b03614c4085015269e9fde86faaaf9fff9ffe6120dd60f21b03614c6085015267e98c000000000001631800211d60e21b03614c8085015271e97ead9fdffe6f7ead9fdffe9fffdf9fff9e19614ca085015264fde6e96f7d654002a055205d60ca1b03614cc08501526ae9fde86faaaf9ffc9fff7f601d60fa1b03614ce08501527f54809291906001900391905055507ff8d49fc529812e9a7c5c50e69c20f0dccc614d00850152600175036e3ea57262f16332693c704a67abe098101460209d60521b03614d2085015275e97ead9fdffe6eafaf9fbfae7f6efc6f5e7f9ffbabeb19614d408501527f614d2457614d2381612c3e565b5b505050565b60405180604001604052806005614d608501526a081526020017f312e332e360ac1b614d80850152600167205494205596cc1d60921b03614da085015266e9eb9eb1fca89f623a732360da1b0119614dc08501526602028bf8461bcd60cd1b614de08501527c81526004018080602001828103825260058152602001807f4753303331614e00850152648152506020614e208501527f0191505060405180910390fd5b565b600080831415614e185760009050614e39614e408501527f565b6000828402905082848281614e2957fe5b0414614e3457600080fd5b8091614e608501527f50505b92915050565b6000806000836041026020810186015192506040810186614e808501527f0151915060ff60418201870151169350509250925092565b6000808284019050614ea08501527f83811015614e8357600080fd5b8091505092915050565b600060018081111561614ec08501527f4e9b57fe5b836001811115614ea757fe5b1415614ec057600080855160208701614ee08501527f8986f49050614ed0565b600080855160208701888a87f190505b959450505050614f008501527f50565b6000807f4a204f620c8c5ccdca3fd54d003badd85ba500436a431f0cbd614f208501527fa4f558c93c34c860001b9050805491505090565b600081831015614f1a578161614f408501527f4f1c565b825b905092915050565b600082821115614f3357600080fd5b600082614f608501526001732100e4142024541424a454141596d8002018001d60621b03614f8085015260e9623a5f2360aa1b0119614fa0850152600171051853e055e09853e0d596cc96e41418001d60721b03614fc085015262e9ebea623a5ee360ba1b0119614fe08501527f61509b57614fed3a8610614fca573a614fcc565b855b614fdf888a614e6e90916150008501527f9063ffffffff16565b614e0590919063ffffffff16565b91508073ffffffffff61502085015270e99ef7037c6f7eeafd6f9fbfae9fff9fbf1961504085015279028c04181c0c2c44478c9a828282830a84b2bb02028bf8461bcd60351b615060850152698152600401808060200161508085015272828103825260058152602001807f475330313160681b6150a08501527181525060200191505060405180910390fd5b6150c08501527f615140565b6150c0856150b2888a614e6e90919063ffffffff16565b614e05906150e08501527f919063ffffffff16565b91506150cd8482846158b4565b61513f576040517f08615100850152608162061bcd60ed1b016151208501527b29300200c040301000c14081c1293002c0a9301000c03fa3a998189960211b615140850152688152506020019150506151608501527f60405180910390fd5b5b5095945050505050565b6000600454146151c257604061518085015265028bf8461bcd60d51b6151a08501527d81526004018080602001828103825260058152602001807f4753323030006151c0850152658152506020016151e08501527f91505060405180910390fd5b8151811115615239576040517f08c379a0000000615200850152615220840152615240830152615260820152730487eadb000c0880ab0a9582bb02028bf8461bcd60651b6152808201526f815260040180806020018281038252606152a08201526c02c0a9301000c03fa3a999181960991b6152c08201527781525060200191505060405180910390fd5b6000600190506152e08201527f60005b83518110156155b65760008482815181106152d057fe5b60200260200161530082015264e97e8c00016554641418001d60ca1b036153208201526de9ebea7fea9eacbba8af9ffe8c0019615340820152623a5fa360521b196153608201526c3a7afaa91ffaa7ab20ea2bf3e3604a1b19615380820152623a5fa360921b196153a08201526c3a7afaa91ffaa7ab12ea2bdfe3608a1b196153c082015265e9ebeaa49eab623a5f2360d21b01196153e0820152690132bb02028bf8461bcd60b51b6154008201527981526004018080602001828103825260058152602001807f47536154208201526181526232303360e81b0161544082015260017214180800645414181014602440e43f56d8001d606a1b03615460820152663a67ff67ffdf2360921b1961548082015267e97ead9fdffe6f7e613a6360e21b01196154a082015260017214980800580008180024152418404002a4011d606a1b036154c082015262e9eb9e613a6360ba1b01196154e08201526a02a93abb02028bf8461bcd60ad1b6155008201527881526004018080602001828103825260058152602001807f4761552082015260816314cc8c0d60e21b016155408201526001771494180800645414181014602440e43f56e018009800215d60421b03615560820152613a6360921b19615580820152783a5fab67f7ff9bdfab67f7ffa7fff7e7ffe7bfbffd5faadfa3602a1b196155a0820152653f79ba5bdf23605a1b196155c082015276e9fde86faaaf7f6dafaf7f7f9ffefe6eafaf9ead46a9a4196155e082015262e98c01681418005800980020dd60ba1b036156008201526ce97ead9fdffe6f7ead9fdffe9f1961562082015260016a08180018404002a055205d60a21b0361564082015265e9fde86faab0648645a420dd60d21b036156608201527f825160038190555081600481905550505050565b60007f6c9a6c4a39284e37ed6156808201527f1cf53d337577d14212a4870fb976a4366c693b939918d560001b9050818155506156a082015265e99ffe9fffa065141596d8001d60d21b036156c08201526001613a6360421b01605d60f21b036156e082015273e97ead9fdffe6f7ead9fdffe9fffdf9fff6fab6f1961570082015264e98c0000016618404002a4011d60ca1b036157208201526ee9eb9ea884a89fbfae80f73c865fff196157408201526481526004016157608201527708080602001828103825260058152602001807f47533130360441b6157808201526c815250602001915050604051806157a082015260016c2440e43f56d80060180018005d609a1b036157c082015268e97ead9fdffe6f7ead613a6360ea1b01196157e082015260016f180800580008180018404002a055205d60821b0361580082015261e9fd653f79ba5bdf2360b21b011961582082015264e97d8c00016605e4155418001d60ca1b036158408201526de9eb9ea74fa89ea7c27d9fff7c9f19615860820152710ad30a746ab2db0ac57abb02028bf8461bcd606d1b6158808201527081526004018080602001828103825260056158a08201526b08152602001807f47533030360a41b6158c08201527881525060200191505060405180910390fd5b5b5050565b60006158e08201526001702018ea41672ee1211810145809006020dd607a1b036159008201527ae97ead9fdffe7d7ead9fdffe6dafafaf9fbfae9fdf7e7cfcfc7ead1961592082015260016e24181014a4183806d808208060145f608a1b03615940820152747c7e7ce9e87cadafafafaf6faf9fdf9fff7dae9fdf196159608201527f84016000896127105a03f13d6000811461595b576020811461596357600093506159808201527f61596e565b81935061596e565b600051158215171593505b50505093925050506159a08201527f56fea26469706673582212203874bcf92e1722cc7bfa0cef1a0985cf0dc3485b6159c082015276a0663db3747ccdf1605df53464736f6c6343000706003360481b6159e08201525b6200b936602554620044aa565b90816025556020815191016000f590813f156200b94f57565b60405162461bcd60e51b815260206004820152600e60248201526d1b081b9bdd0819195c1b1bde595960921b6044820152606490fd5b91906200b99b9061010080855284019062000d05565b6001602084015260e06020600092836040870152858103606087015283815201938260808201528260a08201528260c08201520152565b9060018060a01b0390816200b9ed62002dc7602254620005d9565b16156200ba05575b505050620008ec602254620005d9565b8116156200bbb0575b506200ba2062002dc7602254620005d9565b906000805160206201208a833981519152803b15620005d457604080516318caf8e360e31b8082526001600160a01b039590951660048201526024810191909152600f60448201526e31b7bab731b4b629b0b332a0b2323960891b606482015260009390848160848183875af1801562000706576200bb99575b50813b156200308b57604080519182526001600160a01b03841660048301526024820152601060448201526f31b7bab731b4b629b0b332a7bbb732b960811b60648201529083908290608490829084905af1801562000706576200bb82575b506200bb146200bb0862003518565b9162001d3a83620035a0565b6200bb2562002dc7602254620005d9565b90813b156200070c5782916200bb529160405194858094819363b63e800d60e01b8352600483016200b985565b03925af1801562000706576200bb6b575b80806200b9f5565b80620006f86200bb7b9262000772565b386200bb63565b80620006f86200bb929262000772565b386200baf9565b80620006f86200bba99262000772565b386200ba9a565b60009060206200bc186200bbc762002dc7620065cb565b836200bbd2620055b3565b604051631688f0b960e01b81526001600160a01b039093166004840152606060248401526000606484015260036044840152919586939190921691839182906084820190565b03925af1801562000706576200bc54926000916200bc5b575b5060228054919092166001600160a01b03166001600160a01b0319909116179055565b386200ba0e565b6200bc77915060203d81116200073f576200072e818362000852565b386200bc31565b60101c6001600160a01b031690565b604051906200bc9c826200078c565b6001825260006020830152565b92916200bcd160409160039360018060a01b0316865260606020870152606086019062000dfb565b930152565b90816020910312620005d457518015158103620005d45790565b620008ec939160018060a01b031681526200bd1f60009384602084015261014080604085015283019062000dfb565b928060608301528060808301528060a08301528060c08301528060e083015261010082015261012081840391015262000dfb565b92620008ec94926200bd809260018060a01b03168552602085015261014080604086015284019062000dfb565b9160008060608301528060808301528060a08301528060c08301528060e083015261010082015261012081840391015262000dfb565b604051906200bdc5826200078c565b6016825275195e1958d51c985b9cd858dd1a5bdb8819985a5b195960521b6020830152565b909360606200be29959493946200be038486886200c017565b6040516338d07aa960e21b81526004810192909252602482015295869081906044820190565b03816000805160206201208a8339815191525afa938415620007065760008080966200bece575b6020969750600092916200be716200be80926040519a8b938b85016200bf9e565b03601f19810189528862000852565b6200bea26040519788968795869463353b090160e11b8652600486016200bd53565b03926001600160a01b03165af180156200070657620010fe9160009162000a2e575062000a256200bdb6565b5050602094506000906200be806200befa6200be719860603d811162000aa65762000a90818362000852565b9199909198505091925050866200be50565b6000805160206201208a83398151915291823b15620005d4576200bf599260009260405180958194829363a34edc0360e01b84521515600484015260406024840152604483019062000dfb565b03915afa801562000706576200bf6c5750565b620010fe9062000772565b90816060910312620005d457805160ff81168103620005d457916040602083015192015190565b91604193918352602083015260ff60f81b9060f81b1660408201520190565b610120919493929460018060a01b031681526200bfee60009586602084015261014080604085015283019062000dfb565b948060608301528060808301528060a08301528060c08301528060e08301526101008201520152565b60405163057ff68760e51b8152602093919290916001600160a01b03168483600481845afa91821562000706576200c0739486946000946200c0a6575b50604051631b1a23ef60e31b815295869485938493600485016200bfbd565b03915afa91821562000706576000926200c08c57505090565b620008ec9250803d106200375d576200374d818362000852565b6200c0c2919450853d87116200375d576200374d818362000852565b92386200c05456fe60a080604052346100325730608052615f6790816200003882396080518181816113380152818161151501526115770152f35b600080fdfe608060405260043610156200001357600080fd5b60003560e01c806301ffc9a71462000509578063025313a214620005035780630331383c146200042557806308386eba14620004fd5780630d12bbdb14620004f75780630d4a8b4914620004f1578063175188e814620004eb5780631b71f0e414620004e55780631f787d2814620004df578063223e547914620004d957806322bcf99914620004d3578063248a9ca314620004cd57806328c309e914620004c75780632b38c69c14620004c15780632c611c4a14620004bb5780632f2ff15d14620004b557806331f61bca14620004af5780633396045914620004a95780633419635514620004a357806336568abe146200049d5780633659cfe61462000497578063397e254314620004915780633a871fe1146200048b578063411481e61462000485578063477a5cc0146200047f5780634f1ef286146200047957806352d1902d1462000473578063559de05d146200046d5780635c94e4d214620004675780635ecf71c5146200046157806365e3864c146200042b5780636871eb4d146200045b57806368decabb14620004555780636c53db9a146200044f578063715018a6146200044957806373265c371462000443578063733a2d1f146200043d57806376e92559146200043757806377122d5614620004315780637817ee4f146200042b57806378a0b8a914620004255780637b103999146200041f57806382d6a1e7146200041957806388cfe68414620004135780638961be6b146200040d5780638da5cb5b146200040757806391d1485414620004015780639a1f46e214620003fb578063a0cf0aea14620003f5578063a217fddf14620003ef578063a230c52414620003e9578063b0d3713a14620003e3578063b3f0067414620003dd578063b5058c5014620003d7578063b64e39af14620003d1578063b99b437014620003cb578063bc063e1a14620003c5578063c4d66de814620003bf578063c6d572ae14620003b9578063d547741f14620003b3578063d6d8428d14620003ad578063d7050f0714620003a7578063db61d65c14620003a1578063e0eab988146200039b578063ebd7dc521462000395578063f24b150f146200038f578063f2d774e71462000389578063f2fde38b1462000383578063f86c5f89146200037d578063fb1f691714620003775763ffa1ad74146200037157600080fd5b62003025565b62002f96565b62002f6a565b62002ed0565b62002df3565b62002d66565b62002d1b565b62002a97565b620027e9565b620027ca565b6200279e565b62002754565b620026be565b62002680565b62002660565b62002527565b62002455565b620022e4565b620022b5565b62002268565b6200221e565b62002200565b620021cf565b62001f4f565b62001f11565b62001ee0565b62001ec0565b62001e5e565b62001db3565b62001d87565b620005bf565b62001a5f565b62001d5b565b62001d3a565b62001d0e565b62001c77565b62001c23565b62001bf7565b62001bcb565b62001a9e565b620017fc565b620017d0565b62001626565b62001562565b620014b8565b62001474565b62001449565b62001402565b620013d7565b62001309565b6200126c565b620010ff565b62000ef9565b62000ed9565b62000e8f565b62000e4a565b62000de5565b62000c29565b62000bf8565b62000a80565b62000a4b565b62000a27565b620009da565b620009a5565b6200069c565b620005ff565b620005df565b62000594565b3462000564576020366003190112620005645760043563ffffffff60e01b81168091036200056457602090637965db0b60e01b811490811562000552575b506040519015158152f35b6301ffc9a760e01b1490503862000547565b600080fd5b60009103126200056457565b6001600160a01b031690565b6001600160a01b03909116815260200190565b346200056457600036600319011262000564576033546040516001600160a01b039091168152602090f35b34620005645760003660031901126200056457602060fb54604051908152f35b34620005645760003660031901126200056457602060fe54604051908152f35b346200056457602036600319011262000564576200061f60043562005854565b005b6001600160a01b038116036200056457565b60243590620006428262000621565b565b60443590620006428262000621565b60643590620006428262000621565b3590620006428262000621565b604090600319011262000564576004356200068a8162000621565b90602435620006998162000621565b90565b346200056457620006ad366200066f565b620006b762004d30565b620006c28262004d87565b620006cd8162003c02565b620006d9813362004dae565b620006fa620006f382620006ed8562000d12565b62000d99565b5460ff1690565b62000993576020908162000718620007128562000d2d565b62004c4a565b015160fb5460405163c329217160e01b8082526000966001600160a01b03861696909490939284816004818c8c5af1801562000862576003918a9162000971575b50620007658162004941565b036200086857505060405163782aadff60e01b81526001600160a01b038416600482015260006024820152948291508590604490829089905af18015620008625760008051602062005e32833981519152946200081d9287926200082e575b50505b80620007d885620006ed8662000d48565b55620007fa620007ed85620006ed8662000d12565b805460ff19166001179055565b62000810846200080a8562000d63565b62004cd4565b6040519384938462004d0e565b0390a16200082b6001606555565b80f35b620008529250803d106200085a575b62000849818362000f9d565b81019062003633565b3880620007c4565b503d6200083d565b62003643565b604096919392965193845282846004818b865af180156200086257889485916200093d575b50620008998162004941565b620008be575b505050506200081d60008051602062005e3283398151915293620007c7565b8293965090620008e69160405197888094819363782aadff60e01b8352896004840162004c9a565b03925af18015620008625760008051602062005e32833981519152946200081d9287926200091b575b5050938591386200089f565b620009359250803d106200085a5762000849818362000f9d565b38806200090f565b620009629150843d861162000969575b62000959818362000f9d565b81019062004c82565b386200088d565b503d6200094d565b6200098c9150863d8811620009695762000959818362000f9d565b3862000759565b604051636adcde4b60e11b8152600490fd5b346200056457602036600319011262000564576200061f600435620009ca8162000621565b620009d462005207565b6200538f565b34620005645760203660031901126200056457600435620009fb8162000621565b62000a056200333b565b61010280546001600160a01b0319166001600160a01b03909216919091179055005b34620005645760003660031901126200056457602060ff8054166040519015158152f35b346200056457602036600319011262000564576200061f60043562000a708162000621565b62000a7a62005207565b6200525e565b34620005645762000a91366200066f565b9062000a9d8162004d87565b62000aa9823362004dae565b60018060a01b03908181169160009280845261010e60205260ff62000ad2866040872062000d99565b54161562000be65762000aea85620006ed8562000d12565b805460ff191690558362000b0386620006ed8662000d48565b55835261010d6020526040832090835b8254908181101562000bac5762000b2b818562000dc6565b905460039391841b1c84168885161462000b53575b5062000b4d9150620040fd565b62000b13565b600019810190811162000ba65762000b4d9262000b7285928762000dc6565b9054911b1c1662000b9262000b88838762000dc6565b81939154620042c6565b905562000b9f8462004dd5565b3862000b40565b62002636565b857ede109bef4619f7e2cf00c8e5a50ca55f8deb44f87087eed414a91dbf8d1d1b888762000be06040519283928362003be8565b0390a180f35b604051633048da7760e21b8152600490fd5b3462000564576020366003190112620005645760043560005260c96020526020600160406000200154604051908152f35b3462000564576000366003190112620005645760fb5462000c5a62000c5160fc54836200264c565b620f4240900490565b9062000c7762000c7162000c716101005462000575565b62000575565b90602060405180936302a64b8360e21b8252818062000c9a306004830162000581565b03915afa918215620008625762000ceb9362000cce62000c5162000cdb9562000cd59460009162000cef575b50856200264c565b9262003415565b62003415565b6040519081529081906020820190565b0390f35b62000d0b915060203d81116200085a5762000849818362000f9d565b3862000cc6565b6001600160a01b0316600090815261010e6020526040902090565b6001600160a01b0316600090815261010c6020526040902090565b6001600160a01b0316600090815261010b6020526040902090565b6001600160a01b0316600090815261010d6020526040902090565b6001600160a01b0316600090815261010a6020526040902090565b9060018060a01b0316600052602052604060002090565b634e487b7160e01b600052603260045260246000fd5b805482101562000ddf5760005260206000200190600090565b62000db0565b3462000564576040366003190112620005645760043562000e068162000621565b6024359060018060a01b0380911660005261010d60205260406000208054831015620005645760209262000e3a9162000dc6565b9190546040519260031b1c168152f35b3462000564576020366003190112620005645760043562000e6b8162000621565b60018060a01b031660005261010c6020526020600160406000200154604051908152f35b346200056457604036600319011262000564576200061f60243560043562000eb78262000621565b8060005260c960205262000ed36001604060002001546200306f565b6200326e565b346200056457602036600319011262000564576200061f60043562005463565b34620005645760003660031901126200056457602060fd54604051908152f35b634e487b7160e01b600052604160045260246000fd5b604081019081106001600160401b0382111762000f4b57604052565b62000f19565b606081019081106001600160401b0382111762000f4b57604052565b60c081019081106001600160401b0382111762000f4b57604052565b6001600160401b03811162000f4b57604052565b601f909101601f19168101906001600160401b0382119082101762000f4b57604052565b6040519061018082016001600160401b0381118382101762000f4b57604052565b6040519061012082016001600160401b0381118382101762000f4b57604052565b6040519060e082016001600160401b0381118382101762000f4b57604052565b6001600160401b03811162000f4b57601f01601f191660200190565b9291926200104d8262001023565b916200105d604051938462000f9d565b82948184528183011162000564578281602093846000960137010152565b9080601f83011215620005645781602062000699933591016200103f565b9190604083820312620005645760405190620010b58262000f2f565b8335825290928391602082013591906001600160401b0383116200056457602092620010e292016200107b565b910152565b801515036200056457565b35906200064282620010e7565b3462000564576003196080368201126200056457600435906001600160401b0390818311620005645761018090833603011262000564576200114062000fc1565b906200114f8360040162000662565b82526200115f6024840162000662565b60208301526044830135604083015260648301356060830152608483013560808301526200119060a4840162000662565b60a0830152620011a360c4840162000662565b60c083015260e48301358181116200056457620011c7906004369186010162001099565b60e0830152620011db610104840162000662565b61010083015261012483013581811162000564576200120190600436918601016200107b565b610120830152620012166101448401620010f2565b61014083015261016483013590811162000564576200061f9260046200124092369201016200107b565b6101608201526200125062000633565b6200125a62000644565b906200126562000653565b9262003c38565b346200056457604036600319011262000564576024356200128d8162000621565b336001600160a01b03821603620012ac576200061f906004356200331f565b60405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608490fd5b346200056457602036600319011262000564576004356200132a8162000621565b6001600160a01b03620013817f00000000000000000000000000000000000000000000000000000000000000008216620013673082141562003591565b8260008051602062005e92833981519152541614620035e2565b6200138b62003b7e565b33911603620013aa576200061f90620013a362003423565b90620036fd565b620013d3620013b862003b7e565b60405163163678e960e01b8152918291336004840162003be8565b0390fd5b346200056457602036600319011262000564576200061f600435620013fc8162000621565b620053dd565b34620005645760203660031901126200056457600435620014238162000621565b60018060a01b031660005261010a602052602060ff604060002054166040519015158152f35b346200056457602036600319011262000564576200061f6004356200146e8162000621565b62003c02565b346200056457602060ff620014ac6200148d366200066f565b6001600160a01b03909116600090815261010e85526040902062000d99565b54166040519015158152f35b60403660031901126200056457600435620014d38162000621565b6024356001600160401b0381116200056457366023820112156200056457620015079036906024816004013591016200103f565b6001600160a01b03620015447f00000000000000000000000000000000000000000000000000000000000000008216620013673082141562003591565b6200154e62003b7e565b33911603620013aa576200061f91620037c1565b346200056457600036600319011262000564577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03163003620015c05760405160008051602062005e928339815191528152602090f35b60405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c6044820152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b6064820152608490fd5b3462000564576020806003193601126200056457600480356200164862004d30565b6200165262004f49565b60005b620016603362000d63565b548110156200175457620016a062000c7162000c716200168b84620016853362000d63565b62000dc6565b905460039190911b1c6001600160a01b031690565b9084604051809363782aadff60e01b825281600081620016c489338c840162004c9a565b03925af180156200086257620016ec9260009162001732575b5080620016f2575b50620040fd565b62001655565b6200172962001720620017053362000d48565b620017196200168b86620016853362000d63565b9062000d99565b91825462003415565b905538620016e5565b6200174d9150863d88116200085a5762000849818362000f9d565b38620016dd565b7f576605f9bfe8911e7508bed3763c7c5c8eb3b86e8b360b90a4bc6abe1104cb7f620017c28362001797816200178d6101055462000575565b3090339062004e1b565b6001620017a43362000d2d565b01620017b282825462003415565b9055604051918291338362004c9a565b0390a16200061f6001606555565b34620005645760003660031901126200056457610102546040516001600160a01b039091168152602090f35b34620005645760208060031936011262000564576004908135906200182062004d30565b6200182a62004f49565b620018353362000d63565b906001936200185284866200184a3362000d2d565b015462004142565b60fb541162001a5057908492620018788533620018726101055462000575565b62004f67565b6000935b620018c2575b7f6ee2c70b2d6b89ae808a2313aab43e925c06624271419cd665d85cfa1ae04ff8620017c28688620018b43362000d2d565b01620017b282825462004142565b909192948154948587101562001a4757620018e26200168b888562000dc6565b95620018ee8762004f92565b15620019f657506040928484518098632ed04b2b60e01b8252816000816200191b888d3390840162004c9a565b03926001600160a01b03165af19687156200086257600097620019d2575b5062001959620019493362000d48565b620017196200168b8b8562000dc6565b549485881115620019865784516311423e6360e31b81528088018981526020810188905281906040010390fd5b9450949250948196620019c791620019bf620019b6620019a63362000d48565b620017196200168b868c62000dc6565b91825462004142565b9055620040fd565b93909291926200187c565b620019ee919750853d87116200085a5762000849818362000f9d565b953862001939565b9662001a41620019c7929762001a3662001a236200168b62001a1c889d9b999b62004122565b8b62000dc6565b62001a2f858b62000dc6565b9062004cb5565b620009d48862004dd5565b620040fd565b94509462001882565b604051634e23e81760e11b8152fd5b346200056457602062001a9562001a76366200066f565b6001600160a01b03909116600090815261010b84526040902062000d99565b54604051908152f35b34620005645762001aaf366200066f565b62001ab962004d30565b62001ac362005207565b62001ad862001ad460ff5460ff1690565b1590565b62001bb95762001afa62001ad4600262001af28562000d2d565b015460ff1690565b62001ba75781620017c262001b34620007127fb5946f249f8744efe9d14d49a483b54a589b1362944ff6694de93456cceb96a39562000d2d565b62001b3f8362005908565b62001b6062001b4e8462000d2d565b60026000918281558260018201550155565b62001b7862001b726101105462004122565b61011055565b62001b99602062001b8c6101055462000575565b9201918583519162004f67565b516040519384938462004d0e565b604051636a5cfb6d60e01b8152600490fd5b6040516365b1ee3960e11b8152600490fd5b34620005645760003660031901126200056457610103546040516001600160a01b039091168152602090f35b34620005645760003660031901126200056457610106546040516001600160a01b039091168152602090f35b34620005645760008060031936011262001c745762001c416200333b565b603380546001600160a01b0319811690915581906001600160a01b031660008051602062005eb28339815191528280a380f35b80fd5b3462000564576020366003190112620005645762001c9462005207565b6101075460405163068bcd8d60e01b81526004803590820152906001600160a01b03906000908390602490829085165afa91821562000862576200061f9260209160009162001ce8575b500151166200538f565b62001d07913d8091833e62001cfe818362000f9d565b8101906200516b565b3862001cde565b34620005645760003660031901126200056457602060405160008051602062005dd28339815191528152f35b34620005645760003660031901126200056457602061011054604051908152f35b34620005645760003660031901126200056457610101546040516001600160a01b039091168152602090f35b34620005645760003660031901126200056457610104546040516001600160a01b039091168152602090f35b3462000564576020366003190112620005645762001dd062005207565b6101075460405163068bcd8d60e01b8152600480359082015290600090829060249082906001600160a01b03165afa80156200086257602062000c719162001e249360009162001e41575b50015162000575565b62001e2f8162004f92565b62001e3657005b6200061f906200525e565b62001e57913d8091833e62001cfe818362000f9d565b3862001e1b565b34620005645760203660031901126200056457606060043562001e818162000621565b60018060a01b0380911660005261010c6020526040600020908154169060ff600260018301549201541690604051928352602083015215156040820152f35b34620005645760003660031901126200056457602060fc54604051908152f35b34620005645760003660031901126200056457602062001eff62003b7e565b6040516001600160a01b039091168152f35b34620005645760403660031901126200056457602060ff620014ac60243562001f3a8162000621565b60043560005260c98452604060002062000d99565b34620005645760208060031936011262000564576004356001600160401b038111620005645762001f859036906004016200107b565b62001f8f62004d30565b62001fa162000c716101005462000575565b9160fb5462001fb762000c5160fc54836200264c565b6040516302a64b8360e21b815290946001600160a01b0316919083818062001fe3306004830162000581565b0381865afa80156200086257620020099262000c5192600092620021ab575b506200264c565b906200201f62001ad4600262001af23362000d2d565b62002030575b6200061f6001606555565b6200204f6002620020413362000d2d565b01805460ff19166001179055565b60fb5494856001620020613362000d2d565b01556200209361010596620020888562000cd585620020818c5462000575565b9462003415565b903090339062004e1b565b806200217d575b5081620020ec575b50505060008051602062005f128339815191529150620020c962001b7261011054620033f7565b60fb54620020de60405192839233846200543d565b0390a1388080808062002025565b82620020fb6004965462000575565b9160405196878092634c3a1adf60e11b82525afa908115620008625760008051602062005f12833981519152956200213e9460009362002147575b505062004f67565b388080620020a2565b6200216c929350803d1062002175575b62002163818362000f9d565b81019062003b66565b90388062002136565b503d62002157565b620021a4906200218e875462000575565b60ff5460081c6001600160a01b03169062004f67565b386200209a565b620021c7919250863d88116200085a5762000849818362000f9d565b903862002002565b34620005645760003660031901126200056457602060405173eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee8152f35b34620005645760003660031901126200056457602060405160008152f35b346200056457602036600319011262000564576004356200223f8162000621565b60018060a01b031660005261010c602052602060ff600260406000200154166040519015158152f35b34620005645760203660031901126200056457600435620022898162000621565b620022936200333b565b61010180546001600160a01b0319166001600160a01b03909216919091179055005b3462000564576000366003190112620005645760ff5460405160089190911c6001600160a01b03168152602090f35b3462000564576000366003190112620005645761010380546001600160a01b031633819003620023a7576200239562000c717ffea29da7321ca6d0ee0a7359009bb9d4a57035aea0ef6cb4d062341f4a9615199362002347620023a294620031d5565b6200237e6200237862000c7161010693620023716200236b62000c71875462000575565b6200328a565b5462000575565b6200339d565b61010380546001600160a01b031916905562002371565b6040519182918262000581565b0390a1005b6040516375e686b760e11b8152600490fd5b90600182811c92168015620023eb575b6020831014620023d557565b634e487b7160e01b600052602260045260246000fd5b91607f1691620023c9565b60005b8381106200240a5750506000910152565b8181015183820152602001620023f9565b906020916200243681518092818552858086019101620023f6565b601f01601f1916010190565b906020620006999281815201906200241b565b34620005645760008060031936011262001c74576040518161010980546200247d81620023b9565b80855291600191808316908115620024f95750600114620024b9575b62000ceb85620024ac8189038262000f9d565b6040519182918262002442565b835260208084209095505b828410620024e5575050508162000ceb93620024ac92820101933862002499565b8054858501870152928501928101620024c4565b905062000ceb9650620024ac9450602092508593915060ff191682840152151560051b820101933862002499565b34620005645760008060031936011262001c74576200254562004d30565b6200254f62004f49565b6200255a3362005908565b33815261010c6020527fa13f4668aacb68c4e9eed8e3f6e1cbec3eca776896ec46b5eabcc3983fc8f5f46200081d604083206040516200259a8162000f51565b81546001600160a01b0316815260018201546020820190815260029092015460ff161515604090910152620025d362001b4e3362000d2d565b620025e8620025e23362000d63565b6200429f565b610110548062002620575b5062002611620026066101055462000575565b825190339062004f67565b51604051918291338362004c9a565b62001b726200262f9162004122565b38620025f3565b634e487b7160e01b600052601160045260246000fd5b8181029291811591840414171562000ba657565b346200056457600036600319011262000564576020604051620186a08152f35b346200056457602036600319011262000564576200061f600435620026a58162000621565b620026b860ff60005460081c1662003ae0565b620033bf565b34620005645760008060031936011262001c7457604051816101088054620026e681620023b9565b80855291600191808316908115620024f95750600114620027145762000ceb85620024ac8189038262000f9d565b835260208084209095505b82841062002740575050508162000ceb93620024ac92820101933862002499565b80548585018701529285019281016200271f565b346200056457604036600319011262000564576200061f6024356004356200277c8262000621565b8060005260c9602052620027986001604060002001546200306f565b6200331f565b34620005645760003660031901126200056457610107546040516001600160a01b039091168152602090f35b3462000564576000366003190112620005645760206040516127108152f35b34620005645760003660031901126200056457610105546040516001600160a01b039091168152602090f35b91908260809103126200056457604051608081016001600160401b0381118282101762000f4b5760405260608082948035845260208101356020850152604081013560408501520135910152565b359060038210156200056457565b600411156200056457565b3590620006428262002871565b91908260209103126200056457604051602081016001600160401b0381118282101762000f4b5760405291358252565b91908260c09103126200056457604051620028d48162000f6d565b60a08082948035620028e68162000621565b84526020810135620028f88162000621565b60208501526040810135604085015260608101356060850152608081013560808501520135910152565b6001600160401b03811162000f4b5760051b60200190565b81601f820112156200056457803591620029548362002922565b9262002964604051948562000f9d565b808452602092838086019260051b82010192831162000564578301905b82821062002990575050505090565b8380918335620029a08162000621565b81520191019062002981565b919091610220818403126200056457620029c562000fe2565b92620029d2818362002815565b8452620029e26080830162002863565b6020850152620029f560a083016200287c565b604085015262002a098160c0840162002889565b606085015262002a1d8160e08401620028b9565b608085015262002a316101a0830162000662565b60a085015262002a456101c0830162000662565b60c08501526101e082013560e08501526102008201356001600160401b038111620005645762002a7692016200293a565b610100830152565b9081526001600160a01b03909116602082015260400190565b3462000564576060366003190112620005645760043562002ab88162000621565b6001600160401b03602435818111620005645762002adb903690600401620029ac565b91604435828111620005645762002af790369060040162001099565b9062002b066101025462000575565b9062002b1962000c716101075462000575565b9262002b286101015462000575565b6033546040805163184b955960e01b60208201526001600160a01b039788166024820152928716604484015290861660648084019190915282529495601f199462002b7560848462000f9d565b86519261041091828501938585109085111762000f4b57849362002b9f93620059c28639620048b7565b03906000f08015620008625762002bba928688921662004b38565b948592919462002bce60c083015162000575565b161562002c76575b50829162002c6b9162002c3d62000ceb9551602081019062002c0b8162002bfe8b85620048db565b0385810183528262000f9d565b5190208551602081019062002c338162002c268c85620048f6565b0386810183528262000f9d565b5190209062004865565b835162002c6260208201928262002c558a86620048f6565b0390810183528262000f9d565b5190206200326e565b519283928362002a7e565b6101009192500192835151612710811162002d0257508251602081019062002ca48162002bfe8585620048db565b5190209260005b855187815183101562002cec57509062001a4162002cdf62002cd28362002ce6956200410d565b516001600160a01b031690565b876200326e565b62002cab565b9396509194509192915062000ceb905062002bd6565b835163107b111560e31b81526004810191909152602490fd5b34620005645760203660031901126200056457602060ff620014ac60043562002d448162000621565b60008051602062005dd283398151915260005260c98452604060002062000d99565b3462000564576080366003190112620005645760043562002d878162000621565b6024359062002d968262000621565b6001600160401b0391604435838111620005645762002dba903690600401620029ac565b90606435938411620005645762002dda62002de194369060040162001099565b9262004b38565b9062000ceb6040519283928362002a7e565b3462000564576003196020368201126200056457600435906001600160401b0390818311620005645760e0908336030112620005645762002e3362001003565b9062002e428360040162000662565b825262002e526024840162000662565b6020830152604483013560408301526064830135818111620005645762002e8090600436918601016200107b565b60608301526084830135608083015262002e9d60a48401620010f2565b60a083015260c483013590811162000564576200061f92600462002ec592369201016200107b565b60c08201526200559c565b3462000564576020366003190112620005645760043562002ef18162000621565b62002efb6200333b565b6001600160a01b0381161562002f16576200061f90620033bf565b60405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608490fd5b34620005645760003660031901126200056457610100546040516001600160a01b039091168152602090f35b346200056457602036600319011262000564577f6723d9f32d040ca8ddd4dabf6f03ad485e63fc3fd625ac1fa1c557de6719314f602060043562002fda8162000621565b62002fe462005207565b6001600160a01b038116600081815261010a8452604090205490919060ff1662003013575b50604051908152a1005b6200301e906200538f565b3862003009565b3462000564576000366003190112620005645762000ceb6040516200304a8162000f2f565b60038152620302e360ec1b60208201526040519182916020835260208301906200241b565b8060005260c960205260ff6200308a33604060002062000d99565b541615620030955750565b3390620030a16200344c565b916030620030af8462003469565b536078620030bd8462003477565b5360295b600181116200317457620013d36200312f6200315b866200314c620030f288620030ec8915620034a8565b620034f4565b62003128604051958694620031286020870160179076020b1b1b2b9b9a1b7b73a3937b61d1030b1b1b7bab73a1604d1b81520190565b90620031bc565b7001034b99036b4b9b9b4b733903937b6329607d1b815260110190565b03601f19810183528262000f9d565b60405162461bcd60e51b81529182916004830162002442565b90600f811690601082101562000ddf57620031b6916f181899199a1a9b1b9c1cb0b131b232b360811b901a620031ab848762003488565b5360041c916200349a565b620030c1565b90620031d160209282815194859201620023f6565b0190565b60008051602062005dd2833981519152600081815260c96020529060ff6200320d8460008051602062005ef283398151915262000d99565b5416156200321a57505050565b80825260c960205262003231836040842062000d99565b805460ff1916600117905533926001600160a01b0316917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9080a4565b60009080825260c960205260ff6200320d846040852062000d99565b60008051602062005dd2833981519152600081815260c96020529060ff620032c28460008051602062005ef283398151915262000d99565b5416620032ce57505050565b80825260c9602052620032e5836040842062000d99565b805460ff1916905533926001600160a01b0316917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9080a4565b60009080825260c960205260ff620032c2846040852062000d99565b6200334562003b7e565b336001600160a01b03909116036200335957565b606460405162461bcd60e51b815260206004820152602060248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152fd5b61010680546001600160a01b0319166001600160a01b03909216919091179055565b603380546001600160a01b039283166001600160a01b03198216811790925590911660008051602062005eb2833981519152600080a3565b906001820180921162000ba657565b906002820180921162000ba657565b9190820180921162000ba657565b604051602081016001600160401b0381118282101762000f4b5760405260008152906000368137565b604051906200345b8262000f51565b602a82526040366020840137565b80511562000ddf5760200190565b80516001101562000ddf5760210190565b90815181101562000ddf570160200190565b801562000ba6576000190190565b15620034b057565b606460405162461bcd60e51b815260206004820152602060248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152fd5b60405190608082016001600160401b0381118382101762000f4b5760405260428252606036602084013760306200352b8362003469565b536078620035398362003477565b536041905b60018211620035545762000699915015620034a8565b600f811690601082101562000ddf576200358a916f181899199a1a9b1b9c1cb0b131b232b360811b901a620031ab848662003488565b906200353e565b156200359957565b60405162461bcd60e51b815260206004820152602c602482015260008051602062005e5283398151915260448201526b19195b1959d85d1958d85b1b60a21b6064820152608490fd5b15620035ea57565b60405162461bcd60e51b815260206004820152602c602482015260008051602062005e5283398151915260448201526b6163746976652070726f787960a01b6064820152608490fd5b9081602091031262000564575190565b6040513d6000823e3d90fd5b156200365757565b60405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608490fd5b60809060208152602e60208201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960408201526d6f6e206973206e6f74205555505360901b60608201520190565b906200371960008051602062005e128339815191525460ff1690565b156200372b5750620006429062003885565b6040516352d1902d60e01b8152916020836004816001600160a01b0385165afa600093816200379c575b50620037765760405162461bcd60e51b815280620013d360048201620036ae565b6200379660008051602062005e928339815191526200064294146200364f565b62003917565b620037b991945060203d81116200085a5762000849818362000f9d565b923862003755565b90620037dd60008051602062005e128339815191525460ff1690565b15620037ef5750620006429062003885565b6040516352d1902d60e01b8152916020836004816001600160a01b0385165afa6000938162003860575b506200383a5760405162461bcd60e51b815280620013d360048201620036ae565b6200385a60008051602062005e928339815191526200064294146200364f565b620039cd565b6200387d91945060203d81116200085a5762000849818362000f9d565b923862003819565b803b15620038bc5760008051602062005e9283398151915280546001600160a01b0319166001600160a01b03909216919091179055565b60405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b90620039238262003885565b6001600160a01b03821660008051602062005ed2833981519152600080a2805115801590620039c4575b62003956575050565b620039c191600080604051936200396d8562000f51565b602785527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c6020860152660819985a5b195960ca1b6040860152602081519101845af4620039ba62003a14565b9162003a49565b50565b5060006200394d565b90620039d98262003885565b6001600160a01b03821660008051602062005ed2833981519152600080a280511580159062003a0b5762003956575050565b5060016200394d565b3d1562003a44573d9062003a288262001023565b9162003a38604051938462000f9d565b82523d6000602084013e565b606090565b9192901562003aae575081511562003a5f575090565b3b1562003a695790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b82519091501562003ac25750805190602001fd5b60405162461bcd60e51b8152908190620013d3906004830162002442565b1562003ae857565b60405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608490fd5b6200064290620026b860ff60005460081c1662003ae0565b5190620006428262000621565b90816020910312620005645751620006998162000621565b6033546001600160a01b0316803b62003b945790565b604051638da5cb5b60e01b8152602081600481855afa6000918162003bc3575b5062003bbe575090565b905090565b62003be091925060203d8111620021755762002163818362000f9d565b903862003bb4565b6001600160a01b0391821681529116602082015260400190565b6001600160a01b0316600090815261010a602052604090205460ff161562003c2657565b6040516346c26e4b60e01b8152600490fd5b919290926000549360ff8560081c16158095819662003d6b575b811562003d48575b501562003cec5762003c85938562003c7a600160ff196000541617600055565b62003cd1576200439a565b62003c8c57565b62003c9d61ff001960005416600055565b604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989080602081015b0390a1565b62003ce661010061ff00196000541617600055565b6200439a565b60405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608490fd5b303b1591508162003d5c575b503862003c5a565b6001915060ff16143862003d54565b600160ff821610915062003c52565b81811062003d86575050565b6000815560010162003d7a565b90601f821162003da1575050565b62000642916101086000526020600020906020601f840160051c8301931062003dd3575b601f0160051c019062003d7a565b909150819062003dc5565b90601f821162003dec575050565b62000642916101096000526020600020906020601f840160051c8301931062003dd357601f0160051c019062003d7a565b80519091906001600160401b03811162000f4b576101089062003e4c8162003e468454620023b9565b62003d93565b602080601f831160011462003e8b57508192939460009262003e7f575b50508160011b916000199060031b1c1916179055565b01519050388062003e69565b610108600052601f198316959091907f8543e9adbfbe1f62b7411fdf032fcfea758a7d6b332f64d971a1334c2ff364dd926000905b88821062003efb5750508360019596971062003ee1575b505050811b019055565b015160001960f88460031b161c1916905538808062003ed7565b8060018596829496860151815501950193019062003ec0565b80519091906001600160401b03811162000f4b576101099062003f438162003f3d8454620023b9565b62003dde565b602080601f831160011462003f7557508192939460009262003e7f5750508160011b916000199060031b1c1916179055565b610109600052601f198316959091907fd7f48d1c2d4fdcceabee32a4fd1437f382c65f0f9af09a878c95c20147dc06a8926000905b88821062003fca5750508360019596971062003ee157505050811b019055565b8060018596829496860151815501950193019062003faa565b60ff8054610100600160a81b03191660089290921b610100600160a81b0316919091179055565b602090818184031262000564578051906001600160401b0382116200056457019180601f8401121562000564578251620040448162002922565b9362004054604051958662000f9d565b818552838086019260051b82010192831162000564578301905b8282106200407d575050505090565b83809183516200408d8162000621565b8152019101906200406e565b60405190608082016001600160401b0381118382101762000f4b57604052600382526060366020840137565b90620040d18262002922565b620040e0604051918262000f9d565b8281528092620040f3601f199162002922565b0190602036910137565b600019811462000ba65760010190565b805182101562000ddf5760209160051b010190565b60001981019190821162000ba657565b60011981019190821162000ba657565b9190820391821162000ba657565b906000916101088054916200416583620023b9565b918282526001938481169081600014620041cc575060011462004189575b50505050565b90919394506000526020928360002092846000945b838610620041b757505050500101903880808062004183565b8054858701830152940193859082016200419e565b9294505050602093945060ff191683830152151560051b0101903880808062004183565b906040602062000699938051845201519181602082015201906200241b565b90815180825260208080930193019160005b82811062004230575050505090565b83516001600160a01b03168552938101939281019260010162004221565b906200069994926200428091835260a060208401526200427160a0840162004150565b908382036040850152620041f0565b6001600160a01b0390931660608201528083036080909101526200420f565b80546000825580620042af575050565b620006429160005260206000209081019062003d7a565b9060031b9160018060a01b03809116831b921b19161790565b8051906001600160401b03821162000f4b57600160401b821162000f4b5761010f9081548383558084106200434c575b50602080910191600052806000209060005b84811062004330575050505050565b83516001600160a01b0316838201559281019260010162004321565b620043669083600052846020600020918201910162003d7a565b386200430f565b909162000699928252606060208301526200438b6060830162004150565b916040818403910152620041f0565b9092620043a79062003b41565b620043b162004892565b620043bb620047fa565b620043c56200480d565b620043fb620043d962000c71835162000575565b61010780546001600160a01b0319166001600160a01b03909216919091179055565b6020620044316200440f8284015162000575565b61010580546001600160a01b0319166001600160a01b03909216919091179055565b604092838301805115620047e9575160fb5562004451606084015160fc55565b6200447562004464610140850151151590565b60ff8019815416911515161760ff55565b6200448561012084015162003e1d565b6200449561016084015162003f14565b620044ca620044a860a085015162000575565b61010080546001600160a01b0319166001600160a01b03909216919091179055565b620044e3620044dd60c085015162000575565b62003fe3565b62004518620044fb62000c7161010086015162000575565b62004506816200339d565b62004512600061011055565b620031d5565b6004826200452d62000c716101075462000575565b8651635ab1bd5360e01b815292839182905afa801562000862576200457991600091620047c7575b5061010480546001600160a01b0319166001600160a01b0392909216919091179055565b6000946200458e62000c716101065462000575565b95863b6200470957506200463790620045e1620045aa62004099565b97620045ca33620045bb8b62003469565b6001600160a01b039091169052565b620045bb620045da8a5162004122565b8a6200410d565b620045f630620045bb620045da8a5162004132565b83876200460a62000c716101045462000575565b60e06080890151980197600089518b5197889586948593633a92f65f60e01b85523091600486016200424e565b03925af191821562000862577f2f2ffcb06f8a1d35e2716f6b43ef2c19bfa76467d8f66964ae12c2583ed032059762004688620046b0946200468e93620046d298600092620046e7575b505060fe55565b620042df565b61010280546001600160a01b0319166001600160a01b03909216919091179055565b61010180546001600160a01b0319166001600160a01b03909216919091179055565b62003ccc60fe5491519251928392836200436d565b620047019250803d106200085a5762000849818362000f9d565b388062004681565b94929095969391835163a0e67e2b60e01b815286816004818c5afa968715620008625780976200479d575b50506200474c62004746875162003406565b620040c5565b9660005b875181101562004785578062001a416200477362002cd26200477f948c6200410d565b620045bb838d6200410d565b62004750565b50909294976200463792949650620045e190620045ca565b620047be9297503d8091833e620047b5818362000f9d565b8101906200400a565b94388062004734565b620047e29150843d8611620021755762002163818362000f9d565b3862004555565b84516363868c5560e11b8152600490fd5b6200064260ff60005460081c1662003ae0565b60008051602062005dd2833981519152600081815260c96020527fa867e09674d469ee17077111ff66261f5d2fc5820cc6914676cb47231da58819805490829055909160008051602062005df28339815191528380a4565b8060005260c9602052600160406000200190828254925560008051602062005df2833981519152600080a4565b620048b060ff60005460081c16620048aa8162003ae0565b62003ae0565b6001606555565b6001600160a01b03909116815260406020820181905262000699929101906200241b565b6029916810531313d5d31254d560ba1b825260098201520190565b602f916e20a62627aba624a9aa2fa0a226a4a760891b8252600f8201520190565b634e487b7160e01b600052602160045260246000fd5b9060038210156200493b5752565b62004917565b600411156200493b57565b9060048210156200493b5752565b61024062000699926020835262004993602084018251606080918051845260208101516020850152604081015160408501520151910152565b620049a7602082015160a08501906200492d565b620049bb604082015160c08501906200494c565b60608101515160e084015260808181015180516001600160a01b03908116610100878101919091526020830151909116610120870152604082015161014087015260608201516101608701529181015161018086015260a001516101a08501529060a08101516001600160a01b03166101c085015260c08101516001600160a01b03166101e085015260e08101516102008501520151916102208082015201906200420f565b929462004a969562004ab2939592855260018060a01b0396879182602098168888015260e0604088015260e08701906200241b565b921660608501526000608085015283820360a0850152620041f0565b9060c081830391015261010f9282845492838152019360005282600020926000915b83831062004ae457505050505090565b845481168652948101946001948501949092019162004ad4565b9081526001600160a01b0391821660208201529181166040830152909116606082015260a0608082018190526200069992910190620041f0565b9093919273eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee916001600160a01b03861662004c41575b602062004b97829683600062004b7f62000c716101075462000575565b9262004ba660fe54916040519687918983016200495a565b03601f19810187528662000f9d565b62004bc9886040519a8b97889687956370803ea560e11b87526004870162004a61565b03925af191821562000862577f778cac0ae0b66477341553a4a89398c61ccf448313d3354ad0ca85a5a825d2839360009362004c17575b5062003ccc90839760405194859430918662004afe565b62003ccc91935062004c399060203d81116200085a5762000849818362000f9d565b929062004c00565b85925062004b62565b9060405162004c598162000f51565b82546001600160a01b031681526001830154602082015260029092015460ff1615156040830152565b90816020910312620005645751620006998162002871565b6001600160a01b039091168152602081019190915260400190565b8054909262004cd0926001600160a01b0390911691620042c6565b9055565b805490600160401b82101562000f4b578162004cfa91600162004cd09401815562000dc6565b815491936001600160a01b031691620042c6565b6001600160a01b03918216815291166020820152604081019190915260600190565b60026065541462004d42576002606555565b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b6001600160a01b0316600090815261010c602052604090206002015460ff161562001ba757565b6001600160a01b0391821691160362004dc357565b60405163bbe7961160e01b8152600490fd5b8054801562004e0557600019019062004def828262000dc6565b81549060018060a01b039060031b1b1916905555565b634e487b7160e01b600052603160045260246000fd5b9062004e569062004e4762000642956040519586936323b872dd60e01b60208601526024850162004d0e565b03601f19810184528362000f9d565b60405162004eb3916001600160a01b031662004e728262000f2f565b6000806020958685527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656487860152868151910182855af1620039ba62003a14565b805182811591821562004f25575b505090501562004ece5750565b6084906040519062461bcd60e51b82526004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b6064820152fd5b8380929350010312620005645781015162004f4081620010e7565b80823862004ec1565b3360005261010c60205260ff600260406000200154161562001ba757565b62004e5662000642939262004e4760405194859263a9059cbb60e01b60208501526024840162004c9a565b6040519060208083018160006301ffc9a760e01b958684528660248201526024815262004fbf8162000f51565b51617530938685fa933d600051908662005072575b508562005067575b508462004ffd575b5050508162004ff1575090565b6200069991506200507e565b83945090600091839460405185810192835263ffffffff60e01b6024820152602481526200502b8162000f51565b5192fa60005190913d836200505b575b50508162005050575b50159038808062004fe4565b905015153862005044565b1015915038806200503b565b151594503862004fdc565b84111595503862004fd4565b6000602091604051838101906301ffc9a760e01b825263f1801e6160e01b602482015260248152620050b08162000f51565b5191617530fa6000513d82620050d3575b5081620050cc575090565b9050151590565b60201115915038620050c1565b91906040838203126200056457604051620050fb8162000f2f565b83518152602084015190938491906001600160401b0382116200056457019082601f830112156200056457815191620051348362001023565b9362005144604051958662000f9d565b8385526020848301011162000564576020926200516791848087019101620023f6565b0152565b90602082820312620005645781516001600160401b039283821162000564570160c081830312620005645760405192620051a58462000f6d565b815184526020820151620051b98162000621565b6020850152620051cc6040830162003b59565b60408501526060820151908111620005645760a092620051ee918301620050e0565b606084015260808101516080840152015160a082015290565b60008051602062005dd283398151915260005260c960205260ff6200523c3360008051602062005ef283398151915262000d99565b5416156200524657565b60405163fc4be72f60e01b8152336004820152602490fd5b6200526d620006f38262000d7e565b6200537d5762005281620007ed8262000d7e565b60405163b6c61f3160e01b81526001600160a01b03906020816004818686165afa90811562000862576000916200535a575b501680620052df575b5062003ccc60008051602062005e72833981519152916040519182918262000581565b90813b156200056457600060405180936306c0752d60e51b82528183816200530b876004830162000581565b03925af1908115620008625760008051602062005e728339815191529262003ccc926200533c575b509150620052bc565b806200534c620053539262000f89565b8062000569565b3862005333565b62005376915060203d8111620021755762002163818362000f9d565b38620052b3565b6040516325a2934b60e21b8152600490fd5b6001600160a01b0316600081815261010a6020908152604091829020805460ff1916905590519182527f09a1db4b80c32706328728508c941a6b954f31eb5affd32f236c1fd405f8fea491a1565b60407f83eac9fdaff0ac1017624b7eddeb9782e3d707cd894073cb7e8301a41c6e5cf8916200540b62005207565b61010380546001600160a01b0319166001600160a01b03928316908117909155610106548351921682526020820152a1565b62000699939260609260018060a01b03168252602082015281604082015201906200241b565b60207f5e2d447f427e49fd08832fd025a56589500352417199aa65728feaf05123e856916200549162005207565b6200549b620054a8565b8060fb55604051908152a1565b6101105480620054b55750565b60249060405190637d95539f60e11b82526004820152fd5b6040519060008261010991825492620054e684620023b9565b9081845260019485811690816000146200555b575060011462005514575b5050620006429250038362000f9d565b9093915060005260209081600020936000915b81831062005542575050620006429350820101388062005504565b8554888401850152948501948794509183019162005527565b9150506200064294506020925060ff191682840152151560051b820101388062005504565b604051906200064282620055948162004150565b038362000f9d565b620055a662005207565b6080810180519060fb5480921480159062005830575b80156200580a575b620056fb575b505060608101805160208151910120620055e362005580565b6020815191012003620056b1575b50604081015160fc5481036200569f575b506200564f62005616602083015162000575565b60ff54909290620056339060081c6001600160a01b031662000575565b6001600160a01b0393908482160362005664575b505162000575565b1680620056595750565b6200064290620053dd565b6200569581620023957f647672599d3468abcfa241a13c9e3d34383caadb5cc80fb67c3cdfcd5f7860599362003fe3565b0390a13862005647565b620056aa9062005854565b3862005602565b620056f181620056e37ff67fb6c95f41f58a276869ca2608214f0a6aab1c9ffe445affaa58680fddd497935162003e1d565b516040519182918262002442565b0390a138620055f1565b62005705620054a8565b51908103620057f8575b5060a081015115156200572d6200572860ff5460ff1690565b151590565b81151503620057a0575b5060c081018051602081519101206200574f620054cd565b602081519101200362005764575b80620055ca565b6200579681620056e37f8fd46764d9fde733a671bd3aa6710da0668b1c4eb78d33f42e104553ea4bc76e935162003f14565b0390a1386200575d565b620057ee81620057dc7f4ca826489011b9a44719ccfa206813b072bb58604af41f245a6a1a6d913588759360ff8019815416911515161760ff55565b60405190151581529081906020820190565b0390a13862005737565b620058039062005463565b386200570f565b5060c08301516020815191012062005821620054cd565b602081519101201415620055c4565b5060a08301511515620058496200572860ff5460ff1690565b9015151415620055bc565b6200585e62005207565b620186a081116200589a576020817f611668bfcf654a99c33cdb66c29ec37a5aae5c1287d2d9715a24e18cb4d806d69260fc55604051908152a1565b60405163fe925f7d60e01b8152600490fd5b9060405191828154918282526020928383019160005283600020936000905b828210620058e457505050620006429250038362000f9d565b85546001600160a01b031684526001958601958895509381019390910190620058cb565b9060009160018060a01b038116835261010d6020526040906200592d828520620058ac565b845b8151811015620059b9576200595162000c7162000c7162002cd284866200410d565b90813b15620059b5578685518093631914f67160e21b82528183816200597b8a6004830162000581565b03925af1918215620008625762005998926200599e5750620040fd565b6200592f565b806200534c620059ae9262000f89565b38620016e5565b8680fd5b50505050905056fe604060808152610410908138038061001681610218565b93843982019181818403126102135780516001600160a01b038116808203610213576020838101516001600160401b0394919391858211610213570186601f820112156102135780519061007161006c83610253565b610218565b918083528583019886828401011161021357888661008f930161026e565b813b156101b9577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b031916841790556000927fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b8480a28051158015906101b2575b61010b575b855160cb90816103458239f35b855194606086019081118682101761019e578697849283926101889952602788527f416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c87890152660819985a5b195960ca1b8a8901525190845af4913d15610194573d9061017a61006c83610253565b91825281943d92013e610291565b508038808080806100fe565b5060609250610291565b634e487b7160e01b84526041600452602484fd5b50826100f9565b855162461bcd60e51b815260048101859052602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608490fd5b600080fd5b6040519190601f01601f191682016001600160401b0381118382101761023d57604052565b634e487b7160e01b600052604160045260246000fd5b6001600160401b03811161023d57601f01601f191660200190565b60005b8381106102815750506000910152565b8181015183820152602001610271565b919290156102f357508151156102a5575090565b3b156102ae5790565b60405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606490fd5b8251909150156103065750805190602001fd5b6044604051809262461bcd60e51b825260206004830152610336815180928160248601526020868601910161026e565b601f01601f19168101030190fdfe60806040523615604157600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f35b3d90fd5b600080516020607683398151915254600090819081906001600160a01b0316368280378136915af43d82803e15603d573d90f3fe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbca2646970667358221220b9c533c5cbdc91d32688faca813a72cb34b28bff1b053c4cc32424f62e37a71f64736f6c6343000813003303be538b6391ddcd7f2649585cc95b120c9e2a613f70714fbb55345057d809fabd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd9143f56fa57e85e169a12200d12d9921ec069b52e688f6d309d9dab7bceff54614ec46756e6374696f6e206d7573742062652063616c6c6564207468726f756768203f008fd510eae7a9e7bee13513d7b83bef8003d488b5a3d0b0da4de71d6846f1360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0bc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3ba867e09674d469ee17077111ff66261f5d2fc5820cc6914676cb47231da588180bd09b1e448ffe881e884ac37014bf3e0274007308056b6469b50fa485542abfa2646970667358221220285a8aef9c43f9495b799fb7d2c7634c33f0b55a3538c767af0a9c88e478de3f64736f6c6343000813003338395c5dceade9603479b177b68959049485df8aa97b39f3533039af5f4561990000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d9081016040528093929190818152602001838380828437600081840152601f1937fa166cbdbfbb1561ccd9ea985ec0218b5e68502e230525f544285b2bdf3d7e01838380828437600081840152601f19601f820116905080830192505050505080601f0160208091040260200160405190810160405280939291908181526020a264697066735822122023009603406bd770f26d47d67b87f512fa04e7f7e714b54d6149d36ede74c62a64736f6c63430008130033","sourceMap":"334:8552:95:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;:::i;:::-;;;;;;;:::o;:::-;;;;;-1:-1:-1;;;;;334:8552:95;;:::o;:::-;-1:-1:-1;;;;;334:8552:95;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;20344:19:20;334:8552:95;;20303:22:20;;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;20303:22:20;;;;;;;;;:::i;:::-;334:8552:95;20293:33:20;;334:8552:95;;-1:-1:-1;;;;;;20344:19:20;;334:8552:95;20344:19:20;;334:8552:95;;;;;;;;;;;;20344:19:20;;334:8552:95;20303:22:20;334:8552:95;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;334:8552:95;20373:20:20;;;;;;;334:8552:95;;;192:59:18;;;;;;;;;20373:20:20;;;334:8552:95;20373:20:20;;;:::i;:::-;;;;;;;;;;334:8552:95;20373:20:20;;;334:8552:95;;;;;;;;;:::i;:::-;;;;20373:20:20;;;;;;:::i;:::-;;;:::i;:::-;;;;;;:::i;:::-;334:8552:95;;;20344:19:20;;;;;20303:22;20344:19;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;;:::o;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;:::o;:::-;;:::i;:::-;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;:::o;:::-;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;:::o;:::-;20303:22:20;334:8552:95;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;334:8552:95;;;;20303:22:20;334:8552:95;-1:-1:-1;;334:8552:95;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;334:8552:95;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;334:8552:95;;;;;59408:60:112;334:8552:95;;;;;;:::i;:::-;59434:33:112;59408:60;59434:33;;;;;:::i;:::-;334:8552:95;;-1:-1:-1;;;59408:60:112;;334:8552:95;;;;59408:60:112;;334:8552:95;;;;;;;;;;;;;;;;;59408:60:112;;;-1:-1:-1;;;;;;;;;;;59408:60:112;;;;;;;60164:147;59408:60;59491:25;59408:60;59858:1;;;;59408:60;;;334:8552:95;;59858:1:112;334:8552:95;;59491:25:112;;334:8552:95;;;59491:25:112;;;;;;;:::i;:::-;;20303:22:20;;59491:25:112;;;;;;:::i;:::-;334:8552:95;;-1:-1:-1;;;60164:147:112;;334:8552:95;;;;;;;;60164:147:112;;;:::i;:::-;;;-1:-1:-1;;;;;334:8552:95;60164:147:112;;;;;;60140:219;60164:147;59858:1;60164:147;;;334:8552:95;;;;:::i;:::-;60140:219:112;;:::i;:::-;334:8552:95;60164:147:112;;;;59491:25;60164:147;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;59408:60;59491:25;59408:60;;59858:1;59408:60;;;59491:25;59408:60;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;-1:-1:-1;59408:60:112;;;;-1:-1:-1;59408:60:112;;;;;;;334:8552:95;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;718:28:112;334:8552:95;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;:::i;:::-;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;1817:38:93;334:8552:95;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;306:4:15;334:8552:95;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;975:74:112;334:8552:95;;;;;:::i;:::-;1022:25:112;;:::i;:::-;975:74;;:::i;334:8552:95:-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;:::o;:::-;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;2563:16:22;334:8552:95;;;;;;;;;2563:16:22;334:8552:95;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20303:22:20;334:8552:95;-1:-1:-1;;334:8552:95;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;3485:19:22;334:8552:95;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;817:8:111;334:8552:95;;;;;;;;;-1:-1:-1;;334:8552:95;;;;2372:71:93;334:8552:95;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;334:8552:95;;;;-1:-1:-1;334:8552:95;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;334:8552:95;4206:51:93;334:8552:95;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:::o;:::-;4206:51:93;-1:-1:-1;334:8552:95;;;-1:-1:-1;;;;;;;;;;;334:8552:95;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;2328:37:93;334:8552:95;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;2328:37:93;334:8552:95;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;2239:32:93;334:8552:95;;;;;;;;;;;;;;;;;;;;644:109:111;334:8552:95;;;;;;644:109:111;334:8552:95;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;:::i;:::-;644:109:111;334:8552:95;;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3331:16:22;334:8552:95;;;;;;;;;3331:16:22;334:8552:95;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;874:7:111;334:8552:95;;;;;;;;;;;;;;;;;;;;;3038:18:22;334:8552:95;;;;;;;;;3038:18:22;334:8552:95;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;;1426:16:15;;:::i;:::-;334:8552:95;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;;828:25:112;334:8552:95;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;6469:19:111;334:8552:95;;;;;:::i;:::-;;;-1:-1:-1;;;6469:19:111;;334:8552:95;;;;;-1:-1:-1;;;;;334:8552:95;6469:19:111;;;;;;-1:-1:-1;6469:19:111;;;334:8552:95;;;;;;;;;6469:19:111;;;;;;;;;;;;;;;:::i;:::-;;;334:8552:95;;;;;;;;;661:63:23;6469:19:111;;;;;-1:-1:-1;6469:19:111;;334:8552:95;;-1:-1:-1;;334:8552:95;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;1862:66:93;334:8552:95;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;-1:-1:-1;;;;;;334:8552:95;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;2883:26:22;334:8552:95;;;;:::i;:::-;;;;;;;:::i;:::-;;;;2883:26:22;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;192:59:18;334:8552:95;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;;;;334:8552:95;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;334:8552:95;192:59:18;;334:8552:95;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;334:8552:95;192:59:18;;334:8552:95;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;;;;334:8552:95;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;334:8552:95;192:59:18;;334:8552:95;:::i;:::-;;;;;;;;;;;;;;;;192:59:18;;;;334:8552:95;:::i;:::-;;;;;;;;192:59:18;334:8552:95;192:59:18;;;;;;334:8552:95;:::i;:::-;;;;;;;;;;;;;;;;;;;;;192:59:18;;334:8552:95;192:59:18;;;;334:8552:95;:::i;:::-;-1:-1:-1;;;;;;334:8552:95;;;;192:59:18;;334:8552:95;;;;192:59:18;;;;;334:8552:95;:::i;:::-;;;;;;;192:59:18;;;;;334:8552:95;:::i;:::-;;;;;;192:59:18;;334:8552:95;;;;;192:59:18;;;;;334:8552:95;:::i;:::-;;192:59:18;;;334:8552:95;:::i;:::-;;;192:59:18;;334:8552:95;192:59:18;;334:8552:95;:::i;:::-;;;192:59:18;;;334:8552:95;:::i;:::-;;;192:59:18;;334:8552:95;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;689:23:112;334:8552:95;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;334:8552:95;;;;;59668:6:112;334:8552:95;;;;;;:::i;:::-;59626:11:112;334:8552:95;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;59668:6:112;:::i;334:8552:95:-;;;;;;;;;;;;;2900:16:15;;:::i;:::-;334:8552:95;;:::i;:::-;20344:19:20;334:8552:95;;20303:22:20;;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;20344:19:20:-;;334:8552:95;20303:22:20;334:8552:95;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;334:8552:95;20373:20:20;;;;;;;334:8552:95;;;192:59:18;;;;;;;;;20373:20:20;;;334:8552:95;20373:20:20;;;:::i;:::-;;;;;;;;;;334:8552:95;20373:20:20;2926:32:15;20373:20:20;;;334:8552:95;2926:32:15;;;;:::i;:::-;;:::i;:::-;2968;20537:20:20;334:8552:95;;:::i;:::-;20537:20:20;:::i;:::-;2968:32:15;;;;:::i;:::-;334:8552:95;;;;;;;:::i;20373:20:20:-;;;;;;:::i;:::-;;;;20344:19;;;;;20303:22;20344:19;;;;;;;;;:::i;:::-;;;;;334:8552:95;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;;788:34:112;334:8552:95;;;;;;;;;;;;;;;;;;;;2094:16:15;;:::i;:::-;334:8552:95;;:::i;:::-;20344:19:20;334:8552:95;;20303:22:20;;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;20344:19:20:-;;334:8552:95;20303:22:20;334:8552:95;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;334:8552:95;20373:20:20;;;;;;;334:8552:95;;;192:59:18;;;;;;;;;20373:20:20;;;334:8552:95;20373:20:20;;;:::i;:::-;;;;;;;;;;334:8552:95;20373:20:20;2120:29:15;20373:20:20;;;2120:29:15;;;;:::i;:::-;2159;20537:20:20;334:8552:95;;:::i;20344:19:20:-;;;;;20303:22;20344:19;;;;;;;;;:::i;:::-;;;;;334:8552:95;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;2049:33:93;334:8552:95;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;1934:20:93;334:8552:95;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;2707:18:22;334:8552:95;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;2707:18:22;334:8552:95;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;334:8552:95;;;:::o;:::-;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;:::i;:::-;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;2201:31:93;334:8552:95;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;753:29:112;334:8552:95;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;3190:18:22;334:8552:95;;;;:::i;:::-;;;;;;;:::i;:::-;;;;3190:18:22;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;192:59:18;;334:8552:95;192:59:18;;;;334:8552:95;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;1988:27:93;334:8552:95;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;4445:42:9;334:8552:95;;;;;;;;;;;;;;;;3712:16:15;;:::i;:::-;334:8552:95;;:::i;:::-;20344:19:20;334:8552:95;;20303:22:20;;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;20344:19:20:-;;334:8552:95;20303:22:20;334:8552:95;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;334:8552:95;20373:20:20;;;;;;;334:8552:95;;;192:59:18;;;;;;;;;20373:20:20;;;334:8552:95;20373:20:20;;;:::i;:::-;;;;;;;;;;334:8552:95;20373:20:20;3738:32:15;20373:20:20;;;3738:32:15;;;;:::i;:::-;3780;20537:20:20;334:8552:95;;:::i;20344:19:20:-;;;;;20303:22;20344:19;;;;;;;;;:::i;:::-;;;;;334:8552:95;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;-1:-1:-1;334:8552:95;;;:::o;:::-;;:::i;:::-;;;;;;;;;:::o;:::-;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;2273:18:22;334:8552:95;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;2273:18:22;334:8552:95;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;:::i;:::-;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;:::i;:::-;;;;;;;;;;;;;3811:3:93;334:8552:95;;;;;:::i;:::-;;;;3811:3:93;:::i;:::-;334:8552:95;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;;;;596:42:112;334:8552:95;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;;;;507:42:112;334:8552:95;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;20344:19:20:-;;334:8552:95;;;-1:-1:-1;;;;;;;;;;;20344:19:20;;;;;;;;;;;;;;;;334:8552:95;20373:20:20;;;;;;;334:8552:95;;;192:59:18;;;;;;;;;20373:20:20;;;334:8552:95;20373:20:20;;;:::i;:::-;;;;;;;;;;334:8552:95;20373:20:20;;;334:8552:95;-1:-1:-1;334:8552:95;;;;;-1:-1:-1;;;;;334:8552:95;;;:::i;20373:20:20:-;;;;;;:::i;:::-;;;;20344:19;;;;;334:8552:95;20344:19:20;;;;;;;;;:::i;:::-;;;;;334:8552:95;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;;;;;;;;;;;;;57360:15:112;334:8552:95;;;;;;192:59:18;;;57352:24:112;;;334:8552:95;;57352:24:112;334:8552:95;57352:24:112;;;;334:8552:95;;;;;;;;57352:24:112;;334:8552:95;;;-1:-1:-1;;;;;;;;;;;57352:24:112;;;;;;;;;57335:41;57352:24;;;;;334:8552:95;-1:-1:-1;57335:41:112;1590:14:16;;-1:-1:-1;;;;;;1590:14:16;-1:-1:-1;;;;;334:8552:95;;;;1590:14:16;;;;;;;57335:41:112;334:8552:95;57335:41:112;334:8552:95;;:::i;:::-;57386:42:112;;;;;;334:8552:95;;-1:-1:-1;;;57386:42:112;;;-1:-1:-1;;;;;334:8552:95;;;57386:42:112;;;334:8552:95;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;192:59:18;;334:8552:95;;;;;;57386:42:112;;;;;;;;;;;;334:8552:95;;;;;;;;57443:20:112;334:8552:95;57451:11:112;334:8552:95;;:::i;:::-;57443:20:112;:::i;:::-;334:8552:95;57443:34:112;57439:1248;;334:8552:95;;;;57451:11:112;334:8552:95;;:::i;:::-;;;;;;;;:::i;57439:1248:112:-;57516:25;;;:::i;:::-;57556:39;57573:22;57581:13;;:::i;57573:22::-;57556:39;1590:14:16;;-1:-1:-1;;;;;;1590:14:16;-1:-1:-1;;;;;334:8552:95;;;;1590:14:16;;;;;;;57556:39:112;334:8552:95;57609:42:112;;;;;334:8552:95;;57609:42:112;;;;;;;;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;57609:42:112;;;;;;;;;;;;57827:77;57609:42;;;;;57439:1248;334:8552:95;;57556:39:112;334:8552:95;;:::i;:::-;;;;:::i;:::-;;;;;;192:59:18;;;;;;;;;;57827:77:112;;;;;:::i;:::-;;;;;;;;;;57919:40;57827:77;;;;;57439:1248;-1:-1:-1;;57451:11:112;334:8552:95;;-1:-1:-1;;;;;;334:8552:95;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;57919:40:112;58131:20;334:8552:95;57451:11:112;334:8552:95;;:::i;58131:20:112:-;58122:45;;;;;;334:8552:95;;58122:45:112;;;-1:-1:-1;;;;;334:8552:95;;;58122:45:112;;;334:8552:95;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;58122:45:112;;;;;;;;;;57439:1248;58243:16;;;:::i;:::-;58309:35;334:8552:95;57335:41:112;334:8552:95;;:::i;:::-;58309:35:112;;;:::i;:::-;58358:63;;;;:::i;:::-;58378:42;334:8552:95;;;58358:63:112;58435;;;;:::i;:::-;58455:42;334:8552:95;;;58435:63:112;58548:17;334:8552:95;57451:11:112;334:8552:95;;:::i;58548:17:112:-;:92;;;;;;334:8552:95;;;;192:59:18;;;;;;;;;58548:92:112;;;;;:::i;:::-;;;;;;;;;;334:8552:95;58548:92:112;;;57439:1248;;;;;;;58548:92;;;;;;:::i;:::-;;;;58122:45;;;;;;:::i;:::-;;;;;334:8552:95;;;57827:77:112;;;;;;-1:-1:-1;57827:77:112;;;;;;:::i;:::-;;;;;57609:42;;;;;;:::i;:::-;;;;;334:8552:95;;;57386:42:112;;;;;;:::i;:::-;;;;57352:24;;;;;;;;;;;;;;:::i;:::-;;;;334:8552:95;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;:::i;:::-;;;:::i;:::-;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;2421:18:22;334:8552:95;;;;;;;;;2421:18:22;334:8552:95;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;-1:-1:-1;;;1058:7:111;334:8552:95;1590:14:16;;;334:8552:95;5621:12:111;;;334:8552:95;;;;;5724:17:111;5758:5;;;334:8552:95;6248:103:111;6249:94;6250:82;334:8552:95;6277:54:111;334:8552:95;6321:9:111;6278:38;6251:21;334:8552:95;;6251:21:111;;:::i;:::-;334:8552:95;6296:19:111;6278:14;334:8552:95;;6278:14:111;:::i;:::-;6296:19;;:::i;:::-;6278:38;;:::i;:::-;6321:9;;:::i;:::-;6277:54;;:::i;:::-;6250:82;;:::i;:::-;6249:94;:::i;:::-;334:8552:95;;964:8:111;;5751:215;334:8552:95;;5783:5:111;;;5787:1;;5817:10;;;;:::i;:::-;334:8552:95;;5779:177:111;;;5751:215;;;;5779:177;5901:16;;;;;5935:6;5901:16;;:::i;:::-;5935:6;;:::i;:::-;5779:177;;;;334:8552:95;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;20344:19:20;334:8552:95;;;20303:22:20;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;:::-;;;;;;;;;;;;;;;;2278:44:93;334:8552:95;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2278:44:93;334:8552:95;;;;-1:-1:-1;;;;;;;;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;334:8552:95;;;;;;800:28:17;334:8552:95;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;1016:26:29;334:8552:95;;;;;;;;;;;;;;;;;;;:::i;:::-;1440:1:15;334:8552:95;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;681:1:112;334:8552:95;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;3604:1:111;334:8552:95;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;:::i;:::-;;;2977:1:15;334:8552:95;;;;;;;:::o;:::-;;;58442:1:112;334:8552:95;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::o;:::-;-1:-1:-1;;;;;334:8552:95;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;:::o;192:59:18:-;;;;;;;;;;;:::o;:::-;334:8552:95;;192:59:18;;;;;;;1243:204;1302:7;334:8552:95;;;;;;;1325:14:18;:::o;1298:143::-;334:8552:95;;;192:59:18;;;1377:39;;;334:8552:95;192:59:18;334:8552:95;-1:-1:-1;;;;;;;;;;;1377:39:18;;;;334:8552:95;192:59:18;;;;;;334:8552:95;1377:39:18;;;;;;;-1:-1:-1;1377:39:18;;;1298:143;1377:53;;;1370:60;:::o;1377:39::-;;;;;;;;;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;334:8552:95;;;;;;;;;;;;;:::i;:::-;;;:::o;291:59:20:-;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;334:8552:95;;;;;291:59:20;;;;;;;;;;;;;:::i;20158:242::-;;334:8552:95;;20303:22:20;;;334:8552:95;20303:22:20;334:8552:95;;;;;:::i;20303:22:20:-;334:8552:95;20293:33:20;;334:8552:95;;-1:-1:-1;;;;;;20344:19:20;;;;;334:8552:95;;;20293:33:20;;;-1:-1:-1;;;;;;;;;;;334:8552:95;20303:22:20;334:8552:95;;;;20344:19:20;;;;;;;-1:-1:-1;20344:19:20;;;20158:242;20337:26;;20373:20;;;;;;;334:8552:95;-1:-1:-1;334:8552:95;;;;192:59:18;;;;;;;;;20373:20:20;;20344:19;20373:20;;;:::i;:::-;;;;;;;;;;;20158:242;:::o;20373:20::-;;;;;;:::i;20344:19::-;;;;20303:22;20344:19;;;;;;;;;:::i;:::-;;;;334:8552:95;;;;;;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;334:8552:95;;-1:-1:-1;334:8552:95;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;1590:14:16;;;;;;;;:::o;:::-;-1:-1:-1;334:8552:95;4052:25:93;334:8552:95;;;;;1590:14:16;334:8552:95;1590:14:16;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;-1:-1:-1;1590:14:16;;;;;;;;;;;;:::o;:::-;-1:-1:-1;334:8552:95;4206:51:93;334:8552:95;;;;;1590:14:16;334:8552:95;1590:14:16;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;-1:-1:-1;1590:14:16;;;;;334:8552:95;;1590:14:16;;;-1:-1:-1;;;;;1590:14:16;;;;;;;4052:25:93;1590:14:16;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;334:8552:95;1590:14:16;;;4052:25:93;1590:14:16;:::o;:::-;;;;-1:-1:-1;1590:14:16;;;;;4052:25:93;334:8552:95;;-1:-1:-1;;1590:14:16;;;20303:22:20;;;-1:-1:-1;;;;;;;;;;;1590:14:16;;;;;;;;;;;;334:8552:95;1590:14:16;;;;;;;;;;;;4052:25:93;1590:14:16;:::o;:::-;;;;;;;;;;334:8552:95;1590:14:16;;;;;;;;;;;334:8552:95;1590:14:16;;;;;;;;;;;;;;;;;;;334:8552:95;;1590:14:16;;;-1:-1:-1;;;;;1590:14:16;;;;;;;4206:51:93;1590:14:16;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;334:8552:95;1590:14:16;;;4206:51:93;1590:14:16;:::o;:::-;;;;-1:-1:-1;1590:14:16;;;;;4206:51:93;334:8552:95;;-1:-1:-1;;1590:14:16;;;20303:22:20;;;-1:-1:-1;;;;;;;;;;;1590:14:16;;;;;;;;;;;;334:8552:95;1590:14:16;;;;;;;;;;;;4206:51:93;1590:14:16;:::o;:::-;;;;;;;;;;334:8552:95;1590:14:16;;;;;;;;;;;334:8552:95;1590:14:16;;;;;;;;;;;;;;;;;;;334:8552:95;;;;;;:::i;:::-;1590:14:16;334:8552:95;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;334:8552:95;;;;;;:::i;:::-;1590:14:16;334:8552:95;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;334:8552:95;;;;;;:::i;:::-;1590:14:16;334:8552:95;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;334:8552:95;;;;;;:::i;:::-;1590:14:16;334:8552:95;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;334:8552:95;;;;;;:::i;:::-;1590:14:16;334:8552:95;;-1:-1:-1;;;1590:14:16;;;;:::o;:::-;334:8552:95;;;;;;:::i;:::-;1590:14:16;334:8552:95;;-1:-1:-1;;;1590:14:16;;;;:::o;3903:12267:93:-;334:8552:95;2732:6:93;334:8552:95;;:::i;:::-;;-1:-1:-1;;;;;;;;;;;3964:31:93;;;;;;334:8552:95;;-1:-1:-1;;;3964:31:93;;;;;;334:8552:95;;;;3964:31:93;;;;;;:::i;:::-;;;;;;;;;;;;;3903:12267;334:8552:95;;;4006:82:93;;3903:12267;4119:16;4489:4;4119:16;;:::i;:::-;4146:50;4156:40;4170:25;1590:14:16;;:::i;:::-;4170:25:93;:::i;:::-;4156:40;;:::i;:::-;4146:50;1590:14:16;;4146:50:93;1590:14:16;4218:39:93;4234:22;1590:14:16;;:::i;4234:22:93:-;4218:39;;:::i;:::-;1590:14:16;:::i;:::-;4267:56:93;4276:47;4293:29;1590:14:16;;:::i;4293:29:93:-;4276:47;;:::i;:::-;2732:6;1590:14:16;;-1:-1:-1;;;;;;1590:14:16;-1:-1:-1;;;;;334:8552:95;;;;1590:14:16;;;;;;;4267:56:93;4334:35;1590:14:16;;:::i;:::-;334:8552:95;;:::i;:::-;4334:35:93;;:::i;:::-;4379:34;334:8552:95;2732:6:93;334:8552:95;;:::i;:::-;1590:14:16;;:::i;:::-;4379:34:93;:::i;:::-;4423:37;4146:50;334:8552:95;1590:14:16;;:::i;:::-;4423:37:93;:::i;4489:4::-;16145:18;;;;;334:8552:95;;3964:31:93;334:8552:95;;192:59:18;;;;;;;16145:18:93;;;;;;;;;;3903:12267;:::o;16145:18::-;334:8552:95;;;4006:82:93;1590:14:16;;;:::i;:::-;4006:82:93;;;3964:31;;;;;;:::i;:::-;;;;661:63:23;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;:::i;878:140::-;334:8552:95;;-1:-1:-1;;;984:27:23;;334:8552:95;984:27:23;;334:8552:95;;;;984:27:23;;878:140;984:27;;;;:::i;:::-;;;-1:-1:-1;;;;;;;;;;;984:27:23;;;;;;;-1:-1:-1;984:27:23;;;977:34;878:140;:::o;984:27::-;;;;;;;;;;;;;;:::i;334:8552:95:-;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;1817:150:23:-;334:8552:95;;-1:-1:-1;;;1931:29:23;;334:8552:95;1931:29:23;;334:8552:95;;;;1931:29:23;;1817:150;1931:29;;;;:::i;:::-;;;-1:-1:-1;;;;;;;;;;;1931:29:23;;;;;;;;;;;1924:36;1817:150;:::o;1931:29::-;;;;;;;;;;;;:::i;:::-;;;;;:::i;2141:146::-;334:8552:95;;-1:-1:-1;;;2250:30:23;;334:8552:95;2250:30:23;;334:8552:95;;;;2250:30:23;;2141:146;2250:30;;;;:::i;:::-;;;-1:-1:-1;;;;;;;;;;;2250:30:23;;;;;;;-1:-1:-1;2250:30:23;;;2243:37;2141:146;:::o;2250:30::-;;;;;;;;;;;;;;:::i;7546:145:32:-;7629:54;334:8552:95;7546:145:32;334:8552:95;7546:145:32;334:8552:95;;7629:54:32;;;;;;;;;;334:8552:95;7629:54:32;;;334:8552:95;;;;;;:::i;:::-;;;;;;7629:54:32;20303:22:20;;7629:54:32;;;;;;:::i;:::-;1222:159;1007:380;;1222:159;334:8552:95;;1222:159:32;;591:42;1222:159;;;1007:380::o;7846:150::-;;7935:53;334:8552:95;7846:150:32;7935:53;334:8552:95;;7935:53:32;;;;;;;;;;;;;;:::i;8147:145::-;8230:54;334:8552:95;8147:145:32;334:8552:95;8147:145:32;334:8552:95;;8230:54:32;;;;;;;;;;334:8552:95;8230:54:32;;;334:8552:95;;;;;;:::i;:::-;-1:-1:-1;;;;;334:8552:95;;;;;;;;8230:54:32;-1:-1:-1;;8230:54:32;;;;;;:::i;3078:305:93:-;334:8552:95;;-1:-1:-1;334:8552:95;3200:15:93;334:8552:95;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;3200:15:93;-1:-1:-1;334:8552:95;;-1:-1:-1;334:8552:95;;-1:-1:-1;334:8552:95;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;334:8552:95;;;;3389:276:93;334:8552:95;;-1:-1:-1;;;3484:16:93;;;;-1:-1:-1;;;;;;;;;;;334:8552:95;3484:16:93;334:8552:95;3484:16:93;334:8552:95;;3484:16:93;;;;;;3620:17;3484:16;;;;;;;3389:276;334:8552:95;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;:::i;:::-;;;192:59:18;;;;;;;;3620:17:93;;3484:16;3620:17;;;:::i;:::-;;;;;;;;;;;;;;3647:11;;3389:276;:::o;3620:17::-;;;;;;;;;;;;;:::i;3484:16::-;;;;;;;;;;;;;;:::i;:::-;;;;;334:8552:95;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;:::o;:::-;-1:-1:-1;;;334:8552:95;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;1058:7:111;334:8552:95;;;;;;;;;;;;;;;:::o;:::-;;:::i;:::-;;;;;;;;;2445:1;334:8552;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;:::o;:::-;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;20303:22:20;334:8552:95;20303:22:20;;334:8552:95;;:::i;:::-;;;-1:-1:-1;334:8552:95;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;:::o;:::-;-1:-1:-1;;;334:8552:95;;;;;-1:-1:-1;334:8552:95;;:::o;:::-;;2604:1;334:8552;;;;;;;:::o;:::-;;8286:2;334:8552;;;;;;;:::o;:::-;8248:1;334:8552;;;8248:1;334:8552;;;:::o;:::-;8314:1;334:8552;;;8314:1;334:8552;;;:::o;:::-;;;;;;;;;;:::o;422:4865::-;334:8552;;;;;;630:27;;;;-1:-1:-1;;;;;630:27:95;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;812:66;836:41;334:8552;;:::i;812:66::-;;913:58;937:33;334:8552;;:::i;913:58::-;;334:8552;;1010:21;;;2269:76;334:8552;1770:103;1010:21;334:8552;1010:21;;;334:8552;;-1:-1:-1;;;334:8552:95;;;;;;1010:21;20303:22:20;1010:21:95;20303:22:20;;1010:21:95;;;;;;;;:::i;:::-;334:8552;;1793:74;334:8552;;1632:101;334:8552;1632:101;1110:67;334:8552;1134:42;334:8552;;:::i;1134:42::-;1110:67;;:::i;:::-;334:8552;;192:59:18;;;;;;1632:101:95;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;1793:74;:::i;:::-;334:8552;;1770:103;;;;;;334:8552;;:::i;:::-;;;:::i;:::-;;:::i;:::-;1770:103;;;;;;;;:::i;:::-;334:8552;2298:46;334:8552;;:::i;2298:46::-;2269:76;;:::i;:::-;334:8552;2399:48;2411:35;334:8552;;2411:35;:::i;:::-;2399:48;:::i;:::-;2462:13;630:27;2514:3;334:8552;;2477:35;;;;;2652:27;;2514:3;2652:27;;;:::i;:::-;;2533:195;5778:687;;;:::i;:::-;2561:5;;;;;;:::i;:::-;2596;2533:195;2596:9;:5;;;:::i;:::-;:9;:::i;:::-;2533:195;;:::i;:::-;;;;:::i;:::-;;2514:3;:::i;:::-;2462:13;;2477:35;;;;;;;;;;630:27;2748:541;2805:3;334:8552;;2768:35;;;;;2922:27;;;;:::i;:::-;334:8552;-1:-1:-1;;;;;334:8552:95;2978:5;;;:::i;:::-;2951:33;;;;:::i;:::-;;2899:86;;;:::i;:::-;334:8552;;;2855:153;;;;;;334:8552;;;:::i;:::-;;;;:::i;:::-;;;;:::i;:::-;2855:153;;;;;;;;;;:::i;:::-;3154:27;;;;:::i;:::-;334:8552;-1:-1:-1;;;;;334:8552:95;3210:5;;;:::i;:::-;:9;;;:::i;:::-;3183:37;;;;:::i;:::-;;3131:90;;;:::i;:::-;334:8552;;;3067:197;;;;;;334:8552;;;:::i;:::-;;;;:::i;:::-;;;;:::i;:::-;3067:197;;;;;;;;;;:::i;:::-;2805:3;;;;:::i;:::-;2753:13;;;2768:35;4973:4;2768:35;;4905:44;2768:35;;;334:8552;2768:35;;4922:21;334:8552;2768:35;;;;4922:21;:::i;:::-;334:8552;;4905:44;;;;;334:8552;;:::i;:::-;-1:-1:-1;;;334:8552:95;;;;;;;4905:44;;;;;;;;:::i;:::-;4973:4;:::i;2293:165:23:-;;334:8552:95;;192:59:18;;;;2416:35:23;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;;;;;;;2416:35:23;;;;;;;;;;;2409:42;;2293:165;:::o;2416:35::-;;;;;;;;;;;;;:::i;:::-;;;334:8552:95;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2416:35:23;;;;2293:165;:::o;334:8552:95:-;291:59:20;;;;;;;;:::i;:::-;334:8552:95;;;;;;;;;;;;5630:121:31;334:8552:95;5701:42:31;;5630:121;334:8552:95;;5701:42:31;;;;;;;;;;;;;;334:8552:95;;;;;;:::i;:::-;-1:-1:-1;;334:8552:95;;;;;;;;:::o;:::-;-1:-1:-1;;;334:8552:95;;;;;;;;;:::o;:::-;;1058:7:111;334:8552:95;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;8140:2;334:8552;;;;;;;;:::o;:::-;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;20303:22:20;334:8552:95;20303:22:20;;334:8552:95;;:::i;:::-;;;;;;;;:::o;:::-;;;8179:1;334:8552;;;;;;;:::o;:::-;;;;;;;;;;;;;:::o;5293:479::-;;334:8552;;5443:21;334:8552;;5579:32;5589:21;334:8552;;5589:21;:::i;:::-;5579:32;:::i;:::-;5463:1;5626:13;;5668:3;5645:21;334:8552;;5645:21;:::i;:::-;5641:25;;;;;5668:3;;-1:-1:-1;;;;;;5705:13:95;334:8552;5705:13;;:::i;:::-;334:8552;;5687:31;;;;;;:::i;:::-;;5668:3;:::i;:::-;5626:13;;5641:25;-1:-1:-1;5641:25:95;;-1:-1:-1;;5293:479:95:o;334:8552::-;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;5778:687;334:8552;;-1:-1:-1;;;6140:84:95;;;;-1:-1:-1;;;;;334:8552:95;;;6140:84;;;;334:8552;;;;6140:84;;334:8552;6140:84;334:8552;6140:84;:::i;:::-;334:8552;;192:59:18;;;;6140:84:95;6290:94;;;701:42;6140:84;6290:94;;334:8552;6140:84;6290:94;;;;;:::i;:::-;6395:63;5778:687;:::o;7453:452::-;-1:-1:-1;;;;;334:8552:95;;;;:::i;:::-;8130:13;;:::i;:::-;8153:12;;;;;:::i;:::-;;8175;;;;:::i;:::-;;-1:-1:-1;8202:13:95;;8217:6;8221:2;8217:6;;;;7732:23;;;;334:8552;7732:23;334:8552;;7732:23;7591:297;7732:23;;:::i;:::-;334:8552;;-1:-1:-1;;;8276:13:95;7591:297;;334:8552;;;;;;7591:297;334:8552;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;8225:3;8282:6;;;:::i;:::-;8276:13;;;;;;;;;8261:35;;334:8552;;;8276:13;;;;334:8552;;;8261:35;;:::i;:::-;334:8552;-1:-1:-1;;;;;;334:8552:95;;;8261:35;8244:52;8248:9;8252:5;;;:::i;:::-;8248:9;:::i;:::-;8244:52;;;;;;:::i;:::-;;8348:6;;;:::i;:::-;8342:13;;;;;;8327:37;;8342:13;;8225:3;8342:13;;334:8552;8327:37;;:::i;:::-;8310:54;8314:9;8318:5;;;:::i;:::-;8314:9;:::i;:::-;8310:54;;;;;;:::i;8225:3::-;8202:13;;334:8552;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;:::o;8415:469::-;;334:8552;;:::i;:::-;8583:32;8593:21;8597:17;334:8552;;8597:17;:::i;8583:32::-;8625:12;;;;;:::i;:::-;;8647;;;;:::i;:::-;;8629:1;8674:13;;8708:3;334:8552;;8689:17;;;;;8759:9;8744:31;;;8753:21;8759:14;:9;;8708:3;8759:9;;;:::i;:::-;334:8552;;-1:-1:-1;;;334:8552:95;;;8759:14;334:8552;;;;8753:21;334:8552;;;;8744:31;;;:::i;:::-;8727:48;8731:9;8735:5;;;:::i;8731:9::-;8727:48;;;;;;:::i;:::-;;8806:33;;;8815:23;-1:-1:-1;;;8821:9:95;8806:33;8821:9;;;:::i;:::-;:16;334:8552;;;;8806:33;8789:50;8793:9;8797:5;;;:::i;8708:3::-;8674:13;;8689:17;-1:-1:-1;8689:17:95;;-1:-1:-1;;;8415:469:95:o;334:8552::-;;;;;;1457:1:111;334:8552:95;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;:::i;1180:437:111:-;;1352:16;334:8552:95;1352:30:111;1348:230;;1180:437;334:8552:95;;;1352:16:111;334:8552:95;1180:437:111;:::o;1348:230::-;1417:150;334:8552:95;;;-1:-1:-1;334:8552:95;;;;;:::i;:::-;1498:1:111;334:8552:95;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;1478:48:111;;;334:8552:95;;;-1:-1:-1;;;1417:150:111;;334:8552:95;;;;;;;1417:150:111;;;;:::i;:::-;;;-1:-1:-1;;;;;334:8552:95;1417:150:111;;;;;;1398:169;1417:150;-1:-1:-1;1417:150:111;;;1348:230;1398:169;1352:16;1590:14:16;;1398:169:111;1348:230;;;;;1417:150;;;;334:8552:95;1417:150:111;;;;;;;;;:::i;:::-;;;;334:8552:95;;;;;;;:::i;:::-;-1:-1:-1;334:8552:95;;:::o;:::-;;;;;;;:::i;:::-;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;:::o;:::-;;;;;;;;:::o;1623:1400:111:-;;;;;;2445:34;2489:32;1623:1400;2391:44;334:8552:95;;:::i;:::-;2085:15:111;334:8552:95;2085:21:111;:15;;:21;334:8552:95;;2166:15:111;;334:8552:95;;2246:22:111;:15;;:22;334:8552:95;2207:9:111;2328:34;:15;;:34;334:8552:95;2391:24:111;;;:44;:::i;:::-;2246:22;2445:19;;:34;:::i;:::-;2085:21;2489:18;;:32;:::i;:::-;334:8552:95;2531:18:111;;;334:8552:95;;2573:27:111;;;334:8552:95;;;2638:26:111;2634:182;;1623:1400;2328:34;2825:18;;:32;2867:23;;;:42;2974:23;;;:42;1623:1400::o;2634:182::-;334:8552:95;;;2634:182:111;;1623:1400;2531:32;1623:1400;2445:34;2391:24;1623:1400;;;;;;;2391:44;2489:32;1623:1400;334:8552:95;;:::i;:::-;2085:15:111;;334:8552:95;2085:21:111;:15;;:21;334:8552:95;;2166:15:111;;334:8552:95;;2246:22:111;:15;;:22;334:8552:95;2207:9:111;2328:34;:15;;:34;334:8552:95;2391:24:111;:44;:::i;:::-;2246:22;2445:19;;:34;:::i;:::-;2085:21;2489:18;;:32;:::i;:::-;2531:18;;;:32;:::i;:::-;2573:27;;;334:8552:95;;;2638:26:111;2634:182;;2328:34;2825:18;;:32;2867:23;;;:42;2974:23;;;:42;1623:1400::o;334:8552:95:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;3616:1:111;334:8552:95;;;;;;;;;;;4404:8:111;334:8552:95;;;;;;;;3616:1:111;334:8552:95;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;3616:1:111;334:8552:95;;3616:1:111;334:8552:95;;3616:1:111;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;-1:-1:-1;334:8552:95;;-1:-1:-1;334:8552:95;;-1:-1:-1;334:8552:95;;;;;;;;-1:-1:-1;334:8552:95;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;;3029:1511:111;;;;;4337:18;3029:1511;3490:141;3029:1511;;;;3590:16;;;:::i;:::-;3490:141;;:::i;:::-;3676:16;;;:::i;:::-;3730:4;3702:33;3730:4;3702:33;;;:::i;:::-;3745:39;3773:10;3745:39;;;:::i;:::-;-1:-1:-1;;;;;334:8552:95;4445:42:9;;4034:23:111;;334:8552:95;;;;;4067:64:111;;3029:1511;334:8552:95;;4237:55:111;334:8552:95;3616:1:111;334:8552:95;;2732:6:93;334:8552:95;;:::i;:::-;4237:55:111;;:::i;:::-;4149:301;334:8552:95;;4337:18:111;;;;;;;;;;;:::i;:::-;;20303:22:20;;4337:18:111;;;;;;:::i;:::-;334:8552:95;;-1:-1:-1;;;4149:301:111;;334:8552:95;;;;;;;4149:301:111;;;;:::i;:::-;;334:8552:95;;4149:301:111;;;;;;;;3616:1;4149:301;;;3029:1511;4140:310;334:8552:95;4149:301:111;334:8552:95;;192:59:18;;;;;;;4468:48:111;;334:8552:95;4468:48:111;;;;;;;4461:72;4468:48;3616:1;4468:48;;;3029:1511;334:8552:95;;;;;:::i;:::-;;;;:::i;:::-;4468:64:111;4461:72;:::i;4468:48::-;;;;;;-1:-1:-1;4468:48:111;;;;;;;:::i;:::-;;;;;:::i;:::-;;;;;;;;;;4149:301;;;;;;;;;;;;;;:::i;:::-;;;;4067:64;4106:14;-1:-1:-1;4237:55:111;4067:64;;4546:578;;;;;4870:247;4546:578;;;;334:8552:95;;;;;;:::i;:::-;-1:-1:-1;334:8552:95;;4870:247:111;:::i;334:8552:95:-;;;;;;;:::o;:::-;;;;;;;;;;;;5250:269:111;;-1:-1:-1;;;5346:13:111;;;334:8552:95;;5422:12:111;;334:8552:95;;;5486:7:111;5485:19;5486:7;5484:28;5486:7;;:::i;334:8552:95:-;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;1170:7994:112;507:42;1702:19:73;;1249:100:112;;334:8552:95;1452:7705:112;1482:7665;334:8552:95;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1482:7665:112;:::i;9170:46249::-;596:42;1702:19:73;;9225:92:112;;334:8552:95;9333:46079:112;9351:46051;334:8552:95;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;;;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;334:8552:95;;;;-1:-1:-1;;;;;;;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;334:8552:95;;;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;;;;;334:8552:95;;;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;;;;;;;334:8552:95;;;;-1:-1:-1;;;;;;;;;;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;;334:8552:95;;;;;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;;;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;;;;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;;;;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;55425:396:112;55541:8;;334:8552:95;55541:8:112;:::i;:::-;1590:14:16;;55541:8:112;1590:14:16;55559:158:112;;;;;-1:-1:-1;55559:158:112;;;;55734:8;334:8552:95;;55425:396:112:o;334:8552:95:-;;;-1:-1:-1;;;334:8552:95;;55559:158:112;334:8552:95;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;;;;;;:::i;:::-;58365:1:112;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;56023:1145:112:-;;334:8552:95;;;;;;;56247:25:112;334:8552:95;56255:16:112;334:8552:95;;:::i;56247:25:112:-;334:8552:95;56247:39:112;56243:886;;56023:1145;334:8552:95;;;;56255:16:112;334:8552:95;;:::i;56243:886:112:-;334:8552:95;;56306:49:112;56302:481;;56243:886;334:8552:95;56806:25:112;334:8552:95;56255:16:112;334:8552:95;;:::i;56806:25:112:-;334:8552:95;-1:-1:-1;;;;;;;;;;;56797:54:112;;;;;334:8552:95;;;-1:-1:-1;;;56797:54:112;;;-1:-1:-1;;;;;334:8552:95;;;;56797:54:112;;;334:8552:95;;;;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;-1:-1:-1;;192:59:18;-1:-1:-1;334:8552:95;;;-1:-1:-1;56797:54:112;;;;;;;;;56243:886;56865:45;;;;;;334:8552:95;;;56865:45:112;;;-1:-1:-1;;;;;334:8552:95;;56797:54:112;56865:45;;334:8552:95;;;;;;;;;;-1:-1:-1;;;334:8552:95;;;;;;;;;;;;;;;56865:45:112;;;;;;;;56243:886;56950:16;56980:27;56950:16;;:::i;:::-;56980:27;;;;:::i;:::-;57021:22;334:8552:95;56255:16:112;334:8552:95;;:::i;57021:22:112:-;:97;;;;;;334:8552:95;;57021:97:112;334:8552:95;;;192:59:18;;;;;;;;;57021:97:112;;56797:54;57021:97;;;:::i;:::-;;;;;;;;;;;56243:886;;;;;57021:97;;;;;;:::i;:::-;;;;56865:45;;;;;;:::i;:::-;;;;56797:54;;;;;;:::i;:::-;;;;56302:481;56284:1;56417:13;56616:88;;56409:22;56417:13;;:::i;56409:22::-;56532:25;;;:::i;:::-;334:8552:95;;-1:-1:-1;;;56616:88:112;;-1:-1:-1;;;;;334:8552:95;;;56616:88:112;;;334:8552:95;;;;;;-1:-1:-1;334:8552:95;;;;681:1:112;334:8552:95;;;;;;;;;;;;;;;;;;;;;;56616:88:112;;;;;;;;;56723:45;56616:88;56284:1;56616:88;;;56302:481;-1:-1:-1;56255:16:112;1590:14:16;;334:8552:95;;;;-1:-1:-1;;;;;334:8552:95;-1:-1:-1;;;;;;1590:14:16;;;;;;;56723:45:112;56302:481;;;56616:88;;;;;;;;;;;;;;:::i;:::-;;;;334:8552:95;;;-1:-1:-1;;;;;334:8552:95;;:::o;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;334:8552:95;;;;:::o;:::-;;;;;;681:1:112;334:8552:95;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;59858:1:112;334:8552:95;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;334:8552:95;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;-1:-1:-1;;;334:8552:95;;;;:::o;59873:493:112:-;;;59408:60;;59873:493;;;;59434:33;;;;;:::i;:::-;334:8552:95;;-1:-1:-1;;;59408:60:112;;;;;334:8552:95;;;;;;;;;;;;;;;;;;59408:60:112;;;-1:-1:-1;;;;;;;;;;;59408:60:112;;;;;;;-1:-1:-1;;;59408:60:112;;;59873:493;59491:25;334:8552:95;;;-1:-1:-1;334:8552:95;;59491:25:112;;334:8552:95;;;59491:25:112;;;;;;;:::i;:::-;;20303:22:20;;59491:25:112;;;;;;:::i;:::-;60164:147;334:8552:95;;192:59:18;;;;;;;;;;60164:147:112;;59408:60;60164:147;;;:::i;:::-;;;-1:-1:-1;;;;;334:8552:95;60164:147:112;;;;;;60140:219;60164:147;-1:-1:-1;60164:147:112;;;334:8552:95;;;:::i;59408:60:112:-;;;59491:25;59408:60;;-1:-1:-1;59408:60:112;59491:25;59408:60;59491:25;59408:60;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;1689:113:18;-1:-1:-1;;;;;;;;;;;1771:24:18;;;;;;334:8552:95;;1771:24:18;334:8552:95;;;192:59:18;;;;;;;;;1771:24;;334:8552:95;;1771:24:18;;;334:8552:95;;;;;;;;;;;:::i;:::-;1771:24:18;;;;;;;;;;1689:113;:::o;1771:24::-;;;;:::i;334:8552:95:-;;;;;;;;;;;;;;;;;;;;;;;192:59:18;334:8552:95;;192:59:18;334:8552:95;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;58912:1:112;334:8552:95;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;58727:295:112:-;334:8552:95;;-1:-1:-1;;;58985:20:112;;;;58727:295;;334:8552:95;;-1:-1:-1;;;;;334:8552:95;58985:20:112;334:8552:95;58985:20:112;334:8552:95;;58985:20:112;;;;;;;58853:162;58985:20;;;58912:1;58985:20;;;58727:295;-1:-1:-1;334:8552:95;;-1:-1:-1;;;58853:162:112;;334:8552:95;;;;;;;58985:20:112;58853:162;;;:::i;:::-;;;;;;;;;;58912:1;58853:162;;;58844:171;;58727:295;:::o;58853:162::-;;;;;;-1:-1:-1;58853:162:112;;;;;;:::i;58985:20::-;;;;;;;;;;;;;;;:::i;:::-;;;;","linkReferences":{}},"methodIdentifiers":{"BENEFICIARY()":"2f99c6cc","COUNCIL_SAFE()":"93892107","CURRENT_NETWORK()":"f4d914e6","DECIMALS()":"2e0f2625","ETH_SEPOLIA()":"352c94a7","IS_SCRIPT()":"f8ccbf47","IS_TEST()":"fa7626d4","MINIMUM_STAKE()":"08dbbb03","NATIVE()":"a0cf0aea","PERCENTAGE_SCALE()":"3f26479e","REGISTRY_FACTORY()":"861ceb69","SAFE_FACTORY()":"d23727ed","SAFE_NONCE()":"1d8fcc10","SAFE_PROXY_FACTORY()":"7f6a80df","SAFE_SINGLETON()":"caa12add","SENDER()":"6050f2f8","TOKEN()":"82bfefc8","WAIT_TIME()":"388aef5c","__createContract(bytes)":"f69d511f","_calculateConviction(uint256,uint256,uint256,uint256)":"e99ce911","_councilSafe()":"dac770b3","_councilSafeWithOwner(address)":"1ae726d9","_councilSafeWithOwner(address,address)":"08c24f9f","_createSafe()":"49ef42c1","_createSafeProxyFactory()":"bb0504cd","_nonce()":"5d1222aa","allo_owner()":"7cbe79ed","allo_treasury()":"da4bf087","councilMember1()":"896546a1","councilMemberPK()":"7658524d","councilSafe()":"6c53db9a","councilSafeOwner()":"0522b7db","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","excludeArtifacts()":"b5508aa9","excludeContracts()":"e20c9f71","excludeSenders()":"1ed7831c","failed()":"ba414fa6","getDecay(address)":"5d6b4bc2","getParams(address,uint8,uint8,(uint256),(address,address,uint256,uint256,uint256,uint256),address[],address,uint256)":"b3e9b4fd","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","run()":"c0406226","run(string)":"9352fad2","runCurrentNetwork(string)":"5e2dd442","safeHelper(address,uint256,address,bytes)":"023a6f43","safeHelper(address,uint256,address,bytes,uint256)":"c1f2a641","safeHelper(address,uint256,bytes)":"6db52510","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\":\"BENEFICIARY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"COUNCIL_SAFE\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"CURRENT_NETWORK\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"DECIMALS\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"ETH_SEPOLIA\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"IS_SCRIPT\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"IS_TEST\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"MINIMUM_STAKE\",\"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\":[],\"name\":\"REGISTRY_FACTORY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAFE_FACTORY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAFE_NONCE\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAFE_PROXY_FACTORY\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SAFE_SINGLETON\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"SENDER\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"TOKEN\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"WAIT_TIME\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"bytecode\",\"type\":\"bytes\"}],\"name\":\"__createContract\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"_contract\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"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\":\"_councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"},{\"internalType\":\"contract SafeProxyFactory\",\"name\":\"_safeProxyFactory\",\"type\":\"address\"}],\"name\":\"_councilSafeWithOwner\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_owner\",\"type\":\"address\"}],\"name\":\"_councilSafeWithOwner\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_createSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_createSafeProxyFactory\",\"outputs\":[{\"internalType\":\"contract SafeProxyFactory\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_nonce\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"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\":\"councilMember1\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilMemberPK\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafe\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"councilSafeOwner\",\"outputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"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\":[],\"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\":[{\"internalType\":\"contract CVStrategyV0_0\",\"name\":\"strategy\",\"type\":\"address\"}],\"name\":\"getDecay\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"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\"},{\"internalType\":\"address[]\",\"name\":\"initialAllowlist\",\"type\":\"address[]\"},{\"internalType\":\"address\",\"name\":\"sybilScorer\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"}],\"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\":\"uint256\",\"name\":\"sybilScorerThreshold\",\"type\":\"uint256\"},{\"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\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"network\",\"type\":\"string\"}],\"name\":\"run\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"run\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"networkJson\",\"type\":\"string\"}],\"name\":\"runCurrentNetwork\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"councilSafe_\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"councilMemberPK_\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to_\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data_\",\"type\":\"bytes\"}],\"name\":\"safeHelper\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to_\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value_\",\"type\":\"uint256\"},{\"internalType\":\"bytes\",\"name\":\"data_\",\"type\":\"bytes\"}],\"name\":\"safeHelper\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract ISafe\",\"name\":\"councilSafe_\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"councilMemberPK_\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"to_\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"data_\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"value_\",\"type\":\"uint256\"}],\"name\":\"safeHelper\",\"outputs\":[],\"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\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"NATIVE()\":{\"notice\":\"Address of the native token\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"pkg/contracts/script/UpgradeCVMultichainProd.s.sol\":\"UpgradeCVMultichainProd\"},\"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/\",\":allo-v2-contracts/=lib/allo-v2/contracts/\",\":allo-v2-test/=lib/allo-v2/test/\",\":allo-v2/=lib/allo-v2/\",\":ds-test/=lib/allo-v2/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/\"],\"viaIR\":true},\"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/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/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/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/forge-std/src/Base.sol\":{\"keccak256\":\"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224\",\"dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK\"]},\"lib/forge-std/src/Script.sol\":{\"keccak256\":\"0x2315be74cc2826f9da401bea3da46a10ad6a6efdf73176d79160b453286d0ed2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af0d4dc826911d6cb4d6272ed5cbdb6950e1476141cca328e178b808d848789c\",\"dweb:/ipfs/QmV2ytjUEkV84VtdMs1nZqQTBoVE987cHboQMpiha5yo3e\"]},\"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/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/security/ReentrancyGuard.sol\":{\"keccak256\":\"0xa535a5df777d44e945dd24aa43a11e44b024140fc340ad0dfe42acf4002aade1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://41319e7f621f2dc3733511332c4fd032f8e32ad2aa7fd6f665c19741d9941a34\",\"dweb:/ipfs/QmcYR3bd862GD1Bc7jwrU9bGxrhUu5na1oP964bDCu2id1\"]},\"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/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/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/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/script/BaseMultiChain.s.sol\":{\"keccak256\":\"0x7e3b004da48a01739df6db978aa97578f7928f4c1fa6edf1d73ec2afce78a651\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://3e5c4b1fe8734c02704c7f380508db43c6e0fd44baf689d7d55d58c55ef65ca2\",\"dweb:/ipfs/Qmdix9ZLwMsFrcaJAFbKPwcBD1AW9hnUoazSp7hJJCWr2n\"]},\"pkg/contracts/script/GV2ERC20.sol\":{\"keccak256\":\"0x72e3d7c5f055490e976b03abf0b7773b5cefd7e305021d0ea83cba3e142118f9\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://3f19911b75ab3e0d2d41f5d9f4754f21d78b500905da3342b61bc54e502d4c97\",\"dweb:/ipfs/QmU4zPrrTWQY3eUYegHZzLjs2jyRgGtgyZp4J2ZQxj8Vp2\"]},\"pkg/contracts/script/UpgradeCVMultichainProd.s.sol\":{\"keccak256\":\"0xc730f0ae83b2b1e0beeddacc8de102e3d0b02902484355d3b54e2c9e201ba646\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5c70b9ce55ddb289dd01853051a9f23675e3f0329db66bdbd7cff431c1c10cd4\",\"dweb:/ipfs/QmYqGWPEsuAC7AiKt6TDmbFbVZXXwJDHe15tAGsAoTy3La\"]},\"pkg/contracts/src/BaseStrategyUpgradeable.sol\":{\"keccak256\":\"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac\",\"dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL\"]},\"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol\":{\"keccak256\":\"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda\",\"dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg\"]},\"pkg/contracts/src/CollateralVault.sol\":{\"keccak256\":\"0x124fcaebf9233d6b3eabf0979ef0a9f8325e20b34bd733870ffc816d03b9831b\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://e491550a509a3ba4cacbe80008b4d24a9044d8f94554db42f9afd79238d88a51\",\"dweb:/ipfs/QmUYNPQyk7ruHss7k5JCPxG8Q8Jcpwa3RN6W7aQdSWKRap\"]},\"pkg/contracts/src/IRegistryFactory.sol\":{\"keccak256\":\"0x7bd1635bba62fa692cff6ebc9c30cd11b038d78d057cbce96fe18a62e8857a1b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://282f661952cb336e5a5690642da80802195241796e0bfd09572ffa74748f5612\",\"dweb:/ipfs/QmWp3RFiUUZ5DhGpN77cYDwoTK3HPitZAjwviGzHUYVuSV\"]},\"pkg/contracts/src/ISybilScorer.sol\":{\"keccak256\":\"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819\",\"dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY\"]},\"pkg/contracts/src/PassportScorer.sol\":{\"keccak256\":\"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b\",\"dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ\"]},\"pkg/contracts/src/ProxyOwnableUpgrader.sol\":{\"keccak256\":\"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272\",\"dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB\"]},\"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol\":{\"keccak256\":\"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f\",\"dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw\"]},\"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol\":{\"keccak256\":\"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f\",\"dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9\"]},\"pkg/contracts/src/SafeArbitrator.sol\":{\"keccak256\":\"0xc725d683ef1b5d978e79dfc887996a5348e2f0264abe228a84d63460aa141f71\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://51ec050f375c048649b23d56118a402f2116ad430eaf9f57442c5f8a020da860\",\"dweb:/ipfs/QmdJyCfviijA9e2pJ1kdPQoZVy8iPfumFmSnfaxhuL5R12\"]},\"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\":\"0xf4f9aa98b756909c0627bb7995b8c2c56d9fa809060bdfdff347eb9ebcc89e68\",\"license\":\"AGPL-3.0-or-later\",\"urls\":[\"bzz-raw://8c8b7498e1fbe6c276eccecf971539a239a215977b33885cde898cd7498fe6f5\",\"dweb:/ipfs/QmNf3FiwJiF64L3WGRWpGPGHAFkxXQuhLnHkKZ2WZjGUtH\"]},\"pkg/contracts/test/shared/SafeSetup.sol\":{\"keccak256\":\"0x47fd1bc0ce492f856f4f1cb6d7c95f3ce649431367e3370fd50a7fce4baeaee8\",\"license\":\"AGPL-3.0-only\",\"urls\":[\"bzz-raw://a6996b30b78ded1502865d96ae9d794106e521b5d176fb187bc200aa4a65f18b\",\"dweb:/ipfs/QmY8YVD7uXUsQfSSXtb6mmKbGTyScXSPJ9DZdEvbmN5m73\"]}},\"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":"BENEFICIARY","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"COUNCIL_SAFE","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"CURRENT_NETWORK","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"DECIMALS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"ETH_SEPOLIA","outputs":[{"internalType":"string","name":"","type":"string"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"IS_SCRIPT","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"IS_TEST","outputs":[{"internalType":"bool","name":"","type":"bool"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"MINIMUM_STAKE","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":[],"stateMutability":"view","type":"function","name":"REGISTRY_FACTORY","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SAFE_FACTORY","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SAFE_NONCE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SAFE_PROXY_FACTORY","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SAFE_SINGLETON","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"SENDER","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"TOKEN","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"WAIT_TIME","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"bytes","name":"bytecode","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"__createContract","outputs":[{"internalType":"address","name":"_contract","type":"address"}]},{"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":"_councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"contract SafeProxyFactory","name":"_safeProxyFactory","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"_councilSafeWithOwner","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"stateMutability":"nonpayable","type":"function","name":"_councilSafeWithOwner","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"_createSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"_createSafeProxyFactory","outputs":[{"internalType":"contract SafeProxyFactory","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_nonce","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":[],"stateMutability":"view","type":"function","name":"councilMember1","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilMemberPK","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafe","outputs":[{"internalType":"contract ISafe","name":"","type":"address"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"councilSafeOwner","outputs":[{"internalType":"contract ISafe","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":[],"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":[{"internalType":"contract CVStrategyV0_0","name":"strategy","type":"address"}],"stateMutability":"view","type":"function","name":"getDecay","outputs":[{"internalType":"uint256","name":"","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"}]},{"internalType":"address[]","name":"initialAllowlist","type":"address[]"},{"internalType":"address","name":"sybilScorer","type":"address"},{"internalType":"uint256","name":"sybilScorerThreshold","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":"uint256","name":"sybilScorerThreshold","type":"uint256"},{"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"}]},{"inputs":[{"internalType":"string","name":"network","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"run"},{"inputs":[],"stateMutability":"nonpayable","type":"function","name":"run"},{"inputs":[{"internalType":"string","name":"networkJson","type":"string"}],"stateMutability":"nonpayable","type":"function","name":"runCurrentNetwork"},{"inputs":[{"internalType":"contract ISafe","name":"councilSafe_","type":"address"},{"internalType":"uint256","name":"councilMemberPK_","type":"uint256"},{"internalType":"address","name":"to_","type":"address"},{"internalType":"bytes","name":"data_","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"safeHelper"},{"inputs":[{"internalType":"address","name":"to_","type":"address"},{"internalType":"uint256","name":"value_","type":"uint256"},{"internalType":"bytes","name":"data_","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"safeHelper"},{"inputs":[{"internalType":"contract ISafe","name":"councilSafe_","type":"address"},{"internalType":"uint256","name":"councilMemberPK_","type":"uint256"},{"internalType":"address","name":"to_","type":"address"},{"internalType":"bytes","name":"data_","type":"bytes"},{"internalType":"uint256","name":"value_","type":"uint256"}],"stateMutability":"nonpayable","type":"function","name":"safeHelper"},{"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":{"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/","allo-v2-contracts/=lib/allo-v2/contracts/","allo-v2-test/=lib/allo-v2/test/","allo-v2/=lib/allo-v2/","ds-test/=lib/allo-v2/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/script/UpgradeCVMultichainProd.s.sol":"UpgradeCVMultichainProd"},"evmVersion":"paris","libraries":{},"viaIR":true},"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/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/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/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/forge-std/src/Base.sol":{"keccak256":"0x4ff1a785311017d1eedb1b4737956fa383067ad34eb439abfec1d989754dde1c","urls":["bzz-raw://f553622969b9fdb930246704a4c10dfaee6b1a4468c142fa7eb9dc292a438224","dweb:/ipfs/QmcxqHnqdQsMVtgsfH9VNLmZ3g7GhgNagfq7yvNCDcCHFK"],"license":"MIT"},"lib/forge-std/src/Script.sol":{"keccak256":"0x2315be74cc2826f9da401bea3da46a10ad6a6efdf73176d79160b453286d0ed2","urls":["bzz-raw://af0d4dc826911d6cb4d6272ed5cbdb6950e1476141cca328e178b808d848789c","dweb:/ipfs/QmV2ytjUEkV84VtdMs1nZqQTBoVE987cHboQMpiha5yo3e"],"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/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/security/ReentrancyGuard.sol":{"keccak256":"0xa535a5df777d44e945dd24aa43a11e44b024140fc340ad0dfe42acf4002aade1","urls":["bzz-raw://41319e7f621f2dc3733511332c4fd032f8e32ad2aa7fd6f665c19741d9941a34","dweb:/ipfs/QmcYR3bd862GD1Bc7jwrU9bGxrhUu5na1oP964bDCu2id1"],"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/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/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/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/script/BaseMultiChain.s.sol":{"keccak256":"0x7e3b004da48a01739df6db978aa97578f7928f4c1fa6edf1d73ec2afce78a651","urls":["bzz-raw://3e5c4b1fe8734c02704c7f380508db43c6e0fd44baf689d7d55d58c55ef65ca2","dweb:/ipfs/Qmdix9ZLwMsFrcaJAFbKPwcBD1AW9hnUoazSp7hJJCWr2n"],"license":"UNLICENSED"},"pkg/contracts/script/GV2ERC20.sol":{"keccak256":"0x72e3d7c5f055490e976b03abf0b7773b5cefd7e305021d0ea83cba3e142118f9","urls":["bzz-raw://3f19911b75ab3e0d2d41f5d9f4754f21d78b500905da3342b61bc54e502d4c97","dweb:/ipfs/QmU4zPrrTWQY3eUYegHZzLjs2jyRgGtgyZp4J2ZQxj8Vp2"],"license":"AGPL-3.0-only"},"pkg/contracts/script/UpgradeCVMultichainProd.s.sol":{"keccak256":"0xc730f0ae83b2b1e0beeddacc8de102e3d0b02902484355d3b54e2c9e201ba646","urls":["bzz-raw://5c70b9ce55ddb289dd01853051a9f23675e3f0329db66bdbd7cff431c1c10cd4","dweb:/ipfs/QmYqGWPEsuAC7AiKt6TDmbFbVZXXwJDHe15tAGsAoTy3La"],"license":"MIT"},"pkg/contracts/src/BaseStrategyUpgradeable.sol":{"keccak256":"0x54805426e65817e5e246249d8ceab0afdc228955d305464f36e98ddee7848327","urls":["bzz-raw://7ffd9f7ae76853f56cc26ae387ec5408a5e89098d6d6bffddc6924e4a05614ac","dweb:/ipfs/QmNqATtv693daCm6r2o9rDXo1hK8hqNHBaF7REAyvB5AsL"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol":{"keccak256":"0x18574c07c68a5dc1fa8c47a686e5f4cf1e41a16ba5734089ad91d64073f5e08f","urls":["bzz-raw://63f3fde7c6c7197cffdc8a0afe24fa9a9fb3106e4edee528f41c0c6d5814abda","dweb:/ipfs/QmW7a6igfMqXZMoHGdXLqY3ETwrKArYGMKj2kind2h4eZg"],"license":"AGPL-3.0-only"},"pkg/contracts/src/CollateralVault.sol":{"keccak256":"0x124fcaebf9233d6b3eabf0979ef0a9f8325e20b34bd733870ffc816d03b9831b","urls":["bzz-raw://e491550a509a3ba4cacbe80008b4d24a9044d8f94554db42f9afd79238d88a51","dweb:/ipfs/QmUYNPQyk7ruHss7k5JCPxG8Q8Jcpwa3RN6W7aQdSWKRap"],"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":"0xefd7246465105918f7484cec0e7ced0278dcbd9ce3775aee647d155e6b95eb01","urls":["bzz-raw://d607bc44b9352447837656c98d1bd789d9cad85eb32161f3a5e2ad4f1717f819","dweb:/ipfs/QmejF5hLvnXGrQi8pD5UV2ugpFHESQgNY2KuYJ3h1ZY3iY"],"license":"MIT"},"pkg/contracts/src/PassportScorer.sol":{"keccak256":"0x96be75f87e62c10eb089fc7c980201cc9f3b70aafb4d5b3e3c7d10563f8bf94d","urls":["bzz-raw://1386f9fba94e202df4b8eebd88bf88860ae7d098ce23fc61476538334864cf4b","dweb:/ipfs/QmdwgrMW8CNkfgqYMcswT6d8CXfB1DrL4rDCEXQcxZmLZJ"],"license":"AGPL-3.0-or-later"},"pkg/contracts/src/ProxyOwnableUpgrader.sol":{"keccak256":"0xbb3777f016512154ff227f32ae641ed7f4fcbb8afc1379a3699a70b6aaf60ee7","urls":["bzz-raw://57a8d6bcff8fc514e9847ffdedf05e2130f9430f271997145198d26a3b36c272","dweb:/ipfs/Qmd14jGSfuDy9AqLgYP3Prs5p9uRHEhurbhi4u88PaH8fB"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol":{"keccak256":"0x24fec6ab8373254a3f4b6ac03d00a38d49e7e057fba6c534cbf735736f2b1b82","urls":["bzz-raw://187f1028690bd17673c9110b0d80b30c5bdf9cf93ce3330de042a06f3509a28f","dweb:/ipfs/QmWHjrqY9X7J5NBcQujjjtVCVkAv9JvWzFaQqu9GnaaCqw"],"license":"AGPL-3.0-only"},"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol":{"keccak256":"0x387dfa393901bd236b946754f6035b1070b962e4c505eae46db83b3cf765cf19","urls":["bzz-raw://bc8cf49f8f7ab67f7486eb39962d59c3b26fc1c37ff19618e1dd482b0c63d76f","dweb:/ipfs/QmQaaAhycH3h7PUuJRpZAteDkrUtvasrKhgTKtRSZdeja9"],"license":"AGPL-3.0-only"},"pkg/contracts/src/SafeArbitrator.sol":{"keccak256":"0xc725d683ef1b5d978e79dfc887996a5348e2f0264abe228a84d63460aa141f71","urls":["bzz-raw://51ec050f375c048649b23d56118a402f2116ad430eaf9f57442c5f8a020da860","dweb:/ipfs/QmdJyCfviijA9e2pJ1kdPQoZVy8iPfumFmSnfaxhuL5R12"],"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"},"pkg/contracts/test/CVStrategyHelpers.sol":{"keccak256":"0xf4f9aa98b756909c0627bb7995b8c2c56d9fa809060bdfdff347eb9ebcc89e68","urls":["bzz-raw://8c8b7498e1fbe6c276eccecf971539a239a215977b33885cde898cd7498fe6f5","dweb:/ipfs/QmNf3FiwJiF64L3WGRWpGPGHAFkxXQuhLnHkKZ2WZjGUtH"],"license":"AGPL-3.0-or-later"},"pkg/contracts/test/shared/SafeSetup.sol":{"keccak256":"0x47fd1bc0ce492f856f4f1cb6d7c95f3ce649431367e3370fd50a7fce4baeaee8","urls":["bzz-raw://a6996b30b78ded1502865d96ae9d794106e521b5d176fb187bc200aa4a65f18b","dweb:/ipfs/QmY8YVD7uXUsQfSSXtb6mmKbGTyScXSPJ9DZdEvbmN5m73"],"license":"AGPL-3.0-only"}},"version":1},"storageLayout":{"storage":[{"astId":5088,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"stdstore","offset":0,"slot":"0","type":"t_struct(StdStorage)12493_storage"},{"astId":5284,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_failed","offset":0,"slot":"8","type":"t_bool"},{"astId":7785,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"stdChainsInitialized","offset":1,"slot":"8","type":"t_bool"},{"astId":7806,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"chains","offset":0,"slot":"9","type":"t_mapping(t_string_memory_ptr,t_struct(Chain)7801_storage)"},{"astId":7810,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"defaultRpcUrls","offset":0,"slot":"10","type":"t_mapping(t_string_memory_ptr,t_string_storage)"},{"astId":7814,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"idToAlias","offset":0,"slot":"11","type":"t_mapping(t_uint256,t_string_storage)"},{"astId":7817,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"fallbackToDefaultRpcUrls","offset":0,"slot":"12","type":"t_bool"},{"astId":8575,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"gasMeteringOff","offset":1,"slot":"12","type":"t_bool"},{"astId":10612,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"stdstore","offset":0,"slot":"13","type":"t_struct(StdStorage)12493_storage"},{"astId":74206,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"metadata","offset":0,"slot":"21","type":"t_struct(Metadata)3098_storage"},{"astId":74218,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_poolProfileId1_","offset":0,"slot":"23","type":"t_bytes32"},{"astId":11480,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_excludedContracts","offset":0,"slot":"24","type":"t_array(t_address)dyn_storage"},{"astId":11483,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_excludedSenders","offset":0,"slot":"25","type":"t_array(t_address)dyn_storage"},{"astId":11486,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_targetedContracts","offset":0,"slot":"26","type":"t_array(t_address)dyn_storage"},{"astId":11489,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_targetedSenders","offset":0,"slot":"27","type":"t_array(t_address)dyn_storage"},{"astId":11492,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_excludedArtifacts","offset":0,"slot":"28","type":"t_array(t_string_storage)dyn_storage"},{"astId":11495,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_targetedArtifacts","offset":0,"slot":"29","type":"t_array(t_string_storage)dyn_storage"},{"astId":11499,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_targetedArtifactSelectors","offset":0,"slot":"30","type":"t_array(t_struct(FuzzSelector)11471_storage)dyn_storage"},{"astId":11503,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_targetedSelectors","offset":0,"slot":"31","type":"t_array(t_struct(FuzzSelector)11471_storage)dyn_storage"},{"astId":11507,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_targetedInterfaces","offset":0,"slot":"32","type":"t_array(t_struct(FuzzInterface)11477_storage)dyn_storage"},{"astId":5139,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"IS_SCRIPT","offset":0,"slot":"33","type":"t_bool"},{"astId":17092,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"IS_TEST","offset":1,"slot":"33","type":"t_bool"},{"astId":74785,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"councilSafe","offset":2,"slot":"33","type":"t_contract(ISafe)74159"},{"astId":74788,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"councilSafeOwner","offset":0,"slot":"34","type":"t_contract(ISafe)74159"},{"astId":74790,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"councilMember1","offset":0,"slot":"35","type":"t_address"},{"astId":74793,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"councilMemberPK","offset":0,"slot":"36","type":"t_uint256"},{"astId":74796,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_nonce","offset":0,"slot":"37","type":"t_uint256"},{"astId":74798,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_safeSingleton","offset":0,"slot":"38","type":"t_address"},{"astId":63984,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"MINIMUM_STAKE","offset":0,"slot":"39","type":"t_uint256"},{"astId":63987,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"SENDER","offset":0,"slot":"40","type":"t_address"},{"astId":63989,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"TOKEN","offset":0,"slot":"41","type":"t_address"},{"astId":63991,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"COUNCIL_SAFE","offset":0,"slot":"42","type":"t_address"},{"astId":63993,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"SAFE_PROXY_FACTORY","offset":0,"slot":"43","type":"t_address"},{"astId":63995,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"REGISTRY_FACTORY","offset":0,"slot":"44","type":"t_address"},{"astId":63998,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"WAIT_TIME","offset":0,"slot":"45","type":"t_uint256"},{"astId":64001,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"CURRENT_NETWORK","offset":0,"slot":"46","type":"t_string_storage"},{"astId":64004,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"ETH_SEPOLIA","offset":0,"slot":"47","type":"t_string_storage"},{"astId":64007,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"BENEFICIARY","offset":0,"slot":"48","type":"t_address"},{"astId":64009,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"councilMemberPKEnv","offset":0,"slot":"49","type":"t_uint256"},{"astId":64011,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"allo_proxy","offset":0,"slot":"50","type":"t_address"},{"astId":64014,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"allo","offset":0,"slot":"51","type":"t_contract(Allo)1390"},{"astId":64017,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"token","offset":0,"slot":"52","type":"t_contract(GV2ERC20)64524"},{"astId":64020,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"arbitrator","offset":0,"slot":"53","type":"t_contract(IArbitrator)74033"},{"astId":64023,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"sybilScorer","offset":0,"slot":"54","type":"t_contract(ISybilScorer)70241"},{"astId":64025,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"chainId","offset":0,"slot":"55","type":"t_uint256"},{"astId":64027,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"chainName","offset":0,"slot":"56","type":"t_string_storage"}],"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)11477_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzInterface[]","numberOfBytes":"32","base":"t_struct(FuzzInterface)11477_storage"},"t_array(t_struct(FuzzSelector)11471_storage)dyn_storage":{"encoding":"dynamic_array","label":"struct StdInvariant.FuzzSelector[]","numberOfBytes":"32","base":"t_struct(FuzzSelector)11471_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(Allo)1390":{"encoding":"inplace","label":"contract Allo","numberOfBytes":"20"},"t_contract(GV2ERC20)64524":{"encoding":"inplace","label":"contract GV2ERC20","numberOfBytes":"20"},"t_contract(IArbitrator)74033":{"encoding":"inplace","label":"contract IArbitrator","numberOfBytes":"20"},"t_contract(ISafe)74159":{"encoding":"inplace","label":"contract ISafe","numberOfBytes":"20"},"t_contract(ISybilScorer)70241":{"encoding":"inplace","label":"contract ISybilScorer","numberOfBytes":"20"},"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)12468_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)12468_storage))"},"t_mapping(t_bytes32,t_struct(FindData)12468_storage)":{"encoding":"mapping","key":"t_bytes32","label":"mapping(bytes32 => struct FindData)","numberOfBytes":"32","value":"t_struct(FindData)12468_storage"},"t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)12468_storage))":{"encoding":"mapping","key":"t_bytes4","label":"mapping(bytes4 => mapping(bytes32 => struct FindData))","numberOfBytes":"32","value":"t_mapping(t_bytes32,t_struct(FindData)12468_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)7801_storage)":{"encoding":"mapping","key":"t_string_memory_ptr","label":"mapping(string => struct StdChains.Chain)","numberOfBytes":"32","value":"t_struct(Chain)7801_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)7801_storage":{"encoding":"inplace","label":"struct StdChains.Chain","numberOfBytes":"128","members":[{"astId":7794,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"name","offset":0,"slot":"0","type":"t_string_storage"},{"astId":7796,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"chainId","offset":0,"slot":"1","type":"t_uint256"},{"astId":7798,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"chainAlias","offset":0,"slot":"2","type":"t_string_storage"},{"astId":7800,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"rpcUrl","offset":0,"slot":"3","type":"t_string_storage"}]},"t_struct(FindData)12468_storage":{"encoding":"inplace","label":"struct FindData","numberOfBytes":"128","members":[{"astId":12461,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"slot","offset":0,"slot":"0","type":"t_uint256"},{"astId":12463,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"offsetLeft","offset":0,"slot":"1","type":"t_uint256"},{"astId":12465,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"offsetRight","offset":0,"slot":"2","type":"t_uint256"},{"astId":12467,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"found","offset":0,"slot":"3","type":"t_bool"}]},"t_struct(FuzzInterface)11477_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzInterface","numberOfBytes":"64","members":[{"astId":11473,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":11476,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"artifacts","offset":0,"slot":"1","type":"t_array(t_string_storage)dyn_storage"}]},"t_struct(FuzzSelector)11471_storage":{"encoding":"inplace","label":"struct StdInvariant.FuzzSelector","numberOfBytes":"64","members":[{"astId":11467,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"addr","offset":0,"slot":"0","type":"t_address"},{"astId":11470,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"selectors","offset":0,"slot":"1","type":"t_array(t_bytes4)dyn_storage"}]},"t_struct(Metadata)3098_storage":{"encoding":"inplace","label":"struct Metadata","numberOfBytes":"64","members":[{"astId":3094,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"protocol","offset":0,"slot":"0","type":"t_uint256"},{"astId":3097,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"pointer","offset":0,"slot":"1","type":"t_string_storage"}]},"t_struct(StdStorage)12493_storage":{"encoding":"inplace","label":"struct StdStorage","numberOfBytes":"256","members":[{"astId":12477,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"finds","offset":0,"slot":"0","type":"t_mapping(t_address,t_mapping(t_bytes4,t_mapping(t_bytes32,t_struct(FindData)12468_storage)))"},{"astId":12480,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_keys","offset":0,"slot":"1","type":"t_array(t_bytes32)dyn_storage"},{"astId":12482,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_sig","offset":0,"slot":"2","type":"t_bytes4"},{"astId":12484,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_depth","offset":0,"slot":"3","type":"t_uint256"},{"astId":12486,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_target","offset":0,"slot":"4","type":"t_address"},{"astId":12488,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_set","offset":0,"slot":"5","type":"t_bytes32"},{"astId":12490,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_enable_packed_slots","offset":0,"slot":"6","type":"t_bool"},{"astId":12492,"contract":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol:UpgradeCVMultichainProd","label":"_calldata","offset":0,"slot":"7","type":"t_bytes_storage"}]},"t_uint256":{"encoding":"inplace","label":"uint256","numberOfBytes":"32"}}},"ast":{"absolutePath":"pkg/contracts/script/UpgradeCVMultichainProd.s.sol","id":65197,"exportedSymbols":{"Accounts":[5026],"Allo":[1390],"ArbitrableConfig":[65973],"BaseMultiChain":[64301],"BaseStrategy":[3923],"BaseStrategyUpgradeable":[65815],"CVParams":[65982],"CVStrategyHelpers":[74761],"CVStrategyInitializeParamsV0_0":[66002],"CVStrategyInitializeParamsV0_1":[66027],"CVStrategyV0_0":[69898],"Clone":[3002],"CollateralVault":[70164],"CreateProposal":[65902],"ERC165":[57022],"ERC1967Proxy":[54318],"ERC20":[55747],"Enum":[74175],"GV2ERC20":[64524],"IAllo":[2610],"IArbitrable":[73929],"IArbitrator":[74033],"ICollateralVault":[74066],"IERC165":[57228],"IERC20":[55825],"IPointStrategy":[65881],"IRegistry":[2802],"ISybilScorer":[70241],"Math":[58094],"Metadata":[3098],"Native":[3106],"OwnableUpgradeable":[52200],"PassportScorer":[70713],"PointSystem":[65890],"PointSystemConfig":[65959],"Proposal":[65951],"ProposalDisputeInfo":[65917],"ProposalStatus":[65910],"ProposalSupport":[65956],"ProposalType":[65885],"Registry":[2295],"RegistryCommunityV0_0":[73085],"RegistryFactoryV0_0":[73455],"Safe":[74159],"SafeArbitrator":[73851],"SafeProxyFactory":[74171],"SafeSetup":[75399],"Script":[5140],"ScriptBase":[5101],"SignedMath":[58199],"StdChains":[8543],"StdCheatsSafe":[10603],"StdStorage":[12493],"StdStyle":[15663],"StdUtils":[17041],"Strings":[56998],"UUPSUpgradeable":[54969],"UpgradeCVMultichainProd":[65196],"Upgrades":[60473],"VmSafe":[20168],"console":[28807],"console2":[36932],"safeconsole":[51657],"stdJson":[12313],"stdMath":[12455],"stdStorageSafe":[13847]},"nodeType":"SourceUnit","src":"32:8855:95","nodes":[{"id":64526,"nodeType":"PragmaDirective","src":"32:23:95","nodes":[],"literals":["solidity","^","0.8",".0"]},{"id":64527,"nodeType":"ImportDirective","src":"57:32:95","nodes":[],"absolutePath":"pkg/contracts/script/BaseMultiChain.s.sol","file":"./BaseMultiChain.s.sol","nameLocation":"-1:-1:-1","scope":65197,"sourceUnit":64302,"symbolAliases":[],"unitAlias":""},{"id":64529,"nodeType":"ImportDirective","src":"90:68:95","nodes":[],"absolutePath":"pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol","file":"../src/CVStrategy/CVStrategyV0_0.sol","nameLocation":"-1:-1:-1","scope":65197,"sourceUnit":69899,"symbolAliases":[{"foreign":{"id":64528,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69898,"src":"98:14:95","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":64531,"nodeType":"ImportDirective","src":"159:89:95","nodes":[],"absolutePath":"pkg/contracts/src/RegistryCommunity/RegistryCommunityV0_0.sol","file":"../src/RegistryCommunity/RegistryCommunityV0_0.sol","nameLocation":"-1:-1:-1","scope":65197,"sourceUnit":73086,"symbolAliases":[{"foreign":{"id":64530,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73085,"src":"167:21:95","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":64533,"nodeType":"ImportDirective","src":"249:83:95","nodes":[],"absolutePath":"pkg/contracts/src/RegistryFactory/RegistryFactoryV0_0.sol","file":"../src/RegistryFactory/RegistryFactoryV0_0.sol","nameLocation":"-1:-1:-1","scope":65197,"sourceUnit":73456,"symbolAliases":[{"foreign":{"id":64532,"name":"RegistryFactoryV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73455,"src":"257:19:95","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":65196,"nodeType":"ContractDefinition","src":"334:8552:95","nodes":[{"id":64538,"nodeType":"UsingForDirective","src":"391:25:95","nodes":[],"global":false,"libraryName":{"id":64536,"name":"stdJson","nameLocations":["397:7:95"],"nodeType":"IdentifierPath","referencedDeclaration":12313,"src":"397:7:95"},"typeName":{"id":64537,"name":"string","nodeType":"ElementaryTypeName","src":"409:6:95","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}}},{"id":64771,"nodeType":"FunctionDefinition","src":"422:4865:95","nodes":[],"body":{"id":64770,"nodeType":"Block","src":"492:4795:95","nodes":[],"statements":[{"assignments":[64545],"declarations":[{"constant":false,"id":64545,"mutability":"mutable","name":"registryImplementation","nameLocation":"597:22:95","nodeType":"VariableDeclaration","scope":64770,"src":"589:30:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64544,"name":"address","nodeType":"ElementaryTypeName","src":"589:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64553,"initialValue":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"id":64550,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"NewExpression","src":"630:25:95","typeDescriptions":{"typeIdentifier":"t_function_creation_nonpayable$__$returns$_t_contract$_RegistryCommunityV0_0_$73085_$","typeString":"function () returns (contract RegistryCommunityV0_0)"},"typeName":{"id":64549,"nodeType":"UserDefinedTypeName","pathNode":{"id":64548,"name":"RegistryCommunityV0_0","nameLocations":["634:21:95"],"nodeType":"IdentifierPath","referencedDeclaration":73085,"src":"634:21:95"},"referencedDeclaration":73085,"src":"634:21:95","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73085","typeString":"contract RegistryCommunityV0_0"}}},"id":64551,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"630:27:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73085","typeString":"contract RegistryCommunityV0_0"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73085","typeString":"contract RegistryCommunityV0_0"}],"id":64547,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"622:7:95","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":64546,"name":"address","nodeType":"ElementaryTypeName","src":"622:7:95","typeDescriptions":{}}},"id":64552,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"622:36:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"589:69:95"},{"assignments":[64555],"declarations":[{"constant":false,"id":64555,"mutability":"mutable","name":"strategyImplementation","nameLocation":"676:22:95","nodeType":"VariableDeclaration","scope":64770,"src":"668:30:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64554,"name":"address","nodeType":"ElementaryTypeName","src":"668:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64557,"initialValue":{"hexValue":"307836366545384131384631386566393365466143623330663939653431353035386266383839343264","id":64556,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"701:42:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"value":"0x66eE8A18F18ef93eFaCb30f99e415058bf88942d"},"nodeType":"VariableDeclarationStatement","src":"668:75:95"},{"assignments":[64559],"declarations":[{"constant":false,"id":64559,"mutability":"mutable","name":"passportScorer","nameLocation":"795:14:95","nodeType":"VariableDeclaration","scope":64770,"src":"787:22:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64558,"name":"address","nodeType":"ElementaryTypeName","src":"787:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64566,"initialValue":{"arguments":[{"arguments":[{"hexValue":"2e50524f584945532e50415353504f52545f53434f524552","id":64563,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"850:26:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_84d81a9a69d3f885917ccd0e4b86cdf0832992495cd889de0a5675ad7ffa944a","typeString":"literal_string \".PROXIES.PASSPORT_SCORER\""},"value":".PROXIES.PASSPORT_SCORER"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_84d81a9a69d3f885917ccd0e4b86cdf0832992495cd889de0a5675ad7ffa944a","typeString":"literal_string \".PROXIES.PASSPORT_SCORER\""}],"id":64562,"name":"getKeyNetwork","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64120,"src":"836:13:95","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$returns$_t_string_memory_ptr_$","typeString":"function (string memory) view returns (string memory)"}},"id":64564,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"836:41:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":64560,"name":"networkJson","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64540,"src":"812:11:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":64561,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"824:11:95","memberName":"readAddress","nodeType":"MemberAccess","referencedDeclaration":11907,"src":"812:23:95","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_address_$attached_to$_t_string_memory_ptr_$","typeString":"function (string memory,string memory) pure returns (address)"}},"id":64565,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"812:66:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"787:91:95"},{"assignments":[64568],"declarations":[{"constant":false,"id":64568,"mutability":"mutable","name":"safeArbitrator","nameLocation":"896:14:95","nodeType":"VariableDeclaration","scope":64770,"src":"888:22:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64567,"name":"address","nodeType":"ElementaryTypeName","src":"888:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64575,"initialValue":{"arguments":[{"arguments":[{"hexValue":"2e454e56532e41524249545241544f52","id":64572,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"951:18:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_2db78e4b42f2a2f0dc29cc6ac7953d9d317d4f904df64be658dbbbf8c61d3e0e","typeString":"literal_string \".ENVS.ARBITRATOR\""},"value":".ENVS.ARBITRATOR"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_2db78e4b42f2a2f0dc29cc6ac7953d9d317d4f904df64be658dbbbf8c61d3e0e","typeString":"literal_string \".ENVS.ARBITRATOR\""}],"id":64571,"name":"getKeyNetwork","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64120,"src":"937:13:95","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$returns$_t_string_memory_ptr_$","typeString":"function (string memory) view returns (string memory)"}},"id":64573,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"937:33:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":64569,"name":"networkJson","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64540,"src":"913:11:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":64570,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"925:11:95","memberName":"readAddress","nodeType":"MemberAccess","referencedDeclaration":11907,"src":"913:23:95","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_address_$attached_to$_t_string_memory_ptr_$","typeString":"function (string memory,string memory) pure returns (address)"}},"id":64574,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"913:58:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"888:83:95"},{"assignments":[64577],"declarations":[{"constant":false,"id":64577,"mutability":"mutable","name":"json","nameLocation":"996:4:95","nodeType":"VariableDeclaration","scope":64770,"src":"982:18:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":64576,"name":"string","nodeType":"ElementaryTypeName","src":"982:6:95","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"id":64585,"initialValue":{"arguments":[{"arguments":[{"hexValue":"5b","id":64582,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1027:3:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_9f50164828976b6baa479ea39c718c745bbc0d2521b67dfde8474cbdc9711057","typeString":"literal_string \"[\""},"value":"["}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_9f50164828976b6baa479ea39c718c745bbc0d2521b67dfde8474cbdc9711057","typeString":"literal_string \"[\""}],"expression":{"id":64580,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1010:3:95","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64581,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1014:12:95","memberName":"encodePacked","nodeType":"MemberAccess","src":"1010:16:95","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":64583,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1010:21:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":64579,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1003:6:95","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":64578,"name":"string","nodeType":"ElementaryTypeName","src":"1003:6:95","typeDescriptions":{}}},"id":64584,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1003:29:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"nodeType":"VariableDeclarationStatement","src":"982:50:95"},{"assignments":[64587],"declarations":[{"constant":false,"id":64587,"mutability":"mutable","name":"registryFactoryProxy","nameLocation":"1087:20:95","nodeType":"VariableDeclaration","scope":64770,"src":"1079:28:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64586,"name":"address","nodeType":"ElementaryTypeName","src":"1079:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64594,"initialValue":{"arguments":[{"arguments":[{"hexValue":"2e50524f584945532e52454749535452595f464143544f5259","id":64591,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1148:27:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_63b323eb12c2a735941aea14fc49b66db7aa6a88e81051a15cf7adbde3e9534f","typeString":"literal_string \".PROXIES.REGISTRY_FACTORY\""},"value":".PROXIES.REGISTRY_FACTORY"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_63b323eb12c2a735941aea14fc49b66db7aa6a88e81051a15cf7adbde3e9534f","typeString":"literal_string \".PROXIES.REGISTRY_FACTORY\""}],"id":64590,"name":"getKeyNetwork","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64120,"src":"1134:13:95","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$returns$_t_string_memory_ptr_$","typeString":"function (string memory) view returns (string memory)"}},"id":64592,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1134:42:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":64588,"name":"networkJson","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64540,"src":"1110:11:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":64589,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1122:11:95","memberName":"readAddress","nodeType":"MemberAccess","referencedDeclaration":11907,"src":"1110:23:95","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_address_$attached_to$_t_string_memory_ptr_$","typeString":"function (string memory,string memory) pure returns (address)"}},"id":64593,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1110:67:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"1079:98:95"},{"assignments":[64597],"declarations":[{"constant":false,"id":64597,"mutability":"mutable","name":"registryFactory","nameLocation":"1207:15:95","nodeType":"VariableDeclaration","scope":64770,"src":"1187:35:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$73455","typeString":"contract RegistryFactoryV0_0"},"typeName":{"id":64596,"nodeType":"UserDefinedTypeName","pathNode":{"id":64595,"name":"RegistryFactoryV0_0","nameLocations":["1187:19:95"],"nodeType":"IdentifierPath","referencedDeclaration":73455,"src":"1187:19:95"},"referencedDeclaration":73455,"src":"1187:19:95","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$73455","typeString":"contract RegistryFactoryV0_0"}},"visibility":"internal"}],"id":64607,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":64603,"name":"registryFactoryProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64587,"src":"1261:20:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64602,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1253:7:95","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":64601,"name":"address","nodeType":"ElementaryTypeName","src":"1253:7:95","typeDescriptions":{}}},"id":64604,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1253:29:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64600,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1245:8:95","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":64599,"name":"address","nodeType":"ElementaryTypeName","src":"1245:8:95","stateMutability":"payable","typeDescriptions":{}}},"id":64605,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1245:38:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":64598,"name":"RegistryFactoryV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73455,"src":"1225:19:95","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryFactoryV0_0_$73455_$","typeString":"type(contract RegistryFactoryV0_0)"}},"id":64606,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1225:59:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$73455","typeString":"contract RegistryFactoryV0_0"}},"nodeType":"VariableDeclarationStatement","src":"1187:97:95"},{"assignments":[64609],"declarations":[{"constant":false,"id":64609,"mutability":"mutable","name":"setRegistryCommunityTemplate","nameLocation":"1589:28:95","nodeType":"VariableDeclaration","scope":64770,"src":"1576:41:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64608,"name":"bytes","nodeType":"ElementaryTypeName","src":"1576:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":64617,"initialValue":{"arguments":[{"expression":{"expression":{"id":64612,"name":"registryFactory","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64597,"src":"1655:15:95","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryFactoryV0_0_$73455","typeString":"contract RegistryFactoryV0_0"}},"id":64613,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1671:28:95","memberName":"setRegistryCommunityTemplate","nodeType":"MemberAccess","referencedDeclaration":73176,"src":"1655:44:95","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":64614,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1700:8:95","memberName":"selector","nodeType":"MemberAccess","src":"1655:53:95","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":64615,"name":"registryImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64545,"src":"1710:22:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":64610,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1632:3:95","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64611,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1636:18:95","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"1632:22:95","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":64616,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1632:101:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"1576:157:95"},{"expression":{"id":64631,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":64618,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64577,"src":"1743:4:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":64623,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64577,"src":"1787:4:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"arguments":[{"id":64625,"name":"registryFactoryProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64587,"src":"1816:20:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":64626,"name":"setRegistryCommunityTemplate","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64609,"src":"1838:28:95","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":64624,"name":"_createTransactionJson","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65000,"src":"1793:22:95","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_bytes_memory_ptr_$returns$_t_string_memory_ptr_$","typeString":"function (address,bytes memory) pure returns (string memory)"}},"id":64627,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1793:74:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"2c","id":64628,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"1869:3:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_3e7a35b97029f9e0cf6effd71c1a7958822e9a217d3a3aec886668a7dd8231cb","typeString":"literal_string \",\""},"value":","}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_3e7a35b97029f9e0cf6effd71c1a7958822e9a217d3a3aec886668a7dd8231cb","typeString":"literal_string \",\""}],"expression":{"id":64621,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"1770:3:95","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64622,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"1774:12:95","memberName":"encodePacked","nodeType":"MemberAccess","src":"1770:16:95","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":64629,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1770:103:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":64620,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1750:6:95","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":64619,"name":"string","nodeType":"ElementaryTypeName","src":"1750:6:95","typeDescriptions":{}}},"id":64630,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1750:133:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"1743:140:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":64632,"nodeType":"ExpressionStatement","src":"1743:140:95"},{"assignments":[64637],"declarations":[{"constant":false,"id":64637,"mutability":"mutable","name":"registryCommunityProxies","nameLocation":"2230:24:95","nodeType":"VariableDeclaration","scope":64770,"src":"2213:41:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":64635,"name":"address","nodeType":"ElementaryTypeName","src":"2213:7:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":64636,"nodeType":"ArrayTypeName","src":"2213:9:95","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"id":64644,"initialValue":{"arguments":[{"arguments":[{"hexValue":"2e50524f584945532e52454749535452595f434f4d4d554e4954494553","id":64641,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2312:31:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_c15edf8f23ff0780013ecbb49ba5823ffec965c18ca2d4139f6d0abb46d3fcf1","typeString":"literal_string \".PROXIES.REGISTRY_COMMUNITIES\""},"value":".PROXIES.REGISTRY_COMMUNITIES"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_c15edf8f23ff0780013ecbb49ba5823ffec965c18ca2d4139f6d0abb46d3fcf1","typeString":"literal_string \".PROXIES.REGISTRY_COMMUNITIES\""}],"id":64640,"name":"getKeyNetwork","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64120,"src":"2298:13:95","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$returns$_t_string_memory_ptr_$","typeString":"function (string memory) view returns (string memory)"}},"id":64642,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2298:46:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":64638,"name":"networkJson","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64540,"src":"2269:11:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":64639,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2281:16:95","memberName":"readAddressArray","nodeType":"MemberAccess","referencedDeclaration":11924,"src":"2269:28:95","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$_t_array$_t_address_$dyn_memory_ptr_$attached_to$_t_string_memory_ptr_$","typeString":"function (string memory,string memory) pure returns (address[] memory)"}},"id":64643,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2269:76:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"nodeType":"VariableDeclarationStatement","src":"2213:132:95"},{"assignments":[64649],"declarations":[{"constant":false,"id":64649,"mutability":"mutable","name":"upgradeRegistryCommunities","nameLocation":"2370:26:95","nodeType":"VariableDeclaration","scope":64770,"src":"2355:41:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":64647,"name":"bytes","nodeType":"ElementaryTypeName","src":"2355:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":64648,"nodeType":"ArrayTypeName","src":"2355:7:95","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"visibility":"internal"}],"id":64658,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64656,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":64653,"name":"registryCommunityProxies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64637,"src":"2411:24:95","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":64654,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2436:6:95","memberName":"length","nodeType":"MemberAccess","src":"2411:31:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"32","id":64655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2445:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"2411:35:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":64652,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"2399:11:95","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory[] memory)"},"typeName":{"baseType":{"id":64650,"name":"bytes","nodeType":"ElementaryTypeName","src":"2403:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":64651,"nodeType":"ArrayTypeName","src":"2403:7:95","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}}},"id":64657,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2399:48:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"nodeType":"VariableDeclarationStatement","src":"2355:92:95"},{"body":{"id":64692,"nodeType":"Block","src":"2519:220:95","statements":[{"expression":{"id":64690,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"components":[{"baseExpression":{"id":64670,"name":"upgradeRegistryCommunities","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64649,"src":"2534:26:95","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"id":64674,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64673,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":64671,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64660,"src":"2561:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"32","id":64672,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2565:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"2561:5:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2534:33:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"baseExpression":{"id":64675,"name":"upgradeRegistryCommunities","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64649,"src":"2569:26:95","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"id":64681,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64680,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64678,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":64676,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64660,"src":"2596:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"32","id":64677,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2600:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"2596:5:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":64679,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2604:1:95","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"2596:9:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"2569:37:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"id":64682,"isConstant":false,"isInlineArray":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"TupleExpression","src":"2533:74:95","typeDescriptions":{"typeIdentifier":"t_tuple$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$","typeString":"tuple(bytes memory,bytes memory)"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"baseExpression":{"id":64684,"name":"registryCommunityProxies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64637,"src":"2652:24:95","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":64686,"indexExpression":{"id":64685,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64660,"src":"2677:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2652:27:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":64687,"name":"registryImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64545,"src":"2681:22:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":64688,"name":"strategyImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64555,"src":"2705:22:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":64683,"name":"_upgradeRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64880,"src":"2626:25:95","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_address_$_t_address_$returns$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$","typeString":"function (address,address,address) pure returns (bytes memory,bytes memory)"}},"id":64689,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2626:102:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$","typeString":"tuple(bytes memory,bytes memory)"}},"src":"2533:195:95","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":64691,"nodeType":"ExpressionStatement","src":"2533:195:95"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64666,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":64663,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64660,"src":"2477:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":64664,"name":"registryCommunityProxies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64637,"src":"2481:24:95","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":64665,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2506:6:95","memberName":"length","nodeType":"MemberAccess","src":"2481:31:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2477:35:95","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":64693,"initializationExpression":{"assignments":[64660],"declarations":[{"constant":false,"id":64660,"mutability":"mutable","name":"i","nameLocation":"2470:1:95","nodeType":"VariableDeclaration","scope":64693,"src":"2462:9:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":64659,"name":"uint256","nodeType":"ElementaryTypeName","src":"2462:7:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":64662,"initialValue":{"hexValue":"30","id":64661,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2474:1:95","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"2462:13:95"},"loopExpression":{"expression":{"id":64668,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"2514:3:95","subExpression":{"id":64667,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64660,"src":"2514:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":64669,"nodeType":"ExpressionStatement","src":"2514:3:95"},"nodeType":"ForStatement","src":"2457:282:95"},{"body":{"id":64749,"nodeType":"Block","src":"2810:479:95","statements":[{"expression":{"id":64724,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":64705,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64577,"src":"2824:4:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":64710,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64577,"src":"2893:4:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"arguments":[{"baseExpression":{"id":64712,"name":"registryCommunityProxies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64637,"src":"2922:24:95","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":64714,"indexExpression":{"id":64713,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64695,"src":"2947:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2922:27:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"baseExpression":{"id":64715,"name":"upgradeRegistryCommunities","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64649,"src":"2951:26:95","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"id":64719,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64718,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":64716,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64695,"src":"2978:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"32","id":64717,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2982:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"2978:5:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"2951:33:95","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":64711,"name":"_createTransactionJson","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65000,"src":"2899:22:95","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_bytes_memory_ptr_$returns$_t_string_memory_ptr_$","typeString":"function (address,bytes memory) pure returns (string memory)"}},"id":64720,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2899:86:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"2c","id":64721,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"2987:3:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_3e7a35b97029f9e0cf6effd71c1a7958822e9a217d3a3aec886668a7dd8231cb","typeString":"literal_string \",\""},"value":","}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_3e7a35b97029f9e0cf6effd71c1a7958822e9a217d3a3aec886668a7dd8231cb","typeString":"literal_string \",\""}],"expression":{"id":64708,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"2855:3:95","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64709,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"2859:12:95","memberName":"encodePacked","nodeType":"MemberAccess","src":"2855:16:95","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":64722,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2855:153:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":64707,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2831:6:95","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":64706,"name":"string","nodeType":"ElementaryTypeName","src":"2831:6:95","typeDescriptions":{}}},"id":64723,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2831:191:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"2824:198:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":64725,"nodeType":"ExpressionStatement","src":"2824:198:95"},{"expression":{"id":64747,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":64726,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64577,"src":"3036:4:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"id":64731,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64577,"src":"3105:4:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"arguments":[{"baseExpression":{"id":64733,"name":"registryCommunityProxies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64637,"src":"3154:24:95","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":64735,"indexExpression":{"id":64734,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64695,"src":"3179:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3154:27:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"baseExpression":{"id":64736,"name":"upgradeRegistryCommunities","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64649,"src":"3183:26:95","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_ptr_$dyn_memory_ptr","typeString":"bytes memory[] memory"}},"id":64742,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64741,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64739,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":64737,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64695,"src":"3210:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"32","id":64738,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3214:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"3210:5:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"31","id":64740,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3218:1:95","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"3210:9:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"3183:37:95","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":64732,"name":"_createTransactionJson","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65000,"src":"3131:22:95","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$_t_bytes_memory_ptr_$returns$_t_string_memory_ptr_$","typeString":"function (address,bytes memory) pure returns (string memory)"}},"id":64743,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3131:90:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"2c","id":64744,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"3243:3:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_3e7a35b97029f9e0cf6effd71c1a7958822e9a217d3a3aec886668a7dd8231cb","typeString":"literal_string \",\""},"value":","}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_3e7a35b97029f9e0cf6effd71c1a7958822e9a217d3a3aec886668a7dd8231cb","typeString":"literal_string \",\""}],"expression":{"id":64729,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"3067:3:95","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64730,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"3071:12:95","memberName":"encodePacked","nodeType":"MemberAccess","src":"3067:16:95","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":64745,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3067:197:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":64728,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"3043:6:95","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":64727,"name":"string","nodeType":"ElementaryTypeName","src":"3043:6:95","typeDescriptions":{}}},"id":64746,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3043:235:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"3036:242:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":64748,"nodeType":"ExpressionStatement","src":"3036:242:95"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64701,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":64698,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64695,"src":"2768:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":64699,"name":"registryCommunityProxies","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64637,"src":"2772:24:95","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[] memory"}},"id":64700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2797:6:95","memberName":"length","nodeType":"MemberAccess","src":"2772:31:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"2768:35:95","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":64750,"initializationExpression":{"assignments":[64695],"declarations":[{"constant":false,"id":64695,"mutability":"mutable","name":"i","nameLocation":"2761:1:95","nodeType":"VariableDeclaration","scope":64750,"src":"2753:9:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":64694,"name":"uint256","nodeType":"ElementaryTypeName","src":"2753:7:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":64697,"initialValue":{"hexValue":"30","id":64696,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2765:1:95","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"2753:13:95"},"loopExpression":{"expression":{"id":64703,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"2805:3:95","subExpression":{"id":64702,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64695,"src":"2805:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":64704,"nodeType":"ExpressionStatement","src":"2805:3:95"},"nodeType":"ForStatement","src":"2748:541:95"},{"expression":{"id":64762,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":64751,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64577,"src":"4891:4:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"arguments":[{"arguments":[{"id":64757,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64577,"src":"4938:4:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":64756,"name":"_removeLastChar","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64832,"src":"4922:15:95","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_string_memory_ptr_$returns$_t_string_memory_ptr_$","typeString":"function (string memory) pure returns (string memory)"}},"id":64758,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4922:21:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"5d","id":64759,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"4945:3:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_b36bcf9cc1d9e7f60b1f757ebd8b4694b17fc592b16065d243c43b09fde00b29","typeString":"literal_string \"]\""},"value":"]"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_b36bcf9cc1d9e7f60b1f757ebd8b4694b17fc592b16065d243c43b09fde00b29","typeString":"literal_string \"]\""}],"expression":{"id":64754,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"4905:3:95","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64755,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"4909:12:95","memberName":"encodePacked","nodeType":"MemberAccess","src":"4905:16:95","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":64760,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4905:44:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":64753,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"4898:6:95","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":64752,"name":"string","nodeType":"ElementaryTypeName","src":"4898:6:95","typeDescriptions":{}}},"id":64761,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4898:52:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"src":"4891:59:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"id":64763,"nodeType":"ExpressionStatement","src":"4891:59:95"},{"expression":{"arguments":[{"id":64767,"name":"json","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64577,"src":"4973:4:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"id":64764,"name":"console","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":28807,"src":"4961:7:95","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_console_$28807_$","typeString":"type(library console)"}},"id":64766,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4969:3:95","memberName":"log","nodeType":"MemberAccess","referencedDeclaration":21338,"src":"4961:11:95","typeDescriptions":{"typeIdentifier":"t_function_internal_view$_t_string_memory_ptr_$returns$__$","typeString":"function (string memory) view"}},"id":64768,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4961:17:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":64769,"nodeType":"ExpressionStatement","src":"4961:17:95"}]},"baseFunctions":[64167],"functionSelector":"5e2dd442","implemented":true,"kind":"function","modifiers":[],"name":"runCurrentNetwork","nameLocation":"431:17:95","overrides":{"id":64542,"nodeType":"OverrideSpecifier","overrides":[],"src":"483:8:95"},"parameters":{"id":64541,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64540,"mutability":"mutable","name":"networkJson","nameLocation":"463:11:95","nodeType":"VariableDeclaration","scope":64771,"src":"449:25:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":64539,"name":"string","nodeType":"ElementaryTypeName","src":"449:6:95","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"448:27:95"},"returnParameters":{"id":64543,"nodeType":"ParameterList","parameters":[],"src":"492:0:95"},"scope":65196,"stateMutability":"nonpayable","virtual":false,"visibility":"public"},{"id":64832,"nodeType":"FunctionDefinition","src":"5293:479:95","nodes":[],"body":{"id":64831,"nodeType":"Block","src":"5377:395:95","nodes":[],"statements":[{"assignments":[64779],"declarations":[{"constant":false,"id":64779,"mutability":"mutable","name":"inputBytes","nameLocation":"5400:10:95","nodeType":"VariableDeclaration","scope":64831,"src":"5387:23:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64778,"name":"bytes","nodeType":"ElementaryTypeName","src":"5387:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":64784,"initialValue":{"arguments":[{"id":64782,"name":"input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64773,"src":"5419:5:95","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"id":64781,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5413:5:95","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes_storage_ptr_$","typeString":"type(bytes storage pointer)"},"typeName":{"id":64780,"name":"bytes","nodeType":"ElementaryTypeName","src":"5413:5:95","typeDescriptions":{}}},"id":64783,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5413:12:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"5387:38:95"},{"expression":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64789,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":64786,"name":"inputBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64779,"src":"5443:10:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":64787,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5454:6:95","memberName":"length","nodeType":"MemberAccess","src":"5443:17:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":">","rightExpression":{"hexValue":"30","id":64788,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5463:1:95","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"src":"5443:21:95","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},{"hexValue":"537472696e6720697320656d707479","id":64790,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"5466:17:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_ad35bda870a4ea0112a023f1465b7ae7f7e04b64f0e8021200944cdac4eeed9c","typeString":"literal_string \"String is empty\""},"value":"String is empty"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bool","typeString":"bool"},{"typeIdentifier":"t_stringliteral_ad35bda870a4ea0112a023f1465b7ae7f7e04b64f0e8021200944cdac4eeed9c","typeString":"literal_string \"String is empty\""}],"id":64785,"name":"require","nodeType":"Identifier","overloadedDeclarations":[-18,-18],"referencedDeclaration":-18,"src":"5435:7:95","typeDescriptions":{"typeIdentifier":"t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$","typeString":"function (bool,string memory) pure"}},"id":64791,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5435:49:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":64792,"nodeType":"ExpressionStatement","src":"5435:49:95"},{"assignments":[64794],"declarations":[{"constant":false,"id":64794,"mutability":"mutable","name":"trimmedBytes","nameLocation":"5564:12:95","nodeType":"VariableDeclaration","scope":64831,"src":"5551:25:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64793,"name":"bytes","nodeType":"ElementaryTypeName","src":"5551:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":64802,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64800,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":64797,"name":"inputBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64779,"src":"5589:10:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":64798,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5600:6:95","memberName":"length","nodeType":"MemberAccess","src":"5589:17:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":64799,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5609:1:95","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5589:21:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":64796,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"5579:9:95","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory)"},"typeName":{"id":64795,"name":"bytes","nodeType":"ElementaryTypeName","src":"5583:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},"id":64801,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5579:32:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"5551:60:95"},{"body":{"id":64824,"nodeType":"Block","src":"5673:56:95","statements":[{"expression":{"id":64822,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":64816,"name":"trimmedBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64794,"src":"5687:12:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":64818,"indexExpression":{"id":64817,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64804,"src":"5700:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"5687:15:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":64819,"name":"inputBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64779,"src":"5705:10:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":64821,"indexExpression":{"id":64820,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64804,"src":"5716:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"5705:13:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"5687:31:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":64823,"nodeType":"ExpressionStatement","src":"5687:31:95"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":64807,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64804,"src":"5641:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":64811,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":64808,"name":"inputBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64779,"src":"5645:10:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":64809,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5656:6:95","memberName":"length","nodeType":"MemberAccess","src":"5645:17:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"-","rightExpression":{"hexValue":"31","id":64810,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5665:1:95","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"src":"5645:21:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"5641:25:95","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":64825,"initializationExpression":{"assignments":[64804],"declarations":[{"constant":false,"id":64804,"mutability":"mutable","name":"i","nameLocation":"5634:1:95","nodeType":"VariableDeclaration","scope":64825,"src":"5626:9:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":64803,"name":"uint256","nodeType":"ElementaryTypeName","src":"5626:7:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":64806,"initialValue":{"hexValue":"30","id":64805,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5638:1:95","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"5626:13:95"},"loopExpression":{"expression":{"id":64814,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"5668:3:95","subExpression":{"id":64813,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64804,"src":"5668:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":64815,"nodeType":"ExpressionStatement","src":"5668:3:95"},"nodeType":"ForStatement","src":"5621:108:95"},{"expression":{"arguments":[{"id":64828,"name":"trimmedBytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64794,"src":"5752:12:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":64827,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"5745:6:95","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":64826,"name":"string","nodeType":"ElementaryTypeName","src":"5745:6:95","typeDescriptions":{}}},"id":64829,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5745:20:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":64777,"id":64830,"nodeType":"Return","src":"5738:27:95"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_removeLastChar","nameLocation":"5302:15:95","parameters":{"id":64774,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64773,"mutability":"mutable","name":"input","nameLocation":"5332:5:95","nodeType":"VariableDeclaration","scope":64832,"src":"5318:19:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":64772,"name":"string","nodeType":"ElementaryTypeName","src":"5318:6:95","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5317:21:95"},"returnParameters":{"id":64777,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64776,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64832,"src":"5362:13:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":64775,"name":"string","nodeType":"ElementaryTypeName","src":"5362:6:95","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"5361:15:95"},"scope":65196,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":64880,"nodeType":"FunctionDefinition","src":"5778:687:95","nodes":[],"body":{"id":64879,"nodeType":"Block","src":"5981:484:95","nodes":[],"statements":[{"assignments":[64847],"declarations":[{"constant":false,"id":64847,"mutability":"mutable","name":"registryCommunity","nameLocation":"6013:17:95","nodeType":"VariableDeclaration","scope":64879,"src":"5991:39:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73085","typeString":"contract RegistryCommunityV0_0"},"typeName":{"id":64846,"nodeType":"UserDefinedTypeName","pathNode":{"id":64845,"name":"RegistryCommunityV0_0","nameLocations":["5991:21:95"],"nodeType":"IdentifierPath","referencedDeclaration":73085,"src":"5991:21:95"},"referencedDeclaration":73085,"src":"5991:21:95","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73085","typeString":"contract RegistryCommunityV0_0"}},"visibility":"internal"}],"id":64854,"initialValue":{"arguments":[{"arguments":[{"id":64851,"name":"registryProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64834,"src":"6063:13:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64850,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6055:8:95","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":64849,"name":"address","nodeType":"ElementaryTypeName","src":"6055:8:95","stateMutability":"payable","typeDescriptions":{}}},"id":64852,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6055:22:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":64848,"name":"RegistryCommunityV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":73085,"src":"6033:21:95","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_RegistryCommunityV0_0_$73085_$","typeString":"type(contract RegistryCommunityV0_0)"}},"id":64853,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6033:45:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73085","typeString":"contract RegistryCommunityV0_0"}},"nodeType":"VariableDeclarationStatement","src":"5991:87:95"},{"assignments":[64856],"declarations":[{"constant":false,"id":64856,"mutability":"mutable","name":"upgradeRegistryCommunity","nameLocation":"6101:24:95","nodeType":"VariableDeclaration","scope":64879,"src":"6088:37:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64855,"name":"bytes","nodeType":"ElementaryTypeName","src":"6088:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":64864,"initialValue":{"arguments":[{"expression":{"expression":{"id":64859,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64847,"src":"6163:17:95","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73085","typeString":"contract RegistryCommunityV0_0"}},"id":64860,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6181:9:95","memberName":"upgradeTo","nodeType":"MemberAccess","referencedDeclaration":54941,"src":"6163:27:95","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":64861,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6191:8:95","memberName":"selector","nodeType":"MemberAccess","src":"6163:36:95","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":64862,"name":"registryImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64836,"src":"6201:22:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":64857,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6140:3:95","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64858,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6144:18:95","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"6140:22:95","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":64863,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6140:84:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"6088:136:95"},{"assignments":[64866],"declarations":[{"constant":false,"id":64866,"mutability":"mutable","name":"setStrategyTemplateCommunity","nameLocation":"6247:28:95","nodeType":"VariableDeclaration","scope":64879,"src":"6234:41:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64865,"name":"bytes","nodeType":"ElementaryTypeName","src":"6234:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":64874,"initialValue":{"arguments":[{"expression":{"expression":{"id":64869,"name":"registryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64847,"src":"6313:17:95","typeDescriptions":{"typeIdentifier":"t_contract$_RegistryCommunityV0_0_$73085","typeString":"contract RegistryCommunityV0_0"}},"id":64870,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6331:19:95","memberName":"setStrategyTemplate","nodeType":"MemberAccess","referencedDeclaration":71323,"src":"6313:37:95","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":64871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6351:8:95","memberName":"selector","nodeType":"MemberAccess","src":"6313:46:95","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":64872,"name":"strategyImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64838,"src":"6361:22:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":64867,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6290:3:95","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64868,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6294:18:95","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"6290:22:95","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":64873,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6290:94:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"6234:150:95"},{"expression":{"components":[{"id":64875,"name":"upgradeRegistryCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64856,"src":"6403:24:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":64876,"name":"setStrategyTemplateCommunity","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64866,"src":"6429:28:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"id":64877,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"6402:56:95","typeDescriptions":{"typeIdentifier":"t_tuple$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$","typeString":"tuple(bytes memory,bytes memory)"}},"functionReturnParameters":64844,"id":64878,"nodeType":"Return","src":"6395:63:95"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_upgradeRegistryCommunity","nameLocation":"5787:25:95","parameters":{"id":64839,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64834,"mutability":"mutable","name":"registryProxy","nameLocation":"5830:13:95","nodeType":"VariableDeclaration","scope":64880,"src":"5822:21:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64833,"name":"address","nodeType":"ElementaryTypeName","src":"5822:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64836,"mutability":"mutable","name":"registryImplementation","nameLocation":"5861:22:95","nodeType":"VariableDeclaration","scope":64880,"src":"5853:30:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64835,"name":"address","nodeType":"ElementaryTypeName","src":"5853:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64838,"mutability":"mutable","name":"strategyImplementation","nameLocation":"5901:22:95","nodeType":"VariableDeclaration","scope":64880,"src":"5893:30:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64837,"name":"address","nodeType":"ElementaryTypeName","src":"5893:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"5812:117:95"},"returnParameters":{"id":64844,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64841,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64880,"src":"5953:12:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64840,"name":"bytes","nodeType":"ElementaryTypeName","src":"5953:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":64843,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64880,"src":"5967:12:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64842,"name":"bytes","nodeType":"ElementaryTypeName","src":"5967:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"5952:28:95"},"scope":65196,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":64974,"nodeType":"FunctionDefinition","src":"6471:976:95","nodes":[],"body":{"id":64973,"nodeType":"Block","src":"6707:740:95","nodes":[],"statements":[{"assignments":[64899],"declarations":[{"constant":false,"id":64899,"mutability":"mutable","name":"cvStrategy","nameLocation":"6732:10:95","nodeType":"VariableDeclaration","scope":64973,"src":"6717:25:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69898","typeString":"contract CVStrategyV0_0"},"typeName":{"id":64898,"nodeType":"UserDefinedTypeName","pathNode":{"id":64897,"name":"CVStrategyV0_0","nameLocations":["6717:14:95"],"nodeType":"IdentifierPath","referencedDeclaration":69898,"src":"6717:14:95"},"referencedDeclaration":69898,"src":"6717:14:95","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69898","typeString":"contract CVStrategyV0_0"}},"visibility":"internal"}],"id":64906,"initialValue":{"arguments":[{"arguments":[{"id":64903,"name":"cvStrategyProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64882,"src":"6768:15:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64902,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"6760:8:95","typeDescriptions":{"typeIdentifier":"t_type$_t_address_payable_$","typeString":"type(address payable)"},"typeName":{"id":64901,"name":"address","nodeType":"ElementaryTypeName","src":"6760:8:95","stateMutability":"payable","typeDescriptions":{}}},"id":64904,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6760:24:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":64900,"name":"CVStrategyV0_0","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":69898,"src":"6745:14:95","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_CVStrategyV0_0_$69898_$","typeString":"type(contract CVStrategyV0_0)"}},"id":64905,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6745:40:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69898","typeString":"contract CVStrategyV0_0"}},"nodeType":"VariableDeclarationStatement","src":"6717:68:95"},{"assignments":[64908],"declarations":[{"constant":false,"id":64908,"mutability":"mutable","name":"upgradeCVStrategy","nameLocation":"6808:17:95","nodeType":"VariableDeclaration","scope":64973,"src":"6795:30:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64907,"name":"bytes","nodeType":"ElementaryTypeName","src":"6795:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":64916,"initialValue":{"arguments":[{"expression":{"expression":{"id":64911,"name":"cvStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64899,"src":"6851:10:95","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69898","typeString":"contract CVStrategyV0_0"}},"id":64912,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6862:9:95","memberName":"upgradeTo","nodeType":"MemberAccess","referencedDeclaration":54941,"src":"6851:20:95","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":64913,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6872:8:95","memberName":"selector","nodeType":"MemberAccess","src":"6851:29:95","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":64914,"name":"strategyImplementation","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64884,"src":"6882:22:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":64909,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6828:3:95","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64910,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6832:18:95","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"6828:22:95","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":64915,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6828:77:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"6795:110:95"},{"assignments":[64918],"declarations":[{"constant":false,"id":64918,"mutability":"mutable","name":"initStategy","nameLocation":"6928:11:95","nodeType":"VariableDeclaration","scope":64973,"src":"6915:24:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64917,"name":"bytes","nodeType":"ElementaryTypeName","src":"6915:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":64926,"initialValue":{"arguments":[{"expression":{"expression":{"id":64921,"name":"cvStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64899,"src":"6965:10:95","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69898","typeString":"contract CVStrategyV0_0"}},"id":64922,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6976:5:95","memberName":"init2","nodeType":"MemberAccess","referencedDeclaration":66381,"src":"6965:16:95","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$__$","typeString":"function (address) external"}},"id":64923,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6982:8:95","memberName":"selector","nodeType":"MemberAccess","src":"6965:25:95","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":64924,"name":"safeArbitrator","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64886,"src":"6992:14:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"id":64919,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"6942:3:95","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64920,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"6946:18:95","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"6942:22:95","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":64925,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6942:65:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"6915:92:95"},{"assignments":[64928],"declarations":[{"constant":false,"id":64928,"mutability":"mutable","name":"oldPassport","nameLocation":"7025:11:95","nodeType":"VariableDeclaration","scope":64973,"src":"7017:19:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64927,"name":"address","nodeType":"ElementaryTypeName","src":"7017:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"id":64935,"initialValue":{"arguments":[{"arguments":[],"expression":{"argumentTypes":[],"expression":{"id":64931,"name":"cvStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64899,"src":"7047:10:95","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69898","typeString":"contract CVStrategyV0_0"}},"id":64932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"7058:11:95","memberName":"sybilScorer","nodeType":"MemberAccess","referencedDeclaration":66288,"src":"7047:22:95","typeDescriptions":{"typeIdentifier":"t_function_external_view$__$returns$_t_contract$_ISybilScorer_$70241_$","typeString":"function () view external returns (contract ISybilScorer)"}},"id":64933,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7047:24:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_ISybilScorer_$70241","typeString":"contract ISybilScorer"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ISybilScorer_$70241","typeString":"contract ISybilScorer"}],"id":64930,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7039:7:95","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":64929,"name":"address","nodeType":"ElementaryTypeName","src":"7039:7:95","typeDescriptions":{}}},"id":64934,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7039:33:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"7017:55:95"},{"assignments":[64937],"declarations":[{"constant":false,"id":64937,"mutability":"mutable","name":"setSybilScorer","nameLocation":"7095:14:95","nodeType":"VariableDeclaration","scope":64973,"src":"7082:27:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64936,"name":"bytes","nodeType":"ElementaryTypeName","src":"7082:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":64939,"initialValue":{"hexValue":"","id":64938,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7112:2:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_c5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470","typeString":"literal_string \"\""},"value":""},"nodeType":"VariableDeclarationStatement","src":"7082:32:95"},{"condition":{"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":64945,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":64940,"name":"oldPassport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64928,"src":"7128:11:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"arguments":[{"hexValue":"30","id":64943,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7151:1:95","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":64942,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7143:7:95","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":{"id":64941,"name":"address","nodeType":"ElementaryTypeName","src":"7143:7:95","typeDescriptions":{}}},"id":64944,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7143:10:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"7128:25:95","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":64967,"nodeType":"IfStatement","src":"7124:251:95","trueBody":{"id":64966,"nodeType":"Block","src":"7155:220:95","statements":[{"assignments":[64947,null,null],"declarations":[{"constant":false,"id":64947,"mutability":"mutable","name":"threshold","nameLocation":"7178:9:95","nodeType":"VariableDeclaration","scope":64966,"src":"7170:17:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":64946,"name":"uint256","nodeType":"ElementaryTypeName","src":"7170:7:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},null,null],"id":64954,"initialValue":{"arguments":[{"id":64952,"name":"cvStrategyProxy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64882,"src":"7232:15:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"arguments":[{"id":64949,"name":"oldPassport","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64928,"src":"7208:11:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64948,"name":"PassportScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":70713,"src":"7193:14:95","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_PassportScorer_$70713_$","typeString":"type(contract PassportScorer)"}},"id":64950,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7193:27:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_contract$_PassportScorer_$70713","typeString":"contract PassportScorer"}},"id":64951,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"7221:10:95","memberName":"strategies","nodeType":"MemberAccess","referencedDeclaration":70270,"src":"7193:38:95","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_address_$returns$_t_uint256_$_t_bool_$_t_address_$","typeString":"function (address) view external returns (uint256,bool,address)"}},"id":64953,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7193:55:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_tuple$_t_uint256_$_t_bool_$_t_address_$","typeString":"tuple(uint256,bool,address)"}},"nodeType":"VariableDeclarationStatement","src":"7169:79:95"},{"expression":{"id":64964,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"id":64955,"name":"setSybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64937,"src":"7262:14:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"arguments":[{"expression":{"expression":{"id":64958,"name":"cvStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64899,"src":"7302:10:95","typeDescriptions":{"typeIdentifier":"t_contract$_CVStrategyV0_0_$69898","typeString":"contract CVStrategyV0_0"}},"id":64959,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"7313:14:95","memberName":"setSybilScorer","nodeType":"MemberAccess","referencedDeclaration":69104,"src":"7302:25:95","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$_t_uint256_$returns$__$","typeString":"function (address,uint256) external"}},"id":64960,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"7328:8:95","memberName":"selector","nodeType":"MemberAccess","src":"7302:34:95","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},{"id":64961,"name":"passportScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64888,"src":"7338:14:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"id":64962,"name":"threshold","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64947,"src":"7354:9:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes4","typeString":"bytes4"},{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_uint256","typeString":"uint256"}],"expression":{"id":64956,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"7279:3:95","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64957,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"7283:18:95","memberName":"encodeWithSelector","nodeType":"MemberAccess","src":"7279:22:95","typeDescriptions":{"typeIdentifier":"t_function_abiencodewithselector_pure$_t_bytes4_$returns$_t_bytes_memory_ptr_$","typeString":"function (bytes4) pure returns (bytes memory)"}},"id":64963,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7279:85:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"src":"7262:102:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":64965,"nodeType":"ExpressionStatement","src":"7262:102:95"}]}},{"expression":{"components":[{"id":64968,"name":"upgradeCVStrategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64908,"src":"7393:17:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":64969,"name":"initStategy","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64918,"src":"7412:11:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},{"id":64970,"name":"setSybilScorer","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64937,"src":"7425:14:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"id":64971,"isConstant":false,"isInlineArray":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"TupleExpression","src":"7392:48:95","typeDescriptions":{"typeIdentifier":"t_tuple$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$_t_bytes_memory_ptr_$","typeString":"tuple(bytes memory,bytes memory,bytes memory)"}},"functionReturnParameters":64896,"id":64972,"nodeType":"Return","src":"7385:55:95"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_upgradeCVStrategy","nameLocation":"6480:18:95","parameters":{"id":64889,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64882,"mutability":"mutable","name":"cvStrategyProxy","nameLocation":"6516:15:95","nodeType":"VariableDeclaration","scope":64974,"src":"6508:23:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64881,"name":"address","nodeType":"ElementaryTypeName","src":"6508:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64884,"mutability":"mutable","name":"strategyImplementation","nameLocation":"6549:22:95","nodeType":"VariableDeclaration","scope":64974,"src":"6541:30:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64883,"name":"address","nodeType":"ElementaryTypeName","src":"6541:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64886,"mutability":"mutable","name":"safeArbitrator","nameLocation":"6589:14:95","nodeType":"VariableDeclaration","scope":64974,"src":"6581:22:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64885,"name":"address","nodeType":"ElementaryTypeName","src":"6581:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64888,"mutability":"mutable","name":"passportScorer","nameLocation":"6621:14:95","nodeType":"VariableDeclaration","scope":64974,"src":"6613:22:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64887,"name":"address","nodeType":"ElementaryTypeName","src":"6613:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"6498:143:95"},"returnParameters":{"id":64896,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64891,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64974,"src":"6665:12:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64890,"name":"bytes","nodeType":"ElementaryTypeName","src":"6665:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":64893,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64974,"src":"6679:12:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64892,"name":"bytes","nodeType":"ElementaryTypeName","src":"6679:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":64895,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":64974,"src":"6693:12:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64894,"name":"bytes","nodeType":"ElementaryTypeName","src":"6693:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"6664:42:95"},"scope":65196,"stateMutability":"view","virtual":false,"visibility":"internal"},{"id":65000,"nodeType":"FunctionDefinition","src":"7453:452:95","nodes":[],"body":{"id":64999,"nodeType":"Block","src":"7554:351:95","nodes":[],"statements":[{"expression":{"arguments":[{"arguments":[{"hexValue":"7b22746f223a22","id":64987,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7625:9:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_213b04afc9350b66842b79dfc3fed9b97a1fd2044d9bbce3371e480ff3b8f3ca","typeString":"literal_string \"{\"to\":\"\""},"value":"{\"to\":\""},{"arguments":[{"id":64989,"name":"to","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64976,"src":"7669:2:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":64988,"name":"_addressToString","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65103,"src":"7652:16:95","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$_t_string_memory_ptr_$","typeString":"function (address) pure returns (string memory)"}},"id":64990,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7652:20:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"222c2276616c7565223a2230222c2264617461223a22","id":64991,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7690:24:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_f30424837d2a55536f510650617c461d5ac73e64d28da1eb90955d4933bf8203","typeString":"literal_string \"\",\"value\":\"0\",\"data\":\"\""},"value":"\",\"value\":\"0\",\"data\":\""},{"arguments":[{"id":64993,"name":"data","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":64978,"src":"7750:4:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":64992,"name":"_bytesToHexString","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65195,"src":"7732:17:95","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_bytes_memory_ptr_$returns$_t_string_memory_ptr_$","typeString":"function (bytes memory) pure returns (string memory)"}},"id":64994,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7732:23:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},{"hexValue":"222c226f7065726174696f6e223a302c22636f6e74726163744d6574686f64223a7b22696e70757473223a5b5d2c226e616d65223a22222c2270617961626c65223a66616c73657d2c22636f6e7472616374496e7075747356616c756573223a7b7d7d","id":64995,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"7773:101:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_cf6c77e9f02d5c73c0096fae4f7a10ce6feee185c5b19ed6ec3bf23aa6926be0","typeString":"literal_string \"\",\"operation\":0,\"contractMethod\":{\"inputs\":[],\"name\":\"\",\"payable\":false},\"contractInputsValues\":{}}\""},"value":"\",\"operation\":0,\"contractMethod\":{\"inputs\":[],\"name\":\"\",\"payable\":false},\"contractInputsValues\":{}}"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_stringliteral_213b04afc9350b66842b79dfc3fed9b97a1fd2044d9bbce3371e480ff3b8f3ca","typeString":"literal_string \"{\"to\":\"\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_f30424837d2a55536f510650617c461d5ac73e64d28da1eb90955d4933bf8203","typeString":"literal_string \"\",\"value\":\"0\",\"data\":\"\""},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"},{"typeIdentifier":"t_stringliteral_cf6c77e9f02d5c73c0096fae4f7a10ce6feee185c5b19ed6ec3bf23aa6926be0","typeString":"literal_string \"\",\"operation\":0,\"contractMethod\":{\"inputs\":[],\"name\":\"\",\"payable\":false},\"contractInputsValues\":{}}\""}],"expression":{"id":64985,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":-1,"src":"7591:3:95","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":64986,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberLocation":"7595:12:95","memberName":"encodePacked","nodeType":"MemberAccess","src":"7591:16:95","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":64996,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7591:297:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":64984,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"7571:6:95","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":64983,"name":"string","nodeType":"ElementaryTypeName","src":"7571:6:95","typeDescriptions":{}}},"id":64997,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7571:327:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":64982,"id":64998,"nodeType":"Return","src":"7564:334:95"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_createTransactionJson","nameLocation":"7462:22:95","parameters":{"id":64979,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64976,"mutability":"mutable","name":"to","nameLocation":"7493:2:95","nodeType":"VariableDeclaration","scope":65000,"src":"7485:10:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":64975,"name":"address","nodeType":"ElementaryTypeName","src":"7485:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"},{"constant":false,"id":64978,"mutability":"mutable","name":"data","nameLocation":"7510:4:95","nodeType":"VariableDeclaration","scope":65000,"src":"7497:17:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":64977,"name":"bytes","nodeType":"ElementaryTypeName","src":"7497:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"7484:31:95"},"returnParameters":{"id":64982,"nodeType":"ParameterList","parameters":[{"constant":false,"id":64981,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65000,"src":"7539:13:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":64980,"name":"string","nodeType":"ElementaryTypeName","src":"7539:6:95","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"7538:15:95"},"scope":65196,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65103,"nodeType":"FunctionDefinition","src":"7911:498:95","nodes":[],"body":{"id":65102,"nodeType":"Block","src":"7990:419:95","nodes":[],"statements":[{"assignments":[65008],"declarations":[{"constant":false,"id":65008,"mutability":"mutable","name":"value","nameLocation":"8008:5:95","nodeType":"VariableDeclaration","scope":65102,"src":"8000:13:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":65007,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8000:7:95","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"id":65019,"initialValue":{"arguments":[{"arguments":[{"arguments":[{"id":65015,"name":"_addr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65002,"src":"8040:5:95","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":65014,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8032:7:95","typeDescriptions":{"typeIdentifier":"t_type$_t_uint160_$","typeString":"type(uint160)"},"typeName":{"id":65013,"name":"uint160","nodeType":"ElementaryTypeName","src":"8032:7:95","typeDescriptions":{}}},"id":65016,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8032:14:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint160","typeString":"uint160"}],"id":65012,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8024:7:95","typeDescriptions":{"typeIdentifier":"t_type$_t_uint256_$","typeString":"type(uint256)"},"typeName":{"id":65011,"name":"uint256","nodeType":"ElementaryTypeName","src":"8024:7:95","typeDescriptions":{}}},"id":65017,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8024:23:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":65010,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8016:7:95","typeDescriptions":{"typeIdentifier":"t_type$_t_bytes32_$","typeString":"type(bytes32)"},"typeName":{"id":65009,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8016:7:95","typeDescriptions":{}}},"id":65018,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8016:32:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"8000:48:95"},{"assignments":[65021],"declarations":[{"constant":false,"id":65021,"mutability":"mutable","name":"alphabet","nameLocation":"8071:8:95","nodeType":"VariableDeclaration","scope":65102,"src":"8058:21:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":65020,"name":"bytes","nodeType":"ElementaryTypeName","src":"8058:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":65023,"initialValue":{"hexValue":"30313233343536373839616263646566","id":65022,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8082:18:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_cb29997ed99ead0db59ce4d12b7d3723198c827273e5796737c926d78019c39f","typeString":"literal_string \"0123456789abcdef\""},"value":"0123456789abcdef"},"nodeType":"VariableDeclarationStatement","src":"8058:42:95"},{"assignments":[65025],"declarations":[{"constant":false,"id":65025,"mutability":"mutable","name":"str","nameLocation":"8124:3:95","nodeType":"VariableDeclaration","scope":65102,"src":"8111:16:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":65024,"name":"bytes","nodeType":"ElementaryTypeName","src":"8111:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":65030,"initialValue":{"arguments":[{"hexValue":"3432","id":65028,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8140:2:95","typeDescriptions":{"typeIdentifier":"t_rational_42_by_1","typeString":"int_const 42"},"value":"42"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_42_by_1","typeString":"int_const 42"}],"id":65027,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"8130:9:95","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory)"},"typeName":{"id":65026,"name":"bytes","nodeType":"ElementaryTypeName","src":"8134:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},"id":65029,"isConstant":false,"isLValue":false,"isPure":true,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8130:13:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"8111:32:95"},{"expression":{"id":65035,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":65031,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65025,"src":"8153:3:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65033,"indexExpression":{"hexValue":"30","id":65032,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8157:1:95","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8153:6:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":65034,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8162:3:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d","typeString":"literal_string \"0\""},"value":"0"},"src":"8153:12:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":65036,"nodeType":"ExpressionStatement","src":"8153:12:95"},{"expression":{"id":65041,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":65037,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65025,"src":"8175:3:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65039,"indexExpression":{"hexValue":"31","id":65038,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8179:1:95","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8175:6:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"78","id":65040,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8184:3:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_7521d1cadbcfa91eec65aa16715b94ffc1c9654ba57ea2ef1a2127bca1127a83","typeString":"literal_string \"x\""},"value":"x"},"src":"8175:12:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":65042,"nodeType":"ExpressionStatement","src":"8175:12:95"},{"body":{"id":65095,"nodeType":"Block","src":"8230:145:95","statements":[{"expression":{"id":65072,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":65053,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65025,"src":"8244:3:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65059,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65058,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":65054,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8248:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65057,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":65055,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65044,"src":"8252:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"32","id":65056,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8256:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"8252:5:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8248:9:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8244:14:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":65060,"name":"alphabet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65021,"src":"8261:8:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65071,"indexExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"id":65069,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":65063,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65008,"src":"8276:5:95","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":65067,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65066,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":65064,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65044,"src":"8282:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"3132","id":65065,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8286:2:95","typeDescriptions":{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},"value":"12"},"src":"8282:6:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8276:13:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"34","id":65068,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8293:1:95","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"8276:18:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":65062,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8270:5:95","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":65061,"name":"uint8","nodeType":"ElementaryTypeName","src":"8270:5:95","typeDescriptions":{}}},"id":65070,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8270:25:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8261:35:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"8244:52:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":65073,"nodeType":"ExpressionStatement","src":"8244:52:95"},{"expression":{"id":65093,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":65074,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65025,"src":"8310:3:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65080,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65079,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"33","id":65075,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8314:1:95","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65078,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":65076,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65044,"src":"8318:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"32","id":65077,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8322:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"8318:5:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8314:9:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8310:14:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":65081,"name":"alphabet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65021,"src":"8327:8:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65092,"indexExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"id":65090,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":65084,"name":"value","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65008,"src":"8342:5:95","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":65088,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65087,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":65085,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65044,"src":"8348:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"hexValue":"3132","id":65086,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8352:2:95","typeDescriptions":{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},"value":"12"},"src":"8348:6:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8342:13:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783066","id":65089,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8358:4:95","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"0x0f"},"src":"8342:20:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":65083,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8336:5:95","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":65082,"name":"uint8","nodeType":"ElementaryTypeName","src":"8336:5:95","typeDescriptions":{}}},"id":65091,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8336:27:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8327:37:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"8310:54:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":65094,"nodeType":"ExpressionStatement","src":"8310:54:95"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65049,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":65047,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65044,"src":"8217:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"hexValue":"3230","id":65048,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8221:2:95","typeDescriptions":{"typeIdentifier":"t_rational_20_by_1","typeString":"int_const 20"},"value":"20"},"src":"8217:6:95","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":65096,"initializationExpression":{"assignments":[65044],"declarations":[{"constant":false,"id":65044,"mutability":"mutable","name":"i","nameLocation":"8210:1:95","nodeType":"VariableDeclaration","scope":65096,"src":"8202:9:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65043,"name":"uint256","nodeType":"ElementaryTypeName","src":"8202:7:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":65046,"initialValue":{"hexValue":"30","id":65045,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8214:1:95","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"8202:13:95"},"loopExpression":{"expression":{"id":65051,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"8225:3:95","subExpression":{"id":65050,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65044,"src":"8225:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":65052,"nodeType":"ExpressionStatement","src":"8225:3:95"},"nodeType":"ForStatement","src":"8197:178:95"},{"expression":{"arguments":[{"id":65099,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65025,"src":"8398:3:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":65098,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8391:6:95","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":65097,"name":"string","nodeType":"ElementaryTypeName","src":"8391:6:95","typeDescriptions":{}}},"id":65100,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8391:11:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":65006,"id":65101,"nodeType":"Return","src":"8384:18:95"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_addressToString","nameLocation":"7920:16:95","parameters":{"id":65003,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65002,"mutability":"mutable","name":"_addr","nameLocation":"7945:5:95","nodeType":"VariableDeclaration","scope":65103,"src":"7937:13:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":65001,"name":"address","nodeType":"ElementaryTypeName","src":"7937:7:95","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"visibility":"internal"}],"src":"7936:15:95"},"returnParameters":{"id":65006,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65005,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65103,"src":"7975:13:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65004,"name":"string","nodeType":"ElementaryTypeName","src":"7975:6:95","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"7974:15:95"},"scope":65196,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":65195,"nodeType":"FunctionDefinition","src":"8415:469:95","nodes":[],"body":{"id":65194,"nodeType":"Block","src":"8501:383:95","nodes":[],"statements":[{"assignments":[65111],"declarations":[{"constant":false,"id":65111,"mutability":"mutable","name":"alphabet","nameLocation":"8524:8:95","nodeType":"VariableDeclaration","scope":65194,"src":"8511:21:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":65110,"name":"bytes","nodeType":"ElementaryTypeName","src":"8511:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":65113,"initialValue":{"hexValue":"30313233343536373839616263646566","id":65112,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8535:18:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_cb29997ed99ead0db59ce4d12b7d3723198c827273e5796737c926d78019c39f","typeString":"literal_string \"0123456789abcdef\""},"value":"0123456789abcdef"},"nodeType":"VariableDeclarationStatement","src":"8511:42:95"},{"assignments":[65115],"declarations":[{"constant":false,"id":65115,"mutability":"mutable","name":"str","nameLocation":"8577:3:95","nodeType":"VariableDeclaration","scope":65194,"src":"8564:16:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":65114,"name":"bytes","nodeType":"ElementaryTypeName","src":"8564:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"id":65125,"initialValue":{"arguments":[{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65123,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":65118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8593:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65122,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"expression":{"id":65119,"name":"_bytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65105,"src":"8597:6:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65120,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8604:6:95","memberName":"length","nodeType":"MemberAccess","src":"8597:13:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"32","id":65121,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8613:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"8597:17:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8593:21:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_uint256","typeString":"uint256"}],"id":65117,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"NewExpression","src":"8583:9:95","typeDescriptions":{"typeIdentifier":"t_function_objectcreation_pure$_t_uint256_$returns$_t_bytes_memory_ptr_$","typeString":"function (uint256) pure returns (bytes memory)"},"typeName":{"id":65116,"name":"bytes","nodeType":"ElementaryTypeName","src":"8587:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}}},"id":65124,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8583:32:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"nodeType":"VariableDeclarationStatement","src":"8564:51:95"},{"expression":{"id":65130,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":65126,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65115,"src":"8625:3:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65128,"indexExpression":{"hexValue":"30","id":65127,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8629:1:95","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8625:6:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"30","id":65129,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8634:3:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_044852b2a670ade5407e78fb2863c51de9fcb96542a07186fe3aeda6bb8a116d","typeString":"literal_string \"0\""},"value":"0"},"src":"8625:12:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":65131,"nodeType":"ExpressionStatement","src":"8625:12:95"},{"expression":{"id":65136,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":65132,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65115,"src":"8647:3:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65134,"indexExpression":{"hexValue":"31","id":65133,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8651:1:95","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8647:6:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"hexValue":"78","id":65135,"isConstant":false,"isLValue":false,"isPure":true,"kind":"string","lValueRequested":false,"nodeType":"Literal","src":"8656:3:95","typeDescriptions":{"typeIdentifier":"t_stringliteral_7521d1cadbcfa91eec65aa16715b94ffc1c9654ba57ea2ef1a2127bca1127a83","typeString":"literal_string \"x\""},"value":"x"},"src":"8647:12:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":65137,"nodeType":"ExpressionStatement","src":"8647:12:95"},{"body":{"id":65187,"nodeType":"Block","src":"8713:137:95","statements":[{"expression":{"id":65166,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":65149,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65115,"src":"8727:3:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65155,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65154,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"32","id":65150,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8731:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65153,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":65151,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65139,"src":"8735:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"32","id":65152,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8739:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"8735:5:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8731:9:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8727:14:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":65156,"name":"alphabet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65111,"src":"8744:8:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65165,"indexExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"id":65163,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":65159,"name":"_bytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65105,"src":"8759:6:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65161,"indexExpression":{"id":65160,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65139,"src":"8766:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8759:9:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"BinaryOperation","operator":">>","rightExpression":{"hexValue":"34","id":65162,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8772:1:95","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},"src":"8759:14:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":65158,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8753:5:95","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":65157,"name":"uint8","nodeType":"ElementaryTypeName","src":"8753:5:95","typeDescriptions":{}}},"id":65164,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8753:21:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8744:31:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"8727:48:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":65167,"nodeType":"ExpressionStatement","src":"8727:48:95"},{"expression":{"id":65185,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"baseExpression":{"id":65168,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65115,"src":"8789:3:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65174,"indexExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65173,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"hexValue":"33","id":65169,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8793:1:95","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},"nodeType":"BinaryOperation","operator":"+","rightExpression":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65172,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":65170,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65139,"src":"8797:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"*","rightExpression":{"hexValue":"32","id":65171,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8801:1:95","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},"src":"8797:5:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8793:9:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":true,"nodeType":"IndexAccess","src":"8789:14:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"baseExpression":{"id":65175,"name":"alphabet","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65111,"src":"8806:8:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65184,"indexExpression":{"arguments":[{"commonType":{"typeIdentifier":"t_bytes1","typeString":"bytes1"},"id":65182,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"baseExpression":{"id":65178,"name":"_bytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65105,"src":"8821:6:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65180,"indexExpression":{"id":65179,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65139,"src":"8828:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8821:9:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"nodeType":"BinaryOperation","operator":"&","rightExpression":{"hexValue":"30783066","id":65181,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8833:4:95","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"0x0f"},"src":"8821:16:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes1","typeString":"bytes1"}],"id":65177,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8815:5:95","typeDescriptions":{"typeIdentifier":"t_type$_t_uint8_$","typeString":"type(uint8)"},"typeName":{"id":65176,"name":"uint8","nodeType":"ElementaryTypeName","src":"8815:5:95","typeDescriptions":{}}},"id":65183,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8815:23:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"isConstant":false,"isLValue":true,"isPure":false,"lValueRequested":false,"nodeType":"IndexAccess","src":"8806:33:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"src":"8789:50:95","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":65186,"nodeType":"ExpressionStatement","src":"8789:50:95"}]},"condition":{"commonType":{"typeIdentifier":"t_uint256","typeString":"uint256"},"id":65145,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"id":65142,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65139,"src":"8689:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"nodeType":"BinaryOperation","operator":"<","rightExpression":{"expression":{"id":65143,"name":"_bytes","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65105,"src":"8693:6:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}},"id":65144,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8700:6:95","memberName":"length","nodeType":"MemberAccess","src":"8693:13:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"src":"8689:17:95","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":65188,"initializationExpression":{"assignments":[65139],"declarations":[{"constant":false,"id":65139,"mutability":"mutable","name":"i","nameLocation":"8682:1:95","nodeType":"VariableDeclaration","scope":65188,"src":"8674:9:95","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":65138,"name":"uint256","nodeType":"ElementaryTypeName","src":"8674:7:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"id":65141,"initialValue":{"hexValue":"30","id":65140,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8686:1:95","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"},"nodeType":"VariableDeclarationStatement","src":"8674:13:95"},"loopExpression":{"expression":{"id":65147,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"nodeType":"UnaryOperation","operator":"++","prefix":false,"src":"8708:3:95","subExpression":{"id":65146,"name":"i","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65139,"src":"8708:1:95","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":65148,"nodeType":"ExpressionStatement","src":"8708:3:95"},"nodeType":"ForStatement","src":"8669:181:95"},{"expression":{"arguments":[{"id":65191,"name":"str","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":65115,"src":"8873:3:95","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":65190,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"8866:6:95","typeDescriptions":{"typeIdentifier":"t_type$_t_string_storage_ptr_$","typeString":"type(string storage pointer)"},"typeName":{"id":65189,"name":"string","nodeType":"ElementaryTypeName","src":"8866:6:95","typeDescriptions":{}}},"id":65192,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8866:11:95","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}},"functionReturnParameters":65109,"id":65193,"nodeType":"Return","src":"8859:18:95"}]},"implemented":true,"kind":"function","modifiers":[],"name":"_bytesToHexString","nameLocation":"8424:17:95","parameters":{"id":65106,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65105,"mutability":"mutable","name":"_bytes","nameLocation":"8455:6:95","nodeType":"VariableDeclaration","scope":65195,"src":"8442:19:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":65104,"name":"bytes","nodeType":"ElementaryTypeName","src":"8442:5:95","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"8441:21:95"},"returnParameters":{"id":65109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":65108,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":65195,"src":"8486:13:95","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":65107,"name":"string","nodeType":"ElementaryTypeName","src":"8486:6:95","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"visibility":"internal"}],"src":"8485:15:95"},"scope":65196,"stateMutability":"pure","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[{"baseName":{"id":64534,"name":"BaseMultiChain","nameLocations":["370:14:95"],"nodeType":"IdentifierPath","referencedDeclaration":64301,"src":"370:14:95"},"id":64535,"nodeType":"InheritanceSpecifier","src":"370:14:95"}],"canonicalName":"UpgradeCVMultichainProd","contractDependencies":[73085],"contractKind":"contract","fullyImplemented":true,"linearizedBaseContracts":[65196,64301,75399,17093,5140,17041,11721,74761,5026,11396,10603,8543,7761,5092,5101,5089,3106],"name":"UpgradeCVMultichainProd","nameLocation":"343:23:95","scope":65197,"usedErrors":[]}],"license":"MIT"},"id":95} \ No newline at end of file diff --git a/pkg/contracts/script/DeployCVMultiChain.s.sol b/pkg/contracts/script/DeployCVMultiChain.s.sol index 428903428..fee52f8a0 100644 --- a/pkg/contracts/script/DeployCVMultiChain.s.sol +++ b/pkg/contracts/script/DeployCVMultiChain.s.sol @@ -53,10 +53,10 @@ contract DeployCVMultiChain is Native, CVStrategyHelpers, Script, SafeSetup { address BENEFICIARY = 0xb05A948B5c1b057B88D381bDe3A375EfEA87EbAD; - address public PROXY_OWNER = 0xD28473FbD87183864CAc0482DBEe1C54EE3d8Cd1; + address public PROXY_OWNER = 0x333837ec0D4F3D9b3dF0216996a148B46ce3541b; RegistryFactoryV0_0 public REGISTRY_FACTORY; // = RegistryFactoryV0_0(0xd7b72Fcb6A4e2857685175F609D1498ff5392E46); - PassportScorer PASSPORT_SCORER = PassportScorer(0x32Fe66622a4D4607241AC723e23Fef487ACDABb5); - SafeArbitrator ARBITRATOR = SafeArbitrator(0x5534FECacD5f84e22C0aBA9ea9813ff594D37262); + PassportScorer PASSPORT_SCORER = PassportScorer(0xD5a38e558582D32FfdC3b3a1A9f4D0D56e8b3115); + SafeArbitrator ARBITRATOR = SafeArbitrator(0x05EC011e0d8B4d2add98e1cc4AC7DF38a95EF4Ed); uint256 councilMemberPKEnv; address allo_proxy; diff --git a/pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol b/pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol index 73058d838..f5d806cbc 100644 --- a/pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol +++ b/pkg/contracts/src/CVStrategy/CVStrategyV0_0.sol @@ -1061,14 +1061,18 @@ contract CVStrategyV0_0 is BaseStrategyUpgradeable, IArbitrable, IPointStrategy, ) >> 64; if (totalEffectiveActivePoints() != 0) { - uint256 thresholdOverride = ( - ((cvParams.minThresholdPoints / totalEffectiveActivePoints()) * D) - * (getMaxConviction(totalEffectiveActivePoints())) - ) / 10 ** 11; + uint256 thresholdOverride = calculateThresholdOverride(); _threshold = _threshold > thresholdOverride ? _threshold : thresholdOverride; } } + function calculateThresholdOverride() public view virtual returns (uint256) { + return ( + (cvParams.minThresholdPoints * D * getMaxConviction(totalEffectiveActivePoints())) + / (totalEffectiveActivePoints()) + ) / 10 ** 7; + } + /** * Multiply _a by _b / 2^128. Parameter _a should be less than or equal to * 2^128 and parameter _b should be less than 2^128. @@ -1227,7 +1231,7 @@ contract CVStrategyV0_0 is BaseStrategyUpgradeable, IArbitrable, IPointStrategy, function setSybilScorer(address _sybilScorer, uint256 threshold) external virtual { if (msg.sender != address(registryCommunity.councilSafe()) && msg.sender != owner()) { - revert OnlyCouncilSafe(); + revert OnlyCouncilSafe(); } _revertZeroAddress(_sybilScorer); sybilScorer = ISybilScorer(_sybilScorer); diff --git a/pkg/subgraph/.graphclient/index.d.ts b/pkg/subgraph/.graphclient/index.d.ts index 00a3ebd3a..8df9bbea3 100644 --- a/pkg/subgraph/.graphclient/index.d.ts +++ b/pkg/subgraph/.graphclient/index.d.ts @@ -3712,7 +3712,7 @@ export type getPoolDataQueryVariables = Exact<{ export type getPoolDataQuery = { allos: Array>; tokenGarden?: Maybe>; - cvstrategies: Array<(Pick & { + cvstrategies: Array<(Pick & { sybilScorer?: Maybe>; memberActive?: Maybe>>; config: Pick; @@ -3753,7 +3753,7 @@ export type getStrategyByPoolQueryVariables = Exact<{ poolId: Scalars['BigInt']['input']; }>; export type getStrategyByPoolQuery = { - cvstrategies: Array<(Pick & { + cvstrategies: Array<(Pick & { config: Pick; memberActive?: Maybe>>; registryCommunity: (Pick & { diff --git a/pkg/subgraph/.graphclient/index.js b/pkg/subgraph/.graphclient/index.js index a8c977d51..be34218bd 100644 --- a/pkg/subgraph/.graphclient/index.js +++ b/pkg/subgraph/.graphclient/index.js @@ -1,815 +1,896 @@ -import { gql } from '@graphql-mesh/utils'; -import { PubSub } from '@graphql-mesh/utils'; -import { DefaultLogger } from '@graphql-mesh/utils'; +import { gql } from "@graphql-mesh/utils"; +import { PubSub } from "@graphql-mesh/utils"; +import { DefaultLogger } from "@graphql-mesh/utils"; import MeshCache from "@graphql-mesh/cache-localforage"; -import { fetch as fetchFn } from '@whatwg-node/fetch'; +import { fetch as fetchFn } from "@whatwg-node/fetch"; import GraphqlHandler from "@graphql-mesh/graphql"; import BareMerger from "@graphql-mesh/merger-bare"; -import { printWithCache } from '@graphql-mesh/utils'; -import { usePersistedOperations } from '@graphql-yoga/plugin-persisted-operations'; -import { createMeshHTTPHandler } from '@graphql-mesh/http'; -import { getMesh } from '@graphql-mesh/runtime'; -import { MeshStore, FsStoreStorageAdapter } from '@graphql-mesh/store'; -import { path as pathModule } from '@graphql-mesh/cross-helpers'; +import { printWithCache } from "@graphql-mesh/utils"; +import { usePersistedOperations } from "@graphql-yoga/plugin-persisted-operations"; +import { createMeshHTTPHandler } from "@graphql-mesh/http"; +import { getMesh } from "@graphql-mesh/runtime"; +import { MeshStore, FsStoreStorageAdapter } from "@graphql-mesh/store"; +import { path as pathModule } from "@graphql-mesh/cross-helpers"; import * as importedModule$0 from "./sources/gv2/introspectionSchema.js"; -import { fileURLToPath } from '@graphql-mesh/utils'; -const baseDir = pathModule.join(pathModule.dirname(fileURLToPath(import.meta.url)), '..'); +import { fileURLToPath } from "@graphql-mesh/utils"; +const baseDir = pathModule.join( + pathModule.dirname(fileURLToPath(import.meta.url)), + "..", +); const importFn = (moduleId) => { - const relativeModuleId = (pathModule.isAbsolute(moduleId) ? pathModule.relative(baseDir, moduleId) : moduleId).split('\\').join('/').replace(baseDir + '/', ''); - switch (relativeModuleId) { - case ".graphclient/sources/gv2/introspectionSchema.js": - return Promise.resolve(importedModule$0); - default: - return Promise.reject(new Error(`Cannot find module '${relativeModuleId}'.`)); - } + const relativeModuleId = ( + pathModule.isAbsolute(moduleId) + ? pathModule.relative(baseDir, moduleId) + : moduleId + ) + .split("\\") + .join("/") + .replace(baseDir + "/", ""); + switch (relativeModuleId) { + case ".graphclient/sources/gv2/introspectionSchema.js": + return Promise.resolve(importedModule$0); + default: + return Promise.reject( + new Error(`Cannot find module '${relativeModuleId}'.`), + ); + } }; -const rootStore = new MeshStore('.graphclient', new FsStoreStorageAdapter({ +const rootStore = new MeshStore( + ".graphclient", + new FsStoreStorageAdapter({ cwd: baseDir, importFn, fileType: "js", -}), { + }), + { readonly: true, - validate: false -}); + validate: false, + }, +); export const rawServeConfig = undefined; export async function getMeshOptions() { - const pubsub = new PubSub(); - const sourcesStore = rootStore.child('sources'); - const logger = new DefaultLogger("GraphClient"); - const cache = new MeshCache({ - ...{}, - importFn, - store: rootStore.child('cache'), - pubsub, - logger, - }); - const sources = []; - const transforms = []; - const additionalEnvelopPlugins = []; - const gv2Transforms = []; - const additionalTypeDefs = []; - const gv2Handler = new GraphqlHandler({ - name: "gv2", - config: { "endpoint": "https://api.studio.thegraph.com/query/70985/gardens-v2---arbitrum-sepolia/version/latest" }, - baseDir, - cache, - pubsub, - store: sourcesStore.child("gv2"), - logger: logger.child("gv2"), - importFn, - }); - sources[0] = { - name: 'gv2', - handler: gv2Handler, - transforms: gv2Transforms - }; - const additionalResolvers = []; - const merger = new BareMerger({ - cache, - pubsub, - logger: logger.child('bareMerger'), - store: rootStore.child('bareMerger') - }); - const documentHashMap = { - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetFactoriesDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetTokenGardensDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetMemberStrategyDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": IsMemberDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetMemberDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetPoolCreationDataDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetProposalSupportersDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetGardenCommunitiesDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetCommunityDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetCommunityCreationDataDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetPoolDataDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetProposalDataDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetAlloDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetStrategyByPoolDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetTokenTitleDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetCommunityTitlesDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetPoolTitlesDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetProposalTitlesDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetPassportScorerDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetPassportStrategyDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetPassportUserDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetProposalDisputesDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetArbitrableConfigsDocument, - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": GetMemberPassportAndCommunitiesDocument - }; - additionalEnvelopPlugins.push(usePersistedOperations({ - getPersistedOperation(key) { - return documentHashMap[key]; + const pubsub = new PubSub(); + const sourcesStore = rootStore.child("sources"); + const logger = new DefaultLogger("GraphClient"); + const cache = new MeshCache({ + ...{}, + importFn, + store: rootStore.child("cache"), + pubsub, + logger, + }); + const sources = []; + const transforms = []; + const additionalEnvelopPlugins = []; + const gv2Transforms = []; + const additionalTypeDefs = []; + const gv2Handler = new GraphqlHandler({ + name: "gv2", + config: { + endpoint: + "https://api.studio.thegraph.com/query/40931/gardens-v2---arbitrum-sepolia/0.2.0", + }, + baseDir, + cache, + pubsub, + store: sourcesStore.child("gv2"), + logger: logger.child("gv2"), + importFn, + }); + sources[0] = { + name: "gv2", + handler: gv2Handler, + transforms: gv2Transforms, + }; + const additionalResolvers = []; + const merger = new BareMerger({ + cache, + pubsub, + logger: logger.child("bareMerger"), + store: rootStore.child("bareMerger"), + }); + const documentHashMap = { + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetFactoriesDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetTokenGardensDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetMemberStrategyDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + IsMemberDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetMemberDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetPoolCreationDataDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetGardenCommunitiesDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetCommunityDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetCommunityCreationDataDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetPoolDataDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetProposalDataDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetAlloDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetStrategyByPoolDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetTokenTitleDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetCommunityTitlesDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetPoolTitlesDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetProposalTitlesDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetPassportScorerDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetPassportStrategyDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetPassportUserDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetProposalDisputesDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetArbitrableConfigsDocument, + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa": + GetMemberPassportAndCommunitiesDocument, + }; + additionalEnvelopPlugins.push( + usePersistedOperations({ + getPersistedOperation(key) { + return documentHashMap[key]; + }, + ...{}, + }), + ); + return { + sources, + transforms, + additionalTypeDefs, + additionalResolvers, + cache, + pubsub, + merger, + logger, + additionalEnvelopPlugins, + get documents() { + return [ + { + document: GetFactoriesDocument, + get rawSDL() { + return printWithCache(GetFactoriesDocument); + }, + location: "GetFactoriesDocument.graphql", + sha256Hash: + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa", + }, + { + document: GetTokenGardensDocument, + get rawSDL() { + return printWithCache(GetTokenGardensDocument); + }, + location: "GetTokenGardensDocument.graphql", + sha256Hash: + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa", + }, + { + document: GetMemberStrategyDocument, + get rawSDL() { + return printWithCache(GetMemberStrategyDocument); + }, + location: "GetMemberStrategyDocument.graphql", + sha256Hash: + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa", + }, + { + document: IsMemberDocument, + get rawSDL() { + return printWithCache(IsMemberDocument); + }, + location: "IsMemberDocument.graphql", + sha256Hash: + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa", + }, + { + document: GetMemberDocument, + get rawSDL() { + return printWithCache(GetMemberDocument); + }, + location: "GetMemberDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetPoolCreationDataDocument, + get rawSDL() { + return printWithCache(GetPoolCreationDataDocument); + }, + location: "GetPoolCreationDataDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetGardenCommunitiesDocument, + get rawSDL() { + return printWithCache(GetGardenCommunitiesDocument); + }, + location: "GetGardenCommunitiesDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetCommunityDocument, + get rawSDL() { + return printWithCache(GetCommunityDocument); + }, + location: "GetCommunityDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetCommunityCreationDataDocument, + get rawSDL() { + return printWithCache(GetCommunityCreationDataDocument); + }, + location: "GetCommunityCreationDataDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetPoolDataDocument, + get rawSDL() { + return printWithCache(GetPoolDataDocument); + }, + location: "GetPoolDataDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetProposalDataDocument, + get rawSDL() { + return printWithCache(GetProposalDataDocument); + }, + location: "GetProposalDataDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetAlloDocument, + get rawSDL() { + return printWithCache(GetAlloDocument); + }, + location: "GetAlloDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetStrategyByPoolDocument, + get rawSDL() { + return printWithCache(GetStrategyByPoolDocument); + }, + location: "GetStrategyByPoolDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetTokenTitleDocument, + get rawSDL() { + return printWithCache(GetTokenTitleDocument); + }, + location: "GetTokenTitleDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetCommunityTitlesDocument, + get rawSDL() { + return printWithCache(GetCommunityTitlesDocument); + }, + location: "GetCommunityTitlesDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetPoolTitlesDocument, + get rawSDL() { + return printWithCache(GetPoolTitlesDocument); + }, + location: "GetPoolTitlesDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetProposalTitlesDocument, + get rawSDL() { + return printWithCache(GetProposalTitlesDocument); + }, + location: "GetProposalTitlesDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetPassportScorerDocument, + get rawSDL() { + return printWithCache(GetPassportScorerDocument); + }, + location: "GetPassportScorerDocument.graphql", + sha256Hash: + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec", + }, + { + document: GetPassportStrategyDocument, + get rawSDL() { + return printWithCache(GetPassportStrategyDocument); + }, + location: "GetPassportStrategyDocument.graphql", + sha256Hash: + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa", + }, + { + document: GetPassportUserDocument, + get rawSDL() { + return printWithCache(GetPassportUserDocument); + }, + location: "GetPassportUserDocument.graphql", + sha256Hash: + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa", }, - ...{} - })); - return { - sources, - transforms, - additionalTypeDefs, - additionalResolvers, - cache, - pubsub, - merger, - logger, - additionalEnvelopPlugins, - get documents() { - return [ - { - document: GetFactoriesDocument, - get rawSDL() { - return printWithCache(GetFactoriesDocument); - }, - location: 'GetFactoriesDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetTokenGardensDocument, - get rawSDL() { - return printWithCache(GetTokenGardensDocument); - }, - location: 'GetTokenGardensDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetMemberStrategyDocument, - get rawSDL() { - return printWithCache(GetMemberStrategyDocument); - }, - location: 'GetMemberStrategyDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: IsMemberDocument, - get rawSDL() { - return printWithCache(IsMemberDocument); - }, - location: 'IsMemberDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetMemberDocument, - get rawSDL() { - return printWithCache(GetMemberDocument); - }, - location: 'GetMemberDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetPoolCreationDataDocument, - get rawSDL() { - return printWithCache(GetPoolCreationDataDocument); - }, - location: 'GetPoolCreationDataDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetProposalSupportersDocument, - get rawSDL() { - return printWithCache(GetProposalSupportersDocument); - }, - location: 'GetProposalSupportersDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetGardenCommunitiesDocument, - get rawSDL() { - return printWithCache(GetGardenCommunitiesDocument); - }, - location: 'GetGardenCommunitiesDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetCommunityDocument, - get rawSDL() { - return printWithCache(GetCommunityDocument); - }, - location: 'GetCommunityDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetCommunityCreationDataDocument, - get rawSDL() { - return printWithCache(GetCommunityCreationDataDocument); - }, - location: 'GetCommunityCreationDataDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetPoolDataDocument, - get rawSDL() { - return printWithCache(GetPoolDataDocument); - }, - location: 'GetPoolDataDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetProposalDataDocument, - get rawSDL() { - return printWithCache(GetProposalDataDocument); - }, - location: 'GetProposalDataDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetAlloDocument, - get rawSDL() { - return printWithCache(GetAlloDocument); - }, - location: 'GetAlloDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetStrategyByPoolDocument, - get rawSDL() { - return printWithCache(GetStrategyByPoolDocument); - }, - location: 'GetStrategyByPoolDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetTokenTitleDocument, - get rawSDL() { - return printWithCache(GetTokenTitleDocument); - }, - location: 'GetTokenTitleDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetCommunityTitlesDocument, - get rawSDL() { - return printWithCache(GetCommunityTitlesDocument); - }, - location: 'GetCommunityTitlesDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetPoolTitlesDocument, - get rawSDL() { - return printWithCache(GetPoolTitlesDocument); - }, - location: 'GetPoolTitlesDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetProposalTitlesDocument, - get rawSDL() { - return printWithCache(GetProposalTitlesDocument); - }, - location: 'GetProposalTitlesDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetPassportScorerDocument, - get rawSDL() { - return printWithCache(GetPassportScorerDocument); - }, - location: 'GetPassportScorerDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetPassportStrategyDocument, - get rawSDL() { - return printWithCache(GetPassportStrategyDocument); - }, - location: 'GetPassportStrategyDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetPassportUserDocument, - get rawSDL() { - return printWithCache(GetPassportUserDocument); - }, - location: 'GetPassportUserDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetProposalDisputesDocument, - get rawSDL() { - return printWithCache(GetProposalDisputesDocument); - }, - location: 'GetProposalDisputesDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetArbitrableConfigsDocument, - get rawSDL() { - return printWithCache(GetArbitrableConfigsDocument); - }, - location: 'GetArbitrableConfigsDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - }, { - document: GetMemberPassportAndCommunitiesDocument, - get rawSDL() { - return printWithCache(GetMemberPassportAndCommunitiesDocument); - }, - location: 'GetMemberPassportAndCommunitiesDocument.graphql', - sha256Hash: '5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13' - } - ]; + { + document: GetProposalDisputesDocument, + get rawSDL() { + return printWithCache(GetProposalDisputesDocument); + }, + location: "GetProposalDisputesDocument.graphql", + sha256Hash: + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa", }, - fetchFn, - }; + { + document: GetArbitrableConfigsDocument, + get rawSDL() { + return printWithCache(GetArbitrableConfigsDocument); + }, + location: "GetArbitrableConfigsDocument.graphql", + sha256Hash: + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa", + }, + { + document: GetMemberPassportAndCommunitiesDocument, + get rawSDL() { + return printWithCache(GetMemberPassportAndCommunitiesDocument); + }, + location: "GetMemberPassportAndCommunitiesDocument.graphql", + sha256Hash: + "21229f9d4b89789bd890d0c0bb2110cff569de8fcc57bc021b4610c3e7397bfa", + }, + ]; + }, + fetchFn, + }; } export function createBuiltMeshHTTPHandler() { - return createMeshHTTPHandler({ - baseDir, - getBuiltMesh: getBuiltGraphClient, - rawServeConfig: undefined, - }); + return createMeshHTTPHandler({ + baseDir, + getBuiltMesh: getBuiltGraphClient, + rawServeConfig: undefined, + }); } let meshInstance$; export const pollingInterval = null; export function getBuiltGraphClient() { - if (meshInstance$ == null) { - if (pollingInterval) { - setInterval(() => { - getMeshOptions() - .then(meshOptions => getMesh(meshOptions)) - .then(newMesh => meshInstance$.then(oldMesh => { - oldMesh.destroy(); - meshInstance$ = Promise.resolve(newMesh); - })).catch(err => { - console.error("Mesh polling failed so the existing version will be used:", err); - }); - }, pollingInterval); - } - meshInstance$ = getMeshOptions().then(meshOptions => getMesh(meshOptions)).then(mesh => { - const id = mesh.pubsub.subscribe('destroy', () => { - meshInstance$ = undefined; - mesh.pubsub.unsubscribe(id); - }); - return mesh; - }); + if (meshInstance$ == null) { + if (pollingInterval) { + setInterval(() => { + getMeshOptions() + .then((meshOptions) => getMesh(meshOptions)) + .then((newMesh) => + meshInstance$.then((oldMesh) => { + oldMesh.destroy(); + meshInstance$ = Promise.resolve(newMesh); + }), + ) + .catch((err) => { + console.error( + "Mesh polling failed so the existing version will be used:", + err, + ); + }); + }, pollingInterval); } - return meshInstance$; + meshInstance$ = getMeshOptions() + .then((meshOptions) => getMesh(meshOptions)) + .then((mesh) => { + const id = mesh.pubsub.subscribe("destroy", () => { + meshInstance$ = undefined; + mesh.pubsub.unsubscribe(id); + }); + return mesh; + }); + } + return meshInstance$; } -export const execute = (...args) => getBuiltGraphClient().then(({ execute }) => execute(...args)); -export const subscribe = (...args) => getBuiltGraphClient().then(({ subscribe }) => subscribe(...args)); +export const execute = (...args) => + getBuiltGraphClient().then(({ execute }) => execute(...args)); +export const subscribe = (...args) => + getBuiltGraphClient().then(({ subscribe }) => subscribe(...args)); export function getBuiltGraphSDK(globalContext) { - const sdkRequester$ = getBuiltGraphClient().then(({ sdkRequesterFactory }) => sdkRequesterFactory(globalContext)); - return getSdk((...args) => sdkRequester$.then(sdkRequester => sdkRequester(...args))); + const sdkRequester$ = getBuiltGraphClient().then(({ sdkRequesterFactory }) => + sdkRequesterFactory(globalContext), + ); + return getSdk((...args) => + sdkRequester$.then((sdkRequester) => sdkRequester(...args)), + ); } -export const getFactoriesDocument = gql ` - query getFactories { - registryFactories { - id - registryCommunities { +export const getFactoriesDocument = gql` + query getFactories { + registryFactories { id - chainId - isValid - communityName - covenantIpfsHash - registerToken - alloAddress - members { - memberAddress - } - strategies { + registryCommunities { id - poolId - isEnabled - config { + chainId + isValid + communityName + covenantIpfsHash + registerToken + alloAddress + members { + memberAddress + } + strategies { id - decay - maxRatio - weight - minThresholdPoints + poolId + isEnabled + config { + id + decay + maxRatio + weight + minThresholdPoints + } } } } } -} - `; -export const getTokenGardensDocument = gql ` - query getTokenGardens { - tokenGardens { - id - chainId - name - symbol - decimals - totalBalance - communities { +`; +export const getTokenGardensDocument = gql` + query getTokenGardens { + tokenGardens { id chainId - covenantIpfsHash - communityFee - isValid - communityName - strategies { - id - } - members { + name + symbol + decimals + totalBalance + communities { id - memberAddress + chainId + covenantIpfsHash + communityFee + isValid + communityName + strategies { + id + } + members { + id + memberAddress + } } } } -} - `; -export const getMemberStrategyDocument = gql ` - query getMemberStrategy($member_strategy: ID!) { - memberStrategy(id: $member_strategy) { - id - totalStakedPoints - activatedPoints - strategy { - id - } - member { +`; +export const getMemberStrategyDocument = gql` + query getMemberStrategy($member_strategy: ID!) { + memberStrategy(id: $member_strategy) { id + totalStakedPoints + activatedPoints + strategy { + id + } + member { + id + } } } -} - `; -export const isMemberDocument = gql ` - query isMember($me: ID!, $comm: String!) { - member(id: $me) { - id - stakes { +`; +export const isMemberDocument = gql` + query isMember($me: ID!, $comm: String!) { + member(id: $me) { id - amount - proposal { + stakes { id - proposalNumber - stakedAmount - strategy { + amount + proposal { id - poolId - registryCommunity { + proposalNumber + stakedAmount + strategy { id - isValid - garden { + poolId + registryCommunity { id - symbol - decimals + isValid + garden { + id + symbol + decimals + } } } } } - } - memberCommunity(where: {registryCommunity_contains: $comm}) { - stakedTokens - isRegistered - registryCommunity { - id + memberCommunity(where: { registryCommunity_contains: $comm }) { + stakedTokens + isRegistered + registryCommunity { + id + } } } } -} - `; -export const getMemberDocument = gql ` - query getMember($me: ID!) { - member(id: $me) { - id - memberCommunity { +`; +export const getMemberDocument = gql` + query getMember($me: ID!) { + member(id: $me) { id - stakedTokens - isRegistered - registryCommunity { + memberCommunity { id - isValid + stakedTokens + isRegistered + registryCommunity { + id + isValid + } } - } - stakes { - id - proposal { - proposalNumber + stakes { id + proposal { + proposalNumber + id + } + amount + createdAt } - amount - createdAt } } -} - `; -export const getPoolCreationDataDocument = gql ` - query getPoolCreationData($communityAddr: ID!, $tokenAddr: ID!) { - tokenGarden(id: $tokenAddr) { - decimals - id - symbol - } - allos { - id +`; +export const getPoolCreationDataDocument = gql` + query getPoolCreationData($communityAddr: ID!, $tokenAddr: ID!) { + tokenGarden(id: $tokenAddr) { + decimals + id + symbol + } + allos { + id + } + registryCommunity(id: $communityAddr) { + communityName + isValid + } } - registryCommunity(id: $communityAddr) { - communityName - isValid +`; +export const getProposalSupportersDocument = gql` + query getProposalSupporters($proposalId: String!) { + members { + id + stakes(where: { proposal: $proposalId }) { + amount + proposal { + proposalNumber + id + } + } + } } -} - `; -export const getProposalSupportersDocument = gql ` - query getProposalSupporters($proposalId: String!) { - members { - id - stakes(where: {proposal: $proposalId}) { - amount - proposal { - proposalNumber +`; +export const getGardenCommunitiesDocument = gql` + query getGardenCommunities($chainId: BigInt!, $tokenGarden: ID!) { + registryCommunities( + where: { chainId: $chainId, garden_: { id: $tokenGarden } } + ) { + id + garden { + id + } + chainId + isValid + covenantIpfsHash + communityName + protocolFee + communityFee + registerToken + registerStakeAmount + alloAddress + members(where: { stakedTokens_gt: "0" }) { id + memberAddress + } + strategies(where: { isEnabled: true }) { + id + totalEffectiveActivePoints + poolId + poolAmount } } } -} - `; -export const getGardenCommunitiesDocument = gql ` - query getGardenCommunities($chainId: BigInt!, $tokenGarden: ID!) { - registryCommunities(where: {chainId: $chainId, garden_: {id: $tokenGarden}}) { - id - garden { +`; +export const getCommunityDocument = gql` + query getCommunity($communityAddr: ID!, $tokenAddr: ID!) { + registryCommunity(id: $communityAddr) { + communityName id + members(where: { stakedTokens_gt: "0" }) { + id + stakedTokens + } + strategies( + orderBy: poolId + orderDirection: desc + where: { archived: false } + ) { + id + proposals { + id + } + isEnabled + poolAmount + poolId + token + metadata + config { + proposalType + pointSystem + } + proposals { + id + } + } + covenantIpfsHash + communityFee + protocolFee + registerStakeAmount + registerToken } - chainId - isValid - covenantIpfsHash - communityName - protocolFee - communityFee - registerToken - registerStakeAmount - alloAddress - members(where: {stakedTokens_gt: "0"}) { + tokenGarden(id: $tokenAddr) { + symbol + decimals id - memberAddress } - strategies(where: {isEnabled: true}) { + } +`; +export const getCommunityCreationDataDocument = gql` + query getCommunityCreationData { + registryFactories { id - totalEffectiveActivePoints - poolId - poolAmount } } -} - `; -export const getCommunityDocument = gql ` - query getCommunity($communityAddr: ID!, $tokenAddr: ID!) { - registryCommunity(id: $communityAddr) { - communityName - id - members(where: {stakedTokens_gt: "0"}) { +`; +export const getPoolDataDocument = gql` + query getPoolData($garden: ID!, $poolId: BigInt!) { + allos { id - stakedTokens + chainId + tokenNative } - strategies(orderBy: poolId, orderDirection: desc) { + tokenGarden(id: $garden) { + address + name + symbol + description + totalBalance + ipfsCovenant + decimals + } + cvstrategies(where: { poolId: $poolId }) { + token + poolAmount + metadata id - proposals { + poolId + totalEffectiveActivePoints + isEnabled + maxCVSupply + archived + sybilScorer { + id + } + memberActive { id } - isEnabled - poolAmount - poolId - token - metadata config { - proposalType + id + weight + decay + maxAmount + maxRatio + minThresholdPoints pointSystem + proposalType + allowlist } - proposals { + registryCommunity { id + councilSafe + isValid + garden { + id + symbol + decimals + } + } + proposals(orderBy: createdAt, orderDirection: desc) { + id + proposalNumber + metadata { + title + description + } + metadataHash + beneficiary + requestedAmount + requestedToken + proposalStatus + stakedAmount + convictionLast + createdAt + blockLast + threshold + strategy { + id + maxCVSupply + totalEffectiveActivePoints + } } } - covenantIpfsHash - communityFee - protocolFee - registerStakeAmount - registerToken - } - tokenGarden(id: $tokenAddr) { - symbol - decimals - id - } -} - `; -export const getCommunityCreationDataDocument = gql ` - query getCommunityCreationData { - registryFactories { - id - } -} - `; -export const getPoolDataDocument = gql ` - query getPoolData($garden: ID!, $poolId: BigInt!) { - allos { - id - chainId - tokenNative - } - tokenGarden(id: $garden) { - address - name - symbol - description - totalBalance - ipfsCovenant - decimals + arbitrableConfigs( + first: 1 + orderBy: version + orderDirection: desc + where: { strategy_: { poolId: $poolId } } + ) { + submitterCollateralAmount + challengerCollateralAmount + arbitrator + defaultRuling + defaultRulingTimeout + tribunalSafe + } } - cvstrategies(where: {poolId: $poolId}) { - token - poolAmount - metadata - id - poolId - totalEffectiveActivePoints - isEnabled - maxCVSupply - sybilScorer { +`; +export const getProposalDataDocument = gql` + query getProposalData($garden: ID!, $proposalId: ID!, $communityId: ID!) { + allos { id + chainId + tokenNative } - memberActive { - id + tokenGarden(id: $garden) { + name + symbol + decimals } - config { - id - weight - decay - maxAmount - maxRatio - minThresholdPoints - pointSystem - proposalType - allowlist - } - registryCommunity { - id + registryCommunity(id: $communityId) { councilSafe - isValid - garden { - id - symbol - decimals - } } - proposals(orderBy: createdAt, orderDirection: desc) { + cvproposal(id: $proposalId) { id proposalNumber + beneficiary + blockLast + convictionLast + createdAt metadata { title description } metadataHash - beneficiary + proposalStatus requestedAmount requestedToken - proposalStatus stakedAmount - convictionLast - createdAt - blockLast + submitter threshold + updatedAt + version strategy { id + token maxCVSupply totalEffectiveActivePoints + poolId + config { + proposalType + pointSystem + minThresholdPoints + decay + } + } + arbitrableConfig { + arbitrator + defaultRuling + defaultRulingTimeout + challengerCollateralAmount + submitterCollateralAmount + tribunalSafe } } } - arbitrableConfigs( - first: 1 - orderBy: version - orderDirection: desc - where: {strategy_: {poolId: $poolId}} - ) { - submitterCollateralAmount - challengerCollateralAmount - arbitrator - defaultRuling - defaultRulingTimeout - tribunalSafe - } -} - `; -export const getProposalDataDocument = gql ` - query getProposalData($garden: ID!, $proposalId: ID!, $communityId: ID!) { - allos { - id - chainId - tokenNative - } - tokenGarden(id: $garden) { - name - symbol - decimals - } - registryCommunity(id: $communityId) { - councilSafe - } - cvproposal(id: $proposalId) { - id - proposalNumber - beneficiary - blockLast - convictionLast - createdAt - metadata { - title - description +`; +export const getAlloDocument = gql` + query getAllo { + allos { + id + chainId + tokenNative } - metadataHash - proposalStatus - requestedAmount - requestedToken - stakedAmount - submitter - threshold - updatedAt - version - strategy { + } +`; +export const getStrategyByPoolDocument = gql` + query getStrategyByPool($poolId: BigInt!) { + cvstrategies(where: { poolId: $poolId }) { id - token - maxCVSupply - totalEffectiveActivePoints poolId + totalEffectiveActivePoints + isEnabled + archived config { + id proposalType pointSystem minThresholdPoints - decay } - } - arbitrableConfig { - arbitrator - defaultRuling - defaultRulingTimeout - challengerCollateralAmount - submitterCollateralAmount - tribunalSafe - } - } -} - `; -export const getAlloDocument = gql ` - query getAllo { - allos { - id - chainId - tokenNative - } -} - `; -export const getStrategyByPoolDocument = gql ` - query getStrategyByPool($poolId: BigInt!) { - cvstrategies(where: {poolId: $poolId}) { - id - poolId - totalEffectiveActivePoints - isEnabled - config { - id - proposalType - pointSystem - minThresholdPoints - } - memberActive { - id - } - registryCommunity { - id - isValid - garden { + memberActive { id - symbol - decimals } - } - proposals { - id - proposalNumber - metadata { - title - description + registryCommunity { + id + isValid + garden { + id + symbol + decimals + } + } + proposals { + id + proposalNumber + metadata { + title + description + } + metadataHash + beneficiary + requestedAmount + requestedToken + proposalStatus + stakedAmount } - metadataHash - beneficiary - requestedAmount - requestedToken - proposalStatus - stakedAmount } } -} - `; -export const getTokenTitleDocument = gql ` - query getTokenTitle($tokenAddr: ID!) { - tokenGarden(id: $tokenAddr) { - name - } -} - `; -export const getCommunityTitlesDocument = gql ` - query getCommunityTitles($communityAddr: ID!) { - registryCommunity(id: $communityAddr) { - communityName - garden { +`; +export const getTokenTitleDocument = gql` + query getTokenTitle($tokenAddr: ID!) { + tokenGarden(id: $tokenAddr) { name } } -} - `; -export const getPoolTitlesDocument = gql ` - query getPoolTitles($poolId: BigInt!) { - cvstrategies(where: {poolId: $poolId}) { - poolId - metadata - registryCommunity { +`; +export const getCommunityTitlesDocument = gql` + query getCommunityTitles($communityAddr: ID!) { + registryCommunity(id: $communityAddr) { communityName garden { name } } - metadata } -} - `; -export const getProposalTitlesDocument = gql ` - query getProposalTitles($proposalId: ID!) { - cvproposal(id: $proposalId) { - proposalNumber - metadata { - title - description - } - metadataHash - strategy { +`; +export const getPoolTitlesDocument = gql` + query getPoolTitles($poolId: BigInt!) { + cvstrategies(where: { poolId: $poolId }) { poolId metadata registryCommunity { @@ -818,15 +899,57 @@ export const getProposalTitlesDocument = gql ` name } } + metadata } } -} - `; -export const getPassportScorerDocument = gql ` - query getPassportScorer($scorerId: ID!) { - passportScorer(id: $scorerId) { - id - strategies { +`; +export const getProposalTitlesDocument = gql` + query getProposalTitles($proposalId: ID!) { + cvproposal(id: $proposalId) { + proposalNumber + metadata { + title + description + } + metadataHash + strategy { + poolId + metadata + registryCommunity { + communityName + garden { + name + } + } + } + } + } +`; +export const getPassportScorerDocument = gql` + query getPassportScorer($scorerId: ID!) { + passportScorer(id: $scorerId) { + id + strategies { + id + strategy { + id + } + threshold + councilSafe + active + } + users { + id + userAddress + score + lastUpdated + } + } + } +`; +export const getPassportStrategyDocument = gql` + query getPassportStrategy($strategyId: ID!) { + passportStrategy(id: $strategyId) { id strategy { id @@ -835,153 +958,137 @@ export const getPassportScorerDocument = gql ` councilSafe active } - users { + } +`; +export const getPassportUserDocument = gql` + query getPassportUser($userId: ID!) { + passportUser(id: $userId) { id userAddress score lastUpdated } } -} - `; -export const getPassportStrategyDocument = gql ` - query getPassportStrategy($strategyId: ID!) { - passportStrategy(id: $strategyId) { - id - strategy { +`; +export const getProposalDisputesDocument = gql` + query getProposalDisputes($proposalId: ID!) { + proposalDisputes(where: { proposal_: { id: $proposalId } }) { id + disputeId + status + challenger + context + metadata { + reason + } + createdAt + ruledAt + rulingOutcome } - threshold - councilSafe - active } -} - `; -export const getPassportUserDocument = gql ` - query getPassportUser($userId: ID!) { - passportUser(id: $userId) { - id - userAddress - score - lastUpdated - } -} - `; -export const getProposalDisputesDocument = gql ` - query getProposalDisputes($proposalId: ID!) { - proposalDisputes(where: {proposal_: {id: $proposalId}}) { - id - disputeId - status - challenger - context - metadata { - reason - } - createdAt - ruledAt - rulingOutcome - } -} - `; -export const getArbitrableConfigsDocument = gql ` - query getArbitrableConfigs($strategyId: String!) { - arbitrableConfigs(where: {strategy: $strategyId}) { - arbitrator - challengerCollateralAmount - submitterCollateralAmount - tribunalSafe - defaultRuling - defaultRulingTimeout - } -} - `; -export const getMemberPassportAndCommunitiesDocument = gql ` - query getMemberPassportAndCommunities($memberId: ID!) { - member(id: $memberId) { - memberCommunity { - id +`; +export const getArbitrableConfigsDocument = gql` + query getArbitrableConfigs($strategyId: String!) { + arbitrableConfigs(where: { strategy: $strategyId }) { + arbitrator + challengerCollateralAmount + submitterCollateralAmount + tribunalSafe + defaultRuling + defaultRulingTimeout } } - passportUser(id: $memberId) { - lastUpdated - score +`; +export const getMemberPassportAndCommunitiesDocument = gql` + query getMemberPassportAndCommunities($memberId: ID!) { + member(id: $memberId) { + memberCommunity { + id + } + } + passportUser(id: $memberId) { + lastUpdated + score + } } -} - `; +`; export function getSdk(requester) { - return { - getFactories(variables, options) { - return requester(getFactoriesDocument, variables, options); - }, - getTokenGardens(variables, options) { - return requester(getTokenGardensDocument, variables, options); - }, - getMemberStrategy(variables, options) { - return requester(getMemberStrategyDocument, variables, options); - }, - isMember(variables, options) { - return requester(isMemberDocument, variables, options); - }, - getMember(variables, options) { - return requester(getMemberDocument, variables, options); - }, - getPoolCreationData(variables, options) { - return requester(getPoolCreationDataDocument, variables, options); - }, - getProposalSupporters(variables, options) { - return requester(getProposalSupportersDocument, variables, options); - }, - getGardenCommunities(variables, options) { - return requester(getGardenCommunitiesDocument, variables, options); - }, - getCommunity(variables, options) { - return requester(getCommunityDocument, variables, options); - }, - getCommunityCreationData(variables, options) { - return requester(getCommunityCreationDataDocument, variables, options); - }, - getPoolData(variables, options) { - return requester(getPoolDataDocument, variables, options); - }, - getProposalData(variables, options) { - return requester(getProposalDataDocument, variables, options); - }, - getAllo(variables, options) { - return requester(getAlloDocument, variables, options); - }, - getStrategyByPool(variables, options) { - return requester(getStrategyByPoolDocument, variables, options); - }, - getTokenTitle(variables, options) { - return requester(getTokenTitleDocument, variables, options); - }, - getCommunityTitles(variables, options) { - return requester(getCommunityTitlesDocument, variables, options); - }, - getPoolTitles(variables, options) { - return requester(getPoolTitlesDocument, variables, options); - }, - getProposalTitles(variables, options) { - return requester(getProposalTitlesDocument, variables, options); - }, - getPassportScorer(variables, options) { - return requester(getPassportScorerDocument, variables, options); - }, - getPassportStrategy(variables, options) { - return requester(getPassportStrategyDocument, variables, options); - }, - getPassportUser(variables, options) { - return requester(getPassportUserDocument, variables, options); - }, - getProposalDisputes(variables, options) { - return requester(getProposalDisputesDocument, variables, options); - }, - getArbitrableConfigs(variables, options) { - return requester(getArbitrableConfigsDocument, variables, options); - }, - getMemberPassportAndCommunities(variables, options) { - return requester(getMemberPassportAndCommunitiesDocument, variables, options); - } - }; + return { + getFactories(variables, options) { + return requester(getFactoriesDocument, variables, options); + }, + getTokenGardens(variables, options) { + return requester(getTokenGardensDocument, variables, options); + }, + getMemberStrategy(variables, options) { + return requester(getMemberStrategyDocument, variables, options); + }, + isMember(variables, options) { + return requester(isMemberDocument, variables, options); + }, + getMember(variables, options) { + return requester(getMemberDocument, variables, options); + }, + getPoolCreationData(variables, options) { + return requester(getPoolCreationDataDocument, variables, options); + }, + getProposalSupporters(variables, options) { + return requester(getProposalSupportersDocument, variables, options); + }, + getGardenCommunities(variables, options) { + return requester(getGardenCommunitiesDocument, variables, options); + }, + getCommunity(variables, options) { + return requester(getCommunityDocument, variables, options); + }, + getCommunityCreationData(variables, options) { + return requester(getCommunityCreationDataDocument, variables, options); + }, + getPoolData(variables, options) { + return requester(getPoolDataDocument, variables, options); + }, + getProposalData(variables, options) { + return requester(getProposalDataDocument, variables, options); + }, + getAllo(variables, options) { + return requester(getAlloDocument, variables, options); + }, + getStrategyByPool(variables, options) { + return requester(getStrategyByPoolDocument, variables, options); + }, + getTokenTitle(variables, options) { + return requester(getTokenTitleDocument, variables, options); + }, + getCommunityTitles(variables, options) { + return requester(getCommunityTitlesDocument, variables, options); + }, + getPoolTitles(variables, options) { + return requester(getPoolTitlesDocument, variables, options); + }, + getProposalTitles(variables, options) { + return requester(getProposalTitlesDocument, variables, options); + }, + getPassportScorer(variables, options) { + return requester(getPassportScorerDocument, variables, options); + }, + getPassportStrategy(variables, options) { + return requester(getPassportStrategyDocument, variables, options); + }, + getPassportUser(variables, options) { + return requester(getPassportUserDocument, variables, options); + }, + getProposalDisputes(variables, options) { + return requester(getProposalDisputesDocument, variables, options); + }, + getArbitrableConfigs(variables, options) { + return requester(getArbitrableConfigsDocument, variables, options); + }, + getMemberPassportAndCommunities(variables, options) { + return requester( + getMemberPassportAndCommunitiesDocument, + variables, + options, + ); + }, + }; } diff --git a/pkg/subgraph/.graphclient/persisted_operations.json b/pkg/subgraph/.graphclient/persisted_operations.json index 88bcf09d7..48ae65257 100644 --- a/pkg/subgraph/.graphclient/persisted_operations.json +++ b/pkg/subgraph/.graphclient/persisted_operations.json @@ -1,3 +1,3 @@ { - "5739cc90895079ffe8a7220e506401b416e739046aa067ebf3a8bc262a134c13": "query getFactories {\n registryFactories {\n id\n registryCommunities {\n id\n chainId\n isValid\n communityName\n covenantIpfsHash\n registerToken\n alloAddress\n members {\n memberAddress\n }\n strategies {\n id\n poolId\n isEnabled\n config {\n id\n decay\n maxRatio\n weight\n minThresholdPoints\n }\n }\n }\n }\n}\n\nquery getTokenGardens {\n tokenGardens {\n id\n chainId\n name\n symbol\n decimals\n totalBalance\n communities {\n id\n chainId\n covenantIpfsHash\n communityFee\n isValid\n communityName\n strategies {\n id\n }\n members {\n id\n memberAddress\n }\n }\n }\n}\n\nquery getMemberStrategy($member_strategy: ID!) {\n memberStrategy(id: $member_strategy) {\n id\n totalStakedPoints\n activatedPoints\n strategy {\n id\n }\n member {\n id\n }\n }\n}\n\nquery isMember($me: ID!, $comm: String!) {\n member(id: $me) {\n id\n stakes {\n id\n amount\n proposal {\n id\n proposalNumber\n stakedAmount\n strategy {\n id\n poolId\n registryCommunity {\n id\n isValid\n garden {\n id\n symbol\n decimals\n }\n }\n }\n }\n }\n memberCommunity(where: {registryCommunity_contains: $comm}) {\n stakedTokens\n isRegistered\n registryCommunity {\n id\n }\n }\n }\n}\n\nquery getMember($me: ID!) {\n member(id: $me) {\n id\n memberCommunity {\n id\n stakedTokens\n isRegistered\n registryCommunity {\n id\n isValid\n }\n }\n stakes {\n id\n proposal {\n proposalNumber\n id\n }\n amount\n createdAt\n }\n }\n}\n\nquery getPoolCreationData($communityAddr: ID!, $tokenAddr: ID!) {\n tokenGarden(id: $tokenAddr) {\n decimals\n id\n symbol\n }\n allos {\n id\n }\n registryCommunity(id: $communityAddr) {\n communityName\n isValid\n }\n}\n\nquery getProposalSupporters($proposalId: String!) {\n members {\n id\n stakes(where: {proposal: $proposalId}) {\n amount\n proposal {\n proposalNumber\n id\n }\n }\n }\n}\n\nquery getGardenCommunities($chainId: BigInt!, $tokenGarden: ID!) {\n registryCommunities(where: {chainId: $chainId, garden_: {id: $tokenGarden}}) {\n id\n garden {\n id\n }\n chainId\n isValid\n covenantIpfsHash\n communityName\n protocolFee\n communityFee\n registerToken\n registerStakeAmount\n alloAddress\n members(where: {stakedTokens_gt: \"0\"}) {\n id\n memberAddress\n }\n strategies(where: {isEnabled: true}) {\n id\n totalEffectiveActivePoints\n poolId\n poolAmount\n }\n }\n}\n\nquery getCommunity($communityAddr: ID!, $tokenAddr: ID!) {\n registryCommunity(id: $communityAddr) {\n communityName\n id\n members(where: {stakedTokens_gt: \"0\"}) {\n id\n stakedTokens\n }\n strategies(orderBy: poolId, orderDirection: desc) {\n id\n proposals {\n id\n }\n isEnabled\n poolAmount\n poolId\n token\n metadata\n config {\n proposalType\n pointSystem\n }\n proposals {\n id\n }\n }\n covenantIpfsHash\n communityFee\n protocolFee\n registerStakeAmount\n registerToken\n }\n tokenGarden(id: $tokenAddr) {\n symbol\n decimals\n id\n }\n}\n\nquery getCommunityCreationData {\n registryFactories {\n id\n }\n}\n\nquery getPoolData($garden: ID!, $poolId: BigInt!) {\n allos {\n id\n chainId\n tokenNative\n }\n tokenGarden(id: $garden) {\n address\n name\n symbol\n description\n totalBalance\n ipfsCovenant\n decimals\n }\n cvstrategies(where: {poolId: $poolId}) {\n token\n poolAmount\n metadata\n id\n poolId\n totalEffectiveActivePoints\n isEnabled\n maxCVSupply\n sybilScorer {\n id\n }\n memberActive {\n id\n }\n config {\n id\n weight\n decay\n maxAmount\n maxRatio\n minThresholdPoints\n pointSystem\n proposalType\n allowlist\n }\n registryCommunity {\n id\n councilSafe\n isValid\n garden {\n id\n symbol\n decimals\n }\n }\n proposals(orderBy: createdAt, orderDirection: desc) {\n id\n proposalNumber\n metadata {\n title\n description\n }\n metadataHash\n beneficiary\n requestedAmount\n requestedToken\n proposalStatus\n stakedAmount\n convictionLast\n createdAt\n blockLast\n threshold\n strategy {\n id\n maxCVSupply\n totalEffectiveActivePoints\n }\n }\n }\n arbitrableConfigs(\n first: 1\n orderBy: version\n orderDirection: desc\n where: {strategy_: {poolId: $poolId}}\n ) {\n submitterCollateralAmount\n challengerCollateralAmount\n arbitrator\n defaultRuling\n defaultRulingTimeout\n tribunalSafe\n }\n}\n\nquery getProposalData($garden: ID!, $proposalId: ID!, $communityId: ID!) {\n allos {\n id\n chainId\n tokenNative\n }\n tokenGarden(id: $garden) {\n name\n symbol\n decimals\n }\n registryCommunity(id: $communityId) {\n councilSafe\n }\n cvproposal(id: $proposalId) {\n id\n proposalNumber\n beneficiary\n blockLast\n convictionLast\n createdAt\n metadata {\n title\n description\n }\n metadataHash\n proposalStatus\n requestedAmount\n requestedToken\n stakedAmount\n submitter\n threshold\n updatedAt\n version\n strategy {\n id\n token\n maxCVSupply\n totalEffectiveActivePoints\n poolId\n config {\n proposalType\n pointSystem\n minThresholdPoints\n decay\n }\n }\n arbitrableConfig {\n arbitrator\n defaultRuling\n defaultRulingTimeout\n challengerCollateralAmount\n submitterCollateralAmount\n tribunalSafe\n }\n }\n}\n\nquery getAllo {\n allos {\n id\n chainId\n tokenNative\n }\n}\n\nquery getStrategyByPool($poolId: BigInt!) {\n cvstrategies(where: {poolId: $poolId}) {\n id\n poolId\n totalEffectiveActivePoints\n isEnabled\n config {\n id\n proposalType\n pointSystem\n minThresholdPoints\n }\n memberActive {\n id\n }\n registryCommunity {\n id\n isValid\n garden {\n id\n symbol\n decimals\n }\n }\n proposals {\n id\n proposalNumber\n metadata {\n title\n description\n }\n metadataHash\n beneficiary\n requestedAmount\n requestedToken\n proposalStatus\n stakedAmount\n }\n }\n}\n\nquery getTokenTitle($tokenAddr: ID!) {\n tokenGarden(id: $tokenAddr) {\n name\n }\n}\n\nquery getCommunityTitles($communityAddr: ID!) {\n registryCommunity(id: $communityAddr) {\n communityName\n garden {\n name\n }\n }\n}\n\nquery getPoolTitles($poolId: BigInt!) {\n cvstrategies(where: {poolId: $poolId}) {\n poolId\n metadata\n registryCommunity {\n communityName\n garden {\n name\n }\n }\n metadata\n }\n}\n\nquery getProposalTitles($proposalId: ID!) {\n cvproposal(id: $proposalId) {\n proposalNumber\n metadata {\n title\n description\n }\n metadataHash\n strategy {\n poolId\n metadata\n registryCommunity {\n communityName\n garden {\n name\n }\n }\n }\n }\n}\n\nquery getPassportScorer($scorerId: ID!) {\n passportScorer(id: $scorerId) {\n id\n strategies {\n id\n strategy {\n id\n }\n threshold\n councilSafe\n active\n }\n users {\n id\n userAddress\n score\n lastUpdated\n }\n }\n}\n\nquery getPassportStrategy($strategyId: ID!) {\n passportStrategy(id: $strategyId) {\n id\n strategy {\n id\n }\n threshold\n councilSafe\n active\n }\n}\n\nquery getPassportUser($userId: ID!) {\n passportUser(id: $userId) {\n id\n userAddress\n score\n lastUpdated\n }\n}\n\nquery getProposalDisputes($proposalId: ID!) {\n proposalDisputes(where: {proposal_: {id: $proposalId}}) {\n id\n disputeId\n status\n challenger\n context\n metadata {\n reason\n }\n createdAt\n ruledAt\n rulingOutcome\n }\n}\n\nquery getArbitrableConfigs($strategyId: String!) {\n arbitrableConfigs(where: {strategy: $strategyId}) {\n arbitrator\n challengerCollateralAmount\n submitterCollateralAmount\n tribunalSafe\n defaultRuling\n defaultRulingTimeout\n }\n}\n\nquery getMemberPassportAndCommunities($memberId: ID!) {\n member(id: $memberId) {\n memberCommunity {\n id\n }\n }\n passportUser(id: $memberId) {\n lastUpdated\n score\n }\n}" + "67f63761732b211149e54c0edb8712b2a2cddd1ab68a30429d5263de6b11e8ec": "query getFactories {\n registryFactories {\n id\n registryCommunities {\n id\n chainId\n isValid\n communityName\n covenantIpfsHash\n registerToken\n alloAddress\n members {\n memberAddress\n }\n strategies {\n id\n poolId\n isEnabled\n config {\n id\n decay\n maxRatio\n weight\n minThresholdPoints\n }\n }\n }\n }\n}\n\nquery getTokenGardens {\n tokenGardens {\n id\n chainId\n name\n symbol\n decimals\n totalBalance\n communities {\n id\n chainId\n covenantIpfsHash\n communityFee\n isValid\n communityName\n strategies {\n id\n }\n members {\n id\n memberAddress\n }\n }\n }\n}\n\nquery getMemberStrategy($member_strategy: ID!) {\n memberStrategy(id: $member_strategy) {\n id\n totalStakedPoints\n activatedPoints\n strategy {\n id\n }\n member {\n id\n }\n }\n}\n\nquery isMember($me: ID!, $comm: String!) {\n member(id: $me) {\n id\n stakes {\n id\n amount\n proposal {\n id\n proposalNumber\n stakedAmount\n strategy {\n id\n poolId\n registryCommunity {\n id\n isValid\n garden {\n id\n symbol\n decimals\n }\n }\n }\n }\n }\n memberCommunity(where: {registryCommunity_contains: $comm}) {\n stakedTokens\n isRegistered\n registryCommunity {\n id\n }\n }\n }\n}\n\nquery getMember($me: ID!) {\n member(id: $me) {\n id\n memberCommunity {\n id\n stakedTokens\n isRegistered\n registryCommunity {\n id\n isValid\n }\n }\n stakes {\n id\n proposal {\n proposalNumber\n id\n }\n amount\n createdAt\n }\n }\n}\n\nquery getPoolCreationData($communityAddr: ID!, $tokenAddr: ID!) {\n tokenGarden(id: $tokenAddr) {\n decimals\n id\n symbol\n }\n allos {\n id\n }\n registryCommunity(id: $communityAddr) {\n communityName\n isValid\n }\n}\n\nquery getGardenCommunities($chainId: BigInt!, $tokenGarden: ID!) {\n registryCommunities(where: {chainId: $chainId, garden_: {id: $tokenGarden}}) {\n id\n garden {\n id\n }\n chainId\n isValid\n covenantIpfsHash\n communityName\n protocolFee\n communityFee\n registerToken\n registerStakeAmount\n alloAddress\n members(where: {stakedTokens_gt: \"0\"}) {\n id\n memberAddress\n }\n strategies(where: {isEnabled: true}) {\n id\n totalEffectiveActivePoints\n poolId\n poolAmount\n }\n }\n}\n\nquery getCommunity($communityAddr: ID!, $tokenAddr: ID!) {\n registryCommunity(id: $communityAddr) {\n communityName\n id\n members(where: {stakedTokens_gt: \"0\"}) {\n id\n stakedTokens\n }\n strategies(orderBy: poolId, orderDirection: desc, where: {archived: false}) {\n id\n proposals {\n id\n }\n isEnabled\n poolAmount\n poolId\n token\n metadata\n config {\n proposalType\n pointSystem\n }\n proposals {\n id\n }\n }\n covenantIpfsHash\n communityFee\n protocolFee\n registerStakeAmount\n registerToken\n }\n tokenGarden(id: $tokenAddr) {\n symbol\n decimals\n id\n }\n}\n\nquery getCommunityCreationData {\n registryFactories {\n id\n }\n}\n\nquery getPoolData($garden: ID!, $poolId: BigInt!) {\n allos {\n id\n chainId\n tokenNative\n }\n tokenGarden(id: $garden) {\n address\n name\n symbol\n description\n totalBalance\n ipfsCovenant\n decimals\n }\n cvstrategies(where: {poolId: $poolId}) {\n token\n poolAmount\n metadata\n id\n poolId\n totalEffectiveActivePoints\n isEnabled\n maxCVSupply\n archived\n sybilScorer {\n id\n }\n memberActive {\n id\n }\n config {\n id\n weight\n decay\n maxAmount\n maxRatio\n minThresholdPoints\n pointSystem\n proposalType\n allowlist\n }\n registryCommunity {\n id\n councilSafe\n isValid\n garden {\n id\n symbol\n decimals\n }\n }\n proposals(orderBy: createdAt, orderDirection: desc) {\n id\n proposalNumber\n metadata {\n title\n description\n }\n metadataHash\n beneficiary\n requestedAmount\n requestedToken\n proposalStatus\n stakedAmount\n convictionLast\n createdAt\n blockLast\n threshold\n strategy {\n id\n maxCVSupply\n totalEffectiveActivePoints\n }\n }\n }\n arbitrableConfigs(\n first: 1\n orderBy: version\n orderDirection: desc\n where: {strategy_: {poolId: $poolId}}\n ) {\n submitterCollateralAmount\n challengerCollateralAmount\n arbitrator\n defaultRuling\n defaultRulingTimeout\n tribunalSafe\n }\n}\n\nquery getProposalData($garden: ID!, $proposalId: ID!) {\n allos {\n id\n chainId\n tokenNative\n }\n tokenGarden(id: $garden) {\n name\n symbol\n decimals\n }\n cvproposal(id: $proposalId) {\n id\n proposalNumber\n beneficiary\n blockLast\n convictionLast\n createdAt\n metadata {\n title\n description\n }\n metadataHash\n proposalStatus\n requestedAmount\n requestedToken\n stakedAmount\n submitter\n threshold\n updatedAt\n version\n strategy {\n id\n token\n maxCVSupply\n totalEffectiveActivePoints\n poolId\n config {\n proposalType\n pointSystem\n minThresholdPoints\n decay\n }\n }\n arbitrableConfig {\n arbitrator\n defaultRuling\n defaultRulingTimeout\n challengerCollateralAmount\n submitterCollateralAmount\n tribunalSafe\n }\n }\n}\n\nquery getAllo {\n allos {\n id\n chainId\n tokenNative\n }\n}\n\nquery getStrategyByPool($poolId: BigInt!) {\n cvstrategies(where: {poolId: $poolId}) {\n id\n poolId\n totalEffectiveActivePoints\n isEnabled\n archived\n config {\n id\n proposalType\n pointSystem\n minThresholdPoints\n }\n memberActive {\n id\n }\n registryCommunity {\n id\n isValid\n garden {\n id\n symbol\n decimals\n }\n }\n proposals {\n id\n proposalNumber\n metadata {\n title\n description\n }\n metadataHash\n beneficiary\n requestedAmount\n requestedToken\n proposalStatus\n stakedAmount\n }\n }\n}\n\nquery getTokenTitle($tokenAddr: ID!) {\n tokenGarden(id: $tokenAddr) {\n name\n }\n}\n\nquery getCommunityTitles($communityAddr: ID!) {\n registryCommunity(id: $communityAddr) {\n communityName\n garden {\n name\n }\n }\n}\n\nquery getPoolTitles($poolId: BigInt!) {\n cvstrategies(where: {poolId: $poolId}) {\n poolId\n metadata\n registryCommunity {\n communityName\n garden {\n name\n }\n }\n metadata\n }\n}\n\nquery getProposalTitles($proposalId: ID!) {\n cvproposal(id: $proposalId) {\n proposalNumber\n metadata {\n title\n description\n }\n metadataHash\n strategy {\n poolId\n metadata\n registryCommunity {\n communityName\n garden {\n name\n }\n }\n }\n }\n}\n\nquery getPassportScorer($scorerId: ID!) {\n passportScorer(id: $scorerId) {\n id\n strategies {\n id\n strategy {\n id\n }\n threshold\n councilSafe\n active\n }\n users {\n id\n userAddress\n score\n lastUpdated\n }\n }\n}\n\nquery getPassportStrategy($strategyId: ID!) {\n passportStrategy(id: $strategyId) {\n id\n strategy {\n id\n }\n threshold\n councilSafe\n active\n }\n}\n\nquery getPassportUser($userId: ID!) {\n passportUser(id: $userId) {\n id\n userAddress\n score\n lastUpdated\n }\n}\n\nquery getProposalDisputes($proposalId: ID!) {\n proposalDisputes(where: {proposal_: {id: $proposalId}}) {\n id\n disputeId\n status\n challenger\n context\n metadata {\n reason\n }\n createdAt\n ruledAt\n rulingOutcome\n }\n}\n\nquery getArbitrableConfigs($strategyId: String!) {\n arbitrableConfigs(where: {strategy: $strategyId}) {\n arbitrator\n challengerCollateralAmount\n submitterCollateralAmount\n tribunalSafe\n defaultRuling\n defaultRulingTimeout\n }\n}\n\nquery getMemberPassportAndCommunities($memberId: ID!) {\n member(id: $memberId) {\n memberCommunity {\n id\n }\n }\n passportUser(id: $memberId) {\n lastUpdated\n score\n }\n}" } \ No newline at end of file diff --git a/pkg/subgraph/.graphclientrc.template.yml b/pkg/subgraph/.graphclientrc.template.yml index bec00dc81..2bcdac529 100644 --- a/pkg/subgraph/.graphclientrc.template.yml +++ b/pkg/subgraph/.graphclientrc.template.yml @@ -2,6 +2,6 @@ sources: - name: gv2 handler: graphql: - endpoint: https://api.studio.thegraph.com/query/70985/gardens-v2---arbitrum-sepolia/version/latest + endpoint: https://api.studio.thegraph.com/query/70985/gardens-v2---arbitrum-sepolia/{{VERSION_TESTNET}} documents: - ./src/query/queries.graphql diff --git a/pkg/subgraph/.graphclientrc.yml b/pkg/subgraph/.graphclientrc.yml index bec00dc81..50ee8dddc 100644 --- a/pkg/subgraph/.graphclientrc.yml +++ b/pkg/subgraph/.graphclientrc.yml @@ -2,6 +2,6 @@ sources: - name: gv2 handler: graphql: - endpoint: https://api.studio.thegraph.com/query/70985/gardens-v2---arbitrum-sepolia/version/latest + endpoint: https://api.studio.thegraph.com/query/70985/gardens-v2---arbitrum-sepolia/0.2.4 documents: - ./src/query/queries.graphql diff --git a/pkg/subgraph/config/arbsepolia.json b/pkg/subgraph/config/arbsepolia.json index d6ad7d5fc..9b91f01f7 100644 --- a/pkg/subgraph/config/arbsepolia.json +++ b/pkg/subgraph/config/arbsepolia.json @@ -4,14 +4,14 @@ "dataSources": [ { "name": "RegistryFactoryV0_0", - "startBlock": 95965509, - "address": "0x2689b1e4afcbfb393d9727fba2ab52930035ee85", + "startBlock": 105896653, + "address": "0x2d5b61124DFf3c3bEDe39620b591b10325f629a2", "customTemplate": "registryFactory" }, { "name": "PassportScorer", - "startBlock": 95965509, - "address": "0x2053E225672776deb23Af0A3EBa9CE2c87838a72", + "startBlock": 105896653, + "address": "0xD5a38e558582D32FfdC3b3a1A9f4D0D56e8b3115", "customTemplate": "passportScorer" } ] diff --git a/pkg/subgraph/package.json b/pkg/subgraph/package.json index f8314ceaf..10f6d5315 100644 --- a/pkg/subgraph/package.json +++ b/pkg/subgraph/package.json @@ -32,7 +32,7 @@ "proxies:prod": "node src/scripts/list-proxies.cjs arbitrum && node src/scripts/list-proxies.cjs optimism && node src/scripts/list-proxies.cjs matic && node src/scripts/list-proxies.cjs gnosis", "build-client": "mustache ../../apps/web/configs/subgraph.json .graphclientrc.template.yml > .graphclientrc.yml && graphclient build --fileType js", "build-all": "pnpm create-local && pnpm build && pnpm deploy:local", - "deploy:arbsep:last": "dotenvx run -- ts-node --esm -P ../../apps/web/tsconfig.json ./src/scripts/last-version.ts gv2-arbsepolia", + "deploy:arbsep:last": "dotenvx run -- ts-node --esm -P ../../apps/web/tsconfig.json ./src/scripts/last-version.ts gv2-arbitrum-sepolia", "deploy:ethsep:last": "dotenvx run -- ts-node --esm -P ../../apps/web/tsconfig.json ./src/scripts/last-version.ts gv2-ethsepolia", "codegen": "graph codegen", "graph": "graph", diff --git a/pkg/subgraph/src/mappings/registry-community.ts b/pkg/subgraph/src/mappings/registry-community.ts index d6a281a53..8814db591 100644 --- a/pkg/subgraph/src/mappings/registry-community.ts +++ b/pkg/subgraph/src/mappings/registry-community.ts @@ -251,7 +251,7 @@ export function handleMemberKicked(event: MemberKicked): void { memberCommunity.save(); } -// // handleStrategyAdded +// handleStrategyAdded export function handleStrategyAdded(event: StrategyAdded): void { log.debug("RegistryCommunity: handleStrategyAdded", [ event.params._strategy.toHexString() @@ -270,7 +270,7 @@ export function handleStrategyAdded(event: StrategyAdded): void { cvs.save(); } -// // handleStrategyAdded +// handleStrategyRemoved export function handleStrategyRemoved(event: StrategyRemoved): void { log.debug("RegistryCommunity: handleStrategyRemoved", [ event.params._strategy.toHexString() diff --git a/pkg/subgraph/src/query/queries.graphql b/pkg/subgraph/src/query/queries.graphql index 701f3b21f..e33776a44 100644 --- a/pkg/subgraph/src/query/queries.graphql +++ b/pkg/subgraph/src/query/queries.graphql @@ -193,7 +193,11 @@ query getCommunity($communityAddr: ID!, $tokenAddr: ID!) { id stakedTokens } - strategies(orderBy: poolId, orderDirection: desc) { + strategies( + orderBy: poolId + orderDirection: desc + where: { archived: false } + ) { id proposals { id @@ -254,6 +258,7 @@ query getPoolData($garden: ID!, $poolId: BigInt!) { totalEffectiveActivePoints isEnabled maxCVSupply + archived sybilScorer { id } @@ -392,6 +397,7 @@ query getStrategyByPool($poolId: BigInt!) { poolId totalEffectiveActivePoints isEnabled + archived config { id proposalType diff --git a/pkg/subgraph/subgraph.yaml b/pkg/subgraph/subgraph.yaml index 5d54395bc..a09b50b7f 100644 --- a/pkg/subgraph/subgraph.yaml +++ b/pkg/subgraph/subgraph.yaml @@ -8,13 +8,13 @@ dataSources: name: RegistryFactoryV0_0 network: localhost context: - chainId: + chainId: type: Int data: 1337 source: - address: "0xb7f8bc63bbcad18155201308c8f3540b07f84f5e" + address: "0x2d5b61124DFf3c3bEDe39620b591b10325f629a2" abi: RegistryFactoryV0_0 - startBlock: 0 + startBlock: 105896653 mapping: kind: ethereum/events apiVersion: 0.0.7 @@ -33,22 +33,22 @@ dataSources: - event: CommunityValiditySet(address,bool) handler: handleCommunityValiditySet - event: ProtocolFeeSet(address,uint256) - handler: handleProtocolFeeSet + handler: handleProtocolFeeSet - event: Initialized(uint8) - handler: handleRegistryInitialized + handler: handleRegistryInitialized file: ./src/mappings/registry-factory.ts - kind: ethereum/contract name: PassportScorer network: localhost context: - chainId: + chainId: type: Int data: 1337 source: - address: "0x0165878a594ca255338adfa4d48449f69242eb8f" + address: "0xD5a38e558582D32FfdC3b3a1A9f4D0D56e8b3115" abi: PassportScorer - startBlock: 0 + startBlock: 105896653 mapping: kind: ethereum/events apiVersion: 0.0.7 @@ -100,7 +100,7 @@ templates: file: ../contracts/out/CVStrategyV0_0.sol/CVStrategyV0_0.json - name: RegistryFactoryV0_0 file: ../contracts/out/RegistryFactoryV0_0.sol/RegistryFactoryV0_0.json - + eventHandlers: - event: RegistryInitialized(bytes32,string,(uint256,string)) handler: handleInitialized @@ -204,7 +204,7 @@ templates: handler: handleAllowlistMembersRemoved - event: SybilScorerUpdated(address) handler: handleSybilScorerUpdated - + file: ./src/mappings/cv-strategy.ts - kind: ethereum/contract @@ -229,8 +229,8 @@ templates: handler: handleCollateralWithdrawnFor - event: CollateralWithdrawn(uint256,indexed address,uint256,bool) handler: handleCollateralWithdrawn - file: ./src/mappings/cv-strategy.ts - + file: ./src/mappings/cv-strategy.ts + - name: ProposalDisputeMetadata kind: file/ipfs mapping: @@ -243,7 +243,7 @@ templates: abis: - name: CVStrategyV0_0 file: ../contracts/out/CVStrategyV0_0.sol/CVStrategyV0_0.json - + - name: ProposalMetadata kind: file/ipfs mapping: @@ -255,4 +255,4 @@ templates: - ProposalMetadata abis: - name: CVStrategyV0_0 - file: ../contracts/out/CVStrategyV0_0.sol/CVStrategyV0_0.json \ No newline at end of file + file: ../contracts/out/CVStrategyV0_0.sol/CVStrategyV0_0.json